diff options
Diffstat (limited to 'clang/test/CodeGenOpenCL/amdgpu-alignment.cl')
-rw-r--r-- | clang/test/CodeGenOpenCL/amdgpu-alignment.cl | 170 |
1 files changed, 85 insertions, 85 deletions
diff --git a/clang/test/CodeGenOpenCL/amdgpu-alignment.cl b/clang/test/CodeGenOpenCL/amdgpu-alignment.cl index 70a22c9f756..b5dc47adbc2 100644 --- a/clang/test/CodeGenOpenCL/amdgpu-alignment.cl +++ b/clang/test/CodeGenOpenCL/amdgpu-alignment.cl @@ -336,91 +336,91 @@ kernel void local_memory_alignment_arg( } // CHECK-LABEL: @private_memory_alignment_alloca( -// CHECK: %private_i8 = alloca [4 x i8], align 1 -// CHECK: %private_v2i8 = alloca [4 x <2 x i8>], align 2 -// CHECK: %private_v3i8 = alloca [4 x <3 x i8>], align 4 -// CHECK: %private_v4i8 = alloca [4 x <4 x i8>], align 4 -// CHECK: %private_v8i8 = alloca [4 x <8 x i8>], align 8 -// CHECK: %private_v16i8 = alloca [4 x <16 x i8>], align 16 -// CHECK: %private_i16 = alloca [4 x i16], align 2 -// CHECK: %private_v2i16 = alloca [4 x <2 x i16>], align 4 -// CHECK: %private_v3i16 = alloca [4 x <3 x i16>], align 8 -// CHECK: %private_v4i16 = alloca [4 x <4 x i16>], align 8 -// CHECK: %private_v8i16 = alloca [4 x <8 x i16>], align 16 -// CHECK: %private_v16i16 = alloca [4 x <16 x i16>], align 32 -// CHECK: %private_i32 = alloca [4 x i32], align 4 -// CHECK: %private_v2i32 = alloca [4 x <2 x i32>], align 8 -// CHECK: %private_v3i32 = alloca [4 x <3 x i32>], align 16 -// CHECK: %private_v4i32 = alloca [4 x <4 x i32>], align 16 -// CHECK: %private_v8i32 = alloca [4 x <8 x i32>], align 32 -// CHECK: %private_v16i32 = alloca [4 x <16 x i32>], align 64 -// CHECK: %private_i64 = alloca [4 x i64], align 8 -// CHECK: %private_v2i64 = alloca [4 x <2 x i64>], align 16 -// CHECK: %private_v3i64 = alloca [4 x <3 x i64>], align 32 -// CHECK: %private_v4i64 = alloca [4 x <4 x i64>], align 32 -// CHECK: %private_v8i64 = alloca [4 x <8 x i64>], align 64 -// CHECK: %private_v16i64 = alloca [4 x <16 x i64>], align 128 -// CHECK: %private_f16 = alloca [4 x half], align 2 -// CHECK: %private_v2f16 = alloca [4 x <2 x half>], align 4 -// CHECK: %private_v3f16 = alloca [4 x <3 x half>], align 8 -// CHECK: %private_v4f16 = alloca [4 x <4 x half>], align 8 -// CHECK: %private_v8f16 = alloca [4 x <8 x half>], align 16 -// CHECK: %private_v16f16 = alloca [4 x <16 x half>], align 32 -// CHECK: %private_f32 = alloca [4 x float], align 4 -// CHECK: %private_v2f32 = alloca [4 x <2 x float>], align 8 -// CHECK: %private_v3f32 = alloca [4 x <3 x float>], align 16 -// CHECK: %private_v4f32 = alloca [4 x <4 x float>], align 16 -// CHECK: %private_v8f32 = alloca [4 x <8 x float>], align 32 -// CHECK: %private_v16f32 = alloca [4 x <16 x float>], align 64 -// CHECK: %private_f64 = alloca [4 x double], align 8 -// CHECK: %private_v2f64 = alloca [4 x <2 x double>], align 16 -// CHECK: %private_v3f64 = alloca [4 x <3 x double>], align 32 -// CHECK: %private_v4f64 = alloca [4 x <4 x double>], align 32 -// CHECK: %private_v8f64 = alloca [4 x <8 x double>], align 64 -// CHECK: %private_v16f64 = alloca [4 x <16 x double>], align 128 - -// CHECK: store volatile i8 0, i8* %arraydecay, align 1 -// CHECK: store volatile <2 x i8> zeroinitializer, <2 x i8>* %arraydecay{{[0-9]+}}, align 2 -// CHECK: store volatile <4 x i8> <i8 0, i8 0, i8 0, i8 undef>, <4 x i8>* %storetmp, align 4 -// CHECK: store volatile <4 x i8> zeroinitializer, <4 x i8>* %arraydecay{{[0-9]+}}, align 4 -// CHECK: store volatile <8 x i8> zeroinitializer, <8 x i8>* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <16 x i8> zeroinitializer, <16 x i8>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile i16 0, i16* %arraydecay{{[0-9]+}}, align 2 -// CHECK: store volatile <2 x i16> zeroinitializer, <2 x i16>* %arraydecay{{[0-9]+}}, align 4 -// CHECK: store volatile <4 x i16> <i16 0, i16 0, i16 0, i16 undef>, <4 x i16>* %storetmp{{[0-9]+}}, align 8 -// CHECK: store volatile <4 x i16> zeroinitializer, <4 x i16>* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <8 x i16> zeroinitializer, <8 x i16>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <16 x i16> zeroinitializer, <16 x i16>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile i32 0, i32* %arraydecay{{[0-9]+}}, align 4 -// CHECK: store volatile <2 x i32> zeroinitializer, <2 x i32>* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <4 x i32> <i32 0, i32 0, i32 0, i32 undef>, <4 x i32>* %storetmp16, align 16 -// CHECK: store volatile <4 x i32> zeroinitializer, <4 x i32>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <8 x i32> zeroinitializer, <8 x i32>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile <16 x i32> zeroinitializer, <16 x i32>* %arraydecay{{[0-9]+}}, align 64 -// CHECK: store volatile i64 0, i64* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <2 x i64> zeroinitializer, <2 x i64>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <4 x i64> <i64 0, i64 0, i64 0, i64 undef>, <4 x i64>* %storetmp23, align 32 -// CHECK: store volatile <4 x i64> zeroinitializer, <4 x i64>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile <8 x i64> zeroinitializer, <8 x i64>* %arraydecay{{[0-9]+}}, align 64 -// CHECK: store volatile <16 x i64> zeroinitializer, <16 x i64>* %arraydecay{{[0-9]+}}, align 128 -// CHECK: store volatile half 0xH0000, half* %arraydecay{{[0-9]+}}, align 2 -// CHECK: store volatile <2 x half> zeroinitializer, <2 x half>* %arraydecay{{[0-9]+}}, align 4 -// CHECK: store volatile <4 x half> <half 0xH0000, half 0xH0000, half 0xH0000, half undef>, <4 x half>* %storetmp{{[0-9]+}}, align 8 -// CHECK: store volatile <4 x half> zeroinitializer, <4 x half>* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <8 x half> zeroinitializer, <8 x half>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <16 x half> zeroinitializer, <16 x half>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile float 0.000000e+00, float* %arraydecay34, align 4 -// CHECK: store volatile <2 x float> zeroinitializer, <2 x float>* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <4 x float> <float 0.000000e+00, float 0.000000e+00, float 0.000000e+00, float undef>, <4 x float>* %storetmp{{[0-9]+}}, align 16 -// CHECK: store volatile <4 x float> zeroinitializer, <4 x float>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <8 x float> zeroinitializer, <8 x float>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile <16 x float> zeroinitializer, <16 x float>* %arraydecay{{[0-9]+}}, align 64 -// CHECK: store volatile double 0.000000e+00, double* %arraydecay{{[0-9]+}}, align 8 -// CHECK: store volatile <2 x double> zeroinitializer, <2 x double>* %arraydecay{{[0-9]+}}, align 16 -// CHECK: store volatile <4 x double> <double 0.000000e+00, double 0.000000e+00, double 0.000000e+00, double undef>, <4 x double>* %storetmp{{[0-9]+}}, align 32 -// CHECK: store volatile <4 x double> zeroinitializer, <4 x double>* %arraydecay{{[0-9]+}}, align 32 -// CHECK: store volatile <8 x double> zeroinitializer, <8 x double>* %arraydecay{{[0-9]+}}, align 64 -// CHECK: store volatile <16 x double> zeroinitializer, <16 x double>* %arraydecay{{[0-9]+}}, align 128 +// CHECK: %private_i8 = alloca [4 x i8], align 1, addrspace(5) +// CHECK: %private_v2i8 = alloca [4 x <2 x i8>], align 2, addrspace(5) +// CHECK: %private_v3i8 = alloca [4 x <3 x i8>], align 4, addrspace(5) +// CHECK: %private_v4i8 = alloca [4 x <4 x i8>], align 4, addrspace(5) +// CHECK: %private_v8i8 = alloca [4 x <8 x i8>], align 8, addrspace(5) +// CHECK: %private_v16i8 = alloca [4 x <16 x i8>], align 16, addrspace(5) +// CHECK: %private_i16 = alloca [4 x i16], align 2, addrspace(5) +// CHECK: %private_v2i16 = alloca [4 x <2 x i16>], align 4, addrspace(5) +// CHECK: %private_v3i16 = alloca [4 x <3 x i16>], align 8, addrspace(5) +// CHECK: %private_v4i16 = alloca [4 x <4 x i16>], align 8, addrspace(5) +// CHECK: %private_v8i16 = alloca [4 x <8 x i16>], align 16, addrspace(5) +// CHECK: %private_v16i16 = alloca [4 x <16 x i16>], align 32, addrspace(5) +// CHECK: %private_i32 = alloca [4 x i32], align 4, addrspace(5) +// CHECK: %private_v2i32 = alloca [4 x <2 x i32>], align 8, addrspace(5) +// CHECK: %private_v3i32 = alloca [4 x <3 x i32>], align 16, addrspace(5) +// CHECK: %private_v4i32 = alloca [4 x <4 x i32>], align 16, addrspace(5) +// CHECK: %private_v8i32 = alloca [4 x <8 x i32>], align 32, addrspace(5) +// CHECK: %private_v16i32 = alloca [4 x <16 x i32>], align 64, addrspace(5) +// CHECK: %private_i64 = alloca [4 x i64], align 8, addrspace(5) +// CHECK: %private_v2i64 = alloca [4 x <2 x i64>], align 16, addrspace(5) +// CHECK: %private_v3i64 = alloca [4 x <3 x i64>], align 32, addrspace(5) +// CHECK: %private_v4i64 = alloca [4 x <4 x i64>], align 32, addrspace(5) +// CHECK: %private_v8i64 = alloca [4 x <8 x i64>], align 64, addrspace(5) +// CHECK: %private_v16i64 = alloca [4 x <16 x i64>], align 128, addrspace(5) +// CHECK: %private_f16 = alloca [4 x half], align 2, addrspace(5) +// CHECK: %private_v2f16 = alloca [4 x <2 x half>], align 4, addrspace(5) +// CHECK: %private_v3f16 = alloca [4 x <3 x half>], align 8, addrspace(5) +// CHECK: %private_v4f16 = alloca [4 x <4 x half>], align 8, addrspace(5) +// CHECK: %private_v8f16 = alloca [4 x <8 x half>], align 16, addrspace(5) +// CHECK: %private_v16f16 = alloca [4 x <16 x half>], align 32, addrspace(5) +// CHECK: %private_f32 = alloca [4 x float], align 4, addrspace(5) +// CHECK: %private_v2f32 = alloca [4 x <2 x float>], align 8, addrspace(5) +// CHECK: %private_v3f32 = alloca [4 x <3 x float>], align 16, addrspace(5) +// CHECK: %private_v4f32 = alloca [4 x <4 x float>], align 16, addrspace(5) +// CHECK: %private_v8f32 = alloca [4 x <8 x float>], align 32, addrspace(5) +// CHECK: %private_v16f32 = alloca [4 x <16 x float>], align 64, addrspace(5) +// CHECK: %private_f64 = alloca [4 x double], align 8, addrspace(5) +// CHECK: %private_v2f64 = alloca [4 x <2 x double>], align 16, addrspace(5) +// CHECK: %private_v3f64 = alloca [4 x <3 x double>], align 32, addrspace(5) +// CHECK: %private_v4f64 = alloca [4 x <4 x double>], align 32, addrspace(5) +// CHECK: %private_v8f64 = alloca [4 x <8 x double>], align 64, addrspace(5) +// CHECK: %private_v16f64 = alloca [4 x <16 x double>], align 128, addrspace(5) + +// CHECK: store volatile i8 0, i8 addrspace(5)* %arraydecay, align 1 +// CHECK: store volatile <2 x i8> zeroinitializer, <2 x i8> addrspace(5)* %arraydecay{{[0-9]+}}, align 2 +// CHECK: store volatile <4 x i8> <i8 0, i8 0, i8 0, i8 undef>, <4 x i8> addrspace(5)* %storetmp, align 4 +// CHECK: store volatile <4 x i8> zeroinitializer, <4 x i8> addrspace(5)* %arraydecay{{[0-9]+}}, align 4 +// CHECK: store volatile <8 x i8> zeroinitializer, <8 x i8> addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <16 x i8> zeroinitializer, <16 x i8> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile i16 0, i16 addrspace(5)* %arraydecay{{[0-9]+}}, align 2 +// CHECK: store volatile <2 x i16> zeroinitializer, <2 x i16> addrspace(5)* %arraydecay{{[0-9]+}}, align 4 +// CHECK: store volatile <4 x i16> <i16 0, i16 0, i16 0, i16 undef>, <4 x i16> addrspace(5)* %storetmp{{[0-9]+}}, align 8 +// CHECK: store volatile <4 x i16> zeroinitializer, <4 x i16> addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <8 x i16> zeroinitializer, <8 x i16> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <16 x i16> zeroinitializer, <16 x i16> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile i32 0, i32 addrspace(5)* %arraydecay{{[0-9]+}}, align 4 +// CHECK: store volatile <2 x i32> zeroinitializer, <2 x i32> addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <4 x i32> <i32 0, i32 0, i32 0, i32 undef>, <4 x i32> addrspace(5)* %storetmp16, align 16 +// CHECK: store volatile <4 x i32> zeroinitializer, <4 x i32> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <8 x i32> zeroinitializer, <8 x i32> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile <16 x i32> zeroinitializer, <16 x i32> addrspace(5)* %arraydecay{{[0-9]+}}, align 64 +// CHECK: store volatile i64 0, i64 addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <2 x i64> zeroinitializer, <2 x i64> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <4 x i64> <i64 0, i64 0, i64 0, i64 undef>, <4 x i64> addrspace(5)* %storetmp23, align 32 +// CHECK: store volatile <4 x i64> zeroinitializer, <4 x i64> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile <8 x i64> zeroinitializer, <8 x i64> addrspace(5)* %arraydecay{{[0-9]+}}, align 64 +// CHECK: store volatile <16 x i64> zeroinitializer, <16 x i64> addrspace(5)* %arraydecay{{[0-9]+}}, align 128 +// CHECK: store volatile half 0xH0000, half addrspace(5)* %arraydecay{{[0-9]+}}, align 2 +// CHECK: store volatile <2 x half> zeroinitializer, <2 x half> addrspace(5)* %arraydecay{{[0-9]+}}, align 4 +// CHECK: store volatile <4 x half> <half 0xH0000, half 0xH0000, half 0xH0000, half undef>, <4 x half> addrspace(5)* %storetmp{{[0-9]+}}, align 8 +// CHECK: store volatile <4 x half> zeroinitializer, <4 x half> addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <8 x half> zeroinitializer, <8 x half> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <16 x half> zeroinitializer, <16 x half> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile float 0.000000e+00, float addrspace(5)* %arraydecay34, align 4 +// CHECK: store volatile <2 x float> zeroinitializer, <2 x float> addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <4 x float> <float 0.000000e+00, float 0.000000e+00, float 0.000000e+00, float undef>, <4 x float> addrspace(5)* %storetmp{{[0-9]+}}, align 16 +// CHECK: store volatile <4 x float> zeroinitializer, <4 x float> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <8 x float> zeroinitializer, <8 x float> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile <16 x float> zeroinitializer, <16 x float> addrspace(5)* %arraydecay{{[0-9]+}}, align 64 +// CHECK: store volatile double 0.000000e+00, double addrspace(5)* %arraydecay{{[0-9]+}}, align 8 +// CHECK: store volatile <2 x double> zeroinitializer, <2 x double> addrspace(5)* %arraydecay{{[0-9]+}}, align 16 +// CHECK: store volatile <4 x double> <double 0.000000e+00, double 0.000000e+00, double 0.000000e+00, double undef>, <4 x double> addrspace(5)* %storetmp{{[0-9]+}}, align 32 +// CHECK: store volatile <4 x double> zeroinitializer, <4 x double> addrspace(5)* %arraydecay{{[0-9]+}}, align 32 +// CHECK: store volatile <8 x double> zeroinitializer, <8 x double> addrspace(5)* %arraydecay{{[0-9]+}}, align 64 +// CHECK: store volatile <16 x double> zeroinitializer, <16 x double> addrspace(5)* %arraydecay{{[0-9]+}}, align 128 kernel void private_memory_alignment_alloca() { volatile private char private_i8[4]; |