mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-25 17:20:48 +00:00
Also inflate register classes around inline asm.
Now that MI->getRegClassConstraint() can also handle inline assembly, don't bail when recomputing the register class of a virtual register used by inline asm. This fixes PR11078. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141836 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -79,11 +79,8 @@ MachineRegisterInfo::recomputeRegClass(unsigned Reg, const TargetMachine &TM) {
|
||||
// TRI doesn't have accurate enough information to model this yet.
|
||||
if (I.getOperand().getSubReg())
|
||||
return false;
|
||||
// Inline asm instuctions don't remember their constraints.
|
||||
if (I->isInlineAsm())
|
||||
return false;
|
||||
const TargetRegisterClass *OpRC =
|
||||
TII->getRegClass(I->getDesc(), I.getOperandNo(), TRI);
|
||||
I->getRegClassConstraint(I.getOperandNo(), TII, TRI);
|
||||
if (OpRC)
|
||||
NewRC = TRI->getCommonSubClass(NewRC, OpRC);
|
||||
if (!NewRC || NewRC == OldRC)
|
||||
|
Reference in New Issue
Block a user