summaryrefslogtreecommitdiffstats
path: root/tests/language-feature
diff options
context:
space:
mode:
Diffstat (limited to 'tests/language-feature')
-rw-r--r--tests/language-feature/bit-cast/struct-bit-cast.slang1
-rw-r--r--tests/language-feature/bitfield/sizeof.slang1
-rw-r--r--tests/language-feature/constants/constexpr-loop.slang1
-rw-r--r--tests/language-feature/constants/static-const-in-interface.slang1
-rw-r--r--tests/language-feature/constants/static-const-in-struct.slang1
-rw-r--r--tests/language-feature/constants/type-cast-const.slang1
-rw-r--r--tests/language-feature/constants/type-cast-truncate.slang1
-rw-r--r--tests/language-feature/enums/enum-bit-ops.slang1
-rw-r--r--tests/language-feature/enums/enum-equality.slang1
-rw-r--r--tests/language-feature/enums/enum-generic-arg.slang1
-rw-r--r--tests/language-feature/enums/nested-enum.slang1
-rw-r--r--tests/language-feature/extensions/extension-method-simple.slang1
-rw-r--r--tests/language-feature/extensions/interface-extension.slang1
-rw-r--r--tests/language-feature/generics/arithmetic-ops.slang1
-rw-r--r--tests/language-feature/generics/generic-interface-1.slang1
-rw-r--r--tests/language-feature/generics/generic-interface-2.slang1
-rw-r--r--tests/language-feature/generics/generic-value-constant-folding.slang1
-rw-r--r--tests/language-feature/generics/iarray.slang1
-rw-r--r--tests/language-feature/generics/partial-generic-argument-inference.slang1
-rw-r--r--tests/language-feature/generics/struct-generic-value-param.slang1
-rw-r--r--tests/language-feature/generics/typealias.slang1
-rw-r--r--tests/language-feature/higher-order-functions/simple.slang1
-rw-r--r--tests/language-feature/inheritance/derived-struct-init-list.slang1
-rw-r--r--tests/language-feature/inheritance/struct-inherit-interface-requirement.slang1
-rw-r--r--tests/language-feature/inheritance/struct-inheritance.slang1
-rw-r--r--tests/language-feature/interfaces/interface-conjunction.slang1
-rw-r--r--tests/language-feature/modules/include/main.slang1
-rw-r--r--tests/language-feature/multi-level-break-switch.slang1
-rw-r--r--tests/language-feature/namespaces/multiple-namespace.slang1
-rw-r--r--tests/language-feature/namespaces/namespace-import/test.slang1
-rw-r--r--tests/language-feature/namespaces/namespace-include/a.slang1
-rw-r--r--tests/language-feature/namespaces/namespace-using/b.slang1
-rw-r--r--tests/language-feature/namespaces/simple-namespace.slang1
-rw-r--r--tests/language-feature/namespaces/using-namespace.slang1
-rw-r--r--tests/language-feature/non-copyable-return.slang1
-rw-r--r--tests/language-feature/operators/subscript-multi-dimension.slang1
-rw-r--r--tests/language-feature/parameters/generic-func-param-default-arg.slang1
-rw-r--r--tests/language-feature/pointer/const-ref.slang1
-rw-r--r--tests/language-feature/properties/property-decl.slang1
-rw-r--r--tests/language-feature/shader-params/entry-point-uniform-params.slang1
-rw-r--r--tests/language-feature/shader-params/interface-shader-param-ordinary.slang1
-rw-r--r--tests/language-feature/simple-inline.slang1
-rw-r--r--tests/language-feature/struct-in-func.slang1
-rw-r--r--tests/language-feature/swizzles/matrix-swizzle-write-array.slang1
-rw-r--r--tests/language-feature/swizzles/matrix-swizzle-write-single.slang1
-rw-r--r--tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang1
-rw-r--r--tests/language-feature/swizzles/matrix-swizzle-write.slang1
-rw-r--r--tests/language-feature/swizzles/matrix-swizzles.slang1
-rw-r--r--tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang1
-rw-r--r--tests/language-feature/types/opaque/inout-param-opaque-type.slang1
-rw-r--r--tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang1
-rw-r--r--tests/language-feature/types/opaque/out-param-opaque-type.slang1
-rw-r--r--tests/language-feature/types/opaque/return-opaque-type-in-struct.slang1
-rw-r--r--tests/language-feature/types/opaque/return-opaque-type.slang1
54 files changed, 54 insertions, 0 deletions
diff --git a/tests/language-feature/bit-cast/struct-bit-cast.slang b/tests/language-feature/bit-cast/struct-bit-cast.slang
index 630efb1e0..de92ac8b0 100644
--- a/tests/language-feature/bit-cast/struct-bit-cast.slang
+++ b/tests/language-feature/bit-cast/struct-bit-cast.slang
@@ -1,6 +1,7 @@
// struct-bit-cast.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that bit_cast works for bit-reinterpreting one struct type as another.
diff --git a/tests/language-feature/bitfield/sizeof.slang b/tests/language-feature/bitfield/sizeof.slang
index 57056d1b2..e3ada9566 100644
--- a/tests/language-feature/bitfield/sizeof.slang
+++ b/tests/language-feature/bitfield/sizeof.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK):-cpu -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// CHECK: 1
// CHECK-NEXT: 1
diff --git a/tests/language-feature/constants/constexpr-loop.slang b/tests/language-feature/constants/constexpr-loop.slang
index 31b4294a5..94c71d219 100644
--- a/tests/language-feature/constants/constexpr-loop.slang
+++ b/tests/language-feature/constants/constexpr-loop.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT: set g_texture = Texture2D(size=8, content = one)
//TEST_INPUT: set g_sampler = Sampler
diff --git a/tests/language-feature/constants/static-const-in-interface.slang b/tests/language-feature/constants/static-const-in-interface.slang
index 48737564f..e45803b59 100644
--- a/tests/language-feature/constants/static-const-in-interface.slang
+++ b/tests/language-feature/constants/static-const-in-interface.slang
@@ -1,6 +1,7 @@
// static-const-in-interface.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that `static const` variable declarations inside of
// a `interface` type correctly translate to interface requirements.
diff --git a/tests/language-feature/constants/static-const-in-struct.slang b/tests/language-feature/constants/static-const-in-struct.slang
index 5d4ce6802..d87ed7903 100644
--- a/tests/language-feature/constants/static-const-in-struct.slang
+++ b/tests/language-feature/constants/static-const-in-struct.slang
@@ -1,6 +1,7 @@
// static-const-in-struct.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that `static const` variable declarations inside of
// a `struct` type correctly translate to constants in
diff --git a/tests/language-feature/constants/type-cast-const.slang b/tests/language-feature/constants/type-cast-const.slang
index d0291aa7d..60661db50 100644
--- a/tests/language-feature/constants/type-cast-const.slang
+++ b/tests/language-feature/constants/type-cast-const.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE:
//TEST:SIMPLE(filecheck=CHECK): -target hlsl -entry computeMain -profile cs_5_0
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
int check<let b : bool>(int x)
{
diff --git a/tests/language-feature/constants/type-cast-truncate.slang b/tests/language-feature/constants/type-cast-truncate.slang
index 451d982f2..ca73307e0 100644
--- a/tests/language-feature/constants/type-cast-truncate.slang
+++ b/tests/language-feature/constants/type-cast-truncate.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE: -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0], stride=4):out,name=outputBuffer
RWStructuredBuffer<int> outputBuffer;
diff --git a/tests/language-feature/enums/enum-bit-ops.slang b/tests/language-feature/enums/enum-bit-ops.slang
index abffe8dee..a3808ff89 100644
--- a/tests/language-feature/enums/enum-bit-ops.slang
+++ b/tests/language-feature/enums/enum-bit-ops.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
[Flags]
enum MyFlags
diff --git a/tests/language-feature/enums/enum-equality.slang b/tests/language-feature/enums/enum-equality.slang
index 278b26a65..372772b15 100644
--- a/tests/language-feature/enums/enum-equality.slang
+++ b/tests/language-feature/enums/enum-equality.slang
@@ -4,6 +4,7 @@
// types works as expected.
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
enum Channel
{
diff --git a/tests/language-feature/enums/enum-generic-arg.slang b/tests/language-feature/enums/enum-generic-arg.slang
index e851727e1..4ea048d67 100644
--- a/tests/language-feature/enums/enum-generic-arg.slang
+++ b/tests/language-feature/enums/enum-generic-arg.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that enum values can be used as compile time constants
// to specialize generics.
diff --git a/tests/language-feature/enums/nested-enum.slang b/tests/language-feature/enums/nested-enum.slang
index 5b45abae7..518bfd202 100644
--- a/tests/language-feature/enums/nested-enum.slang
+++ b/tests/language-feature/enums/nested-enum.slang
@@ -3,6 +3,7 @@
// Test enums defined nested in a struct work as expected.
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct Outer
{
diff --git a/tests/language-feature/extensions/extension-method-simple.slang b/tests/language-feature/extensions/extension-method-simple.slang
index d3162c053..8d763b833 100644
--- a/tests/language-feature/extensions/extension-method-simple.slang
+++ b/tests/language-feature/extensions/extension-method-simple.slang
@@ -3,6 +3,7 @@
// Test that an `extension` applied to an interface type works as users expect
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct MyType
{
diff --git a/tests/language-feature/extensions/interface-extension.slang b/tests/language-feature/extensions/interface-extension.slang
index 1d84ba844..770004265 100644
--- a/tests/language-feature/extensions/interface-extension.slang
+++ b/tests/language-feature/extensions/interface-extension.slang
@@ -3,6 +3,7 @@
// Test that an `extension` applied to an interface type works as users expect
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface ICounter
{
diff --git a/tests/language-feature/generics/arithmetic-ops.slang b/tests/language-feature/generics/arithmetic-ops.slang
index d2f1af47f..2a0ddcbb8 100644
--- a/tests/language-feature/generics/arithmetic-ops.slang
+++ b/tests/language-feature/generics/arithmetic-ops.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
T simpleTest<T : IArithmetic>(T v0, T v1)
{
if (v0 > T(0))
diff --git a/tests/language-feature/generics/generic-interface-1.slang b/tests/language-feature/generics/generic-interface-1.slang
index 217e7f06f..bd551cee4 100644
--- a/tests/language-feature/generics/generic-interface-1.slang
+++ b/tests/language-feature/generics/generic-interface-1.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IEqlTestable<T>
{
diff --git a/tests/language-feature/generics/generic-interface-2.slang b/tests/language-feature/generics/generic-interface-2.slang
index 9a44f679c..febc2e584 100644
--- a/tests/language-feature/generics/generic-interface-2.slang
+++ b/tests/language-feature/generics/generic-interface-2.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IFoo<let n: uint>
{
diff --git a/tests/language-feature/generics/generic-value-constant-folding.slang b/tests/language-feature/generics/generic-value-constant-folding.slang
index f7525e6fd..112d3f503 100644
--- a/tests/language-feature/generics/generic-value-constant-folding.slang
+++ b/tests/language-feature/generics/generic-value-constant-folding.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct PlusOne<let v : int>
{
diff --git a/tests/language-feature/generics/iarray.slang b/tests/language-feature/generics/iarray.slang
index b66c3ab27..d25140670 100644
--- a/tests/language-feature/generics/iarray.slang
+++ b/tests/language-feature/generics/iarray.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
T sum<T:IFloat>(IArray<T> array)
{
diff --git a/tests/language-feature/generics/partial-generic-argument-inference.slang b/tests/language-feature/generics/partial-generic-argument-inference.slang
index 4ee50b88d..9ce6220f9 100644
--- a/tests/language-feature/generics/partial-generic-argument-inference.slang
+++ b/tests/language-feature/generics/partial-generic-argument-inference.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// This test confirms that we can provide a subset of the required generic
// arguments to a generic function, and have the rest be inferred from the
diff --git a/tests/language-feature/generics/struct-generic-value-param.slang b/tests/language-feature/generics/struct-generic-value-param.slang
index 7b3b847d5..b3358d829 100644
--- a/tests/language-feature/generics/struct-generic-value-param.slang
+++ b/tests/language-feature/generics/struct-generic-value-param.slang
@@ -17,6 +17,7 @@
// when trying out the feature.
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
import struct_generic_value_param_import;
diff --git a/tests/language-feature/generics/typealias.slang b/tests/language-feature/generics/typealias.slang
index 3895c984a..90a048603 100644
--- a/tests/language-feature/generics/typealias.slang
+++ b/tests/language-feature/generics/typealias.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct MyGenType<T : IArithmetic, let n : int>
{
T value;
diff --git a/tests/language-feature/higher-order-functions/simple.slang b/tests/language-feature/higher-order-functions/simple.slang
index 1443bd60d..8a3544b91 100644
--- a/tests/language-feature/higher-order-functions/simple.slang
+++ b/tests/language-feature/higher-order-functions/simple.slang
@@ -1,6 +1,7 @@
//TEST(compute, vulkan):COMPARE_COMPUTE_EX():-vk -compute -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE_EX():-slang -compute -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
RWStructuredBuffer<uint> outputBuffer;
diff --git a/tests/language-feature/inheritance/derived-struct-init-list.slang b/tests/language-feature/inheritance/derived-struct-init-list.slang
index 978fea904..97ae5799b 100644
--- a/tests/language-feature/inheritance/derived-struct-init-list.slang
+++ b/tests/language-feature/inheritance/derived-struct-init-list.slang
@@ -1,6 +1,7 @@
// derived-struct-init-list.slang
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that use of an initializer list (especially
// an empty initializer list) is still possible
diff --git a/tests/language-feature/inheritance/struct-inherit-interface-requirement.slang b/tests/language-feature/inheritance/struct-inherit-interface-requirement.slang
index fbf3405ff..2b3378622 100644
--- a/tests/language-feature/inheritance/struct-inherit-interface-requirement.slang
+++ b/tests/language-feature/inheritance/struct-inherit-interface-requirement.slang
@@ -1,6 +1,7 @@
// struct-inherit-interface-requirement.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that a `struct` type can use an inherited
// member to satisfy an interface requirement.
diff --git a/tests/language-feature/inheritance/struct-inheritance.slang b/tests/language-feature/inheritance/struct-inheritance.slang
index e50b1268b..7ac680577 100644
--- a/tests/language-feature/inheritance/struct-inheritance.slang
+++ b/tests/language-feature/inheritance/struct-inheritance.slang
@@ -1,6 +1,7 @@
// struct-inheritance.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that we can define a `struct` type
// that inherits from another `struct`.
diff --git a/tests/language-feature/interfaces/interface-conjunction.slang b/tests/language-feature/interfaces/interface-conjunction.slang
index dbb573431..5610d79f3 100644
--- a/tests/language-feature/interfaces/interface-conjunction.slang
+++ b/tests/language-feature/interfaces/interface-conjunction.slang
@@ -3,6 +3,7 @@
// Test that we can compose interfaces with `&`
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IFirst
{
diff --git a/tests/language-feature/modules/include/main.slang b/tests/language-feature/modules/include/main.slang
index e036adc3c..1327fae14 100644
--- a/tests/language-feature/modules/include/main.slang
+++ b/tests/language-feature/modules/include/main.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
module main;
diff --git a/tests/language-feature/multi-level-break-switch.slang b/tests/language-feature/multi-level-break-switch.slang
index 54c47278a..799493cd4 100644
--- a/tests/language-feature/multi-level-break-switch.slang
+++ b/tests/language-feature/multi-level-break-switch.slang
@@ -2,6 +2,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//DISABLE_TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
int test(int t, int r)
{
diff --git a/tests/language-feature/namespaces/multiple-namespace.slang b/tests/language-feature/namespaces/multiple-namespace.slang
index f8ad2eda0..0eadcd3ca 100644
--- a/tests/language-feature/namespaces/multiple-namespace.slang
+++ b/tests/language-feature/namespaces/multiple-namespace.slang
@@ -1,6 +1,7 @@
// multiple-namespace.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Multiple namespace open/closing
diff --git a/tests/language-feature/namespaces/namespace-import/test.slang b/tests/language-feature/namespaces/namespace-import/test.slang
index 285883c69..7175db4e1 100644
--- a/tests/language-feature/namespaces/namespace-import/test.slang
+++ b/tests/language-feature/namespaces/namespace-import/test.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
module test;
diff --git a/tests/language-feature/namespaces/namespace-include/a.slang b/tests/language-feature/namespaces/namespace-include/a.slang
index 6660f590d..02404c744 100644
--- a/tests/language-feature/namespaces/namespace-include/a.slang
+++ b/tests/language-feature/namespaces/namespace-include/a.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
module a;
diff --git a/tests/language-feature/namespaces/namespace-using/b.slang b/tests/language-feature/namespaces/namespace-using/b.slang
index 3e5816662..0835584a7 100644
--- a/tests/language-feature/namespaces/namespace-using/b.slang
+++ b/tests/language-feature/namespaces/namespace-using/b.slang
@@ -1,4 +1,5 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
module b;
diff --git a/tests/language-feature/namespaces/simple-namespace.slang b/tests/language-feature/namespaces/simple-namespace.slang
index 2066d2b7c..86223a145 100644
--- a/tests/language-feature/namespaces/simple-namespace.slang
+++ b/tests/language-feature/namespaces/simple-namespace.slang
@@ -1,6 +1,7 @@
// simple-namespace.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that simple `namespace` declarations work as expected
diff --git a/tests/language-feature/namespaces/using-namespace.slang b/tests/language-feature/namespaces/using-namespace.slang
index d55816570..aac983807 100644
--- a/tests/language-feature/namespaces/using-namespace.slang
+++ b/tests/language-feature/namespaces/using-namespace.slang
@@ -3,6 +3,7 @@
// Test that `using` can bring declarations from a namespace into scope
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
namespace X
{
diff --git a/tests/language-feature/non-copyable-return.slang b/tests/language-feature/non-copyable-return.slang
index 9b280b982..123bceac0 100644
--- a/tests/language-feature/non-copyable-return.slang
+++ b/tests/language-feature/non-copyable-return.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE(filecheck-buffer=CHECK): -shaderobj -output-using-type
//TEST(compute):SIMPLE(filecheck=GLSL): -stage compute -entry computeMain -target glsl
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Note: spirv_by_reference is only supported for passing opaque types, so this test won't produce
// expected result on vulkan.
diff --git a/tests/language-feature/operators/subscript-multi-dimension.slang b/tests/language-feature/operators/subscript-multi-dimension.slang
index c15e390dc..fef8199fb 100644
--- a/tests/language-feature/operators/subscript-multi-dimension.slang
+++ b/tests/language-feature/operators/subscript-multi-dimension.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj -output-using-type
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct S
{
diff --git a/tests/language-feature/parameters/generic-func-param-default-arg.slang b/tests/language-feature/parameters/generic-func-param-default-arg.slang
index b7e8d6fa2..91169c767 100644
--- a/tests/language-feature/parameters/generic-func-param-default-arg.slang
+++ b/tests/language-feature/parameters/generic-func-param-default-arg.slang
@@ -4,6 +4,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//TEST_DISABLED:SIMPLE:-target hlsl -entry computeMain -dump-ir
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
interface IValue
diff --git a/tests/language-feature/pointer/const-ref.slang b/tests/language-feature/pointer/const-ref.slang
index f62fda697..d00746940 100644
--- a/tests/language-feature/pointer/const-ref.slang
+++ b/tests/language-feature/pointer/const-ref.slang
@@ -3,6 +3,7 @@
//TEST:SIMPLE(filecheck=CHECK): -target cuda -entry computeMain -stage compute
//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUFFER): -slang -compute -output-using-type -shaderobj
//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUFFER): -vk -compute -output-using-type -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
diff --git a/tests/language-feature/properties/property-decl.slang b/tests/language-feature/properties/property-decl.slang
index ac0cee666..3b4b6d4fa 100644
--- a/tests/language-feature/properties/property-decl.slang
+++ b/tests/language-feature/properties/property-decl.slang
@@ -1,6 +1,7 @@
// property-decl.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that users can declare properties and access them
// with ordinary dot syntax.
diff --git a/tests/language-feature/shader-params/entry-point-uniform-params.slang b/tests/language-feature/shader-params/entry-point-uniform-params.slang
index 7053dd316..e150d3982 100644
--- a/tests/language-feature/shader-params/entry-point-uniform-params.slang
+++ b/tests/language-feature/shader-params/entry-point-uniform-params.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//TEST(compute):COMPARE_COMPUTE:-cuda -shaderobj
//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that a shader can be written that
// only uses entry point `uniform` parameters,
diff --git a/tests/language-feature/shader-params/interface-shader-param-ordinary.slang b/tests/language-feature/shader-params/interface-shader-param-ordinary.slang
index 5ce346956..7260b27f4 100644
--- a/tests/language-feature/shader-params/interface-shader-param-ordinary.slang
+++ b/tests/language-feature/shader-params/interface-shader-param-ordinary.slang
@@ -8,6 +8,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
interface IModifier
{
diff --git a/tests/language-feature/simple-inline.slang b/tests/language-feature/simple-inline.slang
index 8203f489b..f03f4fcab 100644
--- a/tests/language-feature/simple-inline.slang
+++ b/tests/language-feature/simple-inline.slang
@@ -3,6 +3,7 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj
//DISABLE_TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
[ForceInline]
int test(int r)
diff --git a/tests/language-feature/struct-in-func.slang b/tests/language-feature/struct-in-func.slang
index d3bd046f0..bcba028e0 100644
--- a/tests/language-feature/struct-in-func.slang
+++ b/tests/language-feature/struct-in-func.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -shaderobj
//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
int test(int r)
{
diff --git a/tests/language-feature/swizzles/matrix-swizzle-write-array.slang b/tests/language-feature/swizzles/matrix-swizzle-write-array.slang
index 7d266b8cd..e9510de06 100644
--- a/tests/language-feature/swizzles/matrix-swizzle-write-array.slang
+++ b/tests/language-feature/swizzles/matrix-swizzle-write-array.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -compute -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE: -vk -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that matrix swizzle writes work correctly
// Matrix swizzles can either be one or zero indexed
diff --git a/tests/language-feature/swizzles/matrix-swizzle-write-single.slang b/tests/language-feature/swizzles/matrix-swizzle-write-single.slang
index e622d216c..d8bb11ea5 100644
--- a/tests/language-feature/swizzles/matrix-swizzle-write-single.slang
+++ b/tests/language-feature/swizzles/matrix-swizzle-write-single.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -compute -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE: -vk -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that writes to single matrix elements with swizzles work
diff --git a/tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang b/tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang
index a0d267c7a..b73b14249 100644
--- a/tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang
+++ b/tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -compute -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE: -vk -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that writing to swizzles of matrix swizzles works correctly
diff --git a/tests/language-feature/swizzles/matrix-swizzle-write.slang b/tests/language-feature/swizzles/matrix-swizzle-write.slang
index 5baa4407c..d467d33db 100644
--- a/tests/language-feature/swizzles/matrix-swizzle-write.slang
+++ b/tests/language-feature/swizzles/matrix-swizzle-write.slang
@@ -1,5 +1,6 @@
//TEST(compute):COMPARE_COMPUTE: -compute -shaderobj -output-using-type
//TEST(compute, vulkan):COMPARE_COMPUTE: -vk -compute -shaderobj -output-using-type
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that matrix swizzle writes work correctly
// Matrix swizzles can either be one or zero indexed
diff --git a/tests/language-feature/swizzles/matrix-swizzles.slang b/tests/language-feature/swizzles/matrix-swizzles.slang
index fb9f9238f..ad56c8b06 100644
--- a/tests/language-feature/swizzles/matrix-swizzles.slang
+++ b/tests/language-feature/swizzles/matrix-swizzles.slang
@@ -1,6 +1,7 @@
// matrix-swizzle.slang
//TEST(compute):COMPARE_COMPUTE: -shaderobj
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
// Test that matrix swizzle works correctly
// Matrix swizzles can either be one or zero indexed
diff --git a/tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang b/tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang
index c328d4c44..64e4d968a 100644
--- a/tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang
+++ b/tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang
@@ -4,6 +4,7 @@
// aggregate type that includes an opaque type
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct Things
{
diff --git a/tests/language-feature/types/opaque/inout-param-opaque-type.slang b/tests/language-feature/types/opaque/inout-param-opaque-type.slang
index 83c20d040..eed42ca69 100644
--- a/tests/language-feature/types/opaque/inout-param-opaque-type.slang
+++ b/tests/language-feature/types/opaque/inout-param-opaque-type.slang
@@ -3,6 +3,7 @@
// Test that a function/method can have an `out` parameter of opaque type
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:set gX = ubuffer(data=[16 17 18 19], stride=4)
RWStructuredBuffer<int> gX;
diff --git a/tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang b/tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang
index 60f9a95f5..a7c10c626 100644
--- a/tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang
+++ b/tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang
@@ -4,6 +4,7 @@
// aggregate type that includes an opaque type
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct Things
{
diff --git a/tests/language-feature/types/opaque/out-param-opaque-type.slang b/tests/language-feature/types/opaque/out-param-opaque-type.slang
index 03f105da2..c986400bb 100644
--- a/tests/language-feature/types/opaque/out-param-opaque-type.slang
+++ b/tests/language-feature/types/opaque/out-param-opaque-type.slang
@@ -3,6 +3,7 @@
// Test that a function/method can have an `out` parameter of opaque type
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
//TEST_INPUT:set gThings = ubuffer(data=[16 17 18 19], stride=4)
RWStructuredBuffer<int> gThings;
diff --git a/tests/language-feature/types/opaque/return-opaque-type-in-struct.slang b/tests/language-feature/types/opaque/return-opaque-type-in-struct.slang
index 4da6b3b30..a1a715009 100644
--- a/tests/language-feature/types/opaque/return-opaque-type-in-struct.slang
+++ b/tests/language-feature/types/opaque/return-opaque-type-in-struct.slang
@@ -4,6 +4,7 @@
// aggregate type that includes an opaque type
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct Things
{
diff --git a/tests/language-feature/types/opaque/return-opaque-type.slang b/tests/language-feature/types/opaque/return-opaque-type.slang
index e14ff8616..0910d2e00 100644
--- a/tests/language-feature/types/opaque/return-opaque-type.slang
+++ b/tests/language-feature/types/opaque/return-opaque-type.slang
@@ -3,6 +3,7 @@
// Test that a function/method can return a value of an opaque type.
//TEST(compute):COMPARE_COMPUTE:
+//DISABLE_TEST(compute):COMPARE_COMPUTE:-slang -shaderobj -mtl
struct Stuff
{