kernel: use KCFLAGS for passing EXTRA_OPTIMIZATION flags
This uses kernel's generic variable and doesn't require patching it with a custom Makefile change. It's expected *not* to change any behaviour. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit1d42af720c
) Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit24e27bec9a
)
This commit is contained in:
parent
bd84d517eb
commit
44fa330a82
|
@ -101,7 +101,7 @@ endif
|
||||||
KERNEL_MAKE = $(MAKE) $(KERNEL_MAKEOPTS)
|
KERNEL_MAKE = $(MAKE) $(KERNEL_MAKEOPTS)
|
||||||
|
|
||||||
KERNEL_MAKE_FLAGS = \
|
KERNEL_MAKE_FLAGS = \
|
||||||
KCFLAGS="$(call iremap,$(BUILD_DIR),$(notdir $(BUILD_DIR)))" \
|
KCFLAGS="$(call iremap,$(BUILD_DIR),$(notdir $(BUILD_DIR))) $(filter-out -fno-plt,$(call qstrip,$(CONFIG_EXTRA_OPTIMIZATION)))" \
|
||||||
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
|
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
|
||||||
CROSS_COMPILE="$(KERNEL_CROSS)" \
|
CROSS_COMPILE="$(KERNEL_CROSS)" \
|
||||||
ARCH="$(LINUX_KARCH)" \
|
ARCH="$(LINUX_KARCH)" \
|
||||||
|
|
1
rules.mk
1
rules.mk
|
@ -62,7 +62,6 @@ ARCH_PACKAGES:=$(call qstrip,$(CONFIG_TARGET_ARCH_PACKAGES))
|
||||||
BOARD:=$(call qstrip,$(CONFIG_TARGET_BOARD))
|
BOARD:=$(call qstrip,$(CONFIG_TARGET_BOARD))
|
||||||
SUBTARGET:=$(call qstrip,$(CONFIG_TARGET_SUBTARGET))
|
SUBTARGET:=$(call qstrip,$(CONFIG_TARGET_SUBTARGET))
|
||||||
TARGET_OPTIMIZATION:=$(call qstrip,$(CONFIG_TARGET_OPTIMIZATION))
|
TARGET_OPTIMIZATION:=$(call qstrip,$(CONFIG_TARGET_OPTIMIZATION))
|
||||||
export EXTRA_OPTIMIZATION:=$(filter-out -fno-plt,$(call qstrip,$(CONFIG_EXTRA_OPTIMIZATION)))
|
|
||||||
TARGET_SUFFIX=$(call qstrip,$(CONFIG_TARGET_SUFFIX))
|
TARGET_SUFFIX=$(call qstrip,$(CONFIG_TARGET_SUFFIX))
|
||||||
BUILD_SUFFIX:=$(call qstrip,$(CONFIG_BUILD_SUFFIX))
|
BUILD_SUFFIX:=$(call qstrip,$(CONFIG_BUILD_SUFFIX))
|
||||||
SUBDIR:=$(patsubst $(TOPDIR)/%,%,${CURDIR})
|
SUBDIR:=$(patsubst $(TOPDIR)/%,%,${CURDIR})
|
||||||
|
|
|
@ -14,18 +14,12 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -719,11 +719,11 @@ KBUILD_CFLAGS += $(call cc-disable-warni
|
@@ -723,7 +723,7 @@ KBUILD_CFLAGS += -O2
|
||||||
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
|
|
||||||
|
|
||||||
ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
|
|
||||||
-KBUILD_CFLAGS += -O2
|
|
||||||
+KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION)
|
|
||||||
else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
|
else ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE_O3
|
||||||
-KBUILD_CFLAGS += -O3
|
KBUILD_CFLAGS += -O3
|
||||||
+KBUILD_CFLAGS += -O3 $(EXTRA_OPTIMIZATION)
|
|
||||||
else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
else ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
|
||||||
-KBUILD_CFLAGS += -Os
|
-KBUILD_CFLAGS += -Os
|
||||||
+KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)
|
+KBUILD_CFLAGS += -Os -fno-reorder-blocks -fno-tree-ch
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Tell gcc to never replace conditional load with a non-conditional one
|
# Tell gcc to never replace conditional load with a non-conditional one
|
||||||
|
|
Loading…
Reference in New Issue