[PATCH, V2 8/9] NEWS: sframe: mention new semantics for SFrame FDE function start addr
Jan Beulich
jbeulich@suse.com
Tue Jun 10 06:22:32 GMT 2025
On 07.06.2025 07:41, Indu Bhagat wrote:
> On 6/6/25 3:23 AM, Jan Beulich wrote:
>> On 04.06.2025 09:08, Indu Bhagat via Binutils wrote:
>>> The SFrame FDE's function start address is always emitted as follows by
>>> GAS and ld: it is the offset of the start PC of the respective function
>>> from the FDE field itself.
>>>
>>> GAS and ld will emit a flag SFRAME_F_FDE_FUNC_START_ADDR_PCREL set to 1
>>> when emitting the field in this encoding.
>>
>> With this, ...
>>
>>> binutils/
>>> * NEWS: Announce the change of encoding for SFrame FDE func
>>> start addr field.
>>
>> ... why is it binutils/NEWS where the entry is added? I think this ought to
>> go into gas/NEWS (the producer) and maybe also ld/NEWS (the main affected
>> [internal] consumer).
>>
>
> As the changes were across a range of entities, e.g., gas, ld, libsframe, and most importantly SFrame format itself adding a new flag, I thought it was easier to word them in a combined way here in binutils/NEWS and avoid repetition. Also, later (closer to 2.45 release) I may add an entry in binutils/NEWS for libsframe too (which will announce version bump with key changes, likely pointing to one of the changes being addition of APIS to support the new SFRAME_F_FDE_FUNC_START_ADDR_PCREL flag).
>
> That said, if you think it is better to include in gas/NEWS and ld/NEWS, how about something like this (some repetition is unavoidable I think):
This would indeed seem better to me (and "yes of course" as to there being
some repetition).
Jan
> ld/NEWS:
> * All SFrame sections generated by the linker have the header flag
> SFRAME_F_FDE_FUNC_START_ADDR_PCREL set to indicate the new encoding for
> sfde_func_start_address field in the SFrame section. Relocatable SFrame
> links are now fixed.
>
> gas/NEWS:
> * All SFrame sections generated by gas have the header flag
> SFRAME_F_FDE_FUNC_START_ADDR_PCREL set. gas was already emitting SFrame
> sections with the applicable encoding. Setting the flag is necessary for
> fixing relocatable SFrame links.
>
> binutils/NEWS:
> * For SFrame stack trace format, the function start address in each SFrame
> FDE has a changed encoding: The 32-bit signed integer now holds the offset
> of the start PC of the associated function from the sfde_func_start_address
> field itself (instead of the earlier where it was the offset from the start
> of the SFrame section itself). All SFrame sections generated by gas and ld
> generate the new encoding by default, with the (new)
> SFRAME_F_FDE_FUNC_START_ADDR_PCREL flag set.
>
> Relocatable SFrame links are now fixed.
>
More information about the Binutils
mailing list