diff options
Diffstat (limited to 'test/CodeGen/R600/gep-address-space.ll')
-rw-r--r-- | test/CodeGen/R600/gep-address-space.ll | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/test/CodeGen/R600/gep-address-space.ll b/test/CodeGen/R600/gep-address-space.ll index 4ea21dd..ee914fa 100644 --- a/test/CodeGen/R600/gep-address-space.ll +++ b/test/CodeGen/R600/gep-address-space.ll @@ -1,13 +1,23 @@ ; RUN: llc -march=r600 -mcpu=SI < %s | FileCheck %s define void @use_gep_address_space([1024 x i32] addrspace(3)* %array) nounwind { -; CHECK-LABEL @use_gep_address_space: -; CHECK: S_ADD_I32 +; CHECK-LABEL: @use_gep_address_space: +; CHECK: V_MOV_B32_e32 [[PTR:v[0-9]+]], s{{[0-9]+}} +; CHECK: DS_WRITE_B32 [[PTR]], v{{[0-9]+}}, 64 %p = getelementptr [1024 x i32] addrspace(3)* %array, i16 0, i16 16 store i32 99, i32 addrspace(3)* %p ret void } +define void @use_gep_address_space_large_offset([1024 x i32] addrspace(3)* %array) nounwind { +; CHECK-LABEL: @use_gep_address_space_large_offset: +; CHECK: S_ADD_I32 +; CHECK: DS_WRITE_B32 + %p = getelementptr [1024 x i32] addrspace(3)* %array, i16 0, i16 16384 + store i32 99, i32 addrspace(3)* %p + ret void +} + define void @gep_as_vector_v4(<4 x [1024 x i32] addrspace(3)*> %array) nounwind { ; CHECK-LABEL: @gep_as_vector_v4: ; CHECK: S_ADD_I32 |