1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py 2# RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve -run-pass=postrapseudos -simplify-mir -verify-machineinstrs %s -o - | FileCheck %s 3 4--- 5name: copy_zpr2 6alignment: 4 7tracksRegLiveness: true 8liveins: 9 - { reg: '$z0_z1' } 10frameInfo: 11 maxCallFrameSize: 0 12body: | 13 bb.0: 14 liveins: $z0_z1 15 ; CHECK-LABEL: name: copy_zpr2 16 ; CHECK: liveins: $z0_z1 17 ; CHECK: $z2 = ORR_ZZZ $z1, $z1 18 ; CHECK: $z1 = ORR_ZZZ $z0, $z0 19 ; CHECK: $z0 = ORR_ZZZ $z1, $z1 20 ; CHECK: $z1 = ORR_ZZZ $z2, $z2 21 ; CHECK: RET_ReallyLR 22 $z1_z2 = COPY $z0_z1 23 $z0_z1 = COPY $z1_z2 24 RET_ReallyLR 25 26... 27--- 28name: copy_zpr3 29alignment: 4 30tracksRegLiveness: true 31liveins: 32 - { reg: '$z0_z1_z2' } 33frameInfo: 34 maxCallFrameSize: 0 35body: | 36 bb.0: 37 liveins: $z0_z1_z2 38 ; CHECK-LABEL: name: copy_zpr3 39 ; CHECK: liveins: $z0_z1_z2 40 ; CHECK: $z3 = ORR_ZZZ $z2, $z2 41 ; CHECK: $z2 = ORR_ZZZ $z1, $z1 42 ; CHECK: $z1 = ORR_ZZZ $z0, $z0 43 ; CHECK: $z0 = ORR_ZZZ $z1, $z1 44 ; CHECK: $z1 = ORR_ZZZ $z2, $z2 45 ; CHECK: $z2 = ORR_ZZZ $z3, $z3 46 ; CHECK: RET_ReallyLR 47 $z1_z2_z3 = COPY $z0_z1_z2 48 $z0_z1_z2 = COPY $z1_z2_z3 49 RET_ReallyLR 50 51... 52--- 53name: copy_zpr4 54alignment: 4 55tracksRegLiveness: true 56liveins: 57 - { reg: '$z0_z1_z2_z3' } 58frameInfo: 59 maxCallFrameSize: 0 60body: | 61 bb.0: 62 liveins: $z0_z1_z2_z3 63 ; CHECK-LABEL: name: copy_zpr4 64 ; CHECK: liveins: $z0_z1_z2_z3 65 ; CHECK: $z4 = ORR_ZZZ $z3, $z3 66 ; CHECK: $z3 = ORR_ZZZ $z2, $z2 67 ; CHECK: $z2 = ORR_ZZZ $z1, $z1 68 ; CHECK: $z1 = ORR_ZZZ $z0, $z0 69 ; CHECK: $z0 = ORR_ZZZ $z1, $z1 70 ; CHECK: $z1 = ORR_ZZZ $z2, $z2 71 ; CHECK: $z2 = ORR_ZZZ $z3, $z3 72 ; CHECK: $z3 = ORR_ZZZ $z4, $z4 73 ; CHECK: RET_ReallyLR 74 $z1_z2_z3_z4 = COPY $z0_z1_z2_z3 75 $z0_z1_z2_z3 = COPY $z1_z2_z3_z4 76 RET_ReallyLR 77 78... 79