Home | History | Annotate | Download | only in Sparc

Lines Matching refs:MI

40     void printOperand(const MachineInstr *MI, int opNum, raw_ostream &OS);
41 void printMemOperand(const MachineInstr *MI, int opNum, raw_ostream &OS,
43 void printCCOperand(const MachineInstr *MI, int opNum, raw_ostream &OS);
45 virtual void EmitInstruction(const MachineInstr *MI) {
48 printInstruction(MI, OS);
51 void printInstruction(const MachineInstr *MI, raw_ostream &OS);// autogen'd.
54 bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
57 bool PrintAsmMemoryOperand(const MachineInstr *MI, unsigned OpNo,
61 bool printGetPCX(const MachineInstr *MI, unsigned OpNo, raw_ostream &OS);
66 virtual MachineLocation getDebugValueLocation(const MachineInstr *MI) const;
72 void SparcAsmPrinter::printOperand(const MachineInstr *MI, int opNum,
74 const MachineOperand &MO = MI->getOperand (opNum);
76 if (MI->getOpcode() == SP::SETHIi && !MO.isReg() && !MO.isImm()) {
79 } else if ((MI->getOpcode() == SP::ORri || MI->getOpcode() == SP::ADDri) &&
111 void SparcAsmPrinter::printMemOperand(const MachineInstr *MI, int opNum,
113 printOperand(MI, opNum, O);
118 printOperand(MI, opNum+1, O);
122 if (MI->getOperand(opNum+1).isReg() &&
123 MI->getOperand(opNum+1).getReg() == SP::G0)
125 if (MI->getOperand(opNum+1).isImm() &&
126 MI->getOperand(opNum+1).getImm() == 0)
130 if (MI->getOperand(opNum+1).isGlobal() ||
131 MI->getOperand(opNum+1).isCPI()) {
133 printOperand(MI, opNum+1, O);
136 printOperand(MI, opNum+1, O);
140 bool SparcAsmPrinter::printGetPCX(const MachineInstr *MI, unsigned opNum,
143 const MachineOperand &MO = MI->getOperand(opNum);
155 unsigned mfNum = MI->getParent()->getParent()->getFunctionNumber();
156 unsigned bbNum = MI->getParent()->getNumber();
174 void SparcAsmPrinter::printCCOperand(const MachineInstr *MI, int opNum,
176 int CC = (int)MI->getOperand(opNum).getImm();
182 bool SparcAsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
192 return AsmPrinter::PrintAsmOperand(MI, OpNo, AsmVariant, ExtraCode, O);
198 printOperand(MI, OpNo, O);
203 bool SparcAsmPrinter::PrintAsmMemoryOperand(const MachineInstr *MI,
211 printMemOperand(MI, OpNo, O);
249 getDebugValueLocation(const MachineInstr *MI) const {
250 assert(MI->getNumOperands() == 4 && "Invalid number of operands!");
251 assert(MI->getOperand(0).isReg() && MI->getOperand(1).isImm() &&
253 return MachineLocation(MI->getOperand(0).getReg(),
254 MI->getOperand(1).getImm());