llvm-mirror/test/CodeGen/AArch64/seqpaircopy.mir
Tim Northover 77f59ae9f5 AArch64: implement copy for paired GPR registers.
When doing 128-bit atomics using CASP we might need to copy a GPRPair to a
different register, but that was unimplemented up to now.

llvm-svn: 353383
2019-02-07 10:35:34 +00:00

24 lines
641 B
YAML

# RUN: llc -o - %s -mtriple=aarch64-- -mattr=+v8.1a -run-pass=postrapseudos | FileCheck %s
---
# CHECK-LABEL: name: copy_xseqpairs
name: copy_xseqpairs
body: |
bb.0:
; CHECK: $x4_x5 = CASPALX $x4_x5, $x2_x3, $x0
; CHECK: $x0 = ORRXrs $xzr, $x4, 0
; CHECK: $x1 = ORRXrs $xzr, $x5, 0
$x4_x5 = CASPALX $x4_x5, $x2_x3, $x0
$x0_x1 = COPY $x4_x5
...
---
# CHECK-LABEL: name: copy_wseqpairs
name: copy_wseqpairs
body: |
bb.0:
; CHECK: $w4_w5 = CASPALW $w4_w5, $w2_w3, $x0
; CHECK: $w0 = ORRWrs $wzr, $w4, 0
; CHECK: $w1 = ORRWrs $wzr, $w5, 0
$w4_w5 = CASPALW $w4_w5, $w2_w3, $x0
$w0_w1 = COPY $w4_w5
...