Make test more lenient for custom clang version strings
[llvm-project.git] / clang / test / CodeGenHLSL / builtins / StructuredBuffers-subscripts.hlsl
blob2af7c3ed3219ffc7a2181a6a9bb9da5f85e1cdcb
1 // RUN: %clang_cc1 -triple dxil-pc-shadermodel6.0-compute -emit-llvm -o - -O0 %s | FileCheck %s\r
2 \r
3 StructuredBuffer<int> In;\r
4 RWStructuredBuffer<int> Out1;\r
5 RasterizerOrderedStructuredBuffer<int> Out2;\r
6 \r
7 [numthreads(1,1,1)]\r
8 void main(unsigned GI : SV_GroupIndex) {\r
9   // CHECK: define void @main()\r
11   // CHECK: %[[INPTR:.*]] = call noundef nonnull align 4 dereferenceable(4) ptr @llvm.dx.resource.getpointer.p0.tdx.RawBuffer_i32_0_0t(target("dx.RawBuffer", i32, 0, 0) %{{.*}}, i32 %{{.*}})\r
12   // CHECK: %[[LOAD:.*]] = load i32, ptr %[[INPTR]]\r
13   // CHECK: %[[OUT1PTR:.*]] = call noundef nonnull align 4 dereferenceable(4) ptr @llvm.dx.resource.getpointer.p0.tdx.RawBuffer_i32_1_0t(target("dx.RawBuffer", i32, 1, 0) %{{.*}}, i32 %{{.*}})\r
14   // CHECK: store i32 %[[LOAD]], ptr %[[OUT1PTR]]\r
15   Out1[GI] = In[GI];\r
17   // CHECK: %[[INPTR:.*]] = call noundef nonnull align 4 dereferenceable(4) ptr @llvm.dx.resource.getpointer.p0.tdx.RawBuffer_i32_0_0t(target("dx.RawBuffer", i32, 0, 0) %{{.*}}, i32 %{{.*}})\r
18   // CHECK: %[[LOAD:.*]] = load i32, ptr %[[INPTR]]\r
19   // CHECK: %[[OUT2PTR:.*]] = call noundef nonnull align 4 dereferenceable(4) ptr @llvm.dx.resource.getpointer.p0.tdx.RawBuffer_i32_1_1t(target("dx.RawBuffer", i32, 1, 1) %{{.*}}, i32 %{{.*}})\r
20   // CHECK: store i32 %[[LOAD]], ptr %[[OUT2PTR]]\r
21   Out2[GI] = In[GI];\r
22 }\r