@@ -272,9 +272,10 @@ define i32 @caller_float_on_stack() {
272272; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_float_on_stack:
273273; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
274274; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_0
275+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 4
276+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
275277; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -12
276278; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 16
277- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
278279; ILP32E-FPELIM-SAVE-RESTORE-NEXT: lui a1, 264704
279280; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a3, 4
280281; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a0, 1
@@ -294,10 +295,11 @@ define i32 @caller_float_on_stack() {
294295; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_float_on_stack:
295296; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
296297; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
297- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -12
298- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 20
298+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
299299; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
300300; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
301+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -12
302+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 20
301303; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 20
302304; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
303305; ILP32E-WITHFP-SAVE-RESTORE-NEXT: lui a1, 264704
@@ -802,10 +804,11 @@ define void @caller_aligned_stack() {
802804; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_aligned_stack:
803805; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
804806; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
805- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -56
806- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
807+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
807808; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
808809; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
810+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -56
811+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
809812; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 64
810813; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
811814; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -856,10 +859,11 @@ define void @caller_aligned_stack() {
856859; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_aligned_stack:
857860; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
858861; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
859- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -56
860- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
862+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
861863; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
862864; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
865+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -56
866+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
863867; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 64
864868; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
865869; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -1323,9 +1327,10 @@ define i32 @caller_many_scalars() {
13231327; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_many_scalars:
13241328; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
13251329; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_0
1330+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 4
1331+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
13261332; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -16
13271333; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 20
1328- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
13291334; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a4, 8
13301335; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a6, 7
13311336; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a7, 6
@@ -1347,10 +1352,11 @@ define i32 @caller_many_scalars() {
13471352; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_many_scalars:
13481353; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
13491354; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1350- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
1351- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
1355+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
13521356; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
13531357; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1358+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
1359+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
13541360; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 24
13551361; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
13561362; ILP32E-WITHFP-SAVE-RESTORE-NEXT: li a4, 8
@@ -1557,10 +1563,11 @@ define i32 @caller_large_scalars() {
15571563; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_large_scalars:
15581564; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
15591565; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1560- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -40
1561- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 48
1566+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
15621567; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
15631568; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1569+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -40
1570+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 48
15641571; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 48
15651572; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
15661573; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -1586,10 +1593,11 @@ define i32 @caller_large_scalars() {
15861593; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_large_scalars:
15871594; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
15881595; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1589- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -40
1590- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 48
1596+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
15911597; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
15921598; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1599+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -40
1600+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 48
15931601; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 48
15941602; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
15951603; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -1831,10 +1839,11 @@ define i32 @caller_large_scalars_exhausted_regs() {
18311839; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_large_scalars_exhausted_regs:
18321840; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
18331841; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1834- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -56
1835- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
1842+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
18361843; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
18371844; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1845+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -56
1846+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
18381847; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 64
18391848; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
18401849; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -1872,10 +1881,11 @@ define i32 @caller_large_scalars_exhausted_regs() {
18721881; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_large_scalars_exhausted_regs:
18731882; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
18741883; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1875- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -56
1876- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
1884+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
18771885; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
18781886; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1887+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -56
1888+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 64
18791889; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 64
18801890; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
18811891; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -1973,10 +1983,11 @@ define i32 @caller_mixed_scalar_libcalls(i64 %a) {
19731983; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_mixed_scalar_libcalls:
19741984; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
19751985; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1976- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -16
1977- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
1986+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
19781987; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
19791988; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
1989+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -16
1990+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
19801991; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 24
19811992; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
19821993; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -8
@@ -1994,10 +2005,11 @@ define i32 @caller_mixed_scalar_libcalls(i64 %a) {
19942005; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_mixed_scalar_libcalls:
19952006; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
19962007; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
1997- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
1998- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
2008+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
19992009; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
20002010; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2011+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
2012+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
20012013; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 24
20022014; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
20032015; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -8
@@ -2265,9 +2277,10 @@ define i32 @caller_large_struct() {
22652277; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_large_struct:
22662278; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
22672279; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_0
2280+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 4
2281+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
22682282; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -32
22692283; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 36
2270- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
22712284; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a0, 1
22722285; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a1, 2
22732286; ILP32E-FPELIM-SAVE-RESTORE-NEXT: li a2, 3
@@ -2289,10 +2302,11 @@ define i32 @caller_large_struct() {
22892302; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_large_struct:
22902303; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
22912304; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
2292- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -32
2293- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 40
2305+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
22942306; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
22952307; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2308+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -32
2309+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 40
22962310; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 40
22972311; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
22982312; ILP32E-WITHFP-SAVE-RESTORE-NEXT: li a0, 1
@@ -2556,10 +2570,11 @@ define void @caller_large_scalar_ret() {
25562570; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_large_scalar_ret:
25572571; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
25582572; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
2559- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -24
2560- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 32
2573+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
25612574; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
25622575; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2576+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -24
2577+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 32
25632578; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 32
25642579; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
25652580; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -2574,10 +2589,11 @@ define void @caller_large_scalar_ret() {
25742589; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_large_scalar_ret:
25752590; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
25762591; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
2577- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -24
2578- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 32
2592+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
25792593; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
25802594; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2595+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -24
2596+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 32
25812597; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 32
25822598; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
25832599; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -16
@@ -2731,10 +2747,11 @@ define i32 @caller_large_struct_ret() {
27312747; ILP32E-FPELIM-SAVE-RESTORE-LABEL: caller_large_struct_ret:
27322748; ILP32E-FPELIM-SAVE-RESTORE: # %bb.0:
27332749; ILP32E-FPELIM-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
2734- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -16
2735- ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
2750+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
27362751; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
27372752; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2753+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi sp, sp, -16
2754+ ; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
27382755; ILP32E-FPELIM-SAVE-RESTORE-NEXT: addi s0, sp, 24
27392756; ILP32E-FPELIM-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
27402757; ILP32E-FPELIM-SAVE-RESTORE-NEXT: andi sp, sp, -8
@@ -2752,10 +2769,11 @@ define i32 @caller_large_struct_ret() {
27522769; ILP32E-WITHFP-SAVE-RESTORE-LABEL: caller_large_struct_ret:
27532770; ILP32E-WITHFP-SAVE-RESTORE: # %bb.0:
27542771; ILP32E-WITHFP-SAVE-RESTORE-NEXT: call t0, __riscv_save_1
2755- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
2756- ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
2772+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 8
27572773; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset ra, -4
27582774; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_offset s0, -8
2775+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi sp, sp, -16
2776+ ; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa_offset 24
27592777; ILP32E-WITHFP-SAVE-RESTORE-NEXT: addi s0, sp, 24
27602778; ILP32E-WITHFP-SAVE-RESTORE-NEXT: .cfi_def_cfa s0, 0
27612779; ILP32E-WITHFP-SAVE-RESTORE-NEXT: andi sp, sp, -8
0 commit comments