On Thu, Mar 31, 2022 at 7:46 AM Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > > This flag is specific to clang, where it is only used by the 32-bit and > 64-bit ARM backends. In certain situations, the presence of this flag > will cause a warning, as shown by commit 6580c5c18fb3 ("um: clang: Strip > out -mno-global-merge from USER_CFLAGS"). > > Since commit 61163efae020 ("kbuild: LLVMLinux: Add Kbuild support for > building kernel with Clang") that added this flag back in 2014, there > have been quite a few changes to the GlobalMerge pass in LLVM. Building > several different ARCH=arm and ARCH=arm64 configurations with LLVM 11 > (minimum) and 15 (current main version) with this flag removed (i.e., > with the default of '-mglobal-merge') reveals no modpost warnings, so it > is likely that the issue noted in the comment is no longer relevant due > to changes in LLVM or modpost, meaning this flag can be removed. > > If any new warnings show up that are a result of the removal of this > flag, it can be added back under arch/arm{,64}/Makefile to avoid > warnings on other architectures. > > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx> > --- This seems to work fine here under the KUnit tooling, with both x86_64 and arm64. That admittedly doesn't do anything with modules, so wouldn't reveal any of those issues, but at least the warnings about --mno-global-merge existing remain gone. Tested-by: David Gow <davidgow@xxxxxxxxxx> Cheers, -- David