diff options
author | LemonBoy <thatlemon@gmail.com> | 2021-05-29 08:50:34 +0200 |
---|---|---|
committer | LemonBoy <thatlemon@gmail.com> | 2021-05-29 08:57:27 +0200 |
commit | b577ec495698c585837db3893c5662d3aa0aab87 (patch) | |
tree | 14266e3a12190e867cfef396dd13b59f37f50c28 /llvm/lib/Transforms/Utils/LoopUnroll.cpp | |
parent | cdd1adfb7d5d5048a7fdedc441e75db019fbb0b5 (diff) | |
download | llvm-b577ec495698c585837db3893c5662d3aa0aab87.zip llvm-b577ec495698c585837db3893c5662d3aa0aab87.tar.gz llvm-b577ec495698c585837db3893c5662d3aa0aab87.tar.bz2 |
[AtomicExpandPass][AArch64] Promote xchg with floating-point types to integer ones
Follow the same strategy used for atomic loads/stores by converting the operands to equally-sized integer types.
This change prevents the atomic expansion pass from generating illegal LL/SC pairs when targeting AArch64: `expand-atomicrmw-xchg-fp.ll` would previously instantiate intrinsics such as `llvm.aarch64.ldaxr.p0f32` that cannot be lowered.
Reviewed By: efriedma
Differential Revision: https://reviews.llvm.org/D103232
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUnroll.cpp')
0 files changed, 0 insertions, 0 deletions