@@ -71,13 +71,13 @@ void MachineOperand::setReg(Register Reg) {
71
71
if (MachineFunction *MF = getMFIfAvailable (*this )) {
72
72
MachineRegisterInfo &MRI = MF->getRegInfo ();
73
73
MRI.removeRegOperandFromUseList (this );
74
- SmallContents.RegNo = Reg;
74
+ SmallContents.RegNo = Reg. id () ;
75
75
MRI.addRegOperandToUseList (this );
76
76
return ;
77
77
}
78
78
79
79
// Otherwise, just change the register, no problem. :)
80
- SmallContents.RegNo = Reg;
80
+ SmallContents.RegNo = Reg. id () ;
81
81
}
82
82
83
83
void MachineOperand::substVirtReg (Register Reg, unsigned SubIdx,
@@ -291,7 +291,7 @@ void MachineOperand::ChangeToRegister(Register Reg, bool isDef, bool isImp,
291
291
assert (!(isDead && !isDef) && " Dead flag on non-def" );
292
292
assert (!(isKill && isDef) && " Kill flag on def" );
293
293
OpKind = MO_Register;
294
- SmallContents.RegNo = Reg;
294
+ SmallContents.RegNo = Reg. id () ;
295
295
SubReg_TargetFlags = 0 ;
296
296
IsDef = isDef;
297
297
IsImp = isImp;
@@ -390,7 +390,8 @@ hash_code llvm::hash_value(const MachineOperand &MO) {
390
390
switch (MO.getType ()) {
391
391
case MachineOperand::MO_Register:
392
392
// Register operands don't have target flags.
393
- return hash_combine (MO.getType (), (unsigned )MO.getReg (), MO.getSubReg (), MO.isDef ());
393
+ return hash_combine (MO.getType (), MO.getReg ().id (), MO.getSubReg (),
394
+ MO.isDef ());
394
395
case MachineOperand::MO_Immediate:
395
396
return hash_combine (MO.getType (), MO.getTargetFlags (), MO.getImm ());
396
397
case MachineOperand::MO_CImmediate:
0 commit comments