LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

PowerPCGenAsmWriter.inc

Go to the documentation of this file.
00001 //===- TableGen'erated file -------------------------------------*- C++ -*-===//
00002 //
00003 // Assembly Writer Source Fragment
00004 //
00005 // Automatically generated file, do not edit!
00006 //
00007 //===----------------------------------------------------------------------===//
00008 
00009 /// printInstruction - This method is automatically generated by tablegen
00010 /// from the instruction set description.  This method returns true if the
00011 /// machine instruction was sufficiently described to print it, otherwise
00012 /// it returns false.
00013 bool PowerPCAsmPrinter::printInstruction(const MachineInstr *MI) {
00014   switch (MI->getOpcode()) {
00015   default: return false;
00016   case PPC::ADD: O  << "add ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00017   case PPC::ADDC: O  << "addc ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00018   case PPC::ADDE: O  << "adde ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00019   case PPC::ADDI: O  << "addi ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00020   case PPC::ADDIC: O  << "addic ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00021   case PPC::ADDICo: O  << "addic. ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00022   case PPC::ADDIS: O  << "addis ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00023   case PPC::ADDME: O  << "addme ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00024   case PPC::ADDZE: O  << "addze ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00025   case PPC::ADJCALLSTACKDOWN: O  << "; ADJCALLSTACKDOWN" << '\n'; break;
00026   case PPC::ADJCALLSTACKUP: O  << "; ADJCALLSTACKUP" << '\n'; break;
00027   case PPC::AND: O  << "and ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00028   case PPC::ANDC: O  << "andc ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00029   case PPC::ANDISo: O  << "andis. ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00030   case PPC::ANDIo: O  << "andi. ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00031   case PPC::B: O  << "b ";  printBranchOperand(MI, 0, MVT::i32); O  << '\n'; break;
00032   case PPC::BCTR: O  << "bctr" << '\n'; break;
00033   case PPC::BEQ: O  << "beq ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00034   case PPC::BGE: O  << "bge ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00035   case PPC::BGT: O  << "bgt ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00036   case PPC::BL: O  << "bl ";  printBranchOperand(MI, 0, MVT::i32); O  << '\n'; break;
00037   case PPC::BLE: O  << "ble ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00038   case PPC::BLR: O  << "blr" << '\n'; break;
00039   case PPC::BLT: O  << "blt ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00040   case PPC::BNE: O  << "bne ";  printBranchOperand(MI, 1, MVT::i32); O  << '\n'; break;
00041   case PPC::CALLindirect: O  << "bctrl" << '\n'; break;
00042   case PPC::CALLpcrel: O  << "bl ";  printBranchOperand(MI, 0, MVT::i32); O  << '\n'; break;
00043   case PPC::CMP: O  << "cmp ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i1); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << ", ";  printOperand(MI, 3, MVT::i64); O  << '\n'; break;
00044   case PPC::CMPD: O  << "cmpd ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00045   case PPC::CMPDI: O  << "cmpdi ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00046   case PPC::CMPI: O  << "cmpi ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i1); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 3, MVT::i16); O  << '\n'; break;
00047   case PPC::CMPL: O  << "cmpl ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i1); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << ", ";  printOperand(MI, 3, MVT::i64); O  << '\n'; break;
00048   case PPC::CMPLD: O  << "cmpld ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00049   case PPC::CMPLDI: O  << "cmpldi ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00050   case PPC::CMPLI: O  << "cmpli ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i1); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 3, MVT::i16); O  << '\n'; break;
00051   case PPC::CMPLW: O  << "cmplw ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00052   case PPC::CMPLWI: O  << "cmplwi ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00053   case PPC::CMPW: O  << "cmpw ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00054   case PPC::CMPWI: O  << "cmpwi ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00055   case PPC::CNTLZW: O  << "cntlzw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00056   case PPC::COND_BRANCH: O  << "; COND_BRANCH" << '\n'; break;
00057   case PPC::CRAND: O  << "crand ";  printU5ImmOperand(MI, 0, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 1, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00058   case PPC::CRANDC: O  << "crandc ";  printU5ImmOperand(MI, 0, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 1, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00059   case PPC::CRNOR: O  << "crnor ";  printU5ImmOperand(MI, 0, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 1, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00060   case PPC::CROR: O  << "cror ";  printU5ImmOperand(MI, 0, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 1, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00061   case PPC::DIVD: O  << "divd ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00062   case PPC::DIVDU: O  << "divdu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00063   case PPC::DIVW: O  << "divw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00064   case PPC::DIVWU: O  << "divwu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00065   case PPC::EQV: O  << "eqv ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00066   case PPC::EXTSB: O  << "extsb ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00067   case PPC::EXTSH: O  << "extsh ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00068   case PPC::EXTSW: O  << "extsw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00069   case PPC::FADD: O  << "fadd ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00070   case PPC::FADDS: O  << "fadds ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00071   case PPC::FCFID: O  << "fcfid ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00072   case PPC::FCMPU: O  << "fcmpu ";  printOperand(MI, 0, MVT::i32); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00073   case PPC::FCTIDZ: O  << "fctidz ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00074   case PPC::FCTIWZ: O  << "fctiwz ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00075   case PPC::FDIV: O  << "fdiv ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00076   case PPC::FDIVS: O  << "fdivs ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00077   case PPC::FMADD: O  << "fmadd ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << ", ";  printOperand(MI, 3, MVT::f64); O  << '\n'; break;
00078   case PPC::FMR: O  << "fmr ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00079   case PPC::FMUL: O  << "fmul ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00080   case PPC::FMULS: O  << "fmuls ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00081   case PPC::FNEG: O  << "fneg ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00082   case PPC::FRSP: O  << "frsp ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << '\n'; break;
00083   case PPC::FSEL: O  << "fsel ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << ", ";  printOperand(MI, 3, MVT::f64); O  << '\n'; break;
00084   case PPC::FSUB: O  << "fsub ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00085   case PPC::FSUBS: O  << "fsubs ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::f64); O  << ", ";  printOperand(MI, 2, MVT::f64); O  << '\n'; break;
00086   case PPC::IMPLICIT_DEF: O  << "; IMPLICIT_DEF" << '\n'; break;
00087   case PPC::LA: O  << "la ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printSymbolLo(MI, 2, MVT::i32); O  << "(";  printOperand(MI, 1, MVT::i64); O  << ")" << '\n'; break;
00088   case PPC::LBZ: O  << "lbz ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00089   case PPC::LBZX: O  << "lbzx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00090   case PPC::LD: O  << "ld ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00091   case PPC::LDX: O  << "ldx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00092   case PPC::LFD: O  << "lfd ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printSymbolLo(MI, 1, MVT::i32); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00093   case PPC::LFDX: O  << "lfdx ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00094   case PPC::LFS: O  << "lfs ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printSymbolLo(MI, 1, MVT::i32); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00095   case PPC::LFSX: O  << "lfsx ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00096   case PPC::LHA: O  << "lha ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00097   case PPC::LHAX: O  << "lhax ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00098   case PPC::LHZ: O  << "lhz ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00099   case PPC::LHZX: O  << "lhzx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00100   case PPC::LI: O  << "li ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << '\n'; break;
00101   case PPC::LIS: O  << "lis ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << '\n'; break;
00102   case PPC::LMW: O  << "lmw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00103   case PPC::LOADHiAddr: O  << "addis ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printSymbolHi(MI, 2, MVT::i32); O  << '\n'; break;
00104   case PPC::LWA: O  << "lwa ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00105   case PPC::LWAX: O  << "lwax ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00106   case PPC::LWZ: O  << "lwz ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printSymbolLo(MI, 1, MVT::i32); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00107   case PPC::LWZU: O  << "lwzu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printSymbolLo(MI, 1, MVT::i32); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00108   case PPC::LWZX: O  << "lwzx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00109   case PPC::MFCR: O  << "mfcr ";  printOperand(MI, 0, MVT::i64); O  << '\n'; break;
00110   case PPC::MFCTR: O  << "mfctr ";  printOperand(MI, 0, MVT::i64); O  << '\n'; break;
00111   case PPC::MFLR: O  << "mflr ";  printOperand(MI, 0, MVT::i64); O  << '\n'; break;
00112   case PPC::MTCTR: O  << "mtctr ";  printOperand(MI, 0, MVT::i64); O  << '\n'; break;
00113   case PPC::MTLR: O  << "mtlr ";  printOperand(MI, 0, MVT::i64); O  << '\n'; break;
00114   case PPC::MULHWU: O  << "mulhwu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00115   case PPC::MULLD: O  << "mulld ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00116   case PPC::MULLI: O  << "mulli ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00117   case PPC::MULLW: O  << "mullw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00118   case PPC::MovePCtoLR: O  << "bl ";  printPICLabel(MI, 0, MVT::i32); O  << '\n'; break;
00119   case PPC::NAND: O  << "nand ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00120   case PPC::NEG: O  << "neg ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00121   case PPC::NOP: O  << "nop" << '\n'; break;
00122   case PPC::NOR: O  << "nor ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00123   case PPC::OR: O  << "or ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00124   case PPC::ORC: O  << "orc ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00125   case PPC::ORI: O  << "ori ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00126   case PPC::ORIS: O  << "oris ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00127   case PPC::ORo: O  << "or. ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00128   case PPC::PHI: O  << "; PHI" << '\n'; break;
00129   case PPC::RLDICL: O  << "rldicl ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU6ImmOperand(MI, 2, MVT::i8); O  << ", ";  printU6ImmOperand(MI, 3, MVT::i8); O  << '\n'; break;
00130   case PPC::RLDICR: O  << "rldicr ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU6ImmOperand(MI, 2, MVT::i8); O  << ", ";  printU6ImmOperand(MI, 3, MVT::i8); O  << '\n'; break;
00131   case PPC::RLWIMI: O  << "rlwimi ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 3, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 4, MVT::i8); O  << '\n'; break;
00132   case PPC::RLWINM: O  << "rlwinm ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 3, MVT::i8); O  << ", ";  printU5ImmOperand(MI, 4, MVT::i8); O  << '\n'; break;
00133   case PPC::SLD: O  << "sld ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00134   case PPC::SLW: O  << "slw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00135   case PPC::SRAD: O  << "srad ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00136   case PPC::SRADI: O  << "sradi ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU6ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00137   case PPC::SRAW: O  << "sraw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00138   case PPC::SRAWI: O  << "srawi ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU5ImmOperand(MI, 2, MVT::i8); O  << '\n'; break;
00139   case PPC::SRD: O  << "srd ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00140   case PPC::SRW: O  << "srw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00141   case PPC::STB: O  << "stb ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00142   case PPC::STBX: O  << "stbx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00143   case PPC::STD: O  << "std ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00144   case PPC::STDU: O  << "stdu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00145   case PPC::STDUX: O  << "stdux ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00146   case PPC::STDX: O  << "stdx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00147   case PPC::STFD: O  << "stfd ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00148   case PPC::STFDX: O  << "stfdx ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00149   case PPC::STFS: O  << "stfs ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00150   case PPC::STFSX: O  << "stfsx ";  printOperand(MI, 0, MVT::f64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00151   case PPC::STH: O  << "sth ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00152   case PPC::STHX: O  << "sthx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00153   case PPC::STMW: O  << "stmw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00154   case PPC::STW: O  << "stw ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00155   case PPC::STWU: O  << "stwu ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 1, MVT::i16); O  << "(";  printOperand(MI, 2, MVT::i64); O  << ")" << '\n'; break;
00156   case PPC::STWUX: O  << "stwux ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00157   case PPC::STWX: O  << "stwx ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00158   case PPC::SUB: O  << "sub ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00159   case PPC::SUBC: O  << "subc ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00160   case PPC::SUBF: O  << "subf ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00161   case PPC::SUBFC: O  << "subfc ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00162   case PPC::SUBFE: O  << "subfe ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00163   case PPC::SUBFIC: O  << "subfic ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printS16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00164   case PPC::SUBFZE: O  << "subfze ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << '\n'; break;
00165   case PPC::XOR: O  << "xor ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printOperand(MI, 2, MVT::i64); O  << '\n'; break;
00166   case PPC::XORI: O  << "xori ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00167   case PPC::XORIS: O  << "xoris ";  printOperand(MI, 0, MVT::i64); O  << ", ";  printOperand(MI, 1, MVT::i64); O  << ", ";  printU16ImmOperand(MI, 2, MVT::i16); O  << '\n'; break;
00168   }
00169   return true;
00170 }