]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: alternative: fix build with clang integrated assembler
authorIlie Halip <ilie.halip@gmail.com>
Thu, 19 Mar 2020 21:45:28 +0000 (23:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Apr 2020 13:11:02 +0000 (15:11 +0200)
commit0a8a61627d2b2164e9e4a6aab894dad1b57860be
tree6f35dee79124189d08a84540fea7a80292e5b0f8
parent227febe966f3408f8077e0522d8560ce780bc7aa
arm64: alternative: fix build with clang integrated assembler

commit 4b33246a613c1b7bebd4f0f410b9dc25c6b4837a upstream.

Building an arm64 defconfig with clang's integrated assembler, this error
occurs:
    <instantiation>:2:2: error: unrecognized instruction mnemonic
     _ASM_EXTABLE 9999b, 9f
     ^
    arch/arm64/mm/cache.S:50:1: note: while in macro instantiation
    user_alt 9f, "dc cvau, x4", "dc civac, x4", 0
    ^

While GNU as seems fine with case-sensitive macro instantiations, clang
doesn't, so use the actual macro name (_asm_extable) as in the rest of
the file.

Also checked that the generated assembly matches the GCC output.

Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Fixes: 2f036d24753c ("arm64: fix "dc cvau" cache operation on errata-affected core")
Link: https://github.com/ClangBuiltLinux/linux/issues/924
Signed-off-by: Ilie Halip <ilie.halip@gmail.com>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/include/asm/alternative.h