[PATCH v4 1/4] ARM: remove lazy evaluation in Makefile

Nathan Chancellor nathan at kernel.org
Fri Oct 14 14:18:06 PDT 2022


On Fri, Oct 14, 2022 at 01:13:51PM -0700, Nick Desaulniers wrote:
> arch-y and tune-y used lazy evaluation since they used to contain
> cc-option checks. They don't any longer, so just eagerly evaluate these
> command line flags.
> 
> Signed-off-by: Nick Desaulniers <ndesaulniers at google.com>

Reviewed-by: Nathan Chancellor <nathan at kernel.org>

> ---
> No change from v3.
> 
>  arch/arm/Makefile | 60 +++++++++++++++++++++--------------------------
>  1 file changed, 27 insertions(+), 33 deletions(-)
> 
> diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> index c846119c448f..8dd943b50b7d 100644
> --- a/arch/arm/Makefile
> +++ b/arch/arm/Makefile
> @@ -63,44 +63,38 @@ KBUILD_CFLAGS	+= $(call cc-option,-fno-ipa-sra)
>  # Note that GCC does not numerically define an architecture version
>  # macro, but instead defines a whole series of macros which makes
>  # testing for a specific architecture or later rather impossible.
> -arch-$(CONFIG_CPU_32v7M)	=-D__LINUX_ARM_ARCH__=7 -march=armv7-m
> -arch-$(CONFIG_CPU_32v7)		=-D__LINUX_ARM_ARCH__=7 -march=armv7-a
> -arch-$(CONFIG_CPU_32v6)		=-D__LINUX_ARM_ARCH__=6 -march=armv6
> -# Only override the compiler option if ARMv6. The ARMv6K extensions are
> +arch-$(CONFIG_CPU_32v7M)	:=-D__LINUX_ARM_ARCH__=7 -march=armv7-m
> +arch-$(CONFIG_CPU_32v7)		:=-D__LINUX_ARM_ARCH__=7 -march=armv7-a
> +arch-$(CONFIG_CPU_32v6)		:=-D__LINUX_ARM_ARCH__=6 -march=armv6
> +# Only override the compiler opt:ion if ARMv6. The ARMv6K extensions are
>  # always available in ARMv7
>  ifeq ($(CONFIG_CPU_32v6),y)
> -arch-$(CONFIG_CPU_32v6K)	=-D__LINUX_ARM_ARCH__=6 -march=armv6k
> +arch-$(CONFIG_CPU_32v6K)	:=-D__LINUX_ARM_ARCH__=6 -march=armv6k
>  endif
> -arch-$(CONFIG_CPU_32v5)		=-D__LINUX_ARM_ARCH__=5 -march=armv5te
> -arch-$(CONFIG_CPU_32v4T)	=-D__LINUX_ARM_ARCH__=4 -march=armv4t
> -arch-$(CONFIG_CPU_32v4)		=-D__LINUX_ARM_ARCH__=4 -march=armv4
> -arch-$(CONFIG_CPU_32v3)		=-D__LINUX_ARM_ARCH__=3 -march=armv3m
> -
> -# Evaluate arch cc-option calls now
> -arch-y := $(arch-y)
> +arch-$(CONFIG_CPU_32v5)		:=-D__LINUX_ARM_ARCH__=5 -march=armv5te
> +arch-$(CONFIG_CPU_32v4T)	:=-D__LINUX_ARM_ARCH__=4 -march=armv4t
> +arch-$(CONFIG_CPU_32v4)		:=-D__LINUX_ARM_ARCH__=4 -march=armv4
> +arch-$(CONFIG_CPU_32v3)		:=-D__LINUX_ARM_ARCH__=3 -march=armv3m
>  
>  # This selects how we optimise for the processor.
> -tune-$(CONFIG_CPU_ARM7TDMI)	=-mtune=arm7tdmi
> -tune-$(CONFIG_CPU_ARM720T)	=-mtune=arm7tdmi
> -tune-$(CONFIG_CPU_ARM740T)	=-mtune=arm7tdmi
> -tune-$(CONFIG_CPU_ARM9TDMI)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_ARM940T)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_ARM946E)	=-mtune=arm9e
> -tune-$(CONFIG_CPU_ARM920T)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_ARM922T)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_ARM925T)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_ARM926T)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_FA526)	=-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_SA110)	=-mtune=strongarm110
> -tune-$(CONFIG_CPU_SA1100)	=-mtune=strongarm1100
> -tune-$(CONFIG_CPU_XSCALE)	=-mtune=xscale
> -tune-$(CONFIG_CPU_XSC3)		=-mtune=xscale
> -tune-$(CONFIG_CPU_FEROCEON)	=-mtune=xscale
> -tune-$(CONFIG_CPU_V6)		=-mtune=arm1136j-s
> -tune-$(CONFIG_CPU_V6K)		=-mtune=arm1136j-s
> -
> -# Evaluate tune cc-option calls now
> -tune-y := $(tune-y)
> +tune-$(CONFIG_CPU_ARM7TDMI)	:=-mtune=arm7tdmi
> +tune-$(CONFIG_CPU_ARM720T)	:=-mtune=arm7tdmi
> +tune-$(CONFIG_CPU_ARM740T)	:=-mtune=arm7tdmi
> +tune-$(CONFIG_CPU_ARM9TDMI)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_ARM940T)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_ARM946E)	:=-mtune=arm9e
> +tune-$(CONFIG_CPU_ARM920T)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_ARM922T)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_ARM925T)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_ARM926T)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_FA526)	:=-mtune=arm9tdmi
> +tune-$(CONFIG_CPU_SA110)	:=-mtune=strongarm110
> +tune-$(CONFIG_CPU_SA1100)	:=-mtune=strongarm1100
> +tune-$(CONFIG_CPU_XSCALE)	:=-mtune=xscale
> +tune-$(CONFIG_CPU_XSC3)		:=-mtune=xscale
> +tune-$(CONFIG_CPU_FEROCEON)	:=-mtune=xscale
> +tune-$(CONFIG_CPU_V6)		:=-mtune=arm1136j-s
> +tune-$(CONFIG_CPU_V6K)		:=-mtune=arm1136j-s
>  
>  ifeq ($(CONFIG_AEABI),y)
>  CFLAGS_ABI	:=-mabi=aapcs-linux -mfpu=vfp
> -- 
> 2.38.0.413.g74048e4d9e-goog
> 
> 



More information about the linux-arm-kernel mailing list