[PATCH] gas: sframe: partially process DWARF expressions in CFI_escape

Jens Remus jremus@linux.ibm.com
Wed Jan 29 17:11:34 GMT 2025


On 28.01.2025 01:57, Indu Bhagat wrote:
> CFI_escape is most commonly used to include DWARF expressions in the
> unwind information.  One may also use CFI_escape to add OS-specific CFI
> opcodes.  Up until now, SFrame generation process would skip generating
> SFrame FDE at the mere sight of a CFI_escape opcode.
> 
> Fine tune the handling of CFI_escape for SFrame generation by explicitly
> checking for some "harmless" (in context of SFrame generation)
> CFI_escape DWARF expressions:
>    - DW_CFA_expression affecting non SP/FP registers
>    - DW_CFA_value_expression affecting non SP/FP registers.

Could that be extended to also process the CFI instructions already
supported by SFrame, such as e.g. DW_CFA_val_offset through
sframe_xlate_do_val_offset()?

On s390 Glibc for instance uses .cfi_escape to piece together
.cfi_val_offset due to minimum binutils release requirements.

Thanks and regards,
Jens
-- 
Jens Remus
Linux on Z Development (D3303)
+49-7031-16-1128 Office
jremus@de.ibm.com

IBM

IBM Deutschland Research & Development GmbH; Vorsitzender des Aufsichtsrats: Wolfgang Wendt; Geschäftsführung: David Faller; Sitz der Gesellschaft: Böblingen; Registergericht: Amtsgericht Stuttgart, HRB 243294
IBM Data Privacy Statement: https://www.ibm.com/privacy/



More information about the Binutils mailing list