When removing an overflow intrinsic the Changed status in SimplifyIndvar
was not set, leading to the IndVarSimplify pass returning an incorrect
status.
This was caught using the check introduced by D80916.
Differential D85971
[IndVarSimplify] Fix Modified status for removal of overflow intrinsics dstenb on Aug 14 2020, 6:25 AM. Authored by
Details When removing an overflow intrinsic the Changed status in SimplifyIndvar This was caught using the check introduced by D80916.
Diff Detail
Event Timeline
Comment Actions I wrote Comment Actions LGTM for the narrow fix as written + pointing out a nearby bug. A broader fix is worth discussing, but no reason to hold back a local fix.
Comment Actions I added a comment about eliminateTrunc to the commit message. I'll see if I can create a reproducer for that, and if so, I'll upload a revision for that. |
JFYI, as a separate issue, this logic shouldn't be here. We should be adding the empty extracts to the DeadInst set instead and deferring deletion.