diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2013-10-23 00:44:32 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2013-10-23 00:44:32 +0000 |
commit | f95b1621887e3409ceec2db47e1b44271d934735 (patch) | |
tree | 8b2655eb7bf40d51eedf9649d0a929e1fc2c6cb1 /test/CodeGen/R600/or.ll | |
parent | d0716b064744598ba7df33b8b47de0375c450570 (diff) | |
download | external_llvm-f95b1621887e3409ceec2db47e1b44271d934735.zip external_llvm-f95b1621887e3409ceec2db47e1b44271d934735.tar.gz external_llvm-f95b1621887e3409ceec2db47e1b44271d934735.tar.bz2 |
R600: Fix handling of vector kernel arguments
The SelectionDAGBuilder was promoting vector kernel arguments to legal
types, but this won't work for R600 and SI since kernel arguments are
stored in memory and can't be promoted. In order to handle vector
arguments correctly we need to look at the original types from the LLVM IR
function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193215 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/R600/or.ll')
-rw-r--r-- | test/CodeGen/R600/or.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/CodeGen/R600/or.ll b/test/CodeGen/R600/or.ll index 6950ed0..6c70469 100644 --- a/test/CodeGen/R600/or.ll +++ b/test/CodeGen/R600/or.ll @@ -41,7 +41,7 @@ define void @or_v4i32(<4 x i32> addrspace(1)* %out, <4 x i32> addrspace(1)* %in) ; EG-CHECK-LABEL: @or_i64 ; EG-CHECK-DAG: OR_INT * T{{[0-9]\.[XYZW]}}, KC0[2].W, KC0[3].Y -; EG-CHECK-DAG: OR_INT * T{{[0-9]\.[XYZW]}}, KC0[2].Z, KC0[3].X +; EG-CHECK-DAG: OR_INT * T{{[0-9]\.[XYZW]}}, KC0[3].X, KC0[3].Z ; SI-CHECK-LABEL: @or_i64 ; SI-CHECK: V_OR_B32_e32 VGPR{{[0-9]}} ; SI-CHECK: V_OR_B32_e32 VGPR{{[0-9]}} |