[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221014201354.3190007-1-ndesaulniers@google.com>
Date: Fri, 14 Oct 2022 13:13:50 -0700
From: Nick Desaulniers <ndesaulniers@...gle.com>
To: Russell King <rmk+kernel@...linux.org.uk>
Cc: Arnd Bergmann <arnd@...db.de>, Ard Biesheuvel <ardb@...nel.org>,
Masahiro Yamada <masahiroy@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
llvm@...ts.linux.dev, Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>
Subject: [PATCH v4 0/4] pass -march= only to compiler
When both -march= and -Wa,-march= are specified for assembler or
assembler-with-cpp sources, GCC and Clang will prefer the -Wa,-march=
value but Clang will warn that -march= is unused.
warning: argument unused during compilation: '-march=armv6k'
[-Wunused-command-line-argument]
This is the top group of warnings we observe when using clang to
assemble the kernel via `ARCH=arm make LLVM=1`.
Arnd sent a v2 of my previous patch
https://lore.kernel.org/linux-arm-kernel/20210928154143.2106903-14-arnd@kernel.org/
I added yet a few more instances I found since then. Nathan pointed out
a new one too that I've fixed since v3.
Fixing this will allow us to enable
-Werror=unused-command-line-argument for clang builds.
v3 had an issue wrt. __thumb2__
https://lore.kernel.org/llvm/CAKwvOdmkd2PxvMUZA=A-72eATGDZkqDj--Bv1W+Xt_K_LWdROA@mail.gmail.com/
I've incorporated idea from Nathan and Ard on that.
Nick Desaulniers (4):
ARM: remove lazy evaluation in Makefile
ARM: use .arch directives instead of assembler command line flags
ARM: only use -mtp=cp15 for the compiler
ARM: pass -march= only to compiler
arch/arm/Makefile | 78 ++++++++++++++++-------------
arch/arm/boot/compressed/Makefile | 1 -
arch/arm/common/Makefile | 2 -
arch/arm/common/mcpm_head.S | 2 +
arch/arm/common/vlock.S | 2 +
arch/arm/kernel/Makefile | 2 -
arch/arm/kernel/hyp-stub.S | 2 +
arch/arm/kernel/swp_emulate.c | 1 +
arch/arm/lib/Makefile | 4 --
arch/arm/lib/delay-loop.S | 4 ++
arch/arm/mach-at91/Makefile | 3 --
arch/arm/mach-at91/pm_suspend.S | 4 ++
arch/arm/mach-imx/Makefile | 3 --
arch/arm/mach-imx/headsmp.S | 2 +
arch/arm/mach-imx/resume-imx6.S | 2 +
arch/arm/mach-imx/suspend-imx6.S | 2 +
arch/arm/mach-mvebu/Makefile | 3 --
arch/arm/mach-mvebu/coherency_ll.S | 1 +
arch/arm/mach-mvebu/pmsu.c | 1 +
arch/arm/mach-npcm/Makefile | 2 -
arch/arm/mach-npcm/headsmp.S | 2 +
arch/arm/mach-tegra/Makefile | 2 -
arch/arm/mach-tegra/reset-handler.S | 2 +
arch/arm/mach-tegra/sleep-tegra20.S | 2 +
arch/arm/mach-tegra/sleep-tegra30.S | 2 +
arch/arm/mach-tegra/sleep.S | 2 +
arch/arm/mm/Makefile | 15 ------
arch/arm/mm/abort-ev6.S | 1 +
arch/arm/mm/abort-ev7.S | 1 +
arch/arm/mm/cache-v6.S | 2 +
arch/arm/mm/cache-v7.S | 2 +
arch/arm/mm/cache-v7m.S | 2 +
arch/arm/mm/copypage-feroceon.c | 1 +
arch/arm/mm/proc-v6.S | 2 +
arch/arm/mm/proc-v7-2level.S | 2 +
arch/arm/mm/proc-v7.S | 2 +
arch/arm/mm/tlb-v6.S | 2 +
arch/arm/mm/tlb-v7.S | 2 +
drivers/memory/Makefile | 2 -
drivers/memory/ti-emif-sram-pm.S | 1 +
drivers/soc/bcm/brcmstb/pm/Makefile | 1 -
drivers/soc/bcm/brcmstb/pm/s2-arm.S | 1 +
42 files changed, 97 insertions(+), 75 deletions(-)
--
2.38.0.413.g74048e4d9e-goog
Powered by blists - more mailing lists