LLVM API Documentation

PPCGenAsmWriter.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 PPCAsmPrinter::printInstruction(const MachineInstr *MI) {
00014   static const unsigned OpInfo[] = {
00015     2U, // PHI
00016     0U, // INLINEASM
00017     0U, // DBG_LABEL
00018     0U, // EH_LABEL
00019     0U, // GC_LABEL
00020     0U, // DECLARE
00021     0U, // EXTRACT_SUBREG
00022     0U, // INSERT_SUBREG
00023     0U, // IMPLICIT_DEF
00024     0U, // SUBREG_TO_REG
00025     268435467U, // ADD4
00026     268435467U, // ADD8
00027     268435472U, // ADDC
00028     268435472U, // ADDC8
00029     268435478U, // ADDE
00030     268435478U, // ADDE8
00031     268439580U, // ADDI
00032     268439580U, // ADDI8
00033     268439586U, // ADDIC
00034     268439593U, // ADDICo
00035     268443697U, // ADDIS
00036     268443697U, // ADDIS8
00037     268468280U, // ADDME
00038     268468280U, // ADDME8
00039     268468287U, // ADDZE
00040     268468287U, // ADDZE8
00041     541065217U, // ADJCALLSTACKDOWN
00042     545259521U, // ADJCALLSTACKUP
00043     268435526U, // AND
00044     268435526U, // AND8
00045     268435531U, // ANDC
00046     268435531U, // ANDC8
00047     268447825U, // ANDISo
00048     268447825U, // ANDISo8
00049     268447833U, // ANDIo
00050     268447833U, // ANDIo8
00051     549453825U, // ATOMIC_CMP_SWAP_I16
00052     553648129U, // ATOMIC_CMP_SWAP_I32
00053     557842433U, // ATOMIC_CMP_SWAP_I64
00054     562036737U, // ATOMIC_CMP_SWAP_I8
00055     566231041U, // ATOMIC_LOAD_ADD_I16
00056     570425345U, // ATOMIC_LOAD_ADD_I32
00057     574619649U, // ATOMIC_LOAD_ADD_I64
00058     578813953U, // ATOMIC_LOAD_ADD_I8
00059     583008257U, // ATOMIC_LOAD_AND_I16
00060     587202561U, // ATOMIC_LOAD_AND_I32
00061     591396865U, // ATOMIC_LOAD_AND_I64
00062     595591169U, // ATOMIC_LOAD_AND_I8
00063     599785473U, // ATOMIC_LOAD_NAND_I16
00064     603979777U, // ATOMIC_LOAD_NAND_I32
00065     608174081U, // ATOMIC_LOAD_NAND_I64
00066     612368385U, // ATOMIC_LOAD_NAND_I8
00067     616562689U, // ATOMIC_LOAD_OR_I16
00068     620756993U, // ATOMIC_LOAD_OR_I32
00069     624951297U, // ATOMIC_LOAD_OR_I64
00070     629145601U, // ATOMIC_LOAD_OR_I8
00071     633339905U, // ATOMIC_LOAD_SUB_I16
00072     637534209U, // ATOMIC_LOAD_SUB_I32
00073     641728513U, // ATOMIC_LOAD_SUB_I64
00074     645922817U, // ATOMIC_LOAD_SUB_I8
00075     650117121U, // ATOMIC_LOAD_XOR_I16
00076     654311425U, // ATOMIC_LOAD_XOR_I32
00077     658505729U, // ATOMIC_LOAD_XOR_I64
00078     662700033U, // ATOMIC_LOAD_XOR_I8
00079     666894337U, // ATOMIC_SWAP_I16
00080     671088641U, // ATOMIC_SWAP_I32
00081     675282945U, // ATOMIC_SWAP_I64
00082     679477249U, // ATOMIC_SWAP_I8
00083     805306464U, // B
00084     1220804707U,  // BCC
00085     101U, // BCTR
00086     107U, // BCTRL8_ELF
00087     107U, // BCTRL8_Macho
00088     107U, // BCTRL_ELF
00089     107U, // BCTRL_Macho
00090     1493172338U,  // BL8_ELF
00091     1493172338U,  // BL8_Macho
00092     1761607798U,  // BLA8_ELF
00093     1761607798U,  // BLA8_Macho
00094     1761607798U,  // BLA_ELF
00095     1761607798U,  // BLA_Macho
00096     1228931171U,  // BLR
00097     1493172338U,  // BL_ELF
00098     1493172338U,  // BL_Macho
00099     268435579U, // CMPD
00100     268439681U, // CMPDI
00101     268435592U, // CMPLD
00102     268447887U, // CMPLDI
00103     268435607U, // CMPLW
00104     268447902U, // CMPLWI
00105     268435622U, // CMPW
00106     268439724U, // CMPWI
00107     268468403U, // CNTLZD
00108     268468411U, // CNTLZW
00109     268435651U, // CREQV
00110     268435658U, // CROR
00111     268959939U, // CRSET
00112     1879048400U,  // DCBA
00113     1879048406U,  // DCBF
00114     1879048412U,  // DCBI
00115     1879048418U,  // DCBST
00116     1879048425U,  // DCBT
00117     1879048431U,  // DCBTST
00118     1879048439U,  // DCBZ
00119     1879048445U,  // DCBZL
00120     268435716U, // DIVD
00121     268435722U, // DIVDU
00122     268435729U, // DIVW
00123     268435735U, // DIVWU
00124     2147483934U,  // DSS
00125     291U, // DSSALL
00126     2415919403U,  // DST
00127     2415919403U,  // DST64
00128     2415919408U,  // DSTST
00129     2415919408U,  // DSTST64
00130     2415919415U,  // DSTSTT
00131     2415919415U,  // DSTSTT64
00132     2415919423U,  // DSTT
00133     2415919423U,  // DSTT64
00134     696254465U, // DWARF_LOC
00135     700448769U, // DYNALLOC
00136     704643073U, // DYNALLOC8
00137     268435781U, // EQV
00138     268435781U, // EQV8
00139     268468554U, // EXTSB
00140     268468554U, // EXTSB8
00141     268468561U, // EXTSH
00142     268468561U, // EXTSH8
00143     268468568U, // EXTSW
00144     268468568U, // EXTSW_32
00145     268468568U, // EXTSW_32_64
00146     268468575U, // FABSD
00147     268468575U, // FABSS
00148     268435813U, // FADD
00149     268435819U, // FADDS
00150     268435813U, // FADDrtz
00151     268468594U, // FCFID
00152     268435833U, // FCMPUD
00153     268435833U, // FCMPUS
00154     268468608U, // FCTIDZ
00155     268468616U, // FCTIWZ
00156     268435856U, // FDIV
00157     268435862U, // FDIVS
00158     268435869U, // FMADD
00159     268435876U, // FMADDS
00160     268468652U, // FMRD
00161     268468652U, // FMRS
00162     268468652U, // FMRSD
00163     268435889U, // FMSUB
00164     268435896U, // FMSUBS
00165     268435904U, // FMUL
00166     268435910U, // FMULS
00167     268468685U, // FNABSD
00168     268468685U, // FNABSS
00169     268468692U, // FNEGD
00170     268468692U, // FNEGS
00171     268435930U, // FNMADD
00172     268435938U, // FNMADDS
00173     268435947U, // FNMSUB
00174     268435955U, // FNMSUBS
00175     268468732U, // FRSP
00176     268435970U, // FSELD
00177     268435970U, // FSELS
00178     268468744U, // FSQRT
00179     268468751U, // FSQRTS
00180     268435991U, // FSUB
00181     268435997U, // FSUBS
00182     269287972U, // LA
00183     269484584U, // LBZ
00184     269484584U, // LBZ8
00185     269746733U, // LBZU
00186     269746733U, // LBZU8
00187     270008883U, // LBZX
00188     270008883U, // LBZX8
00189     270271033U, // LD
00190     270008893U, // LDARX
00191     270533188U, // LDU
00192     270008905U, // LDX
00193     269484622U, // LFD
00194     269746766U, // LFDU
00195     270008915U, // LFDX
00196     269484633U, // LFS
00197     269746777U, // LFSU
00198     270008926U, // LFSX
00199     269484644U, // LHA
00200     269484644U, // LHA8
00201     269746793U, // LHAU
00202     269320809U, // LHAU8
00203     270008943U, // LHAX
00204     270008943U, // LHAX8
00205     270008949U, // LHBRX
00206     269484668U, // LHZ
00207     269484668U, // LHZ8
00208     269746817U, // LHZU
00209     269746817U, // LHZU8
00210     270008967U, // LHZX
00211     270008967U, // LHZX8
00212     270795405U, // LI
00213     270795405U, // LI8
00214     271057553U, // LIS
00215     271057553U, // LIS8
00216     270008982U, // LVEBX
00217     270008989U, // LVEHX
00218     270008996U, // LVEWX
00219     270009003U, // LVSL
00220     270009009U, // LVSR
00221     270009015U, // LVX
00222     270009020U, // LVXL
00223     270271170U, // LWA
00224     270009031U, // LWARX
00225     270009038U, // LWAX
00226     270009044U, // LWBRX
00227     269484763U, // LWZ
00228     269484763U, // LWZ8
00229     269746912U, // LWZU
00230     269746912U, // LWZU8
00231     270009062U, // LWZX
00232     270009062U, // LWZX8
00233     268468972U, // MCRF
00234     419431154U, // MFCR
00235     419431160U, // MFCTR
00236     419431160U, // MFCTR8
00237     419431167U, // MFFS
00238     419431173U, // MFLR
00239     419431173U, // MFLR8
00240     271319794U, // MFOCRF
00241     440402699U, // MFVRSAVE
00242     419431186U, // MFVSCR
00243     2684355354U,  // MTCRF
00244     419431201U, // MTCTR
00245     419431201U, // MTCTR8
00246     2952790824U,  // MTFSB0
00247     2952790832U,  // MTFSB1
00248     3397387064U,  // MTFSF
00249     419431231U, // MTLR
00250     419431231U, // MTLR8
00251     419431237U, // MTVRSAVE
00252     419431249U, // MTVSCR
00253     268436313U, // MULHD
00254     268436320U, // MULHDU
00255     268436328U, // MULHW
00256     268436335U, // MULHWU
00257     268436343U, // MULLD
00258     268440446U, // MULLI
00259     268436357U, // MULLW
00260     3489661042U,  // MovePCtoLR
00261     3489661042U,  // MovePCtoLR8
00262     268436364U, // NAND
00263     268436364U, // NAND8
00264     268469138U, // NEG
00265     268469138U, // NEG8
00266     919U, // NOP
00267     268436380U, // NOR
00268     268436380U, // NOR8
00269     268436385U, // OR
00270     268436385U, // OR4To8
00271     268436385U, // OR8
00272     268436385U, // OR8To4
00273     268436389U, // ORC
00274     268436389U, // ORC8
00275     268448682U, // ORI
00276     268448682U, // ORI8
00277     268448687U, // ORIS
00278     268448687U, // ORIS8
00279     268436405U, // RLDCL
00280     268452796U, // RLDICL
00281     268452804U, // RLDICR
00282     271713228U, // RLDIMI
00283     271746004U, // RLWIMI
00284     268456924U, // RLWINM
00285     268456932U, // RLWINMo
00286     268436461U, // RLWNM
00287     717225985U, // SELECT_CC_F4
00288     717225985U, // SELECT_CC_F8
00289     717225985U, // SELECT_CC_I4
00290     717225985U, // SELECT_CC_I8
00291     717225985U, // SELECT_CC_VRRC
00292     268436468U, // SLD
00293     268436473U, // SLW
00294     721420289U, // SPILL_CR
00295     268436478U, // SRAD
00296     268452868U, // SRADI
00297     268436491U, // SRAW
00298     268456977U, // SRAWI
00299     268436504U, // SRD
00300     268436509U, // SRW
00301     269485090U, // STB
00302     269485090U, // STB8
00303     3409970215U,  // STBU
00304     3409970215U,  // STBU8
00305     270009389U, // STBX
00306     270009389U, // STBX8
00307     270271539U, // STD
00308     270009400U, // STDCX
00309     3414164544U,  // STDU
00310     270009414U, // STDUX
00311     270009421U, // STDX
00312     270009421U, // STDX_32
00313     270271539U, // STD_32
00314     269485139U, // STFD
00315     3409970265U,  // STFDU
00316     270009440U, // STFDX
00317     270009447U, // STFIWX
00318     269485167U, // STFS
00319     3409970293U,  // STFSU
00320     270009468U, // STFSX
00321     269485187U, // STH
00322     269485187U, // STH8
00323     270009480U, // STHBRX
00324     3409970320U,  // STHU
00325     3409970320U,  // STHU8
00326     270009494U, // STHX
00327     270009494U, // STHX8
00328     270009500U, // STVEBX
00329     270009508U, // STVEHX
00330     270009516U, // STVEWX
00331     270009524U, // STVX
00332     270009530U, // STVXL
00333     269485249U, // STW
00334     269485249U, // STW8
00335     270009542U, // STWBRX
00336     270009550U, // STWCX
00337     3409970390U,  // STWU
00338     3409970390U,  // STWU8
00339     268436700U, // STWUX
00340     270009571U, // STWX
00341     270009571U, // STWX8
00342     268436713U, // SUBF
00343     268436713U, // SUBF8
00344     268436719U, // SUBFC
00345     268436719U, // SUBFC8
00346     268436726U, // SUBFE
00347     268436726U, // SUBFE8
00348     268440829U, // SUBFIC
00349     268440829U, // SUBFIC8
00350     268469509U, // SUBFME
00351     268469509U, // SUBFME8
00352     268469517U, // SUBFZE
00353     268469517U, // SUBFZE8
00354     1301U,  // SYNC
00355     1493172320U,  // TAILB
00356     1493172320U,  // TAILB8
00357     1761608987U,  // TAILBA
00358     1761608987U,  // TAILBA8
00359     101U, // TAILBCTR
00360     101U, // TAILBCTR8
00361     1757447455U,  // TCRETURNai
00362     1757447468U,  // TCRETURNai8
00363     1489012026U,  // TCRETURNdi
00364     1489012039U,  // TCRETURNdi8
00365     415270229U, // TCRETURNri
00366     415270242U, // TCRETURNri8
00367     1392U,  // TRAP
00368     268469622U, // UPDATE_VRSAVE
00369     268436869U, // VADDCUW
00370     268436878U, // VADDFP
00371     268436886U, // VADDSBS
00372     268436895U, // VADDSHS
00373     268436904U, // VADDSWS
00374     268436913U, // VADDUBM
00375     268436922U, // VADDUBS
00376     268436931U, // VADDUHM
00377     268436940U, // VADDUHS
00378     268436949U, // VADDUWM
00379     268436958U, // VADDUWS
00380     268436967U, // VAND
00381     268436973U, // VANDC
00382     268436980U, // VAVGSB
00383     268436988U, // VAVGSH
00384     268436996U, // VAVGSW
00385     268437004U, // VAVGUB
00386     268437012U, // VAVGUH
00387     268437020U, // VAVGUW
00388     271779364U, // VCFSX
00389     271779371U, // VCFUX
00390     268437042U, // VCMPBFP
00391     268437051U, // VCMPBFPo
00392     268437061U, // VCMPEQFP
00393     268437071U, // VCMPEQFPo
00394     268437082U, // VCMPEQUB
00395     268437092U, // VCMPEQUBo
00396     268437103U, // VCMPEQUH
00397     268437113U, // VCMPEQUHo
00398     268437124U, // VCMPEQUW
00399     268437134U, // VCMPEQUWo
00400     268437145U, // VCMPGEFP
00401     268437155U, // VCMPGEFPo
00402     268437166U, // VCMPGTFP
00403     268437176U, // VCMPGTFPo
00404     268437187U, // VCMPGTSB
00405     268437197U, // VCMPGTSBo
00406     268437208U, // VCMPGTSH
00407     268437218U, // VCMPGTSHo
00408     268437229U, // VCMPGTSW
00409     268437239U, // VCMPGTSWo
00410     268437250U, // VCMPGTUB
00411     268437260U, // VCMPGTUBo
00412     268437271U, // VCMPGTUH
00413     268437281U, // VCMPGTUHo
00414     268437292U, // VCMPGTUW
00415     268437302U, // VCMPGTUWo
00416     271779649U, // VCTSXS
00417     271779657U, // VCTUXS
00418     268470097U, // VEXPTEFP
00419     268470107U, // VLOGEFP
00420     268437348U, // VMADDFP
00421     268437357U, // VMAXFP
00422     268437365U, // VMAXSB
00423     268437373U, // VMAXSH
00424     268437381U, // VMAXSW
00425     268437389U, // VMAXUB
00426     268437397U, // VMAXUH
00427     268437405U, // VMAXUW
00428     268437413U, // VMHADDSHS
00429     268437424U, // VMHRADDSHS
00430     268437436U, // VMINFP
00431     268437444U, // VMINSB
00432     268437452U, // VMINSH
00433     268437460U, // VMINSW
00434     268437468U, // VMINUB
00435     268437476U, // VMINUH
00436     268437484U, // VMINUW
00437     268437492U, // VMLADDUHM
00438     268437503U, // VMRGHB
00439     268437511U, // VMRGHH
00440     268437519U, // VMRGHW
00441     268437527U, // VMRGLB
00442     268437535U, // VMRGLH
00443     268437543U, // VMRGLW
00444     268437551U, // VMSUMMBM
00445     268437561U, // VMSUMSHM
00446     268437571U, // VMSUMSHS
00447     268437581U, // VMSUMUBM
00448     268437591U, // VMSUMUHM
00449     268437601U, // VMSUMUHS
00450     268437611U, // VMULESB
00451     268437620U, // VMULESH
00452     268437629U, // VMULEUB
00453     268437638U, // VMULEUH
00454     268437647U, // VMULOSB
00455     268437656U, // VMULOSH
00456     268437665U, // VMULOUB
00457     268437674U, // VMULOUH
00458     268437683U, // VNMSUBFP
00459     268437693U, // VNOR
00460     268437699U, // VOR
00461     268437704U, // VPERM
00462     268437711U, // VPKPX
00463     268437718U, // VPKSHSS
00464     268437727U, // VPKSHUS
00465     268437736U, // VPKSWSS
00466     268437745U, // VPKSWUS
00467     268437754U, // VPKUHUM
00468     268437763U, // VPKUHUS
00469     268437772U, // VPKUWUM
00470     268437781U, // VPKUWUS
00471     268470558U, // VREFP
00472     268470565U, // VRFIM
00473     268470572U, // VRFIN
00474     268470579U, // VRFIP
00475     268470586U, // VRFIZ
00476     268437825U, // VRLB
00477     268437831U, // VRLH
00478     268437837U, // VRLW
00479     268470611U, // VRSQRTEFP
00480     268437854U, // VSEL
00481     268437860U, // VSL
00482     268437865U, // VSLB
00483     268437871U, // VSLDOI
00484     268437879U, // VSLH
00485     268437885U, // VSLO
00486     268437891U, // VSLW
00487     271780233U, // VSPLTB
00488     271780241U, // VSPLTH
00489     271845785U, // VSPLTISB
00490     271845795U, // VSPLTISH
00491     271845805U, // VSPLTISW
00492     271780279U, // VSPLTW
00493     268437951U, // VSR
00494     268437956U, // VSRAB
00495     268437963U, // VSRAH
00496     268437970U, // VSRAW
00497     268437977U, // VSRB
00498     268437983U, // VSRH
00499     268437989U, // VSRO
00500     268437995U, // VSRW
00501     268438001U, // VSUBCUW
00502     268438010U, // VSUBFP
00503     268438018U, // VSUBSBS
00504     268438027U, // VSUBSHS
00505     268438036U, // VSUBSWS
00506     268438045U, // VSUBUBM
00507     268438054U, // VSUBUBS
00508     268438063U, // VSUBUHM
00509     268438072U, // VSUBUHS
00510     268438081U, // VSUBUWM
00511     268438090U, // VSUBUWS
00512     268438099U, // VSUM2SWS
00513     268438109U, // VSUM4SBS
00514     268438119U, // VSUM4SHS
00515     268438129U, // VSUM4UBS
00516     268438139U, // VSUMSWS
00517     268470916U, // VUPKHPX
00518     268470925U, // VUPKHSB
00519     268470934U, // VUPKHSH
00520     268470943U, // VUPKLPX
00521     268470952U, // VUPKLSB
00522     268470961U, // VUPKLSH
00523     268438202U, // VXOR
00524     268962490U, // V_SET0
00525     268438208U, // XOR
00526     268438208U, // XOR8
00527     268450501U, // XORI
00528     268450501U, // XORI8
00529     268450507U, // XORIS
00530     268450507U, // XORIS8
00531     0U
00532   };
00533 
00534   const char *AsmStrs = 
00535     "\000\000PHINODE\n\000add \000addc \000adde \000addi \000addic \000addic"
00536     ". \000addis \000addme \000addze \000and \000andc \000andis. \000andi. \000"
00537     "b \000b\000bctr\n\000bctrl\n\000bl \000bla \000cmpd \000cmpdi \000cmpld"
00538     " \000cmpldi \000cmplw \000cmplwi \000cmpw \000cmpwi \000cntlzd \000cntl"
00539     "zw \000creqv \000cror \000dcba \000dcbf \000dcbi \000dcbst \000dcbt \000"
00540     "dcbtst \000dcbz \000dcbzl \000divd \000divdu \000divw \000divwu \000dss"
00541     " \000dssall\n\000dst \000dstst \000dststt \000dstt \000eqv \000extsb \000"
00542     "extsh \000extsw \000fabs \000fadd \000fadds \000fcfid \000fcmpu \000fct"
00543     "idz \000fctiwz \000fdiv \000fdivs \000fmadd \000fmadds \000fmr \000fmsu"
00544     "b \000fmsubs \000fmul \000fmuls \000fnabs \000fneg \000fnmadd \000fnmad"
00545     "ds \000fnmsub \000fnmsubs \000frsp \000fsel \000fsqrt \000fsqrts \000fs"
00546     "ub \000fsubs \000la \000lbz \000lbzu \000lbzx \000ld \000ldarx \000ldu "
00547     "\000ldx \000lfd \000lfdx \000lfs \000lfsx \000lha \000lhau \000lhax \000"
00548     "lhbrx \000lhz \000lhzu \000lhzx \000li \000lis \000lvebx \000lvehx \000"
00549     "lvewx \000lvsl \000lvsr \000lvx \000lvxl \000lwa \000lwarx \000lwax \000"
00550     "lwbrx \000lwz \000lwzu \000lwzx \000mcrf \000mfcr \000mfctr \000mffs \000"
00551     "mflr \000mfspr \000mfvscr \000mtcrf \000mtctr \000mtfsb0 \000mtfsb1 \000"
00552     "mtfsf \000mtlr \000mtspr 256, \000mtvscr \000mulhd \000mulhdu \000mulhw"
00553     " \000mulhwu \000mulld \000mulli \000mullw \000nand \000neg \000nop\n\000"
00554     "nor \000or \000orc \000ori \000oris \000rldcl \000rldicl \000rldicr \000"
00555     "rldimi \000rlwimi \000rlwinm \000rlwinm. \000rlwnm \000sld \000slw \000"
00556     "srad \000sradi \000sraw \000srawi \000srd \000srw \000stb \000stbu \000"
00557     "stbx \000std \000stdcx. \000stdu \000stdux \000stdx \000stfd \000stfdu "
00558     "\000stfdx \000stfiwx \000stfs \000stfsu \000stfsx \000sth \000sthbrx \000"
00559     "sthu \000sthx \000stvebx \000stvehx \000stvewx \000stvx \000stvxl \000s"
00560     "tw \000stwbrx \000stwcx. \000stwu \000stwux \000stwx \000subf \000subfc"
00561     " \000subfe \000subfic \000subfme \000subfze \000sync\n\000ba \000#TC_RE"
00562     "TURNa \000#TC_RETURNa8 \000#TC_RETURNd \000#TC_RETURNd8 \000#TC_RETURNr"
00563     " \000#TC_RETURNr8 \000trap\n\000UPDATE_VRSAVE \000vaddcuw \000vaddfp \000"
00564     "vaddsbs \000vaddshs \000vaddsws \000vaddubm \000vaddubs \000vadduhm \000"
00565     "vadduhs \000vadduwm \000vadduws \000vand \000vandc \000vavgsb \000vavgs"
00566     "h \000vavgsw \000vavgub \000vavguh \000vavguw \000vcfsx \000vcfux \000v"
00567     "cmpbfp \000vcmpbfp. \000vcmpeqfp \000vcmpeqfp. \000vcmpequb \000vcmpequ"
00568     "b. \000vcmpequh \000vcmpequh. \000vcmpequw \000vcmpequw. \000vcmpgefp \000"
00569     "vcmpgefp. \000vcmpgtfp \000vcmpgtfp. \000vcmpgtsb \000vcmpgtsb. \000vcm"
00570     "pgtsh \000vcmpgtsh. \000vcmpgtsw \000vcmpgtsw. \000vcmpgtub \000vcmpgtu"
00571     "b. \000vcmpgtuh \000vcmpgtuh. \000vcmpgtuw \000vcmpgtuw. \000vctsxs \000"
00572     "vctuxs \000vexptefp \000vlogefp \000vmaddfp \000vmaxfp \000vmaxsb \000v"
00573     "maxsh \000vmaxsw \000vmaxub \000vmaxuh \000vmaxuw \000vmhaddshs \000vmh"
00574     "raddshs \000vminfp \000vminsb \000vminsh \000vminsw \000vminub \000vmin"
00575     "uh \000vminuw \000vmladduhm \000vmrghb \000vmrghh \000vmrghw \000vmrglb"
00576     " \000vmrglh \000vmrglw \000vmsummbm \000vmsumshm \000vmsumshs \000vmsum"
00577     "ubm \000vmsumuhm \000vmsumuhs \000vmulesb \000vmulesh \000vmuleub \000v"
00578     "muleuh \000vmulosb \000vmulosh \000vmuloub \000vmulouh \000vnmsubfp \000"
00579     "vnor \000vor \000vperm \000vpkpx \000vpkshss \000vpkshus \000vpkswss \000"
00580     "vpkswus \000vpkuhum \000vpkuhus \000vpkuwum \000vpkuwus \000vrefp \000v"
00581     "rfim \000vrfin \000vrfip \000vrfiz \000vrlb \000vrlh \000vrlw \000vrsqr"
00582     "tefp \000vsel \000vsl \000vslb \000vsldoi \000vslh \000vslo \000vslw \000"
00583     "vspltb \000vsplth \000vspltisb \000vspltish \000vspltisw \000vspltw \000"
00584     "vsr \000vsrab \000vsrah \000vsraw \000vsrb \000vsrh \000vsro \000vsrw \000"
00585     "vsubcuw \000vsubfp \000vsubsbs \000vsubshs \000vsubsws \000vsububm \000"
00586     "vsububs \000vsubuhm \000vsubuhs \000vsubuwm \000vsubuws \000vsum2sws \000"
00587     "vsum4sbs \000vsum4shs \000vsum4ubs \000vsumsws \000vupkhpx \000vupkhsb "
00588     "\000vupkhsh \000vupklpx \000vupklsb \000vupklsh \000vxor \000xor \000xo"
00589     "ri \000xoris \000";
00590 
00591   if (MI->getOpcode() == TargetInstrInfo::INLINEASM) {
00592     O << "\t";
00593     printInlineAsm(MI);
00594     return true;
00595   } else if (MI->isLabel()) {
00596     printLabel(MI);
00597     return true;
00598   } else if (MI->getOpcode() == TargetInstrInfo::DECLARE) {
00599     printDeclare(MI);
00600     return true;
00601   } else if (MI->getOpcode() == TargetInstrInfo::IMPLICIT_DEF) {
00602     printImplicitDef(MI);
00603     return true;
00604   }
00605 
00606   O << "\t";
00607 
00608   // Emit the opcode for the instruction.
00609   unsigned Bits = OpInfo[MI->getOpcode()];
00610   if (Bits == 0) return false;
00611   O << AsmStrs+(Bits & 4095);
00612 
00613 
00614   // Fragment 0 encoded into 4 bits for 14 unique commands.
00615   switch ((Bits >> 28) & 15) {
00616   default:   // unreachable.
00617   case 0:
00618     return true;
00619     break;
00620   case 1:
00621     // ADD4, ADD8, ADDC, ADDC8, ADDE, ADDE8, ADDI, ADDI8, ADDIC, ADDICo, ADDI...
00622     printOperand(MI, 0); 
00623     break;
00624   case 2:
00625     // ADJCALLSTACKDOWN, ADJCALLSTACKUP, ATOMIC_CMP_SWAP_I16, ATOMIC_CMP_SWAP...
00626     PrintSpecial(MI, "comment"); 
00627     break;
00628   case 3:
00629     // B
00630     printBranchOperand(MI, 0); 
00631     O << "\n"; 
00632     return true;
00633     break;
00634   case 4:
00635     // BCC, BLR
00636     printPredicateOperand(MI, 0, "cc"); 
00637     break;
00638   case 5:
00639     // BL8_ELF, BL8_Macho, BL_ELF, BL_Macho, TAILB, TAILB8, TCRETURNdi, TCRET...
00640     printCallOperand(MI, 0); 
00641     break;
00642   case 6:
00643     // BLA8_ELF, BLA8_Macho, BLA_ELF, BLA_Macho, TAILBA, TAILBA8, TCRETURNai,...
00644     printAbsAddrOperand(MI, 0); 
00645     break;
00646   case 7:
00647     // DCBA, DCBF, DCBI, DCBST, DCBT, DCBTST, DCBZ, DCBZL
00648     printMemRegReg(MI, 0); 
00649     O << "\n"; 
00650     return true;
00651     break;
00652   case 8:
00653     // DSS
00654     printU5ImmOperand(MI, 1); 
00655     O << "\n"; 
00656     return true;
00657     break;
00658   case 9:
00659     // DST, DST64, DSTST, DSTST64, DSTSTT, DSTSTT64, DSTT, DSTT64
00660     printOperand(MI, 2); 
00661     O << ", "; 
00662     printOperand(MI, 3); 
00663     O << ", "; 
00664     printU5ImmOperand(MI, 1); 
00665     O << "\n"; 
00666     return true;
00667     break;
00668   case 10:
00669     // MTCRF
00670     printcrbitm(MI, 0); 
00671     O << ", "; 
00672     printOperand(MI, 1); 
00673     O << "\n"; 
00674     return true;
00675     break;
00676   case 11:
00677     // MTFSB0, MTFSB1
00678     printU5ImmOperand(MI, 0); 
00679     O << "\n"; 
00680     return true;
00681     break;
00682   case 12:
00683     // MTFSF, STBU, STBU8, STDU, STFDU, STFSU, STHU, STHU8, STWU, STWU8
00684     printOperand(MI, 1); 
00685     O << ", "; 
00686     break;
00687   case 13:
00688     // MovePCtoLR, MovePCtoLR8
00689     printPICLabel(MI, 0); 
00690     O << "\n"; 
00691     return true;
00692     break;
00693   }
00694 
00695 
00696   // Fragment 1 encoded into 6 bits for 47 unique commands.
00697   switch ((Bits >> 22) & 63) {
00698   default:   // unreachable.
00699   case 0:
00700     // ADD4, ADD8, ADDC, ADDC8, ADDE, ADDE8, ADDI, ADDI8, ADDIC, ADDICo, ADDI...
00701     O << ", "; 
00702     break;
00703   case 1:
00704     // ADJCALLSTACKDOWN
00705     O << " ADJCALLSTACKDOWN\n"; 
00706     return true;
00707     break;
00708   case 2:
00709     // ADJCALLSTACKUP
00710     O << " ADJCALLSTACKUP\n"; 
00711     return true;
00712     break;
00713   case 3:
00714     // ATOMIC_CMP_SWAP_I16
00715     O << " ATOMIC_CMP_SWAP_I16 PSEUDO!\n"; 
00716     return true;
00717     break;
00718   case 4:
00719     // ATOMIC_CMP_SWAP_I32
00720     O << " ATOMIC_CMP_SWAP_I32 PSEUDO!\n"; 
00721     return true;
00722     break;
00723   case 5:
00724     // ATOMIC_CMP_SWAP_I64
00725     O << " ATOMIC_CMP_SWAP_I64 PSEUDO!\n"; 
00726     return true;
00727     break;
00728   case 6:
00729     // ATOMIC_CMP_SWAP_I8
00730     O << " ATOMIC_CMP_SWAP_I8 PSEUDO!\n"; 
00731     return true;
00732     break;
00733   case 7:
00734     // ATOMIC_LOAD_ADD_I16
00735     O << " ATOMIC_LOAD_ADD_I16 PSEUDO!\n"; 
00736     return true;
00737     break;
00738   case 8:
00739     // ATOMIC_LOAD_ADD_I32
00740     O << " ATOMIC_LOAD_ADD_I32 PSEUDO!\n"; 
00741     return true;
00742     break;
00743   case 9:
00744     // ATOMIC_LOAD_ADD_I64
00745     O << " ATOMIC_LOAD_ADD_I64 PSEUDO!\n"; 
00746     return true;
00747     break;
00748   case 10:
00749     // ATOMIC_LOAD_ADD_I8
00750     O << " ATOMIC_LOAD_ADD_I8 PSEUDO!\n"; 
00751     return true;
00752     break;
00753   case 11:
00754     // ATOMIC_LOAD_AND_I16
00755     O << " ATOMIC_LOAD_AND_I16 PSEUDO!\n"; 
00756     return true;
00757     break;
00758   case 12:
00759     // ATOMIC_LOAD_AND_I32
00760     O << " ATOMIC_LOAD_AND_I32 PSEUDO!\n"; 
00761     return true;
00762     break;
00763   case 13:
00764     // ATOMIC_LOAD_AND_I64
00765     O << " ATOMIC_LOAD_AND_I64 PSEUDO!\n"; 
00766     return true;
00767     break;
00768   case 14:
00769     // ATOMIC_LOAD_AND_I8
00770     O << " ATOMIC_LOAD_AND_I8 PSEUDO!\n"; 
00771     return true;
00772     break;
00773   case 15:
00774     // ATOMIC_LOAD_NAND_I16
00775     O << " ATOMIC_LOAD_NAND_I16 PSEUDO!\n"; 
00776     return true;
00777     break;
00778   case 16:
00779     // ATOMIC_LOAD_NAND_I32
00780     O << " ATOMIC_LOAD_NAND_I32 PSEUDO!\n"; 
00781     return true;
00782     break;
00783   case 17:
00784     // ATOMIC_LOAD_NAND_I64
00785     O << " ATOMIC_LOAD_NAND_I64 PSEUDO!\n"; 
00786     return true;
00787     break;
00788   case 18:
00789     // ATOMIC_LOAD_NAND_I8
00790     O << " ATOMIC_LOAD_NAND_I8 PSEUDO!\n"; 
00791     return true;
00792     break;
00793   case 19:
00794     // ATOMIC_LOAD_OR_I16
00795     O << " ATOMIC_LOAD_OR_I16 PSEUDO!\n"; 
00796     return true;
00797     break;
00798   case 20:
00799     // ATOMIC_LOAD_OR_I32
00800     O << " ATOMIC_LOAD_OR_I32 PSEUDO!\n"; 
00801     return true;
00802     break;
00803   case 21:
00804     // ATOMIC_LOAD_OR_I64
00805     O << " ATOMIC_LOAD_OR_I64 PSEUDO!\n"; 
00806     return true;
00807     break;
00808   case 22:
00809     // ATOMIC_LOAD_OR_I8
00810     O << " ATOMIC_LOAD_OR_I8 PSEUDO!\n"; 
00811     return true;
00812     break;
00813   case 23:
00814     // ATOMIC_LOAD_SUB_I16
00815     O << " ATOMIC_LOAD_SUB_I16 PSEUDO!\n"; 
00816     return true;
00817     break;
00818   case 24:
00819     // ATOMIC_LOAD_SUB_I32
00820     O << " ATOMIC_LOAD_SUB_I32 PSEUDO!\n"; 
00821     return true;
00822     break;
00823   case 25:
00824     // ATOMIC_LOAD_SUB_I64
00825     O << " ATOMIC_LOAD_SUB_I64 PSEUDO!\n"; 
00826     return true;
00827     break;
00828   case 26:
00829     // ATOMIC_LOAD_SUB_I8
00830     O << " ATOMIC_LOAD_SUB_I8 PSEUDO!\n"; 
00831     return true;
00832     break;
00833   case 27:
00834     // ATOMIC_LOAD_XOR_I16
00835     O << " ATOMIC_LOAD_XOR_I16 PSEUDO!\n"; 
00836     return true;
00837     break;
00838   case 28:
00839     // ATOMIC_LOAD_XOR_I32
00840     O << " ATOMIC_LOAD_XOR_I32 PSEUDO!\n"; 
00841     return true;
00842     break;
00843   case 29:
00844     // ATOMIC_LOAD_XOR_I64
00845     O << " ATOMIC_LOAD_XOR_I64 PSEUDO!\n"; 
00846     return true;
00847     break;
00848   case 30:
00849     // ATOMIC_LOAD_XOR_I8
00850     O << " ATOMIC_LOAD_XOR_I8 PSEUDO!\n"; 
00851     return true;
00852     break;
00853   case 31:
00854     // ATOMIC_SWAP_I16
00855     O << " ATOMIC_SWAP_I16 PSEUDO!\n"; 
00856     return true;
00857     break;
00858   case 32:
00859     // ATOMIC_SWAP_I32
00860     O << " ATOMIC_SWAP_I32 PSEUDO!\n"; 
00861     return true;
00862     break;
00863   case 33:
00864     // ATOMIC_SWAP_I64
00865     O << " ATOMIC_SWAP_I64 PSEUDO!\n"; 
00866     return true;
00867     break;
00868   case 34:
00869     // ATOMIC_SWAP_I8
00870     O << " ATOMIC_SWAP_I8 PSEUDO!\n"; 
00871     return true;
00872     break;
00873   case 35:
00874     // BCC, TCRETURNai, TCRETURNai8, TCRETURNdi, TCRETURNdi8, TCRETURNri, TCR...
00875     O << " "; 
00876     break;
00877   case 36:
00878     // BL8_ELF, BL8_Macho, BLA8_ELF, BLA8_Macho, BLA_ELF, BLA_Macho, BL_ELF, ...
00879     O << "\n"; 
00880     return true;
00881     break;
00882   case 37:
00883     // BLR
00884     O << "lr "; 
00885     printPredicateOperand(MI, 0, "reg"); 
00886     O << "\n"; 
00887     return true;
00888     break;
00889   case 38:
00890     // DWARF_LOC
00891     O << " .loc "; 
00892     printOperand(MI, 2); 
00893     O << ", "; 
00894     printOperand(MI, 0); 
00895     O << ", "; 
00896     printOperand(MI, 1); 
00897     O << "\n"; 
00898     return true;
00899     break;
00900   case 39:
00901     // DYNALLOC
00902     O << " DYNALLOC "; 
00903     printOperand(MI, 0); 
00904     O << ", "; 
00905     printOperand(MI, 1); 
00906     O << ", "; 
00907     printMemRegImm(MI, 2); 
00908     O << "\n"; 
00909     return true;
00910     break;
00911   case 40:
00912     // DYNALLOC8
00913     O << " DYNALLOC8 "; 
00914     printOperand(MI, 0); 
00915     O << ", "; 
00916     printOperand(MI, 1); 
00917     O << ", "; 
00918     printMemRegImm(MI, 2); 
00919     O << "\n"; 
00920     return true;
00921     break;
00922   case 41:
00923     // MFVRSAVE
00924     O << ", 256\n"; 
00925     return true;
00926     break;
00927   case 42:
00928     // MTFSF
00929     printOperand(MI, 2); 
00930     O << "\n"; 
00931     return true;
00932     break;
00933   case 43:
00934     // SELECT_CC_F4, SELECT_CC_F8, SELECT_CC_I4, SELECT_CC_I8, SELECT_CC_VRRC
00935     O << " SELECT_CC PSEUDO!\n"; 
00936     return true;
00937     break;
00938   case 44:
00939     // SPILL_CR
00940     O << " SPILL_CR "; 
00941     printOperand(MI, 0); 
00942     O << " "; 
00943     printMemRegImm(MI, 1); 
00944     O << "\n"; 
00945     return true;
00946     break;
00947   case 45:
00948     // STBU, STBU8, STFDU, STFSU, STHU, STHU8, STWU, STWU8
00949     printSymbolLo(MI, 2); 
00950     O << "("; 
00951     printOperand(MI, 3); 
00952     O << ")\n"; 
00953     return true;
00954     break;
00955   case 46:
00956     // STDU
00957     printS16X4ImmOperand(MI, 2); 
00958     O << "("; 
00959     printOperand(MI, 3); 
00960     O << ")\n"; 
00961     return true;
00962     break;
00963   }
00964 
00965 
00966   // Fragment 2 encoded into 4 bits for 14 unique commands.
00967   switch ((Bits >> 18) & 15) {
00968   default:   // unreachable.
00969   case 0:
00970     // ADD4, ADD8, ADDC, ADDC8, ADDE, ADDE8, ADDI, ADDI8, ADDIC, ADDICo, ADDI...
00971     printOperand(MI, 1); 
00972     break;
00973   case 1:
00974     // BCC
00975     printPredicateOperand(MI, 0, "reg"); 
00976     O << ", "; 
00977     printBranchOperand(MI, 2); 
00978     O << "\n"; 
00979     return true;
00980     break;
00981   case 2:
00982     // CRSET, V_SET0
00983     printOperand(MI, 0); 
00984     O << ", "; 
00985     printOperand(MI, 0); 
00986     O << "\n"; 
00987     return true;
00988     break;
00989   case 3:
00990     // LA, LHAU8
00991     printSymbolLo(MI, 2); 
00992     O << "("; 
00993     break;
00994   case 4:
00995     // LBZ, LBZ8, LFD, LFS, LHA, LHA8, LHZ, LHZ8, LWZ, LWZ8, STB, STB8, STFD,...
00996     printMemRegImm(MI, 1); 
00997     O << "\n"; 
00998     return true;
00999     break;
01000   case 5:
01001     // LBZU, LBZU8, LFDU, LFSU, LHAU, LHZU, LHZU8, LWZU, LWZU8
01002     printMemRegImm(MI, 2); 
01003     O << "\n"; 
01004     return true;
01005     break;
01006   case 6:
01007     // LBZX, LBZX8, LDARX, LDX, LFDX, LFSX, LHAX, LHAX8, LHBRX, LHZX, LHZX8, ...
01008     printMemRegReg(MI, 1); 
01009     O << "\n"; 
01010     return true;
01011     break;
01012   case 7:
01013     // LD, LWA, STD, STD_32
01014     printMemRegImmShifted(MI, 1); 
01015     O << "\n"; 
01016     return true;
01017     break;
01018   case 8:
01019     // LDU
01020     printMemRegImmShifted(MI, 2); 
01021     O << "\n"; 
01022     return true;
01023     break;
01024   case 9:
01025     // LI, LI8
01026     printSymbolLo(MI, 1); 
01027     O << "\n"; 
01028     return true;
01029     break;
01030   case 10:
01031     // LIS, LIS8
01032     printSymbolHi(MI, 1); 
01033     O << "\n"; 
01034     return true;
01035     break;
01036   case 11:
01037     // MFOCRF
01038     printcrbitm(MI, 1); 
01039     O << "\n"; 
01040     return true;
01041     break;
01042   case 12:
01043     // RLDIMI, RLWIMI, VCFSX, VCFUX, VCTSXS, VCTUXS, VSPLTB, VSPLTH, VSPLTW
01044     printOperand(MI, 2); 
01045     O << ", "; 
01046     break;
01047   case 13:
01048     // VSPLTISB, VSPLTISH, VSPLTISW
01049     printS5ImmOperand(MI, 1); 
01050     O << "\n"; 
01051     return true;
01052     break;
01053   }
01054 
01055 
01056   // Fragment 3 encoded into 3 bits for 7 unique commands.
01057   switch ((Bits >> 15) & 7) {
01058   default:   // unreachable.
01059   case 0:
01060     // ADD4, ADD8, ADDC, ADDC8, ADDE, ADDE8, ADDI, ADDI8, ADDIC, ADDICo, ADDI...
01061     O << ", "; 
01062     break;
01063   case 1:
01064     // ADDME, ADDME8, ADDZE, ADDZE8, CNTLZD, CNTLZW, EXTSB, EXTSB8, EXTSH, EX...
01065     O << "\n"; 
01066     return true;
01067     break;
01068   case 2:
01069     // LA
01070     printOperand(MI, 1); 
01071     O << ")\n"; 
01072     return true;
01073     break;
01074   case 3:
01075     // LHAU8
01076     printOperand(MI, 3); 
01077     O << ")\n"; 
01078     return true;
01079     break;
01080   case 4:
01081     // RLDIMI
01082     printU6ImmOperand(MI, 3); 
01083     O << ", "; 
01084     printU6ImmOperand(MI, 4); 
01085     O << "\n"; 
01086     return true;
01087     break;
01088   case 5:
01089     // RLWIMI
01090     printU5ImmOperand(MI, 3); 
01091     O << ", "; 
01092     printU5ImmOperand(MI, 4); 
01093     O << ", "; 
01094     printU5ImmOperand(MI, 5); 
01095     O << "\n"; 
01096     return true;
01097     break;
01098   case 6:
01099     // VCFSX, VCFUX, VCTSXS, VCTUXS, VSPLTB, VSPLTH, VSPLTW
01100     printU5ImmOperand(MI, 1); 
01101     O << "\n"; 
01102     return true;
01103     break;
01104   }
01105 
01106 
01107   // Fragment 4 encoded into 3 bits for 6 unique commands.
01108   switch ((Bits >> 12) & 7) {
01109   default:   // unreachable.
01110   case 0:
01111     // ADD4, ADD8, ADDC, ADDC8, ADDE, ADDE8, AND, AND8, ANDC, ANDC8, CMPD, CM...
01112     printOperand(MI, 2); 
01113     break;
01114   case 1:
01115     // ADDI, ADDI8, ADDIC, ADDICo, CMPDI, CMPWI, MULLI, SUBFIC, SUBFIC8
01116     printS16ImmOperand(MI, 2); 
01117     O << "\n"; 
01118     return true;
01119     break;
01120   case 2:
01121     // ADDIS, ADDIS8
01122     printSymbolHi(MI, 2); 
01123     O << "\n"; 
01124     return true;
01125     break;
01126   case 3:
01127     // ANDISo, ANDISo8, ANDIo, ANDIo8, CMPLDI, CMPLWI, ORI, ORI8, ORIS, ORIS8...
01128     printU16ImmOperand(MI, 2); 
01129     O << "\n"; 
01130     return true;
01131     break;
01132   case 4:
01133     // RLDICL, RLDICR, SRADI
01134     printU6ImmOperand(MI, 2); 
01135     break;
01136   case 5:
01137     // RLWINM, RLWINMo, SRAWI
01138     printU5ImmOperand(MI, 2); 
01139     break;
01140   }
01141 
01142   switch (MI->getOpcode()) {
01143   case PPC::ADD4:
01144   case PPC::ADD8:
01145   case PPC::ADDC:
01146   case PPC::ADDC8:
01147   case PPC::ADDE:
01148   case PPC::ADDE8:
01149   case PPC::AND:
01150   case PPC::AND8:
01151   case PPC::ANDC:
01152   case PPC::ANDC8:
01153   case PPC::CMPD:
01154   case PPC::CMPLD:
01155   case PPC::CMPLW:
01156   case PPC::CMPW:
01157   case PPC::CREQV:
01158   case PPC::CROR:
01159   case PPC::DIVD:
01160   case PPC::DIVDU:
01161   case PPC::DIVW:
01162   case PPC::DIVWU:
01163   case PPC::EQV:
01164   case PPC::EQV8:
01165   case PPC::FADD:
01166   case PPC::FADDS:
01167   case PPC::FADDrtz:
01168   case PPC::FCMPUD:
01169   case PPC::FCMPUS:
01170   case PPC::FDIV:
01171   case PPC::FDIVS:
01172   case PPC::FMUL:
01173   case PPC::FMULS:
01174   case PPC::FSUB:
01175   case PPC::FSUBS:
01176   case PPC::MULHD:
01177   case PPC::MULHDU:
01178   case PPC::MULHW:
01179   case PPC::MULHWU:
01180   case PPC::MULLD:
01181   case PPC::MULLW:
01182   case PPC::NAND:
01183   case PPC::NAND8:
01184   case PPC::NOR:
01185   case PPC::NOR8:
01186   case PPC::OR:
01187   case PPC::OR4To8:
01188   case PPC::OR8:
01189   case PPC::OR8To4:
01190   case PPC::ORC:
01191   case PPC::ORC8:
01192   case PPC::SLD:
01193   case PPC::SLW:
01194   case PPC::SRAD:
01195   case PPC::SRADI:
01196   case PPC::SRAW:
01197   case PPC::SRAWI:
01198   case PPC::SRD:
01199   case PPC::SRW:
01200   case PPC::STWUX:
01201   case PPC::SUBF:
01202   case PPC::SUBF8:
01203   case PPC::SUBFC:
01204   case PPC::SUBFC8:
01205   case PPC::SUBFE:
01206   case PPC::SUBFE8:
01207   case PPC::VADDCUW:
01208   case PPC::VADDFP:
01209   case PPC::VADDSBS:
01210   case PPC::VADDSHS:
01211   case PPC::VADDSWS:
01212   case PPC::VADDUBM:
01213   case PPC::VADDUBS:
01214   case PPC::VADDUHM:
01215   case PPC::VADDUHS:
01216   case PPC::VADDUWM:
01217   case PPC::VADDUWS:
01218   case PPC::VAND:
01219   case PPC::VANDC:
01220   case PPC::VAVGSB:
01221   case PPC::VAVGSH:
01222   case PPC::VAVGSW:
01223   case PPC::VAVGUB:
01224   case PPC::VAVGUH:
01225   case PPC::VAVGUW:
01226   case PPC::VCMPBFP:
01227   case PPC::VCMPBFPo:
01228   case PPC::VCMPEQFP:
01229   case PPC::VCMPEQFPo:
01230   case PPC::VCMPEQUB:
01231   case PPC::VCMPEQUBo:
01232   case PPC::VCMPEQUH:
01233   case PPC::VCMPEQUHo:
01234   case PPC::VCMPEQUW:
01235   case PPC::VCMPEQUWo:
01236   case PPC::VCMPGEFP:
01237   case PPC::VCMPGEFPo:
01238   case PPC::VCMPGTFP:
01239   case PPC::VCMPGTFPo:
01240   case PPC::VCMPGTSB:
01241   case PPC::VCMPGTSBo:
01242   case PPC::VCMPGTSH:
01243   case PPC::VCMPGTSHo:
01244   case PPC::VCMPGTSW:
01245   case PPC::VCMPGTSWo:
01246   case PPC::VCMPGTUB:
01247   case PPC::VCMPGTUBo:
01248   case PPC::VCMPGTUH:
01249   case PPC::VCMPGTUHo:
01250   case PPC::VCMPGTUW:
01251   case PPC::VCMPGTUWo:
01252   case PPC::VMAXFP:
01253   case PPC::VMAXSB:
01254   case PPC::VMAXSH:
01255   case PPC::VMAXSW:
01256   case PPC::VMAXUB:
01257   case PPC::VMAXUH:
01258   case PPC::VMAXUW:
01259   case PPC::VMINFP:
01260   case PPC::VMINSB:
01261   case PPC::VMINSH:
01262   case PPC::VMINSW:
01263   case PPC::VMINUB:
01264   case PPC::VMINUH:
01265   case PPC::VMINUW:
01266   case PPC::VMRGHB:
01267   case PPC::VMRGHH:
01268   case PPC::VMRGHW:
01269   case PPC::VMRGLB:
01270   case PPC::VMRGLH:
01271   case PPC::VMRGLW:
01272   case PPC::VMULESB:
01273   case PPC::VMULESH:
01274   case PPC::VMULEUB:
01275   case PPC::VMULEUH:
01276   case PPC::VMULOSB:
01277   case PPC::VMULOSH:
01278   case PPC::VMULOUB:
01279   case PPC::VMULOUH:
01280   case PPC::VNOR:
01281   case PPC::VOR:
01282   case PPC::VPKPX:
01283   case PPC::VPKSHSS:
01284   case PPC::VPKSHUS:
01285   case PPC::VPKSWSS:
01286   case PPC::VPKSWUS:
01287   case PPC::VPKUHUM:
01288   case PPC::VPKUHUS:
01289   case PPC::VPKUWUM:
01290   case PPC::VPKUWUS:
01291   case PPC::VRLB:
01292   case PPC::VRLH:
01293   case PPC::VRLW:
01294   case PPC::VSL:
01295   case PPC::VSLB:
01296   case PPC::VSLH:
01297   case PPC::VSLO:
01298   case PPC::VSLW:
01299   case PPC::VSR:
01300   case PPC::VSRAB:
01301   case PPC::VSRAH:
01302   case PPC::VSRAW:
01303   case PPC::VSRB:
01304   case PPC::VSRH:
01305   case PPC::VSRO:
01306   case PPC::VSRW:
01307   case PPC::VSUBCUW:
01308   case PPC::VSUBFP:
01309   case PPC::VSUBSBS:
01310   case PPC::VSUBSHS:
01311   case PPC::VSUBSWS:
01312   case PPC::VSUBUBM:
01313   case PPC::VSUBUBS:
01314   case PPC::VSUBUHM:
01315   case PPC::VSUBUHS:
01316   case PPC::VSUBUWM:
01317   case PPC::VSUBUWS:
01318   case PPC::VSUM2SWS:
01319   case PPC::VSUM4SBS:
01320   case PPC::VSUM4SHS:
01321   case PPC::VSUM4UBS:
01322   case PPC::VSUMSWS:
01323   case PPC::VXOR:
01324   case PPC::XOR:
01325   case PPC::XOR8:
01326     O << "\n"; 
01327     break;
01328   case PPC::FMADD:
01329   case PPC::FMADDS:
01330   case PPC::FMSUB:
01331   case PPC::FMSUBS:
01332   case PPC::FNMADD:
01333   case PPC::FNMADDS:
01334   case PPC::FNMSUB:
01335   case PPC::FNMSUBS:
01336   case PPC::FSELD:
01337   case PPC::FSELS:
01338   case PPC::RLDCL:
01339   case PPC::RLDICL:
01340   case PPC::RLDICR:
01341   case PPC::VMADDFP:
01342   case PPC::VMHADDSHS:
01343   case PPC::VMHRADDSHS:
01344   case PPC::VMLADDUHM:
01345   case PPC::VMSUMMBM:
01346   case PPC::VMSUMSHM:
01347   case PPC::VMSUMSHS:
01348   case PPC::VMSUMUBM:
01349   case PPC::VMSUMUHM:
01350   case PPC::VMSUMUHS:
01351   case PPC::VNMSUBFP:
01352   case PPC::VPERM:
01353   case PPC::VSEL:
01354   case PPC::VSLDOI:
01355     O << ", "; 
01356     switch (MI->getOpcode()) {
01357     case PPC::FMADD: 
01358     case PPC::FMADDS: 
01359     case PPC::FMSUB: 
01360     case PPC::FMSUBS: 
01361     case PPC::FNMADD: 
01362     case PPC::FNMADDS: 
01363     case PPC::FNMSUB: 
01364     case PPC::FNMSUBS: 
01365     case PPC::FSELD: 
01366     case PPC::FSELS: 
01367     case PPC::VMADDFP: 
01368     case PPC::VMHADDSHS: 
01369     case PPC::VMHRADDSHS: 
01370     case PPC::VMLADDUHM: 
01371     case PPC::VMSUMMBM: 
01372     case PPC::VMSUMSHM: 
01373     case PPC::VMSUMSHS: 
01374     case PPC::VMSUMUBM: 
01375     case PPC::VMSUMUHM: 
01376     case PPC::VMSUMUHS: 
01377     case PPC::VNMSUBFP: 
01378     case PPC::VPERM: 
01379     case PPC::VSEL: printOperand(MI, 3); break;
01380     case PPC::RLDCL: 
01381     case PPC::RLDICL: 
01382     case PPC::RLDICR: printU6ImmOperand(MI, 3); break;
01383     case PPC::VSLDOI: printU5ImmOperand(MI, 3); break;
01384     }
01385     O << "\n"; 
01386     break;
01387   case PPC::RLWINM:
01388   case PPC::RLWINMo:
01389   case PPC::RLWNM:
01390     O << ", "; 
01391     printU5ImmOperand(MI, 3); 
01392     O << ", "; 
01393     printU5ImmOperand(MI, 4); 
01394     O << "\n"; 
01395     break;
01396   }
01397   return true;
01398 }