diff options
author | Quentin Colombet <qcolombet@apple.com> | 2013-12-12 00:15:47 +0000 |
---|---|---|
committer | Quentin Colombet <qcolombet@apple.com> | 2013-12-12 00:15:47 +0000 |
commit | 18b779e3f4c42cda3e77f16109f163f2352029c1 (patch) | |
tree | 9d6bd411e2f3faf3c1e02cdfa7e360f4da607730 /llvm/lib/Target/TargetLibraryInfo.cpp | |
parent | 6f4f77b7e932f911f2c9783f48fa68f854887432 (diff) | |
download | bcm5719-llvm-18b779e3f4c42cda3e77f16109f163f2352029c1.tar.gz bcm5719-llvm-18b779e3f4c42cda3e77f16109f163f2352029c1.zip |
Fix an over-constrained assertion in MachineFunction::addLiveIn.
The assertion was checking that the virtual register VReg used to represent the
physical register PReg uses the same register class as the one passed to
MachineFunction::addLiveIn.
This is over-constraining because it is sufficient to check that the register
class of VReg (VRegRC) is a subclass of the register class of PReg (PRegRC) and
that VRegRC contains PReg.
Indeed, if VReg gets constrained because of some operation constraints
between two calls of MachineFunction::addLiveIn, the original assertion
cannot match.
This fixes <rdar://problem/15633429>.
llvm-svn: 197097
Diffstat (limited to 'llvm/lib/Target/TargetLibraryInfo.cpp')
0 files changed, 0 insertions, 0 deletions