projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d3ec75b
)
LoongArch: Explicitly set -fdirect-access-external-data for vmlinux
author
WANG Rui
<wangrui@loongson.cn>
Tue, 21 Nov 2023 07:03:25 +0000
(15:03 +0800)
committer
Huacai Chen
<chenhuacai@loongson.cn>
Tue, 21 Nov 2023 07:03:25 +0000
(15:03 +0800)
After this llvm commit [1], The -fno-pic does not imply direct access
external data. Explicitly set -fdirect-access-external-data for vmlinux
that can avoids GOT entries.
Link:
https://github.com/llvm/llvm-project/commit/47eeee297775347cbdb7624d6a766c2a3eec4a59
Suggested-by: Xi Ruoyao <xry111@xry111.site>
Signed-off-by: WANG Rui <wangrui@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/Makefile
patch
|
blob
|
blame
|
history
diff --git
a/arch/loongarch/Makefile
b/arch/loongarch/Makefile
index a8d65eaf1211f36d533c2df006e73081ddb5a977..204b94b2e6aaa6e3afc71b292004fb3b329256b2 100644
(file)
--- a/
arch/loongarch/Makefile
+++ b/
arch/loongarch/Makefile
@@
-68,6
+68,7
@@
LDFLAGS_vmlinux += -static -n -nostdlib
ifdef CONFIG_AS_HAS_EXPLICIT_RELOCS
cflags-y += $(call cc-option,-mexplicit-relocs)
KBUILD_CFLAGS_KERNEL += $(call cc-option,-mdirect-extern-access)
+KBUILD_CFLAGS_KERNEL += $(call cc-option,-fdirect-access-external-data)
KBUILD_AFLAGS_MODULE += $(call cc-option,-fno-direct-access-external-data)
KBUILD_CFLAGS_MODULE += $(call cc-option,-fno-direct-access-external-data)
KBUILD_AFLAGS_MODULE += $(call cc-option,-mno-relax) $(call cc-option,-Wa$(comma)-mno-relax)