LoongArch: Add Kconfig option AS_HAS_EXPLICIT_RELOCS
authorXi Ruoyao <xry111@xry111.site>
Wed, 12 Oct 2022 08:36:08 +0000 (16:36 +0800)
committerHuacai Chen <chenhuacai@loongson.cn>
Wed, 12 Oct 2022 08:36:08 +0000 (16:36 +0800)
GNU as >= 2.40 and GCC >= 13 will support using explicit relocation
hints in the assembly code, instead of la.* macros. The usage of
explicit relocation hints can improve code generation so it's enabled
by default by GCC >= 13.

Introduce a Kconfig option AS_HAS_EXPLICIT_RELOCS as the switch for
"use explicit relocation hints or not".

Tested-by: WANG Xuerui <git@xen0n.name>
Signed-off-by: Xi Ruoyao <xry111@xry111.site>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/Kconfig

index f65c39e..9aeecc8 100644 (file)
@@ -195,6 +195,9 @@ config SCHED_OMIT_FRAME_POINTER
        bool
        default y
 
+config AS_HAS_EXPLICIT_RELOCS
+       def_bool $(as-instr,x:pcalau12i \$t0$(comma)%pc_hi20(x))
+
 menu "Kernel type and options"
 
 source "kernel/Kconfig.hz"