On Thu, Apr 15, 2021 at 7:02 AM Catalin Marinas catalin.marinas@arm.com wrote:
On Thu, Apr 15, 2021 at 06:25:57AM -0700, Nathan Chancellor wrote:
On Thu, Apr 15, 2021 at 10:17:43AM +0100, Catalin Marinas wrote:
On Tue, Apr 13, 2021 at 05:08:04PM -0700, Nathan Chancellor wrote:
After commit 2decad92f473 ("arm64: mte: Ensure TIF_MTE_ASYNC_FAULT is set atomically"), LLVM's integrated assembler fails to build entry.S:
<instantiation>:5:7: error: expected assembly-time absolute expression .org . - (664b-663b) + (662b-661b) ^ <instantiation>:6:7: error: expected assembly-time absolute expression .org . - (662b-661b) + (664b-663b) ^
I tried the latest Linus' tree and linux-next (defconfig) with this commit in and I can't get your build error. I used both clang-10 from Debian stable and clang-11 from Debian sid. So, which clang version did you use or which kernel config options?
Interesting, this reproduces for me with LLVM 12 or newer with just defconfig.
It fails for me as well with clang-12. Do you happen to know why it works fine with previous clang versions?
It looks like CONFIG_ARM64_AS_HAS_MTE is not set when we use the integrated assembler with LLVM 11, and the code that breaks later versions is gated behind CONFIG_ARM64_MTE.
Sami