https://bugs.kde.org/show_bug.cgi?id=444399

--- Comment #5 from Julian Seward <jsew...@acm.org> ---
I looked into this a bit.  It does indeed appear that LD{A}XP and ST{L}XP
exist in AArch64 8.0 but are not implemented in V.  I am somewhat surprised by
this since I distinctly remember carefully making a list of all instructions
that needed to be implemented, when doing the initial AArch64 port, so I'm not
sure how these got forgotten.

I will fix it, but it may not be an immediate fix.  VEX's intermediate
representation has a way to represent doubleword CAS, but can only represent
single word load-exclusive / store-check, so it will need to be extended
accordingly, and that may have some minor knock-on effect on other
architectures.

I would guess that the immediate cause of the failure is that LLVM 12 has
started generating these instructions.  That would explain why rustc shows the
problem in comment 0 -- presumably that is rustc nightly -- and also why
clang++ 12 shows the problem in comment 3.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to