aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCDisassembler/Disassembler.cpp
diff options
context:
space:
mode:
authorDavid Majnemer <david.majnemer@gmail.com>2014-09-02 16:22:00 +0000
committerDavid Majnemer <david.majnemer@gmail.com>2014-09-02 16:22:00 +0000
commit49428105aa7379619056f735c5b729c0fe41fe99 (patch)
tree69aedd2b2714aea168a8372d38d6538ea5687bbf /llvm/lib/MC/MCDisassembler/Disassembler.cpp
parent729b12ede3201bd2e78c24bd739884d3bb4cd87d (diff)
downloadllvm-49428105aa7379619056f735c5b729c0fe41fe99.zip
llvm-49428105aa7379619056f735c5b729c0fe41fe99.tar.gz
llvm-49428105aa7379619056f735c5b729c0fe41fe99.tar.bz2
LICM: Don't crash when an instruction is used by an unreachable BB
Summary: BBs might contain non-LCSSA'd values after the LCSSA pass is run if they are unreachable from the entry block. Normally, the users of the instruction would be PHIs but the unreachable BBs have normal users; rewrite their uses to be undef values. An alternative fix could involve fixing this at LCSSA but that would require this invariant to hold after subsequent transforms. If a BB created an unreachable block, they would be in violation of this. This fixes PR19798. Differential Revision: http://reviews.llvm.org/D5146 llvm-svn: 216911
Diffstat (limited to 'llvm/lib/MC/MCDisassembler/Disassembler.cpp')
0 files changed, 0 insertions, 0 deletions