[PATCH] D88167: [LoopDeletion] Forget loop before setting values to undef
Max Kazantsev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Oct 11 22:35:58 PDT 2020
mkazantsev added inline comments.
================
Comment at: llvm/lib/Transforms/Utils/LoopUtils.cpp:729
+ if (SE)
+ SE->verify();
}
----------------
mkazantsev wrote:
> fhahn wrote:
> > nikic wrote:
> > > This call performs an unconditional SCEV verification, probably not what you intended. Should be behind NDEBUG at least.
> > Yes, should be done in 7bae2bc5a8dd11c016c895e3a691fb93575773f3, thanks!
> I wonder if *all* SCEV has to be correct at this point. I mean, you are only deleting one single loop while possibly doing something else in some other place and plan to invalidate SCEV later. I don't think it's a right place for an assert.
>
> We have a test failing on this, but I cannot figure out how to make a simple repro unfortunately. The failure seems not related to the loop in question. The point is that it fails this assertion but passes when we verify all IR after each pass.
>
In my case, the test fails even if we verify SCEV in the beginning on this method. So I don't think it's correct to verify it here since the whole thing can be called on broken SCEV which we plan to fully drop later.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D88167/new/
https://reviews.llvm.org/D88167
More information about the llvm-commits
mailing list