Before use hasOneUser it must Check hasOneUser.
Check hasOneUser before user_back()
https://github.com/llvm/llvm-project/issues/56627
test file:
https://godbolt.org/z/3YqEzs45z
Differential D136227
[LoopVectorize] Fix crash on "Cannot dereference end iterator!"(PR56627) LiDongjin on Oct 18 2022, 9:35 PM. Authored by
Details Before use hasOneUser it must Check hasOneUser. Check hasOneUser before user_back() https://github.com/llvm/llvm-project/issues/56627 test file:
Diff Detail
Event TimelineComment Actions I see, dead instructions in the loop. You would hope those would have been simplified away. Sounds OK as a fix. LGTM
Comment Actions Changes the hasOneUser() to m_OneUse(m_Value()) add the triple info for the test and move it into aarch64
Comment Actions Thanks LGTM
Comment Actions LGTM with the additional comments, thanks!
|
This is very deliberately OneUser, not OneUse. It needs to match mul(zext(x), zext(x))