Loading Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -890,7 +890,7 @@ LD_FLAGS_LTO_CLANG := -mllvm -import-instr-limit=5 KBUILD_LDFLAGS += $(LD_FLAGS_LTO_CLANG) KBUILD_LDFLAGS_MODULE += $(LD_FLAGS_LTO_CLANG) KBUILD_LDS_MODULE += $(srctree)/scripts/module-lto.lds KBUILD_LDS_MODULE += scripts/module-lto.lds endif ifdef CONFIG_LTO Loading scripts/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,8 @@ always := $(hostprogs-y) $(hostprogs-m) # The following hostprogs-y programs are only build on demand hostprogs-y += unifdef extra-$(CONFIG_LTO_CLANG) += module-lto.lds subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins subdir-$(CONFIG_MODVERSIONS) += genksyms subdir-$(CONFIG_SECURITY_SELINUX) += selinux Loading scripts/module-lto.lds→scripts/module-lto.lds.S +13 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0 */ #include <asm/page.h> /* * With CONFIG_LTO_CLANG, LLD always enables -fdata-sections and * -ffunction-sections, which increases the size of the final module. Loading @@ -18,5 +21,14 @@ SECTIONS { .rela.rodata : { *(.rela.rodata .rela.rodata.[0-9a-zA-Z_]*) } .rela.text : { *(.rela.text .rela.text.[0-9a-zA-Z_]*) } .rodata : { *(.rodata .rodata.[0-9a-zA-Z_]*) } .text : { *(.text .text.[0-9a-zA-Z_]*) } /* * With CFI_CLANG, ensure __cfi_check is at the beginning of the * .text section, and that the section is aligned to page size. */ .text : ALIGN(PAGE_SIZE) { *(.text.__cfi_check) *(.text .text.[0-9a-zA-Z_]* .text..L.cfi*) } } Loading
Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -890,7 +890,7 @@ LD_FLAGS_LTO_CLANG := -mllvm -import-instr-limit=5 KBUILD_LDFLAGS += $(LD_FLAGS_LTO_CLANG) KBUILD_LDFLAGS_MODULE += $(LD_FLAGS_LTO_CLANG) KBUILD_LDS_MODULE += $(srctree)/scripts/module-lto.lds KBUILD_LDS_MODULE += scripts/module-lto.lds endif ifdef CONFIG_LTO Loading
scripts/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,8 @@ always := $(hostprogs-y) $(hostprogs-m) # The following hostprogs-y programs are only build on demand hostprogs-y += unifdef extra-$(CONFIG_LTO_CLANG) += module-lto.lds subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins subdir-$(CONFIG_MODVERSIONS) += genksyms subdir-$(CONFIG_SECURITY_SELINUX) += selinux Loading
scripts/module-lto.lds→scripts/module-lto.lds.S +13 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0 */ #include <asm/page.h> /* * With CONFIG_LTO_CLANG, LLD always enables -fdata-sections and * -ffunction-sections, which increases the size of the final module. Loading @@ -18,5 +21,14 @@ SECTIONS { .rela.rodata : { *(.rela.rodata .rela.rodata.[0-9a-zA-Z_]*) } .rela.text : { *(.rela.text .rela.text.[0-9a-zA-Z_]*) } .rodata : { *(.rodata .rodata.[0-9a-zA-Z_]*) } .text : { *(.text .text.[0-9a-zA-Z_]*) } /* * With CFI_CLANG, ensure __cfi_check is at the beginning of the * .text section, and that the section is aligned to page size. */ .text : ALIGN(PAGE_SIZE) { *(.text.__cfi_check) *(.text .text.[0-9a-zA-Z_]* .text..L.cfi*) } }