Lines Matching defs:MO
46 WebAssemblyMCInstLower::GetGlobalAddressSymbol(const MachineOperand &MO) const {
47 const GlobalValue *Global = MO.getGlobal();
55 const MachineFunction &MF = *MO.getParent()->getParent()->getParent();
68 const MachineFunction &MF = *MO.getParent()->getParent()->getParent();
88 const MachineOperand &MO) const {
89 return Printer.getOrCreateWasmSymbol(MO.getSymbolName());
92 MCOperand WebAssemblyMCInstLower::lowerSymbolOperand(const MachineOperand &MO,
95 unsigned TargetFlags = MO.getTargetFlags();
121 if (MO.getOffset() != 0) {
135 Expr, MCConstantExpr::create(MO.getOffset(), Ctx), Ctx);
173 const MachineOperand &MO = MI->getOperand(I);
176 switch (MO.getType()) {
185 if (MO.isImplicit())
189 unsigned WAReg = MFI.getWAReg(MO.getReg());
203 for (const MachineOperand &MO : MI->defs())
205 MRI.getRegClass(MO.getReg())->getID()));
206 for (const MachineOperand &MO : MI->explicit_uses())
207 if (MO.isReg())
209 MRI.getRegClass(MO.getReg())->getID()));
224 auto BT = static_cast<WebAssembly::BlockType>(MO.getImm());
235 MCOp = MCOperand::createImm(MO.getImm());
239 const ConstantFP *Imm = MO.getFPImm();
251 MCOp = lowerSymbolOperand(MO, GetGlobalAddressSymbol(MO));
254 MCOp = lowerSymbolOperand(MO, GetExternalSymbolSymbol(MO));
257 assert(MO.getTargetFlags() == 0 &&
259 MCOp = lowerSymbolOperand(MO, MO.getMCSymbol());
297 auto &MO = OutMI.getOperand(I - 1);
298 if (MO.isReg()) {
299 OutMI.erase(&MO);