[PATCH] D57967: [LICM&MSSA] Limit store hoisting.
George Burgess IV via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 8 12:01:07 PST 2019
george.burgess.iv added a comment.
Thanks for this!
================
Comment at: lib/Transforms/Scalar/LICM.cpp:121
+static bool LocalDisablePromotion = false;
+
----------------
I don't think that this will play nicely in threaded environments (ThinLTO?)
An alternative might be to stick it into LICM as a member, then pass it to canSinkOrHoistInst as a param, though I don't know this code well enough to say whether that's the best approach
================
Comment at: lib/Transforms/Scalar/LICM.cpp:1194
+ if (const auto *MU = dyn_cast<MemoryUse>(&MA)) {
+ if (!MU->isOptimized())
+ return false;
----------------
Why does optimizedness matter here? `MemoryUse`s should always have valid defining accesses; I imagine that a valid-but-not-fully-optimal one would be good enough as long as it points outside of the loop
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57967/new/
https://reviews.llvm.org/D57967
More information about the llvm-commits
mailing list