https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63304

--- Comment #47 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
(In reply to ard.biesheuvel from comment #46)
> One issue that this causes, which I did not see mentioned anywhere in the
> thread, is that the use of adrp/add and adrp/ldr imposes a 4 KB section
> alignment. In EDK2 Tianocore (UEFI reference implementation), we
> deliberately use -mcmodel=large to get around this requirement, since code
> size is a big deal when executing from NOR flash, and the architecture of
> EDK2 (lots and lots of small separately linked binaries) makes
> the overhead of 4 KB section alignment prohibitive. (It uses 32 byte section
> alignment unless there are objects like a vector table that require more)

Huh?  It imposes a 4k *SEGMENT* alignment.  It doesn't impose a section
alignment.

Reply via email to