[llvm] r283850 - MIRParser: generic register operands with types
Matthias Braun via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 10 21:22:30 PDT 2016
Author: matze
Date: Mon Oct 10 23:22:29 2016
New Revision: 283850
URL: http://llvm.org/viewvc/llvm-project?rev=283850&view=rev
Log:
MIRParser: generic register operands with types
This should fix the fallout of r283848.
Modified:
llvm/trunk/lib/CodeGen/MIRParser/MIParser.cpp
llvm/trunk/lib/CodeGen/MachineRegisterInfo.cpp
Modified: llvm/trunk/lib/CodeGen/MIRParser/MIParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MIRParser/MIParser.cpp?rev=283850&r1=283849&r2=283850&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/MIRParser/MIParser.cpp (original)
+++ llvm/trunk/lib/CodeGen/MIRParser/MIParser.cpp Mon Oct 10 23:22:29 2016
@@ -990,7 +990,7 @@ bool MIParser::parseRegisterOperand(Mach
// Virtual registers may have a size with GlobalISel.
if (!TargetRegisterInfo::isVirtualRegister(Reg))
return error("unexpected size on physical register");
- if (MRI.getRegClassOrRegBank(Reg).is<const TargetRegisterClass *>())
+ if (RegInfo->Kind != VRegInfo::GENERIC)
return error("unexpected size on non-generic virtual register");
LLT Ty;
Modified: llvm/trunk/lib/CodeGen/MachineRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineRegisterInfo.cpp?rev=283850&r1=283849&r2=283850&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/MachineRegisterInfo.cpp (original)
+++ llvm/trunk/lib/CodeGen/MachineRegisterInfo.cpp Mon Oct 10 23:22:29 2016
@@ -124,7 +124,8 @@ LLT MachineRegisterInfo::getType(unsigne
void MachineRegisterInfo::setType(unsigned VReg, LLT Ty) {
// Check that VReg doesn't have a class.
- assert(!getRegClassOrRegBank(VReg).is<const TargetRegisterClass *>() &&
+ assert(getRegClassOrRegBank(VReg).isNull() ||
+ !getRegClassOrRegBank(VReg).is<const TargetRegisterClass *>() &&
"Can't set the size of a non-generic virtual register");
getVRegToType()[VReg] = Ty;
}
More information about the llvm-commits
mailing list