[PATCH] D103614: [PowerPC][AIX][RFC] Generate inlined quadword lock free atomic operations via AtomicExpand

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 3 11:59:37 PDT 2021


efriedma added a comment.

I wouldn't recommend using AtomicExpansionKind::LLSC for new code.  It's been a source of problems on other targets that use/used it: most targets have a forward progress rule that imposes restrictions beyond the ll/sc instructions themselves, and normal code generation can violate them.  For example, fast regalloc can insert spills inside the ll/sc loop, or the basic block layout could be rearranged.  I think the only target that hasn't run into issues is Hexagon.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D103614



More information about the llvm-commits mailing list