[PATCH] D109068: Fix a missing memoryssa update in breakLoopBackedge

Alina Sbirlea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 1 17:08:32 PDT 2021


asbirlea added a comment.

In D109068#2978402 <https://reviews.llvm.org/D109068#2978402>, @reames wrote:

> In D109068#2977909 <https://reviews.llvm.org/D109068#2977909>, @asbirlea wrote:
>
>> The reason the verification didn't trigger right after LoopDeletion is that it's under EXPENSIVE_CHECKS (in verifyOrderingDominationAndDefUses). MSSA is incorrect (without this change) after LoopDeletion.
>
> FYI, this is not the sole issue.  I manually added a call to MSSA->verifyMemorySSA() unconditionally to the end of the pass, and it did not catch this.

I'm sorry, I didn't fully parse this.
Adding MSSA->verifyMemorySSA() unconditionally to the end of the pass will not catch this. You need to enable EXPENSIVE_CHECKS (or uncomment the ifdefs inside verifyOrderingDominationAndDefUses for this case, there's more in another verify method). Part of the verification is disabled, even in debug build.
Or "by not sole issue" did you mean there's an additional issue not fixed by this patch?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109068/new/

https://reviews.llvm.org/D109068



More information about the llvm-commits mailing list