VirtRegMap: Add undef flag when reading undefined subregisters.
authorMatthias Braun <matze@braunis.de>
Tue, 16 Jun 2015 18:22:28 +0000 (18:22 +0000)
committerMatthias Braun <matze@braunis.de>
Tue, 16 Jun 2015 18:22:28 +0000 (18:22 +0000)
commitca4e84212717af48a0bea608cd03adce40fd0675
treeac1ea3b72752cee35ce5bd5a9c5c45c10fd27c93
parentf63c807809a4f4432f14204fef16f8d814fee188
VirtRegMap: Add undef flag when reading undefined subregisters.

While completely undefined registers are easy to catch and get their
<undef> flag early in ProcessImplicitDefs/RegisterCoalescer reading from
a partially defined register where just the subreg happens to be
undefined is harder to catch so we only add the undef flag in the
virtual register rewriting step.

No testcase as I cannot reproduce the problem on any of the in-tree targets at
the moment.

This fixes rdar://21387089

Differential Revision: http://reviews.llvm.org/D10470

llvm-svn: 239838
llvm/lib/CodeGen/VirtRegMap.cpp