lkml.org 
[lkml]   [2020]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v2 1/4] ARC: allow to override default mcpu compiler flag
Date
On 6/4/20 10:39 AM, Eugeniy Paltsev wrote:
> Kernel builds set their own default -mcpu for a given ISA build.
> But that gets in the way of "custom" -mcpu flags from propagating
> into kernel build.
>
> This will also be used in next patches for HSDK-4xD board support which
> uses a different -mcpu to effect dual issue scheduling.
>
> Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>

Much better. Ack with nit below.

> ---
> arch/arc/Kconfig | 9 +++++++++
> arch/arc/Makefile | 21 +++++++++++++++++++--
> 2 files changed, 28 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index ff306246d0f8..7034c217708f 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -377,6 +377,15 @@ config ARC_HAS_SWAPE
> bool "Insn: SWAPE (endian-swap)"
> default y
>
> +config ARC_TUNE_MCPU
> + string "Override default -mcpu compiler flag"
> + default ""
> + help
> + Override default -mcpu=xxx compiler flag (which is set depending on
> + the ISA version) with the specified value.
> + NOTE: If specified flag isn't supported by current compiler the
> + ISA default value will be used as a fallback.
> +
> if ISA_ARCV2
>
> config ARC_USE_UNALIGNED_MEM_ACCESS
> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> index 20e9ab6cc521..2b66e8264174 100644
> --- a/arch/arc/Makefile
> +++ b/arch/arc/Makefile
> @@ -10,8 +10,25 @@ CROSS_COMPILE := $(call cc-cross-prefix, arc-linux- arceb-linux-)
> endif
>
> cflags-y += -fno-common -pipe -fno-builtin -mmedium-calls -D__linux__
> -cflags-$(CONFIG_ISA_ARCOMPACT) += -mA7
> -cflags-$(CONFIG_ISA_ARCV2) += -mcpu=hs38
> +
> +tune-mcpu-def-$(CONFIG_ISA_ARCOMPACT) := -mA7
> +tune-mcpu-def-$(CONFIG_ISA_ARCV2) := -mcpu=hs38
> +
> +ifeq ($(CONFIG_ARC_TUNE_MCPU),"")
> +cflags-y += $(tune-mcpu-def-y)
> +else
> +tune-mcpu := $(shell echo $(CONFIG_ARC_TUNE_MCPU))
> +tune-mcpu-ok := $(call cc-option-yn, $(tune-mcpu))
> +ifeq ($(tune-mcpu-ok),y)
> +cflags-y += $(tune-mcpu)
> +else
> +# The flag provided by 'CONFIG_ARC_TUNE_MCPU' option isn't known by this compiler
> +# (probably the compiler is too old). Use ISA default mcpu flag instead as a safe option.

It is obvious what is done here and the comments can be skipped (no need to repost).

> +$(warning ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '$(tune-mcpu)' is unknown, fallback to '$(tune-mcpu-def-y)')
> +cflags-y += $(tune-mcpu-def-y)
> +endif
> +endif

-Vineet
\
 
 \ /
  Last update: 2020-06-04 20:28    [W:0.534 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site