@@ -30,14 +30,16 @@ define dso_local void @P10_Spill_CR_LT() local_unnamed_addr {
3030; CHECK-NEXT: mflr r0
3131; CHECK-NEXT: std r0, 16(r1)
3232; CHECK-NEXT: stw r12, 8(r1)
33- ; CHECK-NEXT: stdu r1, -48 (r1)
34- ; CHECK-NEXT: .cfi_def_cfa_offset 48
33+ ; CHECK-NEXT: stdu r1, -64 (r1)
34+ ; CHECK-NEXT: .cfi_def_cfa_offset 64
3535; CHECK-NEXT: .cfi_offset lr, 16
36+ ; CHECK-NEXT: .cfi_offset r29, -24
3637; CHECK-NEXT: .cfi_offset r30, -16
3738; CHECK-NEXT: .cfi_offset cr2, 8
3839; CHECK-NEXT: .cfi_offset cr3, 8
3940; CHECK-NEXT: .cfi_offset cr4, 8
40- ; CHECK-NEXT: std r30, 32(r1) # 8-byte Folded Spill
41+ ; CHECK-NEXT: std r29, 40(r1) # 8-byte Folded Spill
42+ ; CHECK-NEXT: std r30, 48(r1) # 8-byte Folded Spill
4143; CHECK-NEXT: bl call_2@notoc
4244; CHECK-NEXT: bc 12, 4*cr5+lt, .LBB0_13
4345; CHECK-NEXT: # %bb.1: # %bb
@@ -65,10 +67,11 @@ define dso_local void @P10_Spill_CR_LT() local_unnamed_addr {
6567; CHECK-NEXT: bc 12, 4*cr3+eq, .LBB0_11
6668; CHECK-NEXT: # %bb.6: # %bb32
6769; CHECK-NEXT: #
68- ; CHECK-NEXT: rlwinm r30, r30, 0, 24, 22
6970; CHECK-NEXT: andi. r3, r30, 2
71+ ; CHECK-NEXT: rlwinm r29, r30, 0, 24, 22
7072; CHECK-NEXT: mcrf cr2, cr0
7173; CHECK-NEXT: bl call_4@notoc
74+ ; CHECK-NEXT: mr r30, r29
7275; CHECK-NEXT: beq+ cr2, .LBB0_3
7376; CHECK-NEXT: # %bb.7: # %bb37
7477; CHECK-NEXT: .LBB0_8: # %bb22
@@ -89,11 +92,13 @@ define dso_local void @P10_Spill_CR_LT() local_unnamed_addr {
8992; CHECK-BE-NEXT: stdu r1, -144(r1)
9093; CHECK-BE-NEXT: .cfi_def_cfa_offset 144
9194; CHECK-BE-NEXT: .cfi_offset lr, 16
95+ ; CHECK-BE-NEXT: .cfi_offset r28, -32
9296; CHECK-BE-NEXT: .cfi_offset r29, -24
9397; CHECK-BE-NEXT: .cfi_offset r30, -16
9498; CHECK-BE-NEXT: .cfi_offset cr2, 8
9599; CHECK-BE-NEXT: .cfi_offset cr2, 8
96100; CHECK-BE-NEXT: .cfi_offset cr2, 8
101+ ; CHECK-BE-NEXT: std r28, 112(r1) # 8-byte Folded Spill
97102; CHECK-BE-NEXT: std r29, 120(r1) # 8-byte Folded Spill
98103; CHECK-BE-NEXT: std r30, 128(r1) # 8-byte Folded Spill
99104; CHECK-BE-NEXT: bl call_2
@@ -126,11 +131,12 @@ define dso_local void @P10_Spill_CR_LT() local_unnamed_addr {
126131; CHECK-BE-NEXT: bc 12, 4*cr3+eq, .LBB0_11
127132; CHECK-BE-NEXT: # %bb.6: # %bb32
128133; CHECK-BE-NEXT: #
129- ; CHECK-BE-NEXT: rlwinm r29, r29, 0, 24, 22
130134; CHECK-BE-NEXT: andi. r3, r29, 2
135+ ; CHECK-BE-NEXT: rlwinm r28, r29, 0, 24, 22
131136; CHECK-BE-NEXT: mcrf cr2, cr0
132137; CHECK-BE-NEXT: bl call_4
133138; CHECK-BE-NEXT: nop
139+ ; CHECK-BE-NEXT: mr r29, r28
134140; CHECK-BE-NEXT: beq+ cr2, .LBB0_3
135141; CHECK-BE-NEXT: # %bb.7: # %bb37
136142; CHECK-BE-NEXT: .LBB0_8: # %bb22
0 commit comments