[ORC] Add std::tuple support to SimplePackedSerialization.
[llvm-project.git] / llvm / test / CodeGen / AArch64 / sve-copy-zprpair.mir
blob83a0b5dd1c14ac42d0311f0d18c9bc61a3dc653e
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
4 ---
5 name:            copy_zpr2
6 alignment:       4
7 tracksRegLiveness: true
8 liveins:
9   - { reg: '$z0_z1' }
10 frameInfo:
11   maxCallFrameSize: 0
12 body:             |
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
26 ...
27 ---
28 name:            copy_zpr3
29 alignment:       4
30 tracksRegLiveness: true
31 liveins:
32   - { reg: '$z0_z1_z2' }
33 frameInfo:
34   maxCallFrameSize: 0
35 body:             |
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
51 ...
52 ---
53 name:            copy_zpr4
54 alignment:       4
55 tracksRegLiveness: true
56 liveins:
57   - { reg: '$z0_z1_z2_z3' }
58 frameInfo:
59   maxCallFrameSize: 0
60 body:             |
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
78 ...