@@ -395,36 +395,24 @@ define void @f2_hw() "hw-shadow-stack" {
395395define i32 @f3_hw () "hw-shadow-stack" {
396396; RV32-LABEL: f3_hw:
397397; RV32: # %bb.0:
398- ; RV32-NEXT: addi gp, gp, 4
399- ; RV32-NEXT: sw ra, -4(gp)
400- ; RV32-NEXT: .cfi_escape 0x16, 0x03, 0x02, 0x73, 0x7c #
401398; RV32-NEXT: addi sp, sp, -16
402399; RV32-NEXT: .cfi_def_cfa_offset 16
403400; RV32-NEXT: sw ra, 12(sp) # 4-byte Folded Spill
404401; RV32-NEXT: .cfi_offset ra, -4
405402; RV32-NEXT: call bar
406403; RV32-NEXT: lw ra, 12(sp) # 4-byte Folded Reload
407404; RV32-NEXT: addi sp, sp, 16
408- ; RV32-NEXT: lw ra, -4(gp)
409- ; RV32-NEXT: addi gp, gp, -4
410- ; RV32-NEXT: .cfi_restore gp
411405; RV32-NEXT: ret
412406;
413407; RV64-LABEL: f3_hw:
414408; RV64: # %bb.0:
415- ; RV64-NEXT: addi gp, gp, 8
416- ; RV64-NEXT: sd ra, -8(gp)
417- ; RV64-NEXT: .cfi_escape 0x16, 0x03, 0x02, 0x73, 0x78 #
418409; RV64-NEXT: addi sp, sp, -16
419410; RV64-NEXT: .cfi_def_cfa_offset 16
420411; RV64-NEXT: sd ra, 8(sp) # 8-byte Folded Spill
421412; RV64-NEXT: .cfi_offset ra, -8
422413; RV64-NEXT: call bar
423414; RV64-NEXT: ld ra, 8(sp) # 8-byte Folded Reload
424415; RV64-NEXT: addi sp, sp, 16
425- ; RV64-NEXT: ld ra, -8(gp)
426- ; RV64-NEXT: addi gp, gp, -8
427- ; RV64-NEXT: .cfi_restore gp
428416; RV64-NEXT: ret
429417;
430418; RV32-ZICFISS-LABEL: f3_hw:
@@ -460,9 +448,6 @@ define i32 @f3_hw() "hw-shadow-stack" {
460448define i32 @f4_hw () "hw-shadow-stack" {
461449; RV32-LABEL: f4_hw:
462450; RV32: # %bb.0:
463- ; RV32-NEXT: addi gp, gp, 4
464- ; RV32-NEXT: sw ra, -4(gp)
465- ; RV32-NEXT: .cfi_escape 0x16, 0x03, 0x02, 0x73, 0x7c #
466451; RV32-NEXT: addi sp, sp, -16
467452; RV32-NEXT: .cfi_def_cfa_offset 16
468453; RV32-NEXT: sw ra, 12(sp) # 4-byte Folded Spill
@@ -488,16 +473,10 @@ define i32 @f4_hw() "hw-shadow-stack" {
488473; RV32-NEXT: lw s1, 4(sp) # 4-byte Folded Reload
489474; RV32-NEXT: lw s2, 0(sp) # 4-byte Folded Reload
490475; RV32-NEXT: addi sp, sp, 16
491- ; RV32-NEXT: lw ra, -4(gp)
492- ; RV32-NEXT: addi gp, gp, -4
493- ; RV32-NEXT: .cfi_restore gp
494476; RV32-NEXT: ret
495477;
496478; RV64-LABEL: f4_hw:
497479; RV64: # %bb.0:
498- ; RV64-NEXT: addi gp, gp, 8
499- ; RV64-NEXT: sd ra, -8(gp)
500- ; RV64-NEXT: .cfi_escape 0x16, 0x03, 0x02, 0x73, 0x78 #
501480; RV64-NEXT: addi sp, sp, -32
502481; RV64-NEXT: .cfi_def_cfa_offset 32
503482; RV64-NEXT: sd ra, 24(sp) # 8-byte Folded Spill
@@ -523,9 +502,6 @@ define i32 @f4_hw() "hw-shadow-stack" {
523502; RV64-NEXT: ld s1, 8(sp) # 8-byte Folded Reload
524503; RV64-NEXT: ld s2, 0(sp) # 8-byte Folded Reload
525504; RV64-NEXT: addi sp, sp, 32
526- ; RV64-NEXT: ld ra, -8(gp)
527- ; RV64-NEXT: addi gp, gp, -8
528- ; RV64-NEXT: .cfi_restore gp
529505; RV64-NEXT: ret
530506;
531507; RV32-ZICFISS-LABEL: f4_hw:
@@ -602,28 +578,20 @@ define i32 @f4_hw() "hw-shadow-stack" {
602578define i32 @f5_hw () "hw-shadow-stack" nounwind {
603579; RV32-LABEL: f5_hw:
604580; RV32: # %bb.0:
605- ; RV32-NEXT: addi gp, gp, 4
606- ; RV32-NEXT: sw ra, -4(gp)
607581; RV32-NEXT: addi sp, sp, -16
608582; RV32-NEXT: sw ra, 12(sp) # 4-byte Folded Spill
609583; RV32-NEXT: call bar
610584; RV32-NEXT: lw ra, 12(sp) # 4-byte Folded Reload
611585; RV32-NEXT: addi sp, sp, 16
612- ; RV32-NEXT: lw ra, -4(gp)
613- ; RV32-NEXT: addi gp, gp, -4
614586; RV32-NEXT: ret
615587;
616588; RV64-LABEL: f5_hw:
617589; RV64: # %bb.0:
618- ; RV64-NEXT: addi gp, gp, 8
619- ; RV64-NEXT: sd ra, -8(gp)
620590; RV64-NEXT: addi sp, sp, -16
621591; RV64-NEXT: sd ra, 8(sp) # 8-byte Folded Spill
622592; RV64-NEXT: call bar
623593; RV64-NEXT: ld ra, 8(sp) # 8-byte Folded Reload
624594; RV64-NEXT: addi sp, sp, 16
625- ; RV64-NEXT: ld ra, -8(gp)
626- ; RV64-NEXT: addi gp, gp, -8
627595; RV64-NEXT: ret
628596;
629597; RV32-ZICFISS-LABEL: f5_hw:
0 commit comments