diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2013-01-03 00:47:51 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2013-01-03 00:47:51 +0000 |
commit | 725d57682bf7e5ba3469ce9a93136de38f4a6bc6 (patch) | |
tree | 7f5a4a895b77874c7cfabfd4b4a609d0e409e027 /llvm/lib/Transforms/Vectorize/LoopVectorize.h | |
parent | 0793f4501c0df0a0595d5f68b8c821eedc61d6ea (diff) | |
download | bcm5719-llvm-725d57682bf7e5ba3469ce9a93136de38f4a6bc6.tar.gz bcm5719-llvm-725d57682bf7e5ba3469ce9a93136de38f4a6bc6.zip |
Fix PR14732 by handling all kinds of IMPLICIT_DEF live ranges.
Most IMPLICIT_DEF instructions are removed by the ProcessImplicitDefs
pass, and a few are reinserted by PHIElimination when a PHI argument is
<undef>.
RegisterCoalescer was assuming that all IMPLICIT_DEF live ranges look
like those created by PHIElimination, and that their live range never
leaves the basic block.
The PR14732 test case does tricks with PHI nodes that causes a longer
IMPLICIT_DEF live range to appear. This happens very rarely, but
RegisterCoalescer should be able to handle it.
llvm-svn: 171435
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/LoopVectorize.h')
0 files changed, 0 insertions, 0 deletions