summaryrefslogtreecommitdiffstats
path: root/arch/s390/Kconfig
diff options
context:
space:
mode:
authorHeiko Carstens <hca@linux.ibm.com>2023-03-13 13:50:35 +0100
committerHeiko Carstens <hca@linux.ibm.com>2023-03-20 11:12:46 +0100
commit6ef55060a1cc29dd54ff390f22cb3de266dab2b0 (patch)
treee32b6bc3a90d4d8b32c5ecca68fe797a49b7292f /arch/s390/Kconfig
parente5323477e66c0e2cf9363646e8a84e98e8c79f43 (diff)
downloadlinux-stable-6ef55060a1cc29dd54ff390f22cb3de266dab2b0.tar.gz
linux-stable-6ef55060a1cc29dd54ff390f22cb3de266dab2b0.tar.bz2
linux-stable-6ef55060a1cc29dd54ff390f22cb3de266dab2b0.zip
s390: make use of CONFIG_FUNCTION_ALIGNMENT
Make use of CONFIG_FUNCTION_ALIGNMENT which was introduced with commit d49a0626216b ("arch: Introduce CONFIG_FUNCTION_ALIGNMENT"). Select FUNCTION_ALIGNMENT_8B for gcc in order to reflect gcc's default function alignment. For all other compilers, which is only clang, select a function alignment of 16 bytes which reflects the default function alignment for clang. Also change the __ALIGN define to follow whatever the value of CONFIG_FUNCTION_ALIGNMENT is. This makes sure that the alignment of C and assembler functions is the same. In result everything still uses the default function alignment for both compilers. However in addition this is now also true for all assembly functions, so that all functions have a consistent alignment. Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch/s390/Kconfig')
-rw-r--r--arch/s390/Kconfig2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 9809c74e1240..8f1c6da2ae4d 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -131,6 +131,8 @@ config S390
select CLONE_BACKWARDS2
select DMA_OPS if PCI
select DYNAMIC_FTRACE if FUNCTION_TRACER
+ select FUNCTION_ALIGNMENT_8B if CC_IS_GCC
+ select FUNCTION_ALIGNMENT_16B if !CC_IS_GCC
select GCC12_NO_ARRAY_BOUNDS
select GENERIC_ALLOCATOR
select GENERIC_CPU_AUTOPROBE