[PATCH] D126250: [CodeGen][AArch64] Add support for LDAPR

Kyrill Tkachov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 31 09:58:02 PDT 2022


ktkachov added a comment.

We've had some back-and-forth on this offline...
We expect the relaxation of the acquire semantics to be correct with this patch, but this has not been proven within the language-to-AArch64 memory model semantics yet.
Some initial testing with the Telechat tool by @LukeGeeson hasn't shown any bad reorderings, which is a good sign.
However, this is a relaxation of ordering constraints, new reorder behaviours can occur. We have kicked off a discussion with our Arm memory model experts to construct a proof that these relaxations at the AArch64 memory model level are allowed by the C/C++/LLVM level. We expect to have such a proof in time for the LLVM 15 release (hopefully sooner, by August).

In the meantime, I'd appreciate it if this behaviour is guarded by a default-off option for now, that can be used for wider internal testing. Once we have proof that this is a correct change we can remove the option, or make it default-on.
Does this approach work for you folks?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126250/new/

https://reviews.llvm.org/D126250



More information about the llvm-commits mailing list