From 15fb5989abdffd9d19b7aced839836aff7d32c94 Mon Sep 17 00:00:00 2001 From: Jens Remus Date: Fri, 19 Apr 2024 16:50:41 +0200 Subject: s390: Update SFrame test cases for FP without RA SFrame FP and RA tracking can represent FP without RA being saved since commit "sframe: Represent FP without RA on stack". As a result the s390-specific error test cases for FP without RA saved on stack or in register now do no longer trigger a warning. Rename and update them accordingly. gas/testsuite/ * gas/cfi-sframe/cfi-sframe.exp: Rename s390-specific test cases. * gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s: Rename to ... * cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d: Likewise. * gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s: This. * gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d: Likewise. Update test verification pattern accordingly. * cfi-sframe/cfi-sframe-s390-fpra-register-err-1.s: Rename to ... * cfi-sframe/cfi-sframe-s390-fpra-register-err-1.d: Likewise. * gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.s: This. * gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.d: Likewise. Update test verification pattern accordingly. Signed-off-by: Jens Remus --- .../gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d | 22 ++++++++++++++++++++++ .../gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s | 15 +++++++++++++++ .../cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d | 15 --------------- .../cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s | 15 --------------- .../cfi-sframe/cfi-sframe-s390-fpra-register-2.d | 22 ++++++++++++++++++++++ .../cfi-sframe/cfi-sframe-s390-fpra-register-2.s | 15 +++++++++++++++ .../cfi-sframe-s390-fpra-register-err-1.d | 15 --------------- .../cfi-sframe-s390-fpra-register-err-1.s | 15 --------------- gas/testsuite/gas/cfi-sframe/cfi-sframe.exp | 4 ++-- 9 files changed, 76 insertions(+), 62 deletions(-) create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s delete mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d delete mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.s delete mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.d delete mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.s diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d new file mode 100644 index 0000000..4a14629 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.d @@ -0,0 +1,22 @@ +#objdump: --sframe=.sframe +#name: SFrame generation on s390 - FP and RA saved on stack +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE + Num FDEs: 1 + Num FREs: 5 + + Function Index : + + func idx \[0\]: pc = 0x0, size = 34 bytes + STARTPC +CFA +FP +RA + + 0+0000 +sp\+160 +u +u + + 0+0006 +sp\+160 +c\-72 +u\* + + 0+000c +sp\+160 +c\-72 +c\-48 + + 0+001a +sp\+160 +c-72 +u\* + + 0+0020 +sp\+160 +u +u + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s new file mode 100644 index 0000000..a84c391 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-2.s @@ -0,0 +1,15 @@ + .cfi_sections .sframe + .cfi_startproc + stg %r11,88(%r15) + .cfi_rel_offset 11, 88 + stg %r14,112(%r15) + .cfi_rel_offset 14, 112 + la %r11,0 + la %r14,0 +.Lreturn: + lg %r14,112(%r15) + .cfi_restore 14 + lg %r11,88(%r15) + .cfi_restore 11 + br %r14 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d deleted file mode 100644 index cc22bef..0000000 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.d +++ /dev/null @@ -1,15 +0,0 @@ -#name: SFrame generation on s390 - FP without RA saved on stack -#as: --gsframe -#warning: skipping SFrame FDE due to FP without RA on stack -#objdump: --sframe=.sframe -#... -Contents of the SFrame section .sframe: - - Header : - - Version: SFRAME_VERSION_2 - Flags: NONE - Num FDEs: 0 - Num FREs: 0 - -#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s deleted file mode 100644 index a84c391..0000000 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-offset-err-1.s +++ /dev/null @@ -1,15 +0,0 @@ - .cfi_sections .sframe - .cfi_startproc - stg %r11,88(%r15) - .cfi_rel_offset 11, 88 - stg %r14,112(%r15) - .cfi_rel_offset 14, 112 - la %r11,0 - la %r14,0 -.Lreturn: - lg %r14,112(%r15) - .cfi_restore 14 - lg %r11,88(%r15) - .cfi_restore 11 - br %r14 - .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.d new file mode 100644 index 0000000..ee9f25c --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.d @@ -0,0 +1,22 @@ +#objdump: --sframe=.sframe +#name: SFrame generation on s390 - FP and RA registers saved in FPR registers +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE + Num FDEs: 1 + Num FREs: 5 + + Function Index : + + func idx \[0\]: pc = 0x0, size = 26 bytes + STARTPC +CFA +FP +RA + + 0+0000 +sp\+160 +u +u + + 0+0004 +sp\+160 +r17 +u\* + + 0+0008 +sp\+160 +r17 +r16 + + 0+0014 +sp\+160 +r17 +u\* + + 0+0018 +sp\+160 +u +u + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.s new file mode 100644 index 0000000..48b01ac --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-2.s @@ -0,0 +1,15 @@ + .cfi_sections .sframe + .cfi_startproc + ldgr %f2,%r11 + .cfi_register 11, 17 + ldgr %f0,%r14 + .cfi_register 14, 16 + la %r11,0 + la %r14,0 +.Lreturn: + lgdr %r14,%f0 + .cfi_restore 14 + lgdr %r11,%f2 + .cfi_restore 11 + br %r14 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.d deleted file mode 100644 index 49d4e4a..0000000 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.d +++ /dev/null @@ -1,15 +0,0 @@ -#name: SFrame generation on s390 - FP without RA saved in register -#as: --gsframe -#warning: skipping SFrame FDE due to FP without RA on stack -#objdump: --sframe=.sframe -#... -Contents of the SFrame section .sframe: - - Header : - - Version: SFRAME_VERSION_2 - Flags: NONE - Num FDEs: 0 - Num FREs: 0 - -#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.s deleted file mode 100644 index 48b01ac..0000000 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-s390-fpra-register-err-1.s +++ /dev/null @@ -1,15 +0,0 @@ - .cfi_sections .sframe - .cfi_startproc - ldgr %f2,%r11 - .cfi_register 11, 17 - ldgr %f0,%r14 - .cfi_register 14, 16 - la %r11,0 - la %r14,0 -.Lreturn: - lgdr %r14,%f0 - .cfi_restore 14 - lgdr %r11,%f2 - .cfi_restore 11 - br %r14 - .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp index 77281a1..268e110 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp @@ -109,7 +109,7 @@ if { [istarget "s390x*-*-*"] && [gas_sframe_check] } then { run_dump_test "cfi-sframe-s390-err-2" run_dump_test "cfi-sframe-s390-err-3" run_dump_test "cfi-sframe-s390-fpra-offset-1" - run_dump_test "cfi-sframe-s390-fpra-offset-err-1" + run_dump_test "cfi-sframe-s390-fpra-offset-2" run_dump_test "cfi-sframe-s390-fpra-register-1" - run_dump_test "cfi-sframe-s390-fpra-register-err-1" + run_dump_test "cfi-sframe-s390-fpra-register-2" } -- cgit v1.1