On 1/18/2022 10:09 AM, H.J. Lu via Gcc-patches wrote:
Aligne __EH_FRAME_BEGIN__ to pointer size since gcc/unwind-dw2-fde.h has

/* The first few fields of a CIE.  The CIE_id field is 0 for a CIE,
    to distinguish it from a valid FDE.  FDEs are aligned to an addressing
    unit boundary, but the fields within are unaligned.  */
struct dwarf_cie
{
   uword length;
   sword CIE_id;
   ubyte version;
   unsigned char augmentation[];
} __attribute__ ((packed, aligned (__alignof__ (void *))));

/* The first few fields of an FDE.  */
struct dwarf_fde
{
   uword length;
   sword CIE_delta;
   unsigned char pc_begin[];
} __attribute__ ((packed, aligned (__alignof__ (void *))));

which indicates that CIE/FDE should be aligned at the pointer size.

        PR libgcc/27576
        * crtstuff.c (__EH_FRAME_BEGIN__): Aligned to pointer size.
OK.  Though it's unclear how important this is in practice.

jeff

Reply via email to