blob: 584ffeeaa646ab4ffe05a81364605a4b8c9240ea [file] [edit]
// RUN: %clang_cc1 -finclude-default-header -triple dxil-pc-shadermodel6.3-compute -std=hlsl202x -emit-llvm -disable-llvm-passes -hlsl-entry main -o - %s | FileCheck %s
groupshared float4x4 SharedData;
// CHECK-LABEL: define hidden void @_Z3fn1RU3AS3u11matrix_typeILm4ELm4EfE(ptr addrspace(3) noundef align 4 dereferenceable(64) %Sh)
// CHECK: [[ShAddr:%.*]] = alloca ptr addrspace(3), align 4
// CHECK: store ptr addrspace(3) %Sh, ptr [[ShAddr]], align 4
// CHECK: [[A:%.*]] = load ptr addrspace(3), ptr [[ShAddr]], align 4
// CHECK: [[B:%.*]] = getelementptr <16 x float>, ptr addrspace(3) [[A]], i32 0, i32 4
// CHECK: store float 5.000000e+00, ptr addrspace(3) [[B]], align 4
// CHECK: ret void
void fn1(groupshared float4x4 Sh) {
Sh[0][1] = 5.0;
}
[numthreads(4,1,1)]
void main(uint3 TID : SV_GroupThreadID) {
fn1(SharedData);
}