arch: Introduce CONFIG_FUNCTION_ALIGNMENT
commit d49a0626 upstream. Generic function-alignment infrastructure. Architectures can select FUNCTION_ALIGNMENT_xxB symbols; the FUNCTION_ALIGNMENT symbol is then set to the largest such selected size, 0 otherwise. >From this the -falign-functions compiler argument and __ALIGN macro are set. This incorporates the DEBUG_FORCE_FUNCTION_ALIGN_64B knob and future alignment requirements for x86_64 (later in this series) into a single place. NOTE: also removes the 0x90 filler byte from the generic __ALIGN primitive, that value makes no sense outside of x86. NOTE: .balign 0 reverts to a no-op. Requested-by:Linus Torvalds <torvalds@linux-foundation.org> Change-Id: I053b3c408d56988381feb8c8bdb5e27ea221755f Signed-off-by:
Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lore.kernel.org/r/20220915111143.719248727@infradead.org [cascardo: adjust context at arch/x86/Kconfig] Signed-off-by:
Thadeu Lima de Souza Cascardo <cascardo@igalia.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Loading