================
@@ -0,0 +1,98 @@
+// RUN: %clang_cc1 -finclude-default-header -x hlsl -triple
dxil-pc-shadermodel6.0-library %s \
+// RUN: -emit-llvm -disable-llvm-passes -o - -DINTERLOCKED32 | \
+// RUN: FileCheck %s --check-prefixes=CHECK-32
+// RUN: %clang_cc1 -finclude-default-header -x hlsl -triple
dxil-pc-shadermodel6.6-library %s \
+// RUN: -emit-llvm -disable-llvm-passes -o - -DINTERLOCKED64 | \
+// RUN: FileCheck %s --check-prefixes=CHECK-64
+
+RWByteAddressBuffer buf: register(u0);
+
+// CHECK: %"class.hlsl::RWByteAddressBuffer" = type { target("dx.RawBuffer",
i8, 1, 0) }
+
+#ifdef INTERLOCKED32
----------------
farzonl wrote:
why do you need if defs and seperate 32 and 64 Check lines? Feels like you
should be able to test `InterlockedOr` and `InterlockedOr64` with a single run
line if you just make sure that shadermodel6.6 is set by default.
If you want to test that `InterlockedOr64` doesn't work for 6.5 and lower make
that a sema error test.
https://github.com/llvm/llvm-project/pull/180804
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits