diff options
author | Jens Remus <jremus@linux.ibm.com> | 2024-07-04 10:34:12 +0200 |
---|---|---|
committer | Jens Remus <jremus@linux.ibm.com> | 2024-07-04 10:34:12 +0200 |
commit | 536119a44c992036e14b512e06a12f04ea4ceed5 (patch) | |
tree | 80025100a6e46184a08e99c33d966e6cf3a7b559 /gas/gen-sframe.h | |
parent | 397582abe705c1b8a1ba042a7dda2e72afd9f4b0 (diff) | |
download | fsf-binutils-gdb-536119a44c992036e14b512e06a12f04ea4ceed5.zip fsf-binutils-gdb-536119a44c992036e14b512e06a12f04ea4ceed5.tar.gz fsf-binutils-gdb-536119a44c992036e14b512e06a12f04ea4ceed5.tar.bz2 |
gas: User readable warnings if SFrame FDE is not generated
The following generic warning message, which is printed whenever the
assembler skips generation of SFrame FDE, is not very helpful for the
user:
skipping SFrame FDE; CFI insn <name> (0x<hexval>)
Whenever possible print meaningful warning messages, when the assembler
skips generation of SFrame FDE:
- skipping SFrame FDE; non-SP/FP register <regno> in .cfi_def_cfa
- skipping SFrame FDE; non-SP/FP register <regno> in
.cfi_def_cfa_register
- skipping SFrame FDE; .cfi_def_cfa_offset without CFA base register
in effect
- skipping SFrame FDE; {FP|RA} register <regno> in .cfi_val_offset
- skipping SFrame FDE; {SP|FP|RA} register <regno> in in .cfi_register
- skipping SFrame FDE; .cfi_remember_state without prior SFrame FRE
state
- skipping SFrame FDE; non-default RA register <regno>
gas/
* gen-sframe.h (SFRAME_FRE_BASE_REG_INVAL): New macro for
invalid SFrame FRE CFA base register value of -1.
* gen-sframe.c: User readable warnings if SFrame FDE is not
generated.
gas/testsuite/
* gas/cfi-sframe/common-empty-1.d: Update generic SFrame test
case to updated warning message texts.
* gas/cfi-sframe/common-empty-2.d: Likewise.
* gas/cfi-sframe/common-empty-3.d: Likewise.
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
Diffstat (limited to 'gas/gen-sframe.h')
-rw-r--r-- | gas/gen-sframe.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gas/gen-sframe.h b/gas/gen-sframe.h index fbe2fd5..8ed46db 100644 --- a/gas/gen-sframe.h +++ b/gas/gen-sframe.h @@ -24,6 +24,8 @@ #define SFRAME_FRE_ELEM_LOC_REG 0 #define SFRAME_FRE_ELEM_LOC_STACK 1 +#define SFRAME_FRE_BASE_REG_INVAL ((unsigned int)-1) + /* SFrame Frame Row Entry (FRE). A frame row entry is a slice of the frame and can be valid for a set of |