[PATCH] D118076: Sinking or hoisting instructions between loops before fusion
Joshua Cranmer via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 30 14:10:01 PDT 2022
jcranmer-intel added a comment.
I'd still like to see two more tests:
- One test that checks that an intrinsically unmovable instruction (e.g., call to an unknown function) in the preheader blocks hoisting/sinking.
- Another test (in the same file as above is possible) checks that a memory dependency blocks hoisting/sinking.
Other than that, and the nit I'm seeing, looking good.
================
Comment at: llvm/lib/Transforms/Scalar/LoopFuse.cpp:1074
+ for (Use &Op : I.operands()) {
+ if (auto *OpInst{dyn_cast<Instruction>(Op)}) {
+ bool OpHoisted = is_contained(SafeToHoist, OpInst);
----------------
I'd still like to see this and the later if statement not using C++11 universal initialization.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D118076/new/
https://reviews.llvm.org/D118076
More information about the llvm-commits
mailing list