OSDN Git Service

CGP: Clear data structures at the end of a loop iteration instead of the beginning.
authorPeter Collingbourne <peter@pcc.me.uk>
Tue, 23 Oct 2018 21:23:18 +0000 (21:23 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Tue, 23 Oct 2018 21:23:18 +0000 (21:23 +0000)
commit47fe3c0d7915103a5b262e2a55a281013b4167e5
tree141a012d69c575b04ce2fb1ddfaa15166d20a241
parentc2e4d07208a9a1bf5ea16af0b68756e1dbe48fbb
CGP: Clear data structures at the end of a loop iteration instead of the beginning.

Clearing LargeOffsetGEPMap at the end fixes a bug where if a large
offset GEP is in a dead basic block, we fail an assertion when trying
to delete the block due to the asserting VH in LargeOffsetGEPMap.

Differential Revision: https://reviews.llvm.org/D53464

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@345082 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenPrepare.cpp
test/CodeGen/Thumb2/unreachable-large-offset-gep.ll [new file with mode: 0644]