summaryrefslogtreecommitdiffstats
path: root/tests/compute
diff options
context:
space:
mode:
Diffstat (limited to 'tests/compute')
-rw-r--r--tests/compute/array-param.slang3
-rw-r--r--tests/compute/assoctype-nested.slang3
-rw-r--r--tests/compute/atomics-buffer.slang3
-rw-r--r--tests/compute/atomics-groupshared.slang3
-rw-r--r--tests/compute/atomics.slang3
-rw-r--r--tests/compute/buffer-layout.slang5
-rw-r--r--tests/compute/buffer-type-splitting.slang3
-rw-r--r--tests/compute/byte-address-buffer.slang3
-rw-r--r--tests/compute/cast-zero-to-struct.slang1
-rw-r--r--tests/compute/cbuffer-legalize.slang3
-rw-r--r--tests/compute/compile-time-loop.slang1
-rw-r--r--tests/compute/constexpr.slang3
-rw-r--r--tests/compute/discard-stmt.slang3
-rw-r--r--tests/compute/entry-point-uniform-params.slang3
-rw-r--r--tests/compute/enum.slang3
-rw-r--r--tests/compute/frem.slang1
-rw-r--r--tests/compute/interface-param.slang3
-rw-r--r--tests/compute/interface-shader-param-in-struct.slang1
-rw-r--r--tests/compute/interface-shader-param.slang1
-rw-r--r--tests/compute/interface-static-method.slang3
-rw-r--r--tests/compute/logic-short-circuit-evaluation.slang1
-rw-r--r--tests/compute/loop-unroll.slang3
-rw-r--r--tests/compute/matrix-layout-structured-buffer.slang6
-rw-r--r--tests/compute/matrix-layout.hlsl1
-rw-r--r--tests/compute/modern-syntax.slang3
-rw-r--r--tests/compute/mutating-and-inout.slang1
-rw-r--r--tests/compute/mutating-methods.slang1
-rw-r--r--tests/compute/non-square-column-major.slang1
-rw-r--r--tests/compute/non-square-row-major.slang1
-rw-r--r--tests/compute/parameter-block.slang3
-rw-r--r--tests/compute/semantic.slang3
-rw-r--r--tests/compute/simple.slang3
-rw-r--r--tests/compute/static-const-array.slang3
-rw-r--r--tests/compute/static-const-matrix-array.slang3
-rw-r--r--tests/compute/static-const-vector-array.slang3
-rw-r--r--tests/compute/struct-make.slang3
-rw-r--r--tests/compute/structured-buffer-of-matrices.slang3
-rw-r--r--tests/compute/texture-get-dimensions.slang1
-rw-r--r--tests/compute/texture-sampling.slang1
-rw-r--r--tests/compute/texture-simple.slang1
-rw-r--r--tests/compute/texture-simpler.slang1
-rw-r--r--tests/compute/transcendental-double.slang1
42 files changed, 71 insertions, 28 deletions
diff --git a/tests/compute/array-param.slang b/tests/compute/array-param.slang
index 1ef913a8f..920a18977 100644
--- a/tests/compute/array-param.slang
+++ b/tests/compute/array-param.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name outputBuffer
@@ -22,4 +23,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
float3 b[4];
writeArray(b);
outputBuffer[dispatchThreadID.x] = int(b[0].x);
-} \ No newline at end of file
+}
diff --git a/tests/compute/assoctype-nested.slang b/tests/compute/assoctype-nested.slang
index a4a994e10..2325e4398 100644
--- a/tests/compute/assoctype-nested.slang
+++ b/tests/compute/assoctype-nested.slang
@@ -6,6 +6,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IRandomGenerator
{
@@ -59,4 +60,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
int inputVal = tid;
int outputVal = test(inputVal);
gOutputBuffer[tid] = outputVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/atomics-buffer.slang b/tests/compute/atomics-buffer.slang
index e511ece04..72b86368d 100644
--- a/tests/compute/atomics-buffer.slang
+++ b/tests/compute/atomics-buffer.slang
@@ -9,6 +9,7 @@
//DISABLE_TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cuda -shaderobj
// Atomics not available on CPU currently
//DISABLE_TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(format=R_UInt32, data=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]):out,name outputBuffer
@@ -28,4 +29,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
{
uint tid = dispatchThreadID.x;
test(tid);
-} \ No newline at end of file
+}
diff --git a/tests/compute/atomics-groupshared.slang b/tests/compute/atomics-groupshared.slang
index 5bb757082..fcfc9c8d7 100644
--- a/tests/compute/atomics-groupshared.slang
+++ b/tests/compute/atomics-groupshared.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -vk -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cuda -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name outputBuffer
@@ -41,4 +42,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
uint tid = dispatchThreadID.x;
uint val = test(tid);
outputBuffer[tid] = val;
-} \ No newline at end of file
+}
diff --git a/tests/compute/atomics.slang b/tests/compute/atomics.slang
index ca467c1fb..b00f437f5 100644
--- a/tests/compute/atomics.slang
+++ b/tests/compute/atomics.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -vk -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cuda -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out, name outputBuffer
@@ -23,4 +24,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
{
uint tid = dispatchThreadID.x;
test(tid);
-} \ No newline at end of file
+}
diff --git a/tests/compute/buffer-layout.slang b/tests/compute/buffer-layout.slang
index 8c71904c6..a456fa142 100644
--- a/tests/compute/buffer-layout.slang
+++ b/tests/compute/buffer-layout.slang
@@ -3,10 +3,11 @@
// The goal of this test is to make sure that constant and structured
// buffers obey the rules we expect of the each target API.
-//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx11 -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cpu -shaderobj
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cuda -shaderobj
//TEST_INPUT: ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
RWStructuredBuffer<int> outputBuffer;
@@ -128,4 +129,4 @@ void computeMain(
int inVal = tid;
int outVal = test(inVal);
outputBuffer[tid] = outVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/buffer-type-splitting.slang b/tests/compute/buffer-type-splitting.slang
index 0ccad15de..ea9af3146 100644
--- a/tests/compute/buffer-type-splitting.slang
+++ b/tests/compute/buffer-type-splitting.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE:-cpu
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
//TEST_INPUT:ubuffer(data=[0 2 3 3]):name=s[0].a
@@ -28,4 +29,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
+ s[1].b.Load(i * 4)*4096);
outputBuffer[i] = val;
-} \ No newline at end of file
+}
diff --git a/tests/compute/byte-address-buffer.slang b/tests/compute/byte-address-buffer.slang
index 715be850d..80a1e8e16 100644
--- a/tests/compute/byte-address-buffer.slang
+++ b/tests/compute/byte-address-buffer.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-d3d12 -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Confirm cross-compilation of `(RW)ByteAddressBuffer`
//
@@ -38,4 +39,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
int val = int(tid);
test(val);
-} \ No newline at end of file
+}
diff --git a/tests/compute/cast-zero-to-struct.slang b/tests/compute/cast-zero-to-struct.slang
index 13bd4bf68..148ea8f07 100644
--- a/tests/compute/cast-zero-to-struct.slang
+++ b/tests/compute/cast-zero-to-struct.slang
@@ -5,6 +5,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct S
{
diff --git a/tests/compute/cbuffer-legalize.slang b/tests/compute/cbuffer-legalize.slang
index 7233f71d6..5da305eab 100644
--- a/tests/compute/cbuffer-legalize.slang
+++ b/tests/compute/cbuffer-legalize.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj
//TEST(compute):COMPARE_COMPUTE:-shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: uniform(data=[1 2 3 4]):name=C.p.c
//TEST_INPUT: Texture2D(size=4, content = one):name=C.p.t
@@ -34,4 +35,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
outputBuffer[1] = outVal.y;
outputBuffer[2] = outVal.z;
outputBuffer[3] = outVal.w;
-} \ No newline at end of file
+}
diff --git a/tests/compute/compile-time-loop.slang b/tests/compute/compile-time-loop.slang
index 5b9dd010b..f69708e0c 100644
--- a/tests/compute/compile-time-loop.slang
+++ b/tests/compute/compile-time-loop.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_RENDER_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture2D(size=4, content = one):name t
//TEST_INPUT: Sampler:name s
diff --git a/tests/compute/constexpr.slang b/tests/compute/constexpr.slang
index cf308e7d5..9aa5c1d56 100644
--- a/tests/compute/constexpr.slang
+++ b/tests/compute/constexpr.slang
@@ -1,6 +1,7 @@
// constexpr.slang
//TEST(compute):COMPARE_COMPUTE_EX:-slang -gcompute -shaderobj
//DISABLED://TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -gcompute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture2D(size=4, content = one):name tex
//TEST_INPUT: Sampler:name samp
@@ -109,4 +110,4 @@ FragmentStageOutput fragmentMain(FragmentStageInput input)
outputBuffer[1] = 1;
return output;
-} \ No newline at end of file
+}
diff --git a/tests/compute/discard-stmt.slang b/tests/compute/discard-stmt.slang
index d6c902ec9..90a81c0ff 100644
--- a/tests/compute/discard-stmt.slang
+++ b/tests/compute/discard-stmt.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_RENDER_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture2D(size=4, content = one):name tex
//TEST_INPUT: Sampler:name samp
//TEST_INPUT: ubuffer(data=[0 0], stride=4):out,name outputBuffer
@@ -88,4 +89,4 @@ FragmentStageOutput fragmentMain(FragmentStageInput input)
outputBuffer[1] = 1;
return output;
-} \ No newline at end of file
+}
diff --git a/tests/compute/entry-point-uniform-params.slang b/tests/compute/entry-point-uniform-params.slang
index d150c4241..2a5422f3e 100644
--- a/tests/compute/entry-point-uniform-params.slang
+++ b/tests/compute/entry-point-uniform-params.slang
@@ -9,6 +9,7 @@
//TEST(compute):COMPARE_COMPUTE: -dx11 -shaderobj
//TEST(compute):COMPARE_COMPUTE: -cuda -shaderobj
//TEST(compute):COMPARE_COMPUTE: -cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
@@ -54,4 +55,4 @@ void computeMain(
val = val*16 + tid;
outputBuffer[tid] = val;
-} \ No newline at end of file
+}
diff --git a/tests/compute/enum.slang b/tests/compute/enum.slang
index fe35f438c..42dfad3a8 100644
--- a/tests/compute/enum.slang
+++ b/tests/compute/enum.slang
@@ -2,6 +2,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Confirm that basic `enum` declarations are supported.
@@ -64,4 +65,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
val = test(val);
outputBuffer[tid] = val;
-} \ No newline at end of file
+}
diff --git a/tests/compute/frem.slang b/tests/compute/frem.slang
index 893f29794..8d6551e79 100644
--- a/tests/compute/frem.slang
+++ b/tests/compute/frem.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE:-vk -shaderobj -emit-spirv-directly -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test uses of floating-point `%` operator.
diff --git a/tests/compute/interface-param.slang b/tests/compute/interface-param.slang
index 7d9307522..1aa684b41 100644
--- a/tests/compute/interface-param.slang
+++ b/tests/compute/interface-param.slang
@@ -8,6 +8,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IHelper
{
@@ -42,4 +43,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
int inputVal = tid;
int outputVal = test(inputVal);
gOutputBuffer[tid] = outputVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/interface-shader-param-in-struct.slang b/tests/compute/interface-shader-param-in-struct.slang
index 1a4b12280..3cdbac8cf 100644
--- a/tests/compute/interface-shader-param-in-struct.slang
+++ b/tests/compute/interface-shader-param-in-struct.slang
@@ -6,6 +6,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -profile sm_6_0 -use-dxil
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// A lot of the setup is the same as for `interface-shader-param`,
// so look there if you want the comments.
diff --git a/tests/compute/interface-shader-param.slang b/tests/compute/interface-shader-param.slang
index a43b6f695..8111ccba8 100644
--- a/tests/compute/interface-shader-param.slang
+++ b/tests/compute/interface-shader-param.slang
@@ -8,6 +8,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -profile sm_6_0 -use-dxil
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// First we will define some fake interfaces for testing.
// Let's pretend we are doing some kind of random number
diff --git a/tests/compute/interface-static-method.slang b/tests/compute/interface-static-method.slang
index 05224bdea..78168de1b 100644
--- a/tests/compute/interface-static-method.slang
+++ b/tests/compute/interface-static-method.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IHideout
{
@@ -54,4 +55,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
{
int tid = dispatchThreadID.x;
outputBuffer[tid] = test(tid);
-} \ No newline at end of file
+}
diff --git a/tests/compute/logic-short-circuit-evaluation.slang b/tests/compute/logic-short-circuit-evaluation.slang
index 585a04770..c308e7bf5 100644
--- a/tests/compute/logic-short-circuit-evaluation.slang
+++ b/tests/compute/logic-short-circuit-evaluation.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -compile-arg -O3 -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test doing vector comparisons
diff --git a/tests/compute/loop-unroll.slang b/tests/compute/loop-unroll.slang
index c0ea7686c..f0d97dd59 100644
--- a/tests/compute/loop-unroll.slang
+++ b/tests/compute/loop-unroll.slang
@@ -5,6 +5,7 @@
//TEST(compute):COMPARE_COMPUTE:-cuda -shaderobj
// Note VK output is not loop unrolled
//TEST(compute):COMPARE_COMPUTE:-vk -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out, name buffers[0]
//TEST_INPUT:ubuffer(data=[0 1 2 3], stride=4):name buffers[1]
@@ -36,4 +37,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
}
buffers[0][tid] = unroll;
-} \ No newline at end of file
+}
diff --git a/tests/compute/matrix-layout-structured-buffer.slang b/tests/compute/matrix-layout-structured-buffer.slang
index 6893a5df9..588c93685 100644
--- a/tests/compute/matrix-layout-structured-buffer.slang
+++ b/tests/compute/matrix-layout-structured-buffer.slang
@@ -5,8 +5,10 @@
// buffers of matrices, where fxc/dxc do *not* respect
// the matrix layout mode by default.
-//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-row-major -shaderobj
-//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-column-major -shaderobj
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-row-major -shaderobj -dx11
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-column-major -shaderobj -dx11
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-row-major -shaderobj -dx12
+//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-column-major -shaderobj -dx12
//TEST_INPUT:ubuffer(data=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23], stride=48):name=gMatrices
RWStructuredBuffer<int3x4> gMatrices;
diff --git a/tests/compute/matrix-layout.hlsl b/tests/compute/matrix-layout.hlsl
index 571003a10..4a2d3f014 100644
--- a/tests/compute/matrix-layout.hlsl
+++ b/tests/compute/matrix-layout.hlsl
@@ -9,6 +9,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-row-major -shaderobj
//TEST(compute,compatibility-issue):COMPARE_COMPUTE_EX:-slang -compute -dx12 -use-dxil -xslang -matrix-layout-row-major -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Not testing on Vulkan because of lack of support
// for integer matrices in GLSL. Slang needs to
diff --git a/tests/compute/modern-syntax.slang b/tests/compute/modern-syntax.slang
index d6bdcd3bd..fbadfea7f 100644
--- a/tests/compute/modern-syntax.slang
+++ b/tests/compute/modern-syntax.slang
@@ -1,6 +1,7 @@
// modern-syntax.slang
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -slang -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// This file exists to confirm that declarations using "modern"
// syntax are handled correctly by the compiler front-end.
@@ -24,4 +25,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
int tid = dispatchThreadID.x;
int val = test(tid);
outputBuffer[tid] = val;
-} \ No newline at end of file
+}
diff --git a/tests/compute/mutating-and-inout.slang b/tests/compute/mutating-and-inout.slang
index 37cc30870..7ddc592eb 100644
--- a/tests/compute/mutating-and-inout.slang
+++ b/tests/compute/mutating-and-inout.slang
@@ -3,6 +3,7 @@
// Test that calling a `[mutating]` method on an `inout` function parameter works.
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
RWStructuredBuffer<int> outputBuffer;
diff --git a/tests/compute/mutating-methods.slang b/tests/compute/mutating-methods.slang
index 6f561e9a6..56bf16f0b 100644
--- a/tests/compute/mutating-methods.slang
+++ b/tests/compute/mutating-methods.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -xslang -serial-ir -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -xslang -serial-ir -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -xslang -serial-ir -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IAccumulator
{
diff --git a/tests/compute/non-square-column-major.slang b/tests/compute/non-square-column-major.slang
index ae82d4818..09ed8e1c2 100644
--- a/tests/compute/non-square-column-major.slang
+++ b/tests/compute/non-square-column-major.slang
@@ -8,6 +8,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -output-using-type -xslang -matrix-layout-column-major -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -output-using-type -xslang -matrix-layout-column-major -shaderobj
//DISABLE_TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -output-using-type -xslang -matrix-layout-column-major -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// matrix<R, C>
//TEST_INPUT:cbuffer(data=[1.0 0.0 10.0 0.0 0.0 1.0 20.0 0.0]):name matrixBuffer
diff --git a/tests/compute/non-square-row-major.slang b/tests/compute/non-square-row-major.slang
index 9562e37ea..b9a9c2fbb 100644
--- a/tests/compute/non-square-row-major.slang
+++ b/tests/compute/non-square-row-major.slang
@@ -8,6 +8,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -output-using-type -xslang -matrix-layout-row-major -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -output-using-type -xslang -matrix-layout-row-major -shaderobj
//DISABLE_TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -output-using-type -xslang -matrix-layout-row-major -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// matrix<R, C>
diff --git a/tests/compute/parameter-block.slang b/tests/compute/parameter-block.slang
index f7fa718de..27cfed716 100644
--- a/tests/compute/parameter-block.slang
+++ b/tests/compute/parameter-block.slang
@@ -2,6 +2,7 @@
//TEST(compute):COMPARE_COMPUTE:-cuda -shaderobj
//TEST(compute):COMPARE_COMPUTE:-vk -shaderobj
//TEST(compute):COMPARE_COMPUTE:-shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Ensure that Slang `ParameterBlock` type is lowered
// to HLSL in the fashion that we expect.
@@ -27,4 +28,4 @@ void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
int outVal = inVal;
block0.buffer[tid] = outVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/semantic.slang b/tests/compute/semantic.slang
index c0411f572..4946b928d 100644
--- a/tests/compute/semantic.slang
+++ b/tests/compute/semantic.slang
@@ -2,6 +2,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -compute-dispatch 3,1,1 -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -compute-dispatch 3,1,1 -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -compute-dispatch 3,1,1 -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0 0 0 0 0], stride=4):out,name outputBuffer
RWStructuredBuffer<int> outputBuffer;
@@ -10,4 +11,4 @@ RWStructuredBuffer<int> outputBuffer;
void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID, uint3 groupID : SV_GroupID, uint3 groupThreadID : SV_GroupThreadId)
{
outputBuffer[dispatchThreadID.x] = int((dispatchThreadID.x << 8) | (groupID.x << 4) | (groupThreadID.x));
-} \ No newline at end of file
+}
diff --git a/tests/compute/simple.slang b/tests/compute/simple.slang
index 49628c47f..d9e642dd5 100644
--- a/tests/compute/simple.slang
+++ b/tests/compute/simple.slang
@@ -2,6 +2,7 @@
//TEST(smoke,compute):COMPARE_COMPUTE:-dx12 -use-dxil -shaderobj
//TEST(smoke,compute):COMPARE_COMPUTE:-cpu -shaderobj
//TEST(smoke,compute):COMPARE_COMPUTE:-vk -shaderobj
+//TEST(smoke,compute):COMPARE_COMPUTE:-mtl -shaderobj
//TEST(smoke,compute):COMPARE_COMPUTE:-cuda -shaderobj
//TEST(smoke,compute):COMPARE_COMPUTE(filecheck-buffer=CHECK):-cpu -shaderobj
@@ -19,4 +20,4 @@ RWStructuredBuffer<float> outputBuffer;
void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
{
outputBuffer[dispatchThreadID.x] = float(dispatchThreadID.x);
-} \ No newline at end of file
+}
diff --git a/tests/compute/static-const-array.slang b/tests/compute/static-const-array.slang
index f18f7cb15..48c47bea1 100644
--- a/tests/compute/static-const-array.slang
+++ b/tests/compute/static-const-array.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -slang -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out, name outputBuffer
RWStructuredBuffer<int> outputBuffer;
@@ -20,4 +21,4 @@ void computeMain(int3 tid : SV_DispatchThreadID)
int inVal = tid.x;
int outVal = test(inVal);
outputBuffer[inVal] = outVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/static-const-matrix-array.slang b/tests/compute/static-const-matrix-array.slang
index afe2468f2..b2c5f80a0 100644
--- a/tests/compute/static-const-matrix-array.slang
+++ b/tests/compute/static-const-matrix-array.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -output-using-type -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -output-using-type -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -slang -compute -output-using-type -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0], stride=4):out, name outputBuffer
RWStructuredBuffer<float> outputBuffer;
@@ -33,4 +34,4 @@ void computeMain(int3 tid : SV_DispatchThreadID)
int inVal = tid.x;
float outVal = test(inVal, inVal & 1);
outputBuffer[inVal] = outVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/static-const-vector-array.slang b/tests/compute/static-const-vector-array.slang
index e3611bcde..35ad8283c 100644
--- a/tests/compute/static-const-vector-array.slang
+++ b/tests/compute/static-const-vector-array.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -output-using-type -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -output-using-type -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -slang -compute -output-using-type -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0], stride=4):out, name outputBuffer
RWStructuredBuffer<float> outputBuffer;
@@ -30,4 +31,4 @@ void computeMain(int3 tid : SV_DispatchThreadID)
int inVal = tid.x;
float outVal = test(inVal);
outputBuffer[inVal] = outVal;
-} \ No newline at end of file
+}
diff --git a/tests/compute/struct-make.slang b/tests/compute/struct-make.slang
index 6cc3c48e5..29aeaf487 100644
--- a/tests/compute/struct-make.slang
+++ b/tests/compute/struct-make.slang
@@ -2,6 +2,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-cpu -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Confirm that scoping on enums and types works
@@ -27,4 +28,4 @@ void computeMain(int3 dispatchThreadID : SV_DispatchThreadID)
Thing thing = Thing::make(tid);
outputBuffer[tid] = thing.a;
-} \ No newline at end of file
+}
diff --git a/tests/compute/structured-buffer-of-matrices.slang b/tests/compute/structured-buffer-of-matrices.slang
index faa312fc2..507611d5a 100644
--- a/tests/compute/structured-buffer-of-matrices.slang
+++ b/tests/compute/structured-buffer-of-matrices.slang
@@ -15,6 +15,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -xslang -matrix-layout-row-major -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -xslang -matrix-layout-row-major -shaderobj
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -xslang -matrix-layout-row-major -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Note: we are using a buffer of floating-point matrices, but fill it with integer
// data, to allow this test to work on the Vulkan targets, which do not currently
@@ -38,4 +39,4 @@ void computeMain(int3 tid : SV_DispatchThreadID)
int value = tid.x;
value = test(value);
gOutput[tid.x] = value;
-} \ No newline at end of file
+}
diff --git a/tests/compute/texture-get-dimensions.slang b/tests/compute/texture-get-dimensions.slang
index 526e9feb1..9fb1eb828 100644
--- a/tests/compute/texture-get-dimensions.slang
+++ b/tests/compute/texture-get-dimensions.slang
@@ -6,6 +6,7 @@
//DISABLE_TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj
// TODO(JS): Doesn't work on CUDA as there aren't any CUDA functions to get dimensions.
//DISABLE_TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture1D(size=4, content = one):name t1D
Texture1D<float> t1D;
diff --git a/tests/compute/texture-sampling.slang b/tests/compute/texture-sampling.slang
index 9ef0075bb..89041dafb 100644
--- a/tests/compute/texture-sampling.slang
+++ b/tests/compute/texture-sampling.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_RENDER_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_RENDER_COMPUTE: -shaderobj -output-using-type -vk
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture1D(size=4, content = one):name=t1D
diff --git a/tests/compute/texture-simple.slang b/tests/compute/texture-simple.slang
index efa83edfb..b06be9a49 100644
--- a/tests/compute/texture-simple.slang
+++ b/tests/compute/texture-simple.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -profile cs_6_0 -use-dxil -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj -output-using-type -render-feature hardware-device
//TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Doesn't work on CUDA, not clear why yet
//DISABLE_TEST_INPUT: Texture1D(format=R_Float32, size=4, content = one, mipMaps=1):name tLoad1D
diff --git a/tests/compute/texture-simpler.slang b/tests/compute/texture-simpler.slang
index 18af1cd62..196e8e96c 100644
--- a/tests/compute/texture-simpler.slang
+++ b/tests/compute/texture-simpler.slang
@@ -4,6 +4,7 @@
//TEST(smoke,compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -profile cs_6_0 -use-dxil -shaderobj -output-using-type
//TEST(smoke,compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj -output-using-type -render-feature hardware-device
//TEST(smoke,compute):COMPARE_COMPUTE_EX:-cuda -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: Texture2D(size=4, content = one):name t2D
Texture2D<float> t2D;
diff --git a/tests/compute/transcendental-double.slang b/tests/compute/transcendental-double.slang
index 4e84ea4ef..886bdfd4c 100644
--- a/tests/compute/transcendental-double.slang
+++ b/tests/compute/transcendental-double.slang
@@ -6,6 +6,7 @@
//DISABLE_TEST(compute):COMPARE_COMPUTE: -dx12 -output-using-type -shaderobj
// When using double on vulkan the values are incorrect(!)
//DISABLE_TEST(compute,vulkan):COMPARE_COMPUTE:-vk -output-using-type -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0 0 0], stride=4):out,name=outputBuffer
RWStructuredBuffer<float> outputBuffer;