From 8086adc90b69f3199767c0617e2c429ce6b27f67 Mon Sep 17 00:00:00 2001 From: "James Helferty (NVIDIA)" Date: Tue, 30 Sep 2025 14:21:27 -0400 Subject: Enable metal tests (#8446) Enables all tests/metal/ tests that can be easily enabled. These tests were not originally designed as render tests; they are generally being enabled for pipecleaning purposes, and will not be rigorously testing the corresponding funcitonality. Where they cannot be enabled as render tests, and a metallib test wasn't already enabled, a metallib test was enabled instead (where possible). Fixes #7892 --- tests/metal/atomic-byteaddressbuffer.slang | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'tests/metal/atomic-byteaddressbuffer.slang') diff --git a/tests/metal/atomic-byteaddressbuffer.slang b/tests/metal/atomic-byteaddressbuffer.slang index 96c338d28..1bedf4bc6 100644 --- a/tests/metal/atomic-byteaddressbuffer.slang +++ b/tests/metal/atomic-byteaddressbuffer.slang @@ -1,7 +1,8 @@ -//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -compute -dx12 -profile cs_6_0 -shaderobj -output-using-type -//TEST(compute, vulkan):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-vk -compute -shaderobj -output-using-type -//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-cuda -compute -shaderobj -output-using-type +//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-slang -compute -dx12 -profile cs_6_0 -shaderobj -output-using-type +//TEST(compute, vulkan):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-vk -compute -shaderobj -output-using-type +//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-cuda -compute -shaderobj -output-using-type //TEST:SIMPLE(filecheck=LIB):-target metallib -entry computeMain -stage compute -DMETAL +//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-metal -compute -shaderobj -output-using-type //TEST_INPUT:ubuffer(data=[0 0 0 0 0]):name=uintBuffer RWByteAddressBuffer uintBuffer; @@ -16,42 +17,42 @@ void computeMain() int oldValue; //LIB: call {{.*}}.atomic.global.add.u.i32 uintBuffer.InterlockedAdd(0, 1, oldValue); - // CHK: 1 + // BUF: 1 outputBuffer[0] = oldValue; uintBuffer.InterlockedAdd(0, 1, oldValue); - // CHK: 2 + // BUF: 2 outputBuffer[1] = (int)oldValue; uintBuffer.InterlockedCompareExchange(0, 3, 4, oldValue); - // CHK: 3 + // BUF: 3 outputBuffer[2] = (int)oldValue; uintBuffer.InterlockedOr(0, 3, oldValue); - // CHK: 4 + // BUF: 4 outputBuffer[3] = oldValue; // 4 uintBuffer.InterlockedExchange(0, 4, oldValue); - // CHK: 7 + // BUF: 7 outputBuffer[4] = oldValue; // 7 uintBuffer.InterlockedMin(0, 3, oldValue); - // CHK: 4 + // BUF: 4 outputBuffer[5] = oldValue; // 4 uintBuffer.InterlockedMax(0, 4, oldValue); - // CHK: 3 + // BUF: 3 outputBuffer[6] = oldValue; // 3 uintBuffer.InterlockedAnd(0, 7, oldValue); - // CHK: 4 + // BUF: 4 outputBuffer[7] = oldValue; // 4 uintBuffer.InterlockedXor(0, 7, oldValue); - // CHK: 4 + // BUF: 4 outputBuffer[8] = oldValue; // 4 - // CHK: 3 + // BUF: 3 outputBuffer[9] = uintBuffer.Load(0); -} \ No newline at end of file +} -- cgit v1.2.3