From 631640d7790abc3182f6b307b14407024f3e5d11 Mon Sep 17 00:00:00 2001 From: atlas dostal Date: Mon, 30 Sep 2024 15:02:14 -0400 Subject: [PATCH] Test --- naga/src/back/msl/writer.rs | 4 ++-- naga/tests/out/msl/atomicTexture-int64.msl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/naga/src/back/msl/writer.rs b/naga/src/back/msl/writer.rs index 4aa440dc1a..0d1e5d5c75 100644 --- a/naga/src/back/msl/writer.rs +++ b/naga/src/back/msl/writer.rs @@ -1205,9 +1205,9 @@ impl Writer { write!(self.out, ".atomic_{}(", fun.to_msl_64_bit()?)?; // coordinates in IR are int, but Metal expects uint self.put_cast_to_uint_scalar_or_vector(address.coordinate, &context.expression)?; - write!(self.out, ", ")?; + write!(self.out, ", metal::ulong4(")?; self.put_expression(value, &context.expression, true)?; - writeln!(self.out, ");")?; + writeln!(self.out, ", 0uL, 0uL, 0uL));")?; Ok(()) } diff --git a/naga/tests/out/msl/atomicTexture-int64.msl b/naga/tests/out/msl/atomicTexture-int64.msl index 667b0cd14d..f7c4795ee6 100644 --- a/naga/tests/out/msl/atomicTexture-int64.msl +++ b/naga/tests/out/msl/atomicTexture-int64.msl @@ -11,8 +11,8 @@ kernel void cs_main( metal::uint3 id [[thread_position_in_threadgroup]] , metal::texture2d image [[user(fake0)]] ) { - image.atomic_max(metal::uint2(metal::int2(0, 0)), 1uL); + image.atomic_max(metal::uint2(metal::int2(0, 0)), metal::ulong4(1uL, 0uL, 0uL, 0uL)); metal::threadgroup_barrier(metal::mem_flags::mem_threadgroup); - image.atomic_min(metal::uint2(metal::int2(0, 0)), 1uL); + image.atomic_min(metal::uint2(metal::int2(0, 0)), metal::ulong4(1uL, 0uL, 0uL, 0uL)); return; }