On Wed, 01 Jul 2026, Alice Carlotti wrote:
> > +#if defined (__SEH__) && defined (__aarch64__)
> > +  /* Large functions on AArch64 (>= 1MB) are split into multiple fragments.
> > +     However, it is expected the most of the functions will have only one
> > +     fragment.  The beginning of each SEH handler data in .xdata record 
> > starts
> > +     with a fragment offset and an address to .seh_handlerdata.
> > +     .seh_handlerdata is emitted only once for the .xdata record of the 
> > last
> > +     fragment.  */
> 
> I found this comment very hard to understand.  Having investigated further, I
> think the following is an accurate description of what is going on here:
> 
>   /* On AArch64, a single function may be split into multiple function
>      fragments, each with it's own .pdata and (if required) .xdata records.
>      The language-specific exception handler data in .xdata records used by 
> GCC
>      consists of two values:
>      - The offset of the fragment within the full function;
>      - The RVA of a .seh_handlerdata record, which is shared by all
>        fragments of the function.  */
> 
> Is this correct, and does it seem clearer to you than your original comment?

It is correct. The comment will be replaced if it is easier to understand.

Regards,
Evgeny

Reply via email to