[PATCH] D68194: [LCSSA] Forget values we create LCSSA phis for
Sanjoy Das (Work Account) via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 7 14:21:44 PDT 2019
sanjoy.google added a comment.
If the SCEV expression is mathematically correct I think this is a problem with SCEV expander. If it is expected to preserve LCSSA it should add the necessary PHIs.
I know this contradicts existing code in SCEV that tries not to break LCSSA, I'm wondering if we should just remove those in favor of teaching SCEV expander about preserving LCSSA.
================
Comment at: llvm/test/Transforms/LoopUnroll/unroll-preserve-scev-lcssa.ll:76
+bb3: ; preds = %bb9, %bb
+ br i1 undef, label %bb9, label %bb5
+
----------------
Minor thing: I'd avoid adding branches on `undef` (unless you need them to reproduce the test) because there is no guarantee on how the optimizers will optimize these.
(It is also unclear whether this is UB.)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D68194/new/
https://reviews.llvm.org/D68194
More information about the llvm-commits
mailing list