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 due to DWARF CFI op <name> (0x<hexval>)
Whenever possible print meaningful warning messages, when the assembler
skips generation of SFrame FDE:
- skipping SFrame FDE due to .cfi_def_cfa defining non-SP/FP register
<regno> as CFA base register
- skipping SFrame FDE due to .cfi_def_cfa_register defining non-SP/FP
register <regno> as CFA base register
- skipping SFrame FDE due to .cfi_def_cfa_offset without CFA base
register in effect
- skipping SFrame FDE due to .cfi_def_cfa_offset with non-SP/FP register
<regno> as CFA base register in effect
- skipping SFrame FDE due to .cfi_val_offset specifying {FP|RA} register
- skipping SFrame FDE due to .cfi_remember_state without SFrame FRE
state
- skipping SFrame FDE due to .cfi_register specifying {SP|FP|RA}
register
- skipping SFrame FDE due to non-default return-address 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.
Reviewed-by: Andreas Krebbel <krebbel@linux.ibm.com> Signed-off-by: Jens Remus <jremus@linux.ibm.com>