diff options
Diffstat (limited to 'llvm/test/CodeGen/R600/address-space.ll')
| -rw-r--r-- | llvm/test/CodeGen/R600/address-space.ll | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/R600/address-space.ll b/llvm/test/CodeGen/R600/address-space.ll index 1fc616a4ed4..15d2ed23818 100644 --- a/llvm/test/CodeGen/R600/address-space.ll +++ b/llvm/test/CodeGen/R600/address-space.ll @@ -4,11 +4,14 @@ %struct.foo = type { [3 x float], [3 x float] } +; FIXME: Extra V_MOV from SGPR to VGPR for second read. The address is +; already in a VGPR after the first read. + ; CHECK-LABEL: @do_as_ptr_calcs: -; CHECK: S_ADD_I32 {{s[0-9]+}}, -; CHECK: S_ADD_I32 [[SREG1:s[0-9]+]], +; CHECK: S_LOAD_DWORD [[SREG1:s[0-9]+]], ; CHECK: V_MOV_B32_e32 [[VREG1:v[0-9]+]], [[SREG1]] -; CHECK: DS_READ_B32 [[VREG1]], +; CHECK: DS_READ_B32 v{{[0-9]+}}, [[VREG1]], 20 +; CHECK: DS_READ_B32 v{{[0-9]+}}, v{{[0-9]+}}, 12 define void @do_as_ptr_calcs(%struct.foo addrspace(3)* nocapture %ptr) nounwind { entry: %x = getelementptr inbounds %struct.foo addrspace(3)* %ptr, i32 0, i32 1, i32 0 |

