[PATCH] D47553: Add TargetLowering::shouldExpandAtomicToLibCall and query it from AtomicExpandPass
Alex Bradbury via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 1 13:13:04 PDT 2018
asb added a comment.
In https://reviews.llvm.org/D47553#1119463, @efriedma wrote:
> MachineOutliner doesn't do anything unless target-specific hooks say a transform is safe; it should be possible to guard against the possibility of outlining an ll/sc pair.
I think I can disable outlining for an entire function using isFunctionSafeToOutlineFrom, but otherwise getOutliningCandidateInfo lets you opt-out on a per-instruction basis. I'd be concerned about some of the integer instructions between lr/sc being outlined, unless isFunctionSafeToOutlineFrom is used to disable outlining for any function that contains atomics.
https://reviews.llvm.org/D47553
More information about the llvm-commits
mailing list