99define i32 @no_int_regs (i32 %x ) nounwind {
1010; CHECK-LABEL: no_int_regs:
1111; CHECK: // %bb.0: // %entry
12- ; CHECK-NEXT: stp x30, x29 , [sp, #-80]! // 16-byte Folded Spill
13- ; CHECK-NEXT: str x27, [sp, #16] // 8 -byte Folded Spill
14- ; CHECK-NEXT: stp x26, x25 , [sp, #32] // 16-byte Folded Spill
15- ; CHECK-NEXT: stp x22, x21, [sp, #48] // 16 -byte Folded Spill
16- ; CHECK-NEXT: stp x20, x19 , [sp, #64 ] // 16-byte Folded Spill
17- ; CHECK-NEXT: str w0, [sp, #28 ] // 4-byte Folded Spill
12+ ; CHECK-NEXT: stp x19, x20 , [sp, #-80]! // 16-byte Folded Spill
13+ ; CHECK-NEXT: stp x21, x22, [sp, #16] // 16 -byte Folded Spill
14+ ; CHECK-NEXT: stp x25, x26 , [sp, #32] // 16-byte Folded Spill
15+ ; CHECK-NEXT: str x27, [sp, #48] // 8 -byte Folded Spill
16+ ; CHECK-NEXT: stp x29, x30 , [sp, #56 ] // 16-byte Folded Spill
17+ ; CHECK-NEXT: str w0, [sp, #76 ] // 4-byte Folded Spill
1818; CHECK-NEXT: //APP
1919; CHECK-NEXT: //NO_APP
20- ; CHECK-NEXT: ldp x20, x19 , [sp, #64 ] // 16-byte Folded Reload
21- ; CHECK-NEXT: ldr w0, [sp, #28 ] // 4-byte Folded Reload
22- ; CHECK-NEXT: ldp x22, x21 , [sp, #48 ] // 16-byte Folded Reload
23- ; CHECK-NEXT: ldr x27, [sp, #16 ] // 8-byte Folded Reload
24- ; CHECK-NEXT: ldp x26, x25 , [sp, #32 ] // 16-byte Folded Reload
25- ; CHECK-NEXT: ldp x30, x29 , [sp], #80 // 16-byte Folded Reload
20+ ; CHECK-NEXT: ldp x29, x30 , [sp, #56 ] // 16-byte Folded Reload
21+ ; CHECK-NEXT: ldr w0, [sp, #76 ] // 4-byte Folded Reload
22+ ; CHECK-NEXT: ldp x25, x26 , [sp, #32 ] // 16-byte Folded Reload
23+ ; CHECK-NEXT: ldr x27, [sp, #48 ] // 8-byte Folded Reload
24+ ; CHECK-NEXT: ldp x21, x22 , [sp, #16 ] // 16-byte Folded Reload
25+ ; CHECK-NEXT: ldp x19, x20 , [sp], #80 // 16-byte Folded Reload
2626; CHECK-NEXT: ret
2727entry:
2828 tail call void asm sideeffect "" , "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x15},~{x16},~{x17},~{x19},~{x20},~{x21},~{x22},~{x25},~{x26},~{x27},~{fp},~{lr}" ()
@@ -32,20 +32,20 @@ entry:
3232define i32 @one_int_reg (i32 %x ) nounwind {
3333; CHECK-LABEL: one_int_reg:
3434; CHECK: // %bb.0: // %entry
35- ; CHECK-NEXT: stp x30, x29, [sp, #-80]! // 16-byte Folded Spill
36- ; CHECK-NEXT: str x27, [sp, #16] // 8-byte Folded Spill
35+ ; CHECK-NEXT: stp x19, x20, [sp, #-80]! // 16-byte Folded Spill
36+ ; CHECK-NEXT: stp x21, x22, [sp, #16] // 16-byte Folded Spill
37+ ; CHECK-NEXT: stp x25, x26, [sp, #32] // 16-byte Folded Spill
38+ ; CHECK-NEXT: str x27, [sp, #48] // 8-byte Folded Spill
39+ ; CHECK-NEXT: stp x29, x30, [sp, #56] // 16-byte Folded Spill
3740; CHECK-NEXT: mov w30, w0
38- ; CHECK-NEXT: stp x26, x25, [sp, #32] // 16-byte Folded Spill
39- ; CHECK-NEXT: stp x22, x21, [sp, #48] // 16-byte Folded Spill
40- ; CHECK-NEXT: stp x20, x19, [sp, #64] // 16-byte Folded Spill
4141; CHECK-NEXT: //APP
4242; CHECK-NEXT: //NO_APP
43- ; CHECK-NEXT: ldp x20, x19, [sp, #64] // 16-byte Folded Reload
44- ; CHECK-NEXT: ldr x27, [sp, #16] // 8-byte Folded Reload
45- ; CHECK-NEXT: ldp x22, x21, [sp, #48] // 16-byte Folded Reload
4643; CHECK-NEXT: mov w0, w30
47- ; CHECK-NEXT: ldp x26, x25, [sp, #32] // 16-byte Folded Reload
48- ; CHECK-NEXT: ldp x30, x29, [sp], #80 // 16-byte Folded Reload
44+ ; CHECK-NEXT: ldp x29, x30, [sp, #56] // 16-byte Folded Reload
45+ ; CHECK-NEXT: ldp x25, x26, [sp, #32] // 16-byte Folded Reload
46+ ; CHECK-NEXT: ldr x27, [sp, #48] // 8-byte Folded Reload
47+ ; CHECK-NEXT: ldp x21, x22, [sp, #16] // 16-byte Folded Reload
48+ ; CHECK-NEXT: ldp x19, x20, [sp], #80 // 16-byte Folded Reload
4949; CHECK-NEXT: ret
5050entry:
5151 tail call void asm sideeffect "" , "~{x0},~{x1},~{x2},~{x3},~{x4},~{x5},~{x6},~{x7},~{x8},~{x9},~{x10},~{x11},~{x12},~{x15},~{x16},~{x17},~{x19},~{x20},~{x21},~{x22},~{x25},~{x26},~{x27},~{fp}" ()
@@ -56,18 +56,18 @@ define float @no_float_regs(float %x) nounwind {
5656; CHECK-LABEL: no_float_regs:
5757; CHECK: // %bb.0: // %entry
5858; CHECK-NEXT: sub sp, sp, #80
59- ; CHECK-NEXT: stp d15, d14 , [sp, #16] // 16-byte Folded Spill
60- ; CHECK-NEXT: stp d13, d12 , [sp, #32] // 16-byte Folded Spill
61- ; CHECK-NEXT: stp d11, d10 , [sp, #48] // 16-byte Folded Spill
62- ; CHECK-NEXT: stp d9, d8 , [sp, #64] // 16-byte Folded Spill
59+ ; CHECK-NEXT: stp d8, d9 , [sp, #16] // 16-byte Folded Spill
60+ ; CHECK-NEXT: stp d10, d11 , [sp, #32] // 16-byte Folded Spill
61+ ; CHECK-NEXT: stp d12, d13 , [sp, #48] // 16-byte Folded Spill
62+ ; CHECK-NEXT: stp d14, d15 , [sp, #64] // 16-byte Folded Spill
6363; CHECK-NEXT: str s0, [sp, #12] // 4-byte Folded Spill
6464; CHECK-NEXT: //APP
6565; CHECK-NEXT: //NO_APP
66- ; CHECK-NEXT: ldp d9, d8 , [sp, #64] // 16-byte Folded Reload
66+ ; CHECK-NEXT: ldp d14, d15 , [sp, #64] // 16-byte Folded Reload
6767; CHECK-NEXT: ldr s0, [sp, #12] // 4-byte Folded Reload
68- ; CHECK-NEXT: ldp d11, d10 , [sp, #48] // 16-byte Folded Reload
69- ; CHECK-NEXT: ldp d13, d12 , [sp, #32] // 16-byte Folded Reload
70- ; CHECK-NEXT: ldp d15, d14 , [sp, #16] // 16-byte Folded Reload
68+ ; CHECK-NEXT: ldp d12, d13 , [sp, #48] // 16-byte Folded Reload
69+ ; CHECK-NEXT: ldp d10, d11 , [sp, #32] // 16-byte Folded Reload
70+ ; CHECK-NEXT: ldp d8, d9 , [sp, #16] // 16-byte Folded Reload
7171; CHECK-NEXT: add sp, sp, #80
7272; CHECK-NEXT: ret
7373entry:
@@ -78,18 +78,18 @@ entry:
7878define float @one_float_reg (float %x ) nounwind {
7979; CHECK-LABEL: one_float_reg:
8080; CHECK: // %bb.0: // %entry
81- ; CHECK-NEXT: stp d15, d14, [sp, #-64]! // 16-byte Folded Spill
81+ ; CHECK-NEXT: stp d8, d9, [sp, #-64]! // 16-byte Folded Spill
82+ ; CHECK-NEXT: stp d14, d15, [sp, #48] // 16-byte Folded Spill
8283; CHECK-NEXT: fmov s15, s0
83- ; CHECK-NEXT: stp d13, d12, [sp, #16] // 16-byte Folded Spill
84- ; CHECK-NEXT: stp d11, d10, [sp, #32] // 16-byte Folded Spill
85- ; CHECK-NEXT: stp d9, d8, [sp, #48] // 16-byte Folded Spill
84+ ; CHECK-NEXT: stp d10, d11, [sp, #16] // 16-byte Folded Spill
85+ ; CHECK-NEXT: stp d12, d13, [sp, #32] // 16-byte Folded Spill
8686; CHECK-NEXT: //APP
8787; CHECK-NEXT: //NO_APP
88- ; CHECK-NEXT: ldp d9, d8, [sp, #48] // 16-byte Folded Reload
89- ; CHECK-NEXT: ldp d11, d10, [sp, #32] // 16-byte Folded Reload
88+ ; CHECK-NEXT: ldp d12, d13, [sp, #32] // 16-byte Folded Reload
9089; CHECK-NEXT: fmov s0, s15
91- ; CHECK-NEXT: ldp d13, d12, [sp, #16] // 16-byte Folded Reload
92- ; CHECK-NEXT: ldp d15, d14, [sp], #64 // 16-byte Folded Reload
90+ ; CHECK-NEXT: ldp d14, d15, [sp, #48] // 16-byte Folded Reload
91+ ; CHECK-NEXT: ldp d10, d11, [sp, #16] // 16-byte Folded Reload
92+ ; CHECK-NEXT: ldp d8, d9, [sp], #64 // 16-byte Folded Reload
9393; CHECK-NEXT: ret
9494entry:
9595 tail call void asm sideeffect "" , "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9},~{v10},~{v11},~{v12},~{v13},~{v14}" ()
0 commit comments