Lines Matching refs:MO
56 MachineRelocation GetRelocation(const MachineOperand &MO,
61 const MachineOperand &MO) const;
140 const MachineOperand &MO = MI.getOperand(OpNo);
142 (MO.getReg() >= PPC::CR0 && MO.getReg() <= PPC::CR7));
143 return 0x80 >> PPCRegisterInfo::getRegisterNumbering(MO.getReg());
146 MachineRelocation PPCCodeEmitter::GetRelocation(const MachineOperand &MO,
159 if (MO.isGlobal())
161 const_cast<GlobalValue *>(MO.getGlobal()),
162 Cst, isa<Function>(MO.getGlobal()));
163 if (MO.isSymbol())
165 RelocID, MO.getSymbolName(), Cst);
166 if (MO.isCPI())
168 RelocID, MO.getIndex(), Cst);
170 if (MO.isMBB())
172 RelocID, MO.getMBB());
174 assert(MO.isJTI());
176 RelocID, MO.getIndex(), Cst);
181 const MachineOperand &MO = MI.getOperand(OpNo);
182 if (MO.isReg() || MO.isImm()) return getMachineOpValue(MI, MO);
184 MCE.addRelocation(GetRelocation(MO, PPC::reloc_pcrel_bx));
190 const MachineOperand &MO = MI.getOperand(OpNo);
191 MCE.addRelocation(GetRelocation(MO, PPC::reloc_pcrel_bcx));
197 const MachineOperand &MO = MI.getOperand(OpNo);
198 if (MO.isReg() || MO.isImm()) return getMachineOpValue(MI, MO);
200 MCE.addRelocation(GetRelocation(MO, PPC::reloc_absolute_high));
206 const MachineOperand &MO = MI.getOperand(OpNo);
207 if (MO.isReg() || MO.isImm()) return getMachineOpValue(MI, MO);
209 MCE.addRelocation(GetRelocation(MO, PPC::reloc_absolute_low));
220 const MachineOperand &MO = MI.getOperand(OpNo);
221 if (MO.isImm())
222 return (getMachineOpValue(MI, MO) & 0xFFFF) | RegBits;
225 MCE.addRelocation(GetRelocation(MO, PPC::reloc_absolute_low));
236 const MachineOperand &MO = MI.getOperand(OpNo);
237 if (MO.isImm())
238 return (getMachineOpValue(MI, MO) & 0x3FFF) | RegBits;
240 MCE.addRelocation(GetRelocation(MO, PPC::reloc_absolute_low_ix));
246 const MachineOperand &MO) const {
248 if (MO.isReg()) {
252 MO.getReg() < PPC::CR0 || MO.getReg() > PPC::CR7);
253 return PPCRegisterInfo::getRegisterNumbering(MO.getReg());
256 assert(MO.isImm() &&
258 return MO.getImm();