diff options
Diffstat (limited to 'llvm/test/CodeGen')
| -rw-r--r-- | llvm/test/CodeGen/Hexagon/vextract-basic.mir | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/vextract-basic.mir b/llvm/test/CodeGen/Hexagon/vextract-basic.mir new file mode 100644 index 00000000000..53e7c49b414 --- /dev/null +++ b/llvm/test/CodeGen/Hexagon/vextract-basic.mir @@ -0,0 +1,26 @@ +# RUN: llc -march=hexagon -mattr=+hvx,+hvx-length64b -run-pass hexagon-vextract %s -o - | FileCheck %s + +--- +name: fred +tracksRegLiveness: true + +body: | + bb.0: + liveins: %r0, %r1, %v0 + %0:hvxvr = COPY %v0 + %1:intregs = COPY %r0 + %2:intregs = COPY %r1 + %3:intregs = A2_tfrsi 5 + %4:intregs = V6_extractw %0, %1 + ; CHECK: %[[A0:[0-9]+]]:intregs = A2_andir %{{[0-9]+}}, -4 + ; CHECK: L4_loadri_rr %{{[0-9]+}}, %[[A0]], 0 + %5:intregs = V6_extractw %0, %2 + ; CHECK: %[[A1:[0-9]+]]:intregs = A2_andir %{{[0-9]+}}, -4 + ; CHECK: L4_loadri_rr %{{[0-9]+}}, %[[A1]], 0 + %6:intregs = V6_extractw %0, %3 + ; Make sure the offset is 4, not 5. + ; CHECK: L2_loadri_io %{{[0-9]+}}, 4 + +... + + |

