aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines/kepler_compute.cpp
diff options
context:
space:
mode:
authorTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-29 15:56:45 -0400
committerTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-29 20:49:48 -0400
commitd327881c44ada520d6ea939af59bdd420906b99f (patch)
treea7dcb3b06579cce4d3bb51780b69043842413dd7 /src/video_core/engines/kepler_compute.cpp
parent72fc31f44b954f8e0ebf1a36c2c8565eec83be3a (diff)
build: fixes for clang-cl
- (std::min)/(std::max) where windows.h's macros are visible - LAMBDA_FORCEINLINE: always_inline under clang (clang-cl defines _MSC_VER but rejects [[msvc::forceinline]] on lambdas) - ImageBase::FindView: find_if, as MSVC's STL takes its vectorized find for ImageViewInfo under clang-cl and fails a size assertion - parentheses for -Wlogical-op-parentheses in the Ampere lowering
Diffstat (limited to 'src/video_core/engines/kepler_compute.cpp')
-rw-r--r--src/video_core/engines/kepler_compute.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/video_core/engines/kepler_compute.cpp b/src/video_core/engines/kepler_compute.cpp
index 6ef639fa91..ab2ba10162 100644
--- a/src/video_core/engines/kepler_compute.cpp
+++ b/src/video_core/engines/kepler_compute.cpp
@@ -103,8 +103,8 @@ void KeplerCompute::ProcessNativeReportSemaphore(u32 argument) {
rasterizer->SignalFence([this, address, payload, reduction] {
const u32 old_value = memory_manager.Read<u32>(address);
const u32 value = reduction == 0 ? old_value + payload
- : reduction == 1 ? std::min(old_value, payload)
- : reduction == 2 ? std::max(old_value, payload)
+ : reduction == 1 ? (std::min)(old_value, payload)
+ : reduction == 2 ? (std::max)(old_value, payload)
: reduction == 3 ? (old_value >= payload ? 0 : old_value + 1)
: reduction == 4 ? (old_value == 0 || old_value > payload ? payload : old_value - 1)
: reduction == 5 ? (old_value & payload)
@@ -383,7 +383,7 @@ bool KeplerCompute::ProcessNativeMethod(Core::System& system, u32 method, u32 ar
// releases also advance: a plain write would move it backwards and leave
// GEQ acquires waiting forever.
rasterizer->SignalFence([this, address, payload] {
- const u32 value = std::max(memory_manager.Read<u32>(address), payload);
+ const u32 value = (std::max)(memory_manager.Read<u32>(address), payload);
memory_manager.Write<u32>(address, value);
if (const auto device = memory_manager.GpuToCpuAddress(address)) {
Tegra::Nx2SemaphoreWaiters::Get().OnWrite(*device, value);