MCValueVal = Val;
}
- void MakeReg(unsigned Reg) {
- Kind = kRegister;
- RegVal = Reg;
+ static MCOperand CreateReg(unsigned Reg) {
+ MCOperand Op;
+ Op.Kind = kRegister;
+ Op.RegVal = Reg;
+ return Op;
}
- void MakeImm(int64_t Val) {
- Kind = kImmediate;
- ImmVal = Val;
+ static MCOperand CreateImm(int64_t Val) {
+ MCOperand Op;
+ Op.Kind = kImmediate;
+ Op.ImmVal = Val;
+ return Op;
}
- void MakeMBBLabel(unsigned Fn, unsigned MBB) {
- Kind = kMBBLabel;
- MBBLabel.FunctionNo = Fn;
- MBBLabel.BlockNo = MBB;
+ static MCOperand CreateMBBLabel(unsigned Fn, unsigned MBB) {
+ MCOperand Op;
+ Op.Kind = kMBBLabel;
+ Op.MBBLabel.FunctionNo = Fn;
+ Op.MBBLabel.BlockNo = MBB;
+ return Op;
}
- void MakeMCValue(const MCValue &Val) {
- Kind = kMCValue;
- MCValueVal = Val;
+ static MCOperand CreateMCValue(const MCValue &Val) {
+ MCOperand Op;
+ Op.Kind = kMCValue;
+ Op.MCValueVal = Val;
+ return Op;
}
};
if (Op.Kind != X86Operand::Register)
return true;
- MCOps[0].MakeReg(Op.getReg());
+ MCOps[0] = MCOperand::CreateReg(Op.getReg());
return false;
}
if (Op.Kind != X86Operand::Immediate)
return true;
- MCOps[0].MakeMCValue(Op.getImm());
+ MCOps[0] = MCOperand::CreateMCValue(Op.getImm());
return false;
}
if (Op.Kind != X86Operand::Memory)
return true;
- MCOps[0].MakeReg(Op.getMemBaseReg());
- MCOps[1].MakeImm(Op.getMemScale());
- MCOps[2].MakeReg(Op.getMemIndexReg());
- MCOps[3].MakeMCValue(Op.getMemDisp());
+ MCOps[0] = MCOperand::CreateReg(Op.getMemBaseReg());
+ MCOps[1] = MCOperand::CreateImm(Op.getMemScale());
+ MCOps[2] = MCOperand::CreateReg(Op.getMemIndexReg());
+ MCOps[3] = MCOperand::CreateMCValue(Op.getMemDisp());
return false;
}
if (Match_X86_Op_LMEM(Op, MCOps, 4))
return true;
- MCOps[4].MakeReg(Op.getMemSegReg());
+ MCOps[4] = MCOperand::CreateReg(Op.getMemSegReg());
return false;
}
MCOperand MCOp;
if (MO.isReg()) {
- MCOp.MakeReg(MO.getReg());
+ MCOp = MCOperand::CreateReg(MO.getReg());
} else if (MO.isImm()) {
- MCOp.MakeImm(MO.getImm());
+ MCOp = MCOperand::CreateImm(MO.getImm());
} else if (MO.isMBB()) {
- MCOp.MakeMBBLabel(getFunctionNumber(), MO.getMBB()->getNumber());
+ MCOp = MCOperand::CreateMBBLabel(getFunctionNumber(),
+ MO.getMBB()->getNumber());
} else {
llvm_unreachable("Unimp");
}
if (!MatchedOperands.count(i)) {
OS << "\n";
OS << " // FIXME: Nothing matched Ops[" << i << "]!\n";
- OS << " Ops[" << i << "].MakeReg(0);\n";
+ OS << " Ops[" << i << "] = MCOperand::CreateReg(0);\n";
OS << "\n";
}