blob: 1b8562c9b36b08135afeedc47d6ac91549c7ac98 [file] [log] [blame]
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|* *|
|*Assembly Writer Source Fragment *|
|* *|
|* Automatically generated file, do not edit! *|
|* *|
\*===----------------------------------------------------------------------===*/
/* Capstone Disassembly Engine */
/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
#include <stdio.h> // debug
#include "../../myinttypes.h"
/// printInstruction - This method is automatically generated by tablegen
/// from the instruction set description.
static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
{
static const uint32_t OpInfo[] = {
0U, // PHI
0U, // INLINEASM
0U, // CFI_INSTRUCTION
0U, // EH_LABEL
0U, // GC_LABEL
0U, // KILL
0U, // EXTRACT_SUBREG
0U, // INSERT_SUBREG
0U, // IMPLICIT_DEF
0U, // SUBREG_TO_REG
0U, // COPY_TO_REGCLASS
2452U, // DBG_VALUE
0U, // REG_SEQUENCE
0U, // COPY
2445U, // BUNDLE
2462U, // LIFETIME_START
2432U, // LIFETIME_END
0U, // STACKMAP
0U, // PATCHPOINT
0U, // LOAD_STACK_GUARD
0U, // STATEPOINT
0U, // FRAME_ALLOC
4688U, // ADDCCri
4688U, // ADDCCrr
5925U, // ADDCri
5925U, // ADDCrr
4772U, // ADDEri
4772U, // ADDErr
4786U, // ADDXC
4678U, // ADDXCCC
4808U, // ADDXri
4808U, // ADDXrr
4808U, // ADDri
4808U, // ADDrr
74166U, // ADJCALLSTACKDOWN
74185U, // ADJCALLSTACKUP
5497U, // ALIGNADDR
5127U, // ALIGNADDRL
4695U, // ANDCCri
4695U, // ANDCCrr
4718U, // ANDNCCri
4718U, // ANDNCCrr
5182U, // ANDNri
5182U, // ANDNrr
5182U, // ANDXNrr
4876U, // ANDXri
4876U, // ANDXrr
4876U, // ANDri
4876U, // ANDrr
4502U, // ARRAY16
4255U, // ARRAY32
4526U, // ARRAY8
0U, // ATOMIC_LOAD_ADD_32
0U, // ATOMIC_LOAD_ADD_64
0U, // ATOMIC_LOAD_AND_32
0U, // ATOMIC_LOAD_AND_64
0U, // ATOMIC_LOAD_MAX_32
0U, // ATOMIC_LOAD_MAX_64
0U, // ATOMIC_LOAD_MIN_32
0U, // ATOMIC_LOAD_MIN_64
0U, // ATOMIC_LOAD_NAND_32
0U, // ATOMIC_LOAD_NAND_64
0U, // ATOMIC_LOAD_OR_32
0U, // ATOMIC_LOAD_OR_64
0U, // ATOMIC_LOAD_SUB_32
0U, // ATOMIC_LOAD_SUB_64
0U, // ATOMIC_LOAD_UMAX_32
0U, // ATOMIC_LOAD_UMAX_64
0U, // ATOMIC_LOAD_UMIN_32
0U, // ATOMIC_LOAD_UMIN_64
0U, // ATOMIC_LOAD_XOR_32
0U, // ATOMIC_LOAD_XOR_64
0U, // ATOMIC_SWAP_64
74271U, // BA
1194492U, // BCOND
1260028U, // BCONDA
17659U, // BINDri
17659U, // BINDrr
5065U, // BMASK
145915U, // BPFCC
211451U, // BPFCCA
276987U, // BPFCCANT
342523U, // BPFCCNT
2106465U, // BPGEZapn
2105838U, // BPGEZapt
2106532U, // BPGEZnapn
2107288U, // BPGEZnapt
2106489U, // BPGZapn
2105856U, // BPGZapt
2106552U, // BPGZnapn
2107384U, // BPGZnapt
1456636U, // BPICC
473596U, // BPICCA
539132U, // BPICCANT
604668U, // BPICCNT
2106477U, // BPLEZapn
2105847U, // BPLEZapt
2106542U, // BPLEZnapn
2107337U, // BPLEZnapt
2106500U, // BPLZapn
2105864U, // BPLZapt
2106561U, // BPLZnapn
2107428U, // BPLZnapt
2106511U, // BPNZapn
2105872U, // BPNZapt
2106570U, // BPNZnapn
2107472U, // BPNZnapt
1718780U, // BPXCC
735740U, // BPXCCA
801276U, // BPXCCANT
866812U, // BPXCCNT
2106522U, // BPZapn
2105880U, // BPZapt
2106579U, // BPZnapn
2107505U, // BPZnapt
4983U, // BSHUFFLE
74742U, // CALL
17398U, // CALLri
17398U, // CALLrr
924148U, // CASXrr
924129U, // CASrr
74001U, // CMASK16
73833U, // CMASK32
74150U, // CMASK8
2106607U, // CMPri
2106607U, // CMPrr
4332U, // EDGE16
5081U, // EDGE16L
5198U, // EDGE16LN
5165U, // EDGE16N
4164U, // EDGE32
5072U, // EDGE32L
5188U, // EDGE32LN
5156U, // EDGE32N
4511U, // EDGE8
5090U, // EDGE8L
5208U, // EDGE8LN
5174U, // EDGE8N
1053516U, // FABSD
1054031U, // FABSQ
1054376U, // FABSS
4813U, // FADDD
5383U, // FADDQ
5645U, // FADDS
4648U, // FALIGNADATA
4875U, // FAND
4112U, // FANDNOT1
5544U, // FANDNOT1S
4271U, // FANDNOT2
5591U, // FANDNOT2S
5677U, // FANDS
1194491U, // FBCOND
1260027U, // FBCONDA
4394U, // FCHKSM16
2106173U, // FCMPD
4413U, // FCMPEQ16
4226U, // FCMPEQ32
4432U, // FCMPGT16
4245U, // FCMPGT32
4340U, // FCMPLE16
4172U, // FCMPLE32
4350U, // FCMPNE16
4182U, // FCMPNE32
2106696U, // FCMPQ
2107005U, // FCMPS
4960U, // FDIVD
5475U, // FDIVQ
5815U, // FDIVS
5405U, // FDMULQ
1053620U, // FDTOI
1053996U, // FDTOQ
1054305U, // FDTOS
1054536U, // FDTOX
1053464U, // FEXPAND
4820U, // FHADDD
5652U, // FHADDS
4800U, // FHSUBD
5637U, // FHSUBS
1053473U, // FITOD
1054003U, // FITOQ
1054312U, // FITOS
6300484U, // FLCMPD
6301316U, // FLCMPS
2606U, // FLUSHW
4404U, // FMEAN16
1053543U, // FMOVD
1006078U, // FMOVD_FCC
23484926U, // FMOVD_ICC
23747070U, // FMOVD_XCC
1054058U, // FMOVQ
1006102U, // FMOVQ_FCC
23484950U, // FMOVQ_ICC
23747094U, // FMOVQ_XCC
6018U, // FMOVRGEZD
6029U, // FMOVRGEZQ
6056U, // FMOVRGEZS
6116U, // FMOVRGZD
6126U, // FMOVRGZQ
6150U, // FMOVRGZS
6067U, // FMOVRLEZD
6078U, // FMOVRLEZQ
6105U, // FMOVRLEZS
6160U, // FMOVRLZD
6170U, // FMOVRLZQ
6194U, // FMOVRLZS
6204U, // FMOVRNZD
6214U, // FMOVRNZQ
6238U, // FMOVRNZS
6009U, // FMOVRZD
6248U, // FMOVRZQ
6269U, // FMOVRZS
1054398U, // FMOVS
1006114U, // FMOVS_FCC
23484962U, // FMOVS_ICC
23747106U, // FMOVS_XCC
4490U, // FMUL8SUX16
4465U, // FMUL8ULX16
4442U, // FMUL8X16
5098U, // FMUL8X16AL
5849U, // FMUL8X16AU
4860U, // FMULD
4477U, // FMULD8SUX16
4452U, // FMULD8ULX16
5413U, // FMULQ
5714U, // FMULS
4837U, // FNADDD
5669U, // FNADDS
4881U, // FNAND
5684U, // FNANDS
1053429U, // FNEGD
1053974U, // FNEGQ
1054283U, // FNEGS
4828U, // FNHADDD
5660U, // FNHADDS
4828U, // FNMULD
5660U, // FNMULS
5513U, // FNOR
5778U, // FNORS
1052698U, // FNOT1
1054131U, // FNOT1S
1052857U, // FNOT2
1054178U, // FNOT2S
5660U, // FNSMULD
74625U, // FONE
75324U, // FONES
5508U, // FOR
4129U, // FORNOT1
5563U, // FORNOT1S
4288U, // FORNOT2
5610U, // FORNOT2S
5772U, // FORS
1052936U, // FPACK16
4192U, // FPACK32
1054507U, // FPACKFIX
4323U, // FPADD16
5620U, // FPADD16S
4155U, // FPADD32
5573U, // FPADD32S
4297U, // FPADD64
4974U, // FPMERGE
4314U, // FPSUB16
4580U, // FPSUB16S
4146U, // FPSUB32
4570U, // FPSUB32S
1053480U, // FQTOD
1053627U, // FQTOI
1054319U, // FQTOS
1054552U, // FQTOX
4423U, // FSLAS16
4236U, // FSLAS32
4378U, // FSLL16
4210U, // FSLL32
4867U, // FSMULD
1053523U, // FSQRTD
1054038U, // FSQRTQ
1054383U, // FSQRTS
4306U, // FSRA16
4138U, // FSRA32
1052681U, // FSRC1
1054112U, // FSRC1S
1052840U, // FSRC2
1054159U, // FSRC2S
4386U, // FSRL16
4218U, // FSRL32
1053487U, // FSTOD
1053634U, // FSTOI
1054010U, // FSTOQ
1054559U, // FSTOX
4793U, // FSUBD
5376U, // FSUBQ
5630U, // FSUBS
5519U, // FXNOR
5785U, // FXNORS
5526U, // FXOR
5793U, // FXORS
1053494U, // FXTOD
1054017U, // FXTOQ
1054326U, // FXTOS
74984U, // FZERO
75353U, // FZEROS
24584U, // GETPCX
1078273U, // JMPLri
1078273U, // JMPLrr
1997243U, // LDDFri
1997243U, // LDDFrr
1997249U, // LDFri
1997249U, // LDFrr
1997275U, // LDQFri
1997275U, // LDQFrr
1997229U, // LDSBri
1997229U, // LDSBrr
1997254U, // LDSHri
1997254U, // LDSHrr
1997287U, // LDSWri
1997287U, // LDSWrr
1997236U, // LDUBri
1997236U, // LDUBrr
1997261U, // LDUHri
1997261U, // LDUHrr
1997294U, // LDXri
1997294U, // LDXrr
1997249U, // LDri
1997249U, // LDrr
33480U, // LEAX_ADDri
33480U, // LEA_ADDri
1054405U, // LZCNT
75121U, // MEMBARi
1054543U, // MOVDTOX
1006122U, // MOVFCCri
1006122U, // MOVFCCrr
23484970U, // MOVICCri
23484970U, // MOVICCrr
6047U, // MOVRGEZri
6047U, // MOVRGEZrr
6142U, // MOVRGZri
6142U, // MOVRGZrr
6096U, // MOVRLEZri
6096U, // MOVRLEZrr
6186U, // MOVRLZri
6186U, // MOVRLZrr
6230U, // MOVRNZri
6230U, // MOVRNZrr
6262U, // MOVRRZri
6262U, // MOVRRZrr
1054469U, // MOVSTOSW
1054479U, // MOVSTOUW
1054543U, // MOVWTOS
23747114U, // MOVXCCri
23747114U, // MOVXCCrr
1054543U, // MOVXTOD
5954U, // MULXri
5954U, // MULXrr
2578U, // NOP
4735U, // ORCCri
4735U, // ORCCrr
4726U, // ORNCCri
4726U, // ORNCCrr
5339U, // ORNri
5339U, // ORNrr
5339U, // ORXNrr
5509U, // ORXri
5509U, // ORXrr
5509U, // ORri
5509U, // ORrr
5836U, // PDIST
5344U, // PDISTN
1053356U, // POPCrr
73729U, // RDY
4999U, // RESTOREri
4999U, // RESTORErr
76132U, // RET
76141U, // RETL
18131U, // RETTri
18131U, // RETTrr
5008U, // SAVEri
5008U, // SAVErr
4748U, // SDIVCCri
4748U, // SDIVCCrr
5995U, // SDIVXri
5995U, // SDIVXrr
5861U, // SDIVri
5861U, // SDIVrr
2182U, // SELECT_CC_DFP_FCC
2293U, // SELECT_CC_DFP_ICC
2238U, // SELECT_CC_FP_FCC
2349U, // SELECT_CC_FP_ICC
2265U, // SELECT_CC_Int_FCC
2376U, // SELECT_CC_Int_ICC
2210U, // SELECT_CC_QFP_FCC
2321U, // SELECT_CC_QFP_ICC
1053595U, // SETHIXi
1053595U, // SETHIi
2569U, // SHUTDOWN
2564U, // SIAM
5941U, // SLLXri
5941U, // SLLXrr
5116U, // SLLri
5116U, // SLLrr
4702U, // SMULCCri
4702U, // SMULCCrr
5144U, // SMULri
5144U, // SMULrr
5913U, // SRAXri
5913U, // SRAXrr
4643U, // SRAri
4643U, // SRArr
5947U, // SRLXri
5947U, // SRLXrr
5139U, // SRLri
5139U, // SRLrr
2588U, // STBAR
37428U, // STBri
37428U, // STBrr
37723U, // STDFri
37723U, // STDFrr
38607U, // STFri
38607U, // STFrr
37782U, // STHri
37782U, // STHrr
38238U, // STQFri
38238U, // STQFrr
38758U, // STXri
38758U, // STXrr
38607U, // STri
38607U, // STrr
4671U, // SUBCCri
4671U, // SUBCCrr
5919U, // SUBCri
5919U, // SUBCrr
4764U, // SUBEri
4764U, // SUBErr
4665U, // SUBXri
4665U, // SUBXrr
4665U, // SUBri
4665U, // SUBrr
1997268U, // SWAPri
1997268U, // SWAPrr
2422U, // TA3
2427U, // TA5
5883U, // TADDCCTVri
5883U, // TADDCCTVrr
4687U, // TADDCCri
4687U, // TADDCCrr
9873960U, // TICCri
9873960U, // TICCrr
37753544U, // TLS_ADDXrr
37753544U, // TLS_ADDrr
2106358U, // TLS_CALL
39746030U, // TLS_LDXrr
39745985U, // TLS_LDrr
5873U, // TSUBCCTVri
5873U, // TSUBCCTVrr
4670U, // TSUBCCri
4670U, // TSUBCCrr
10136104U, // TXCCri
10136104U, // TXCCrr
4756U, // UDIVCCri
4756U, // UDIVCCrr
6002U, // UDIVXri
6002U, // UDIVXrr
5867U, // UDIVri
5867U, // UDIVrr
4710U, // UMULCCri
4710U, // UMULCCrr
5026U, // UMULXHI
5150U, // UMULri
5150U, // UMULrr
74996U, // UNIMP
6300477U, // V9FCMPD
6300397U, // V9FCMPED
6300942U, // V9FCMPEQ
6301251U, // V9FCMPES
6301000U, // V9FCMPQ
6301309U, // V9FCMPS
47614U, // V9FMOVD_FCC
47638U, // V9FMOVQ_FCC
47650U, // V9FMOVS_FCC
47658U, // V9MOVFCCri
47658U, // V9MOVFCCrr
14689692U, // WRYri
14689692U, // WRYrr
5953U, // XMULX
5035U, // XMULXHI
4733U, // XNORCCri
4733U, // XNORCCrr
5520U, // XNORXrr
5520U, // XNORri
5520U, // XNORrr
4741U, // XORCCri
4741U, // XORCCrr
5527U, // XORXri
5527U, // XORXrr
5527U, // XORri
5527U, // XORrr
0U
};
#ifndef CAPSTONE_DIET
static char AsmStrs[] = {
/* 0 */ 'r', 'd', 32, '%', 'y', ',', 32, 0,
/* 8 */ 'f', 's', 'r', 'c', '1', 32, 0,
/* 15 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '1', 32, 0,
/* 25 */ 'f', 'n', 'o', 't', '1', 32, 0,
/* 32 */ 'f', 'o', 'r', 'n', 'o', 't', '1', 32, 0,
/* 41 */ 'f', 's', 'r', 'a', '3', '2', 32, 0,
/* 49 */ 'f', 'p', 's', 'u', 'b', '3', '2', 32, 0,
/* 58 */ 'f', 'p', 'a', 'd', 'd', '3', '2', 32, 0,
/* 67 */ 'e', 'd', 'g', 'e', '3', '2', 32, 0,
/* 75 */ 'f', 'c', 'm', 'p', 'l', 'e', '3', '2', 32, 0,
/* 85 */ 'f', 'c', 'm', 'p', 'n', 'e', '3', '2', 32, 0,
/* 95 */ 'f', 'p', 'a', 'c', 'k', '3', '2', 32, 0,
/* 104 */ 'c', 'm', 'a', 's', 'k', '3', '2', 32, 0,
/* 113 */ 'f', 's', 'l', 'l', '3', '2', 32, 0,
/* 121 */ 'f', 's', 'r', 'l', '3', '2', 32, 0,
/* 129 */ 'f', 'c', 'm', 'p', 'e', 'q', '3', '2', 32, 0,
/* 139 */ 'f', 's', 'l', 'a', 's', '3', '2', 32, 0,
/* 148 */ 'f', 'c', 'm', 'p', 'g', 't', '3', '2', 32, 0,
/* 158 */ 'a', 'r', 'r', 'a', 'y', '3', '2', 32, 0,
/* 167 */ 'f', 's', 'r', 'c', '2', 32, 0,
/* 174 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '2', 32, 0,
/* 184 */ 'f', 'n', 'o', 't', '2', 32, 0,
/* 191 */ 'f', 'o', 'r', 'n', 'o', 't', '2', 32, 0,
/* 200 */ 'f', 'p', 'a', 'd', 'd', '6', '4', 32, 0,
/* 209 */ 'f', 's', 'r', 'a', '1', '6', 32, 0,
/* 217 */ 'f', 'p', 's', 'u', 'b', '1', '6', 32, 0,
/* 226 */ 'f', 'p', 'a', 'd', 'd', '1', '6', 32, 0,
/* 235 */ 'e', 'd', 'g', 'e', '1', '6', 32, 0,
/* 243 */ 'f', 'c', 'm', 'p', 'l', 'e', '1', '6', 32, 0,
/* 253 */ 'f', 'c', 'm', 'p', 'n', 'e', '1', '6', 32, 0,
/* 263 */ 'f', 'p', 'a', 'c', 'k', '1', '6', 32, 0,
/* 272 */ 'c', 'm', 'a', 's', 'k', '1', '6', 32, 0,
/* 281 */ 'f', 's', 'l', 'l', '1', '6', 32, 0,
/* 289 */ 'f', 's', 'r', 'l', '1', '6', 32, 0,
/* 297 */ 'f', 'c', 'h', 'k', 's', 'm', '1', '6', 32, 0,
/* 307 */ 'f', 'm', 'e', 'a', 'n', '1', '6', 32, 0,
/* 316 */ 'f', 'c', 'm', 'p', 'e', 'q', '1', '6', 32, 0,
/* 326 */ 'f', 's', 'l', 'a', 's', '1', '6', 32, 0,
/* 335 */ 'f', 'c', 'm', 'p', 'g', 't', '1', '6', 32, 0,
/* 345 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 32, 0,
/* 355 */ 'f', 'm', 'u', 'l', 'd', '8', 'u', 'l', 'x', '1', '6', 32, 0,
/* 368 */ 'f', 'm', 'u', 'l', '8', 'u', 'l', 'x', '1', '6', 32, 0,
/* 380 */ 'f', 'm', 'u', 'l', 'd', '8', 's', 'u', 'x', '1', '6', 32, 0,
/* 393 */ 'f', 'm', 'u', 'l', '8', 's', 'u', 'x', '1', '6', 32, 0,
/* 405 */ 'a', 'r', 'r', 'a', 'y', '1', '6', 32, 0,
/* 414 */ 'e', 'd', 'g', 'e', '8', 32, 0,
/* 421 */ 'c', 'm', 'a', 's', 'k', '8', 32, 0,
/* 429 */ 'a', 'r', 'r', 'a', 'y', '8', 32, 0,
/* 437 */ '!', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 32, 0,
/* 456 */ '!', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 32, 0,
/* 473 */ 'f', 'p', 's', 'u', 'b', '3', '2', 'S', 32, 0,
/* 483 */ 'f', 'p', 's', 'u', 'b', '1', '6', 'S', 32, 0,
/* 493 */ 'b', 'r', 'g', 'e', 'z', ',', 'a', 32, 0,
/* 502 */ 'b', 'r', 'l', 'e', 'z', ',', 'a', 32, 0,
/* 511 */ 'b', 'r', 'g', 'z', ',', 'a', 32, 0,
/* 519 */ 'b', 'r', 'l', 'z', ',', 'a', 32, 0,
/* 527 */ 'b', 'r', 'n', 'z', ',', 'a', 32, 0,
/* 535 */ 'b', 'r', 'z', ',', 'a', 32, 0,
/* 542 */ 'b', 'a', 32, 0,
/* 546 */ 's', 'r', 'a', 32, 0,
/* 551 */ 'f', 'a', 'l', 'i', 'g', 'n', 'd', 'a', 't', 'a', 32, 0,
/* 563 */ 's', 't', 'b', 32, 0,
/* 568 */ 's', 'u', 'b', 32, 0,
/* 573 */ 't', 's', 'u', 'b', 'c', 'c', 32, 0,
/* 581 */ 'a', 'd', 'd', 'x', 'c', 'c', 'c', 32, 0,
/* 590 */ 't', 'a', 'd', 'd', 'c', 'c', 32, 0,
/* 598 */ 'a', 'n', 'd', 'c', 'c', 32, 0,
/* 605 */ 's', 'm', 'u', 'l', 'c', 'c', 32, 0,
/* 613 */ 'u', 'm', 'u', 'l', 'c', 'c', 32, 0,
/* 621 */ 'a', 'n', 'd', 'n', 'c', 'c', 32, 0,
/* 629 */ 'o', 'r', 'n', 'c', 'c', 32, 0,
/* 636 */ 'x', 'n', 'o', 'r', 'c', 'c', 32, 0,
/* 644 */ 'x', 'o', 'r', 'c', 'c', 32, 0,
/* 651 */ 's', 'd', 'i', 'v', 'c', 'c', 32, 0,
/* 659 */ 'u', 'd', 'i', 'v', 'c', 'c', 32, 0,
/* 667 */ 's', 'u', 'b', 'x', 'c', 'c', 32, 0,
/* 675 */ 'a', 'd', 'd', 'x', 'c', 'c', 32, 0,
/* 683 */ 'p', 'o', 'p', 'c', 32, 0,
/* 689 */ 'a', 'd', 'd', 'x', 'c', 32, 0,
/* 696 */ 'f', 's', 'u', 'b', 'd', 32, 0,
/* 703 */ 'f', 'h', 's', 'u', 'b', 'd', 32, 0,
/* 711 */ 'a', 'd', 'd', 32, 0,
/* 716 */ 'f', 'a', 'd', 'd', 'd', 32, 0,
/* 723 */ 'f', 'h', 'a', 'd', 'd', 'd', 32, 0,
/* 731 */ 'f', 'n', 'h', 'a', 'd', 'd', 'd', 32, 0,
/* 740 */ 'f', 'n', 'a', 'd', 'd', 'd', 32, 0,
/* 748 */ 'f', 'c', 'm', 'p', 'e', 'd', 32, 0,
/* 756 */ 'f', 'n', 'e', 'g', 'd', 32, 0,
/* 763 */ 'f', 'm', 'u', 'l', 'd', 32, 0,
/* 770 */ 'f', 's', 'm', 'u', 'l', 'd', 32, 0,
/* 778 */ 'f', 'a', 'n', 'd', 32, 0,
/* 784 */ 'f', 'n', 'a', 'n', 'd', 32, 0,
/* 791 */ 'f', 'e', 'x', 'p', 'a', 'n', 'd', 32, 0,
/* 800 */ 'f', 'i', 't', 'o', 'd', 32, 0,
/* 807 */ 'f', 'q', 't', 'o', 'd', 32, 0,
/* 814 */ 'f', 's', 't', 'o', 'd', 32, 0,
/* 821 */ 'f', 'x', 't', 'o', 'd', 32, 0,
/* 828 */ 'f', 'c', 'm', 'p', 'd', 32, 0,
/* 835 */ 'f', 'l', 'c', 'm', 'p', 'd', 32, 0,
/* 843 */ 'f', 'a', 'b', 's', 'd', 32, 0,
/* 850 */ 'f', 's', 'q', 'r', 't', 'd', 32, 0,
/* 858 */ 's', 't', 'd', 32, 0,
/* 863 */ 'f', 'd', 'i', 'v', 'd', 32, 0,
/* 870 */ 'f', 'm', 'o', 'v', 'd', 32, 0,
/* 877 */ 'f', 'p', 'm', 'e', 'r', 'g', 'e', 32, 0,
/* 886 */ 'b', 's', 'h', 'u', 'f', 'f', 'l', 'e', 32, 0,
/* 896 */ 'f', 'o', 'n', 'e', 32, 0,
/* 902 */ 'r', 'e', 's', 't', 'o', 'r', 'e', 32, 0,
/* 911 */ 's', 'a', 'v', 'e', 32, 0,
/* 917 */ 's', 't', 'h', 32, 0,
/* 922 */ 's', 'e', 't', 'h', 'i', 32, 0,
/* 929 */ 'u', 'm', 'u', 'l', 'x', 'h', 'i', 32, 0,
/* 938 */ 'x', 'm', 'u', 'l', 'x', 'h', 'i', 32, 0,
/* 947 */ 'f', 'd', 't', 'o', 'i', 32, 0,
/* 954 */ 'f', 'q', 't', 'o', 'i', 32, 0,
/* 961 */ 'f', 's', 't', 'o', 'i', 32, 0,
/* 968 */ 'b', 'm', 'a', 's', 'k', 32, 0,
/* 975 */ 'e', 'd', 'g', 'e', '3', '2', 'l', 32, 0,
/* 984 */ 'e', 'd', 'g', 'e', '1', '6', 'l', 32, 0,
/* 993 */ 'e', 'd', 'g', 'e', '8', 'l', 32, 0,
/* 1001 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 'a', 'l', 32, 0,
/* 1013 */ 'c', 'a', 'l', 'l', 32, 0,
/* 1019 */ 's', 'l', 'l', 32, 0,
/* 1024 */ 'j', 'm', 'p', 'l', 32, 0,
/* 1030 */ 'a', 'l', 'i', 'g', 'n', 'a', 'd', 'd', 'r', 'l', 32, 0,
/* 1042 */ 's', 'r', 'l', 32, 0,
/* 1047 */ 's', 'm', 'u', 'l', 32, 0,
/* 1053 */ 'u', 'm', 'u', 'l', 32, 0,
/* 1059 */ 'e', 'd', 'g', 'e', '3', '2', 'n', 32, 0,
/* 1068 */ 'e', 'd', 'g', 'e', '1', '6', 'n', 32, 0,
/* 1077 */ 'e', 'd', 'g', 'e', '8', 'n', 32, 0,
/* 1085 */ 'a', 'n', 'd', 'n', 32, 0,
/* 1091 */ 'e', 'd', 'g', 'e', '3', '2', 'l', 'n', 32, 0,
/* 1101 */ 'e', 'd', 'g', 'e', '1', '6', 'l', 'n', 32, 0,
/* 1111 */ 'e', 'd', 'g', 'e', '8', 'l', 'n', 32, 0,
/* 1120 */ 'b', 'r', 'g', 'e', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1132 */ 'b', 'r', 'l', 'e', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1144 */ 'b', 'r', 'g', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1155 */ 'b', 'r', 'l', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1166 */ 'b', 'r', 'n', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1177 */ 'b', 'r', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
/* 1187 */ 'b', 'r', 'g', 'e', 'z', ',', 'p', 'n', 32, 0,
/* 1197 */ 'b', 'r', 'l', 'e', 'z', ',', 'p', 'n', 32, 0,
/* 1207 */ 'b', 'r', 'g', 'z', ',', 'p', 'n', 32, 0,
/* 1216 */ 'b', 'r', 'l', 'z', ',', 'p', 'n', 32, 0,
/* 1225 */ 'b', 'r', 'n', 'z', ',', 'p', 'n', 32, 0,
/* 1234 */ 'b', 'r', 'z', ',', 'p', 'n', 32, 0,
/* 1242 */ 'o', 'r', 'n', 32, 0,
/* 1247 */ 'p', 'd', 'i', 's', 't', 'n', 32, 0,
/* 1255 */ 'f', 'z', 'e', 'r', 'o', 32, 0,
/* 1262 */ 'c', 'm', 'p', 32, 0,
/* 1267 */ 'u', 'n', 'i', 'm', 'p', 32, 0,
/* 1274 */ 'j', 'm', 'p', 32, 0,
/* 1279 */ 'f', 's', 'u', 'b', 'q', 32, 0,
/* 1286 */ 'f', 'a', 'd', 'd', 'q', 32, 0,
/* 1293 */ 'f', 'c', 'm', 'p', 'e', 'q', 32, 0,
/* 1301 */ 'f', 'n', 'e', 'g', 'q', 32, 0,
/* 1308 */ 'f', 'd', 'm', 'u', 'l', 'q', 32, 0,
/* 1316 */ 'f', 'm', 'u', 'l', 'q', 32, 0,
/* 1323 */ 'f', 'd', 't', 'o', 'q', 32, 0,
/* 1330 */ 'f', 'i', 't', 'o', 'q', 32, 0,
/* 1337 */ 'f', 's', 't', 'o', 'q', 32, 0,
/* 1344 */ 'f', 'x', 't', 'o', 'q', 32, 0,
/* 1351 */ 'f', 'c', 'm', 'p', 'q', 32, 0,
/* 1358 */ 'f', 'a', 'b', 's', 'q', 32, 0,
/* 1365 */ 'f', 's', 'q', 'r', 't', 'q', 32, 0,
/* 1373 */ 's', 't', 'q', 32, 0,
/* 1378 */ 'f', 'd', 'i', 'v', 'q', 32, 0,
/* 1385 */ 'f', 'm', 'o', 'v', 'q', 32, 0,
/* 1392 */ 'm', 'e', 'm', 'b', 'a', 'r', 32, 0,
/* 1400 */ 'a', 'l', 'i', 'g', 'n', 'a', 'd', 'd', 'r', 32, 0,
/* 1411 */ 'f', 'o', 'r', 32, 0,
/* 1416 */ 'f', 'n', 'o', 'r', 32, 0,
/* 1422 */ 'f', 'x', 'n', 'o', 'r', 32, 0,
/* 1429 */ 'f', 'x', 'o', 'r', 32, 0,
/* 1435 */ 'w', 'r', 32, 0,
/* 1439 */ 'f', 's', 'r', 'c', '1', 's', 32, 0,
/* 1447 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '1', 's', 32, 0,
/* 1458 */ 'f', 'n', 'o', 't', '1', 's', 32, 0,
/* 1466 */ 'f', 'o', 'r', 'n', 'o', 't', '1', 's', 32, 0,
/* 1476 */ 'f', 'p', 'a', 'd', 'd', '3', '2', 's', 32, 0,
/* 1486 */ 'f', 's', 'r', 'c', '2', 's', 32, 0,
/* 1494 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '2', 's', 32, 0,
/* 1505 */ 'f', 'n', 'o', 't', '2', 's', 32, 0,
/* 1513 */ 'f', 'o', 'r', 'n', 'o', 't', '2', 's', 32, 0,
/* 1523 */ 'f', 'p', 'a', 'd', 'd', '1', '6', 's', 32, 0,
/* 1533 */ 'f', 's', 'u', 'b', 's', 32, 0,
/* 1540 */ 'f', 'h', 's', 'u', 'b', 's', 32, 0,
/* 1548 */ 'f', 'a', 'd', 'd', 's', 32, 0,
/* 1555 */ 'f', 'h', 'a', 'd', 'd', 's', 32, 0,
/* 1563 */ 'f', 'n', 'h', 'a', 'd', 'd', 's', 32, 0,
/* 1572 */ 'f', 'n', 'a', 'd', 'd', 's', 32, 0,
/* 1580 */ 'f', 'a', 'n', 'd', 's', 32, 0,
/* 1587 */ 'f', 'n', 'a', 'n', 'd', 's', 32, 0,
/* 1595 */ 'f', 'o', 'n', 'e', 's', 32, 0,
/* 1602 */ 'f', 'c', 'm', 'p', 'e', 's', 32, 0,
/* 1610 */ 'f', 'n', 'e', 'g', 's', 32, 0,
/* 1617 */ 'f', 'm', 'u', 'l', 's', 32, 0,
/* 1624 */ 'f', 'z', 'e', 'r', 'o', 's', 32, 0,
/* 1632 */ 'f', 'd', 't', 'o', 's', 32, 0,
/* 1639 */ 'f', 'i', 't', 'o', 's', 32, 0,
/* 1646 */ 'f', 'q', 't', 'o', 's', 32, 0,
/* 1653 */ 'f', 'x', 't', 'o', 's', 32, 0,
/* 1660 */ 'f', 'c', 'm', 'p', 's', 32, 0,
/* 1667 */ 'f', 'l', 'c', 'm', 'p', 's', 32, 0,
/* 1675 */ 'f', 'o', 'r', 's', 32, 0,
/* 1681 */ 'f', 'n', 'o', 'r', 's', 32, 0,
/* 1688 */ 'f', 'x', 'n', 'o', 'r', 's', 32, 0,
/* 1696 */ 'f', 'x', 'o', 'r', 's', 32, 0,
/* 1703 */ 'f', 'a', 'b', 's', 's', 32, 0,
/* 1710 */ 'f', 's', 'q', 'r', 't', 's', 32, 0,
/* 1718 */ 'f', 'd', 'i', 'v', 's', 32, 0,
/* 1725 */ 'f', 'm', 'o', 'v', 's', 32, 0,
/* 1732 */ 'l', 'z', 'c', 'n', 't', 32, 0,
/* 1739 */ 'p', 'd', 'i', 's', 't', 32, 0,
/* 1746 */ 'r', 'e', 't', 't', 32, 0,
/* 1752 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 'a', 'u', 32, 0,
/* 1764 */ 's', 'd', 'i', 'v', 32, 0,
/* 1770 */ 'u', 'd', 'i', 'v', 32, 0,
/* 1776 */ 't', 's', 'u', 'b', 'c', 'c', 't', 'v', 32, 0,
/* 1786 */ 't', 'a', 'd', 'd', 'c', 'c', 't', 'v', 32, 0,
/* 1796 */ 'm', 'o', 'v', 's', 't', 'o', 's', 'w', 32, 0,
/* 1806 */ 'm', 'o', 'v', 's', 't', 'o', 'u', 'w', 32, 0,
/* 1816 */ 's', 'r', 'a', 'x', 32, 0,
/* 1822 */ 's', 'u', 'b', 'x', 32, 0,
/* 1828 */ 'a', 'd', 'd', 'x', 32, 0,
/* 1834 */ 'f', 'p', 'a', 'c', 'k', 'f', 'i', 'x', 32, 0,
/* 1844 */ 's', 'l', 'l', 'x', 32, 0,
/* 1850 */ 's', 'r', 'l', 'x', 32, 0,
/* 1856 */ 'x', 'm', 'u', 'l', 'x', 32, 0,
/* 1863 */ 'f', 'd', 't', 'o', 'x', 32, 0,
/* 1870 */ 'm', 'o', 'v', 'd', 't', 'o', 'x', 32, 0,
/* 1879 */ 'f', 'q', 't', 'o', 'x', 32, 0,
/* 1886 */ 'f', 's', 't', 'o', 'x', 32, 0,
/* 1893 */ 's', 't', 'x', 32, 0,
/* 1898 */ 's', 'd', 'i', 'v', 'x', 32, 0,
/* 1905 */ 'u', 'd', 'i', 'v', 'x', 32, 0,
/* 1912 */ 'f', 'm', 'o', 'v', 'r', 'd', 'z', 32, 0,
/* 1921 */ 'f', 'm', 'o', 'v', 'r', 'd', 'g', 'e', 'z', 32, 0,
/* 1932 */ 'f', 'm', 'o', 'v', 'r', 'q', 'g', 'e', 'z', 32, 0,
/* 1943 */ 'b', 'r', 'g', 'e', 'z', 32, 0,
/* 1950 */ 'm', 'o', 'v', 'r', 'g', 'e', 'z', 32, 0,
/* 1959 */ 'f', 'm', 'o', 'v', 'r', 's', 'g', 'e', 'z', 32, 0,
/* 1970 */ 'f', 'm', 'o', 'v', 'r', 'd', 'l', 'e', 'z', 32, 0,
/* 1981 */ 'f', 'm', 'o', 'v', 'r', 'q', 'l', 'e', 'z', 32, 0,
/* 1992 */ 'b', 'r', 'l', 'e', 'z', 32, 0,
/* 1999 */ 'm', 'o', 'v', 'r', 'l', 'e', 'z', 32, 0,
/* 2008 */ 'f', 'm', 'o', 'v', 'r', 's', 'l', 'e', 'z', 32, 0,
/* 2019 */ 'f', 'm', 'o', 'v', 'r', 'd', 'g', 'z', 32, 0,
/* 2029 */ 'f', 'm', 'o', 'v', 'r', 'q', 'g', 'z', 32, 0,
/* 2039 */ 'b', 'r', 'g', 'z', 32, 0,
/* 2045 */ 'm', 'o', 'v', 'r', 'g', 'z', 32, 0,
/* 2053 */ 'f', 'm', 'o', 'v', 'r', 's', 'g', 'z', 32, 0,
/* 2063 */ 'f', 'm', 'o', 'v', 'r', 'd', 'l', 'z', 32, 0,
/* 2073 */ 'f', 'm', 'o', 'v', 'r', 'q', 'l', 'z', 32, 0,
/* 2083 */ 'b', 'r', 'l', 'z', 32, 0,
/* 2089 */ 'm', 'o', 'v', 'r', 'l', 'z', 32, 0,
/* 2097 */ 'f', 'm', 'o', 'v', 'r', 's', 'l', 'z', 32, 0,
/* 2107 */ 'f', 'm', 'o', 'v', 'r', 'd', 'n', 'z', 32, 0,
/* 2117 */ 'f', 'm', 'o', 'v', 'r', 'q', 'n', 'z', 32, 0,
/* 2127 */ 'b', 'r', 'n', 'z', 32, 0,
/* 2133 */ 'm', 'o', 'v', 'r', 'n', 'z', 32, 0,
/* 2141 */ 'f', 'm', 'o', 'v', 'r', 's', 'n', 'z', 32, 0,
/* 2151 */ 'f', 'm', 'o', 'v', 'r', 'q', 'z', 32, 0,
/* 2160 */ 'b', 'r', 'z', 32, 0,
/* 2165 */ 'm', 'o', 'v', 'r', 'z', 32, 0,
/* 2172 */ 'f', 'm', 'o', 'v', 'r', 's', 'z', 32, 0,
/* 2181 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'D', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2209 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'Q', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2237 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2264 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'I', 'n', 't', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2292 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'D', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2320 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'Q', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2348 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2375 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'I', 'n', 't', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
/* 2403 */ 'j', 'm', 'p', 32, '%', 'i', '7', '+', 0,
/* 2412 */ 'j', 'm', 'p', 32, '%', 'o', '7', '+', 0,
/* 2421 */ 't', 'a', 32, '3', 0,
/* 2426 */ 't', 'a', 32, '5', 0,
/* 2431 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
/* 2444 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
/* 2451 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
/* 2461 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
/* 2476 */ 'l', 'd', 's', 'b', 32, '[', 0,
/* 2483 */ 'l', 'd', 'u', 'b', 32, '[', 0,
/* 2490 */ 'l', 'd', 'd', 32, '[', 0,
/* 2496 */ 'l', 'd', 32, '[', 0,
/* 2501 */ 'l', 'd', 's', 'h', 32, '[', 0,
/* 2508 */ 'l', 'd', 'u', 'h', 32, '[', 0,
/* 2515 */ 's', 'w', 'a', 'p', 32, '[', 0,
/* 2522 */ 'l', 'd', 'q', 32, '[', 0,
/* 2528 */ 'c', 'a', 's', 32, '[', 0,
/* 2534 */ 'l', 'd', 's', 'w', 32, '[', 0,
/* 2541 */ 'l', 'd', 'x', 32, '[', 0,
/* 2547 */ 'c', 'a', 's', 'x', 32, '[', 0,
/* 2554 */ 'f', 'b', 0,
/* 2557 */ 'f', 'm', 'o', 'v', 'd', 0,
/* 2563 */ 's', 'i', 'a', 'm', 0,
/* 2568 */ 's', 'h', 'u', 't', 'd', 'o', 'w', 'n', 0,
/* 2577 */ 'n', 'o', 'p', 0,
/* 2581 */ 'f', 'm', 'o', 'v', 'q', 0,
/* 2587 */ 's', 't', 'b', 'a', 'r', 0,
/* 2593 */ 'f', 'm', 'o', 'v', 's', 0,
/* 2599 */ 't', 0,
/* 2601 */ 'm', 'o', 'v', 0,
/* 2605 */ 'f', 'l', 'u', 's', 'h', 'w', 0,
};
#endif
// Emit the opcode for the instruction.
uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
#ifndef CAPSTONE_DIET
// assert(Bits != 0 && "Cannot print this instruction.");
SStream_concat0(O, AsmStrs+(Bits & 4095)-1);
#endif
// Fragment 0 encoded into 4 bits for 12 unique commands.
// printf("Frag-0: %u\n", (Bits >> 12) & 15);
switch ((Bits >> 12) & 15) {
default: // unreachable.
case 0:
// DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, FLUSHW, NOP, SELECT_C...
return;
break;
case 1:
// ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
printOperand(MI, 1, O);
break;
case 2:
// ADJCALLSTACKDOWN, ADJCALLSTACKUP, BA, BPGEZapn, BPGEZapt, BPGEZnapn, B...
printOperand(MI, 0, O);
break;
case 3:
// BCOND, BCONDA, BPFCC, BPFCCA, BPFCCANT, BPFCCNT, BPICC, BPICCA, BPICCA...
printCCOperand(MI, 1, O);
break;
case 4:
// BINDri, BINDrr, CALLri, CALLrr, RETTri, RETTrr
printMemOperand(MI, 0, O, NULL);
return;
break;
case 5:
// FMOVD_FCC, FMOVD_ICC, FMOVD_XCC, FMOVQ_FCC, FMOVQ_ICC, FMOVQ_XCC, FMOV...
printCCOperand(MI, 3, O);
break;
case 6:
// GETPCX
printGetPCX(MI, 0, O);
return;
break;
case 7:
// JMPLri, JMPLrr, LDDFri, LDDFrr, LDFri, LDFrr, LDQFri, LDQFrr, LDSBri, ...
printMemOperand(MI, 1, O, NULL);
break;
case 8:
// LEAX_ADDri, LEA_ADDri
printMemOperand(MI, 1, O, "arith");
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
return;
break;
case 9:
// STBri, STBrr, STDFri, STDFrr, STFri, STFrr, STHri, STHrr, STQFri, STQF...
printOperand(MI, 2, O);
SStream_concat0(O, ", [");
printMemOperand(MI, 0, O, NULL);
SStream_concat0(O, "]");
return;
break;
case 10:
// TICCri, TICCrr, TXCCri, TXCCrr
printCCOperand(MI, 2, O);
break;
case 11:
// V9FMOVD_FCC, V9FMOVQ_FCC, V9FMOVS_FCC, V9MOVFCCri, V9MOVFCCrr
printCCOperand(MI, 4, O);
SStream_concat0(O, " ");
printOperand(MI, 1, O);
SStream_concat0(O, ", ");
printOperand(MI, 2, O);
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
return;
break;
}
// Fragment 1 encoded into 4 bits for 16 unique commands.
// printf("Frag-1: %u\n", (Bits >> 16) & 15);
switch ((Bits >> 16) & 15) {
default: // unreachable.
case 0:
// ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
SStream_concat0(O, ", ");
break;
case 1:
// ADJCALLSTACKDOWN, ADJCALLSTACKUP, BA, CALL, CMASK16, CMASK32, CMASK8, ...
return;
break;
case 2:
// BCOND, BPFCC, FBCOND
SStream_concat0(O, " ");
break;
case 3:
// BCONDA, BPFCCA, FBCONDA
SStream_concat0(O, ",a ");
Sparc_add_hint(MI, SPARC_HINT_A);
break;
case 4:
// BPFCCANT
SStream_concat0(O, ",a,pn ");
Sparc_add_hint(MI, SPARC_HINT_A + SPARC_HINT_PN);
printOperand(MI, 2, O);
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
return;
break;
case 5:
// BPFCCNT
SStream_concat0(O, ",pn ");
Sparc_add_hint(MI, SPARC_HINT_PN);
printOperand(MI, 2, O);
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
return;
break;
case 6:
// BPICC, FMOVD_ICC, FMOVQ_ICC, FMOVS_ICC, MOVICCri, MOVICCrr, TICCri, TI...
SStream_concat0(O, " %icc, ");
Sparc_add_reg(MI, SPARC_REG_ICC);
break;
case 7:
// BPICCA
SStream_concat0(O, ",a %icc, ");
Sparc_add_hint(MI, SPARC_HINT_A);
Sparc_add_reg(MI, SPARC_REG_ICC);
printOperand(MI, 0, O);
return;
break;
case 8:
// BPICCANT
SStream_concat0(O, ",a,pn %icc, ");
Sparc_add_hint(MI, SPARC_HINT_A + SPARC_HINT_PN);
Sparc_add_reg(MI, SPARC_REG_ICC);
printOperand(MI, 0, O);
return;
break;
case 9:
// BPICCNT
SStream_concat0(O, ",pn %icc, ");
Sparc_add_hint(MI, SPARC_HINT_PN);
Sparc_add_reg(MI, SPARC_REG_ICC);
printOperand(MI, 0, O);
return;
break;
case 10:
// BPXCC, FMOVD_XCC, FMOVQ_XCC, FMOVS_XCC, MOVXCCri, MOVXCCrr, TXCCri, TX...
SStream_concat0(O, " %xcc, ");
Sparc_add_reg(MI, SPARC_REG_XCC);
break;
case 11:
// BPXCCA
SStream_concat0(O, ",a %xcc, ");
Sparc_add_hint(MI, SPARC_HINT_A);
Sparc_add_reg(MI, SPARC_REG_XCC);
printOperand(MI, 0, O);
return;
break;
case 12:
// BPXCCANT
SStream_concat0(O, ",a,pn %xcc, ");
Sparc_add_hint(MI, SPARC_HINT_A + SPARC_HINT_PN);
Sparc_add_reg(MI, SPARC_REG_XCC);
printOperand(MI, 0, O);
return;
break;
case 13:
// BPXCCNT
SStream_concat0(O, ",pn %xcc, ");
Sparc_add_hint(MI, SPARC_HINT_PN);
Sparc_add_reg(MI, SPARC_REG_XCC);
printOperand(MI, 0, O);
return;
break;
case 14:
// CASXrr, CASrr, LDDFri, LDDFrr, LDFri, LDFrr, LDQFri, LDQFrr, LDSBri, L...
SStream_concat0(O, "], ");
break;
case 15:
// FMOVD_FCC, FMOVQ_FCC, FMOVS_FCC, MOVFCCri, MOVFCCrr
SStream_concat0(O, " %fcc0, ");
Sparc_add_reg(MI, SPARC_REG_FCC0);
printOperand(MI, 1, O);
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
return;
break;
}
// Fragment 2 encoded into 2 bits for 3 unique commands.
// printf("Frag-2: %u\n", (Bits >> 20) & 3);
switch ((Bits >> 20) & 3) {
default: // unreachable.
case 0:
// ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
printOperand(MI, 2, O);
SStream_concat0(O, ", ");
printOperand(MI, 0, O);
break;
case 1:
// BCOND, BCONDA, BPICC, BPXCC, FABSD, FABSQ, FABSS, FBCOND, FBCONDA, FDT...
printOperand(MI, 0, O);
break;
case 2:
// BPGEZapn, BPGEZapt, BPGEZnapn, BPGEZnapt, BPGZapn, BPGZapt, BPGZnapn, ...
printOperand(MI, 1, O);
break;
}
// Fragment 3 encoded into 2 bits for 4 unique commands.
// printf("Frag-3: %u\n", (Bits >> 22) & 3);
switch ((Bits >> 22) & 3) {
default: // unreachable.
case 0:
// ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
return;
break;
case 1:
// FLCMPD, FLCMPS, FMOVD_ICC, FMOVD_XCC, FMOVQ_ICC, FMOVQ_XCC, FMOVS_ICC,...
SStream_concat0(O, ", ");
break;
case 2:
// TICCri, TICCrr, TXCCri, TXCCrr
SStream_concat0(O, " + "); // qq
printOperand(MI, 1, O);
return;
break;
case 3:
// WRYri, WRYrr
SStream_concat0(O, ", %y");
Sparc_add_reg(MI, SPARC_REG_Y);
return;
break;
}
// Fragment 4 encoded into 2 bits for 3 unique commands.
// printf("Frag-4: %u\n", (Bits >> 24) & 3);
switch ((Bits >> 24) & 3) {
default: // unreachable.
case 0:
// FLCMPD, FLCMPS, V9FCMPD, V9FCMPED, V9FCMPEQ, V9FCMPES, V9FCMPQ, V9FCMP...
printOperand(MI, 2, O);
return;
break;
case 1:
// FMOVD_ICC, FMOVD_XCC, FMOVQ_ICC, FMOVQ_XCC, FMOVS_ICC, FMOVS_XCC, MOVI...
printOperand(MI, 0, O);
return;
break;
case 2:
// TLS_ADDXrr, TLS_ADDrr, TLS_LDXrr, TLS_LDrr
printOperand(MI, 3, O);
return;
break;
}
}
/// getRegisterName - This method is automatically generated by tblgen
/// from the register set description. This returns the assembler name
/// for the specified register.
static char *getRegisterName(unsigned RegNo)
{
// assert(RegNo && RegNo < 119 && "Invalid register number!");
#ifndef CAPSTONE_DIET
static char AsmStrs[] = {
/* 0 */ 'f', '1', '0', 0,
/* 4 */ 'f', '2', '0', 0,
/* 8 */ 'f', '3', '0', 0,
/* 12 */ 'f', '4', '0', 0,
/* 16 */ 'f', '5', '0', 0,
/* 20 */ 'f', '6', '0', 0,
/* 24 */ 'f', 'c', 'c', '0', 0,
/* 29 */ 'f', '0', 0,
/* 32 */ 'g', '0', 0,
/* 35 */ 'i', '0', 0,
/* 38 */ 'l', '0', 0,
/* 41 */ 'o', '0', 0,
/* 44 */ 'f', '1', '1', 0,
/* 48 */ 'f', '2', '1', 0,
/* 52 */ 'f', '3', '1', 0,
/* 56 */ 'f', 'c', 'c', '1', 0,
/* 61 */ 'f', '1', 0,
/* 64 */ 'g', '1', 0,
/* 67 */ 'i', '1', 0,
/* 70 */ 'l', '1', 0,
/* 73 */ 'o', '1', 0,
/* 76 */ 'f', '1', '2', 0,
/* 80 */ 'f', '2', '2', 0,
/* 84 */ 'f', '3', '2', 0,
/* 88 */ 'f', '4', '2', 0,
/* 92 */ 'f', '5', '2', 0,
/* 96 */ 'f', '6', '2', 0,
/* 100 */ 'f', 'c', 'c', '2', 0,
/* 105 */ 'f', '2', 0,
/* 108 */ 'g', '2', 0,
/* 111 */ 'i', '2', 0,
/* 114 */ 'l', '2', 0,
/* 117 */ 'o', '2', 0,
/* 120 */ 'f', '1', '3', 0,
/* 124 */ 'f', '2', '3', 0,
/* 128 */ 'f', 'c', 'c', '3', 0,
/* 133 */ 'f', '3', 0,
/* 136 */ 'g', '3', 0,
/* 139 */ 'i', '3', 0,
/* 142 */ 'l', '3', 0,
/* 145 */ 'o', '3', 0,
/* 148 */ 'f', '1', '4', 0,
/* 152 */ 'f', '2', '4', 0,
/* 156 */ 'f', '3', '4', 0,
/* 160 */ 'f', '4', '4', 0,
/* 164 */ 'f', '5', '4', 0,
/* 168 */ 'f', '4', 0,
/* 171 */ 'g', '4', 0,
/* 174 */ 'i', '4', 0,
/* 177 */ 'l', '4', 0,
/* 180 */ 'o', '4', 0,
/* 183 */ 'f', '1', '5', 0,
/* 187 */ 'f', '2', '5', 0,
/* 191 */ 'f', '5', 0,
/* 194 */ 'g', '5', 0,
/* 197 */ 'i', '5', 0,
/* 200 */ 'l', '5', 0,
/* 203 */ 'o', '5', 0,
/* 206 */ 'f', '1', '6', 0,
/* 210 */ 'f', '2', '6', 0,
/* 214 */ 'f', '3', '6', 0,
/* 218 */ 'f', '4', '6', 0,
/* 222 */ 'f', '5', '6', 0,
/* 226 */ 'f', '6', 0,
/* 229 */ 'g', '6', 0,
/* 232 */ 'l', '6', 0,
/* 235 */ 'f', '1', '7', 0,
/* 239 */ 'f', '2', '7', 0,
/* 243 */ 'f', '7', 0,
/* 246 */ 'g', '7', 0,
/* 249 */ 'i', '7', 0,
/* 252 */ 'l', '7', 0,
/* 255 */ 'o', '7', 0,
/* 258 */ 'f', '1', '8', 0,
/* 262 */ 'f', '2', '8', 0,
/* 266 */ 'f', '3', '8', 0,
/* 270 */ 'f', '4', '8', 0,
/* 274 */ 'f', '5', '8', 0,
/* 278 */ 'f', '8', 0,
/* 281 */ 'f', '1', '9', 0,
/* 285 */ 'f', '2', '9', 0,
/* 289 */ 'f', '9', 0,
/* 292 */ 'i', 'c', 'c', 0,
/* 296 */ 'f', 'p', 0,
/* 299 */ 's', 'p', 0,
/* 302 */ 'y', 0,
};
static const uint16_t RegAsmOffset[] = {
292, 302, 29, 105, 168, 226, 278, 0, 76, 148, 206, 258, 4, 80,
152, 210, 262, 8, 84, 156, 214, 266, 12, 88, 160, 218, 270, 16,
92, 164, 222, 274, 20, 96, 29, 61, 105, 133, 168, 191, 226, 243,
278, 289, 0, 44, 76, 120, 148, 183, 206, 235, 258, 281, 4, 48,
80, 124, 152, 187, 210, 239, 262, 285, 8, 52, 24, 56, 100, 128,
32, 64, 108, 136, 171, 194, 229, 246, 35, 67, 111, 139, 174, 197,
296, 249, 38, 70, 114, 142, 177, 200, 232, 252, 41, 73, 117, 145,
180, 203, 299, 255, 29, 168, 278, 76, 206, 4, 152, 262, 84, 214,
12, 160, 270, 92, 222, 20,
};
//int i;
//for (i = 0; i < sizeof(RegAsmOffset)/2; i++)
// printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
//printf("*************************\n");
return AsmStrs+RegAsmOffset[RegNo-1];
#else
return NULL;
#endif
}
#ifdef PRINT_ALIAS_INSTR
#undef PRINT_ALIAS_INSTR
static void printCustomAliasOperand(MCInst *MI, unsigned OpIdx,
unsigned PrintMethodIdx, SStream *OS)
{
}
static char *printAliasInstr(MCInst *MI, SStream *OS, void *info)
{
#define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg)))
const char *AsmString;
char *tmp, *AsmMnem, *AsmOps, *c;
int OpIdx, PrintMethodIdx;
MCRegisterInfo *MRI = (MCRegisterInfo *)info;
switch (MCInst_getOpcode(MI)) {
default: return NULL;
case SP_BCOND:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BCOND brtarget:$imm, 8)
AsmString = "ba $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BCOND brtarget:$imm, 0)
AsmString = "bn $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BCOND brtarget:$imm, 9)
AsmString = "bne $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BCOND brtarget:$imm, 1)
AsmString = "be $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BCOND brtarget:$imm, 10)
AsmString = "bg $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BCOND brtarget:$imm, 2)
AsmString = "ble $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BCOND brtarget:$imm, 11)
AsmString = "bge $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BCOND brtarget:$imm, 3)
AsmString = "bl $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BCOND brtarget:$imm, 12)
AsmString = "bgu $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BCOND brtarget:$imm, 4)
AsmString = "bleu $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BCOND brtarget:$imm, 13)
AsmString = "bcc $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BCOND brtarget:$imm, 5)
AsmString = "bcs $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BCOND brtarget:$imm, 14)
AsmString = "bpos $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BCOND brtarget:$imm, 6)
AsmString = "bneg $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BCOND brtarget:$imm, 15)
AsmString = "bvc $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BCOND brtarget:$imm, 7)
AsmString = "bvs $\x01";
break;
}
return NULL;
case SP_BCONDA:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BCONDA brtarget:$imm, 8)
AsmString = "ba,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BCONDA brtarget:$imm, 0)
AsmString = "bn,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BCONDA brtarget:$imm, 9)
AsmString = "bne,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BCONDA brtarget:$imm, 1)
AsmString = "be,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BCONDA brtarget:$imm, 10)
AsmString = "bg,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BCONDA brtarget:$imm, 2)
AsmString = "ble,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BCONDA brtarget:$imm, 11)
AsmString = "bge,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BCONDA brtarget:$imm, 3)
AsmString = "bl,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BCONDA brtarget:$imm, 12)
AsmString = "bgu,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BCONDA brtarget:$imm, 4)
AsmString = "bleu,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BCONDA brtarget:$imm, 13)
AsmString = "bcc,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BCONDA brtarget:$imm, 5)
AsmString = "bcs,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BCONDA brtarget:$imm, 14)
AsmString = "bpos,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BCONDA brtarget:$imm, 6)
AsmString = "bneg,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BCONDA brtarget:$imm, 15)
AsmString = "bvc,a $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BCONDA brtarget:$imm, 7)
AsmString = "bvs,a $\x01";
break;
}
return NULL;
case SP_BPFCCANT:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 0, FCCRegs:$cc)
AsmString = "fba,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 8, FCCRegs:$cc)
AsmString = "fbn,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 7, FCCRegs:$cc)
AsmString = "fbu,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 6, FCCRegs:$cc)
AsmString = "fbg,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 5, FCCRegs:$cc)
AsmString = "fbug,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 4, FCCRegs:$cc)
AsmString = "fbl,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 3, FCCRegs:$cc)
AsmString = "fbul,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 2, FCCRegs:$cc)
AsmString = "fblg,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 1, FCCRegs:$cc)
AsmString = "fbne,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 9, FCCRegs:$cc)
AsmString = "fbe,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 10, FCCRegs:$cc)
AsmString = "fbue,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 11, FCCRegs:$cc)
AsmString = "fbge,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 12, FCCRegs:$cc)
AsmString = "fbuge,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 13, FCCRegs:$cc)
AsmString = "fble,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 14, FCCRegs:$cc)
AsmString = "fbule,a,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCANT brtarget:$imm, 15, FCCRegs:$cc)
AsmString = "fbo,a,pn $\x03, $\x01";
break;
}
return NULL;
case SP_BPFCCNT:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 0, FCCRegs:$cc)
AsmString = "fba,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 8, FCCRegs:$cc)
AsmString = "fbn,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 7, FCCRegs:$cc)
AsmString = "fbu,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 6, FCCRegs:$cc)
AsmString = "fbg,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 5, FCCRegs:$cc)
AsmString = "fbug,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 4, FCCRegs:$cc)
AsmString = "fbl,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 3, FCCRegs:$cc)
AsmString = "fbul,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 2, FCCRegs:$cc)
AsmString = "fblg,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 1, FCCRegs:$cc)
AsmString = "fbne,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 9, FCCRegs:$cc)
AsmString = "fbe,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 10, FCCRegs:$cc)
AsmString = "fbue,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 11, FCCRegs:$cc)
AsmString = "fbge,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 12, FCCRegs:$cc)
AsmString = "fbuge,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 13, FCCRegs:$cc)
AsmString = "fble,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 14, FCCRegs:$cc)
AsmString = "fbule,pn $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 2)) {
// (BPFCCNT brtarget:$imm, 15, FCCRegs:$cc)
AsmString = "fbo,pn $\x03, $\x01";
break;
}
return NULL;
case SP_BPICCANT:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BPICCANT brtarget:$imm, 8)
AsmString = "ba,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BPICCANT brtarget:$imm, 0)
AsmString = "bn,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BPICCANT brtarget:$imm, 9)
AsmString = "bne,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BPICCANT brtarget:$imm, 1)
AsmString = "be,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BPICCANT brtarget:$imm, 10)
AsmString = "bg,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BPICCANT brtarget:$imm, 2)
AsmString = "ble,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BPICCANT brtarget:$imm, 11)
AsmString = "bge,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BPICCANT brtarget:$imm, 3)
AsmString = "bl,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BPICCANT brtarget:$imm, 12)
AsmString = "bgu,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BPICCANT brtarget:$imm, 4)
AsmString = "bleu,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BPICCANT brtarget:$imm, 13)
AsmString = "bcc,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BPICCANT brtarget:$imm, 5)
AsmString = "bcs,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BPICCANT brtarget:$imm, 14)
AsmString = "bpos,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BPICCANT brtarget:$imm, 6)
AsmString = "bneg,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BPICCANT brtarget:$imm, 15)
AsmString = "bvc,a,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BPICCANT brtarget:$imm, 7)
AsmString = "bvs,a,pn %icc, $\x01";
break;
}
return NULL;
case SP_BPICCNT:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BPICCNT brtarget:$imm, 8)
AsmString = "ba,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BPICCNT brtarget:$imm, 0)
AsmString = "bn,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BPICCNT brtarget:$imm, 9)
AsmString = "bne,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BPICCNT brtarget:$imm, 1)
AsmString = "be,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BPICCNT brtarget:$imm, 10)
AsmString = "bg,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BPICCNT brtarget:$imm, 2)
AsmString = "ble,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BPICCNT brtarget:$imm, 11)
AsmString = "bge,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BPICCNT brtarget:$imm, 3)
AsmString = "bl,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BPICCNT brtarget:$imm, 12)
AsmString = "bgu,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BPICCNT brtarget:$imm, 4)
AsmString = "bleu,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BPICCNT brtarget:$imm, 13)
AsmString = "bcc,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BPICCNT brtarget:$imm, 5)
AsmString = "bcs,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BPICCNT brtarget:$imm, 14)
AsmString = "bpos,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BPICCNT brtarget:$imm, 6)
AsmString = "bneg,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BPICCNT brtarget:$imm, 15)
AsmString = "bvc,pn %icc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BPICCNT brtarget:$imm, 7)
AsmString = "bvs,pn %icc, $\x01";
break;
}
return NULL;
case SP_BPXCCANT:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BPXCCANT brtarget:$imm, 8)
AsmString = "ba,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BPXCCANT brtarget:$imm, 0)
AsmString = "bn,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BPXCCANT brtarget:$imm, 9)
AsmString = "bne,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BPXCCANT brtarget:$imm, 1)
AsmString = "be,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BPXCCANT brtarget:$imm, 10)
AsmString = "bg,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BPXCCANT brtarget:$imm, 2)
AsmString = "ble,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BPXCCANT brtarget:$imm, 11)
AsmString = "bge,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BPXCCANT brtarget:$imm, 3)
AsmString = "bl,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BPXCCANT brtarget:$imm, 12)
AsmString = "bgu,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BPXCCANT brtarget:$imm, 4)
AsmString = "bleu,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BPXCCANT brtarget:$imm, 13)
AsmString = "bcc,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BPXCCANT brtarget:$imm, 5)
AsmString = "bcs,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BPXCCANT brtarget:$imm, 14)
AsmString = "bpos,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BPXCCANT brtarget:$imm, 6)
AsmString = "bneg,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BPXCCANT brtarget:$imm, 15)
AsmString = "bvc,a,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BPXCCANT brtarget:$imm, 7)
AsmString = "bvs,a,pn %xcc, $\x01";
break;
}
return NULL;
case SP_BPXCCNT:
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 8) {
// (BPXCCNT brtarget:$imm, 8)
AsmString = "ba,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 0) {
// (BPXCCNT brtarget:$imm, 0)
AsmString = "bn,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 9) {
// (BPXCCNT brtarget:$imm, 9)
AsmString = "bne,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 1) {
// (BPXCCNT brtarget:$imm, 1)
AsmString = "be,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 10) {
// (BPXCCNT brtarget:$imm, 10)
AsmString = "bg,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 2) {
// (BPXCCNT brtarget:$imm, 2)
AsmString = "ble,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 11) {
// (BPXCCNT brtarget:$imm, 11)
AsmString = "bge,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 3) {
// (BPXCCNT brtarget:$imm, 3)
AsmString = "bl,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 12) {
// (BPXCCNT brtarget:$imm, 12)
AsmString = "bgu,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 4) {
// (BPXCCNT brtarget:$imm, 4)
AsmString = "bleu,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 13) {
// (BPXCCNT brtarget:$imm, 13)
AsmString = "bcc,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 5) {
// (BPXCCNT brtarget:$imm, 5)
AsmString = "bcs,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 14) {
// (BPXCCNT brtarget:$imm, 14)
AsmString = "bpos,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 6) {
// (BPXCCNT brtarget:$imm, 6)
AsmString = "bneg,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 15) {
// (BPXCCNT brtarget:$imm, 15)
AsmString = "bvc,pn %xcc, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 2 &&
MCOperand_isImm(MCInst_getOperand(MI, 1)) &&
MCOperand_getImm(MCInst_getOperand(MI, 1)) == 7) {
// (BPXCCNT brtarget:$imm, 7)
AsmString = "bvs,pn %xcc, $\x01";
break;
}
return NULL;
case SP_FMOVD_ICC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 8)
AsmString = "fmovda %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 0)
AsmString = "fmovdn %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 9)
AsmString = "fmovdne %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 1)
AsmString = "fmovde %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 10)
AsmString = "fmovdg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 2)
AsmString = "fmovdle %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 11)
AsmString = "fmovdge %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 3)
AsmString = "fmovdl %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 12)
AsmString = "fmovdgu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 4)
AsmString = "fmovdleu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 13)
AsmString = "fmovdcc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 5)
AsmString = "fmovdcs %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 14)
AsmString = "fmovdpos %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 6)
AsmString = "fmovdneg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 15)
AsmString = "fmovdvc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVD_ICC DFPRegs:$rd, DFPRegs:$rs2, 7)
AsmString = "fmovdvs %icc, $\x02, $\x01";
break;
}
return NULL;
case SP_FMOVD_XCC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 8)
AsmString = "fmovda %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 0)
AsmString = "fmovdn %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 9)
AsmString = "fmovdne %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 1)
AsmString = "fmovde %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 10)
AsmString = "fmovdg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 2)
AsmString = "fmovdle %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 11)
AsmString = "fmovdge %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 3)
AsmString = "fmovdl %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 12)
AsmString = "fmovdgu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 4)
AsmString = "fmovdleu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 13)
AsmString = "fmovdcc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 5)
AsmString = "fmovdcs %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 14)
AsmString = "fmovdpos %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 6)
AsmString = "fmovdneg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 15)
AsmString = "fmovdvc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVD_XCC DFPRegs:$rd, DFPRegs:$rs2, 7)
AsmString = "fmovdvs %xcc, $\x02, $\x01";
break;
}
return NULL;
case SP_FMOVQ_ICC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 8)
AsmString = "fmovqa %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 0)
AsmString = "fmovqn %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 9)
AsmString = "fmovqne %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 1)
AsmString = "fmovqe %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 10)
AsmString = "fmovqg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 2)
AsmString = "fmovqle %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 11)
AsmString = "fmovqge %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 3)
AsmString = "fmovql %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 12)
AsmString = "fmovqgu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 4)
AsmString = "fmovqleu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 13)
AsmString = "fmovqcc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 5)
AsmString = "fmovqcs %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 14)
AsmString = "fmovqpos %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 6)
AsmString = "fmovqneg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 15)
AsmString = "fmovqvc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVQ_ICC QFPRegs:$rd, QFPRegs:$rs2, 7)
AsmString = "fmovqvs %icc, $\x02, $\x01";
break;
}
return NULL;
case SP_FMOVQ_XCC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 8)
AsmString = "fmovqa %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 0)
AsmString = "fmovqn %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 9)
AsmString = "fmovqne %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 1)
AsmString = "fmovqe %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 10)
AsmString = "fmovqg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 2)
AsmString = "fmovqle %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 11)
AsmString = "fmovqge %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 3)
AsmString = "fmovql %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 12)
AsmString = "fmovqgu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 4)
AsmString = "fmovqleu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 13)
AsmString = "fmovqcc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 5)
AsmString = "fmovqcs %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 14)
AsmString = "fmovqpos %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 6)
AsmString = "fmovqneg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 15)
AsmString = "fmovqvc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVQ_XCC QFPRegs:$rd, QFPRegs:$rs2, 7)
AsmString = "fmovqvs %xcc, $\x02, $\x01";
break;
}
return NULL;
case SP_FMOVS_ICC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 8)
AsmString = "fmovsa %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 0)
AsmString = "fmovsn %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 9)
AsmString = "fmovsne %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 1)
AsmString = "fmovse %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 10)
AsmString = "fmovsg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 2)
AsmString = "fmovsle %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 11)
AsmString = "fmovsge %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 3)
AsmString = "fmovsl %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 12)
AsmString = "fmovsgu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 4)
AsmString = "fmovsleu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 13)
AsmString = "fmovscc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 5)
AsmString = "fmovscs %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 14)
AsmString = "fmovspos %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 6)
AsmString = "fmovsneg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 15)
AsmString = "fmovsvc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVS_ICC FPRegs:$rd, FPRegs:$rs2, 7)
AsmString = "fmovsvs %icc, $\x02, $\x01";
break;
}
return NULL;
case SP_FMOVS_XCC:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 8)
AsmString = "fmovsa %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 0)
AsmString = "fmovsn %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 9)
AsmString = "fmovsne %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 1)
AsmString = "fmovse %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 10)
AsmString = "fmovsg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 2)
AsmString = "fmovsle %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 11)
AsmString = "fmovsge %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 3)
AsmString = "fmovsl %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 12)
AsmString = "fmovsgu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 4)
AsmString = "fmovsleu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 13)
AsmString = "fmovscc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 5)
AsmString = "fmovscs %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 14)
AsmString = "fmovspos %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 6)
AsmString = "fmovsneg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 15)
AsmString = "fmovsvc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (FMOVS_XCC FPRegs:$rd, FPRegs:$rs2, 7)
AsmString = "fmovsvs %xcc, $\x02, $\x01";
break;
}
return NULL;
case SP_MOVICCri:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 8)
AsmString = "mova %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 0)
AsmString = "movn %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 9)
AsmString = "movne %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 1)
AsmString = "move %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 10)
AsmString = "movg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 2)
AsmString = "movle %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 11)
AsmString = "movge %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 3)
AsmString = "movl %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 12)
AsmString = "movgu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 4)
AsmString = "movleu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 13)
AsmString = "movcc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 5)
AsmString = "movcs %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 14)
AsmString = "movpos %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 6)
AsmString = "movneg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 15)
AsmString = "movvc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (MOVICCri IntRegs:$rd, i32imm:$simm11, 7)
AsmString = "movvs %icc, $\x02, $\x01";
break;
}
return NULL;
case SP_MOVICCrr:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 8)
AsmString = "mova %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 0)
AsmString = "movn %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 9)
AsmString = "movne %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 1)
AsmString = "move %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 10)
AsmString = "movg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 2)
AsmString = "movle %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 11)
AsmString = "movge %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 3)
AsmString = "movl %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 12)
AsmString = "movgu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 4)
AsmString = "movleu %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 13)
AsmString = "movcc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 5)
AsmString = "movcs %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 14)
AsmString = "movpos %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 6)
AsmString = "movneg %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 15)
AsmString = "movvc %icc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (MOVICCrr IntRegs:$rd, IntRegs:$rs2, 7)
AsmString = "movvs %icc, $\x02, $\x01";
break;
}
return NULL;
case SP_MOVXCCri:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 8)
AsmString = "mova %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 0)
AsmString = "movn %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 9)
AsmString = "movne %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 1)
AsmString = "move %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 10)
AsmString = "movg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 2)
AsmString = "movle %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 11)
AsmString = "movge %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 3)
AsmString = "movl %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 12)
AsmString = "movgu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 4)
AsmString = "movleu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 13)
AsmString = "movcc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 5)
AsmString = "movcs %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 14)
AsmString = "movpos %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 6)
AsmString = "movneg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 15)
AsmString = "movvc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (MOVXCCri IntRegs:$rd, i32imm:$simm11, 7)
AsmString = "movvs %xcc, $\x02, $\x01";
break;
}
return NULL;
case SP_MOVXCCrr:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 8)
AsmString = "mova %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 0)
AsmString = "movn %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 9)
AsmString = "movne %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 1)
AsmString = "move %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 10)
AsmString = "movg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 2)
AsmString = "movle %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 11)
AsmString = "movge %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 3)
AsmString = "movl %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 12)
AsmString = "movgu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 4)
AsmString = "movleu %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 13)
AsmString = "movcc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 5)
AsmString = "movcs %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 14)
AsmString = "movpos %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 6)
AsmString = "movneg %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 15)
AsmString = "movvc %xcc, $\x02, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (MOVXCCrr IntRegs:$rd, IntRegs:$rs2, 7)
AsmString = "movvs %xcc, $\x02, $\x01";
break;
}
return NULL;
case SP_ORri:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_getReg(MCInst_getOperand(MI, 1)) == SP_G0) {
// (ORri IntRegs:$rd, G0, i32imm:$simm13)
AsmString = "mov $\x03, $\x01";
break;
}
return NULL;
case SP_ORrr:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_getReg(MCInst_getOperand(MI, 1)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2)) {
// (ORrr IntRegs:$rd, G0, IntRegs:$rs2)
AsmString = "mov $\x03, $\x01";
break;
}
return NULL;
case SP_RESTORErr:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_getReg(MCInst_getOperand(MI, 1)) == SP_G0 &&
MCOperand_getReg(MCInst_getOperand(MI, 2)) == SP_G0) {
// (RESTORErr G0, G0, G0)
AsmString = "restore";
break;
}
return NULL;
case SP_RET:
if (MCInst_getNumOperands(MI) == 1 &&
MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
MCOperand_getImm(MCInst_getOperand(MI, 0)) == 8) {
// (RET 8)
AsmString = "ret";
break;
}
return NULL;
case SP_RETL:
if (MCInst_getNumOperands(MI) == 1 &&
MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
MCOperand_getImm(MCInst_getOperand(MI, 0)) == 8) {
// (RETL 8)
AsmString = "retl";
break;
}
return NULL;
case SP_TXCCri:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 8)
AsmString = "ta %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (TXCCri G0, i32imm:$imm, 8)
AsmString = "ta %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 0)
AsmString = "tn %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (TXCCri G0, i32imm:$imm, 0)
AsmString = "tn %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 9)
AsmString = "tne %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (TXCCri G0, i32imm:$imm, 9)
AsmString = "tne %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 1)
AsmString = "te %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (TXCCri G0, i32imm:$imm, 1)
AsmString = "te %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 10)
AsmString = "tg %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (TXCCri G0, i32imm:$imm, 10)
AsmString = "tg %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 2)
AsmString = "tle %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (TXCCri G0, i32imm:$imm, 2)
AsmString = "tle %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 11)
AsmString = "tge %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (TXCCri G0, i32imm:$imm, 11)
AsmString = "tge %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 3)
AsmString = "tl %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (TXCCri G0, i32imm:$imm, 3)
AsmString = "tl %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 12)
AsmString = "tgu %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (TXCCri G0, i32imm:$imm, 12)
AsmString = "tgu %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 4)
AsmString = "tleu %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (TXCCri G0, i32imm:$imm, 4)
AsmString = "tleu %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 13)
AsmString = "tcc %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (TXCCri G0, i32imm:$imm, 13)
AsmString = "tcc %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 5)
AsmString = "tcs %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (TXCCri G0, i32imm:$imm, 5)
AsmString = "tcs %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 14)
AsmString = "tpos %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (TXCCri G0, i32imm:$imm, 14)
AsmString = "tpos %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 6)
AsmString = "tneg %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (TXCCri G0, i32imm:$imm, 6)
AsmString = "tneg %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 15)
AsmString = "tvc %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (TXCCri G0, i32imm:$imm, 15)
AsmString = "tvc %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (TXCCri IntRegs:$rs1, i32imm:$imm, 7)
AsmString = "tvs %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (TXCCri G0, i32imm:$imm, 7)
AsmString = "tvs %xcc, $\x02";
break;
}
return NULL;
case SP_TXCCrr:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 8)
AsmString = "ta %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
// (TXCCrr G0, IntRegs:$rs2, 8)
AsmString = "ta %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 0)
AsmString = "tn %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 0) {
// (TXCCrr G0, IntRegs:$rs2, 0)
AsmString = "tn %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 9)
AsmString = "tne %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 9) {
// (TXCCrr G0, IntRegs:$rs2, 9)
AsmString = "tne %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 1)
AsmString = "te %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 1) {
// (TXCCrr G0, IntRegs:$rs2, 1)
AsmString = "te %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 10)
AsmString = "tg %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 10) {
// (TXCCrr G0, IntRegs:$rs2, 10)
AsmString = "tg %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 2)
AsmString = "tle %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 2) {
// (TXCCrr G0, IntRegs:$rs2, 2)
AsmString = "tle %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 11)
AsmString = "tge %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 11) {
// (TXCCrr G0, IntRegs:$rs2, 11)
AsmString = "tge %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 3)
AsmString = "tl %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 3) {
// (TXCCrr G0, IntRegs:$rs2, 3)
AsmString = "tl %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 12)
AsmString = "tgu %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 12) {
// (TXCCrr G0, IntRegs:$rs2, 12)
AsmString = "tgu %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 4)
AsmString = "tleu %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 4) {
// (TXCCrr G0, IntRegs:$rs2, 4)
AsmString = "tleu %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 13)
AsmString = "tcc %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 13) {
// (TXCCrr G0, IntRegs:$rs2, 13)
AsmString = "tcc %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 5)
AsmString = "tcs %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 5) {
// (TXCCrr G0, IntRegs:$rs2, 5)
AsmString = "tcs %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 14)
AsmString = "tpos %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 14) {
// (TXCCrr G0, IntRegs:$rs2, 14)
AsmString = "tpos %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 6)
AsmString = "tneg %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 6) {
// (TXCCrr G0, IntRegs:$rs2, 6)
AsmString = "tneg %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 15)
AsmString = "tvc %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 15) {
// (TXCCrr G0, IntRegs:$rs2, 15)
AsmString = "tvc %xcc, $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (TXCCrr IntRegs:$rs1, IntRegs:$rs2, 7)
AsmString = "tvs %xcc, $\x01 + $\x02";
break;
}
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
MCOperand_getImm(MCInst_getOperand(MI, 2)) == 7) {
// (TXCCrr G0, IntRegs:$rs2, 7)
AsmString = "tvs %xcc, $\x02";
break;
}
return NULL;
case SP_V9FCMPD:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2)) {
// (V9FCMPD FCC0, DFPRegs:$rs1, DFPRegs:$rs2)
AsmString = "fcmpd $\x02, $\x03";
break;
}
return NULL;
case SP_V9FCMPED:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2)) {
// (V9FCMPED FCC0, DFPRegs:$rs1, DFPRegs:$rs2)
AsmString = "fcmped $\x02, $\x03";
break;
}
return NULL;
case SP_V9FCMPEQ:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2)) {
// (V9FCMPEQ FCC0, QFPRegs:$rs1, QFPRegs:$rs2)
AsmString = "fcmpeq $\x02, $\x03";
break;
}
return NULL;
case SP_V9FCMPES:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2)) {
// (V9FCMPES FCC0, FPRegs:$rs1, FPRegs:$rs2)
AsmString = "fcmpes $\x02, $\x03";
break;
}
return NULL;
case SP_V9FCMPQ:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2)) {
// (V9FCMPQ FCC0, QFPRegs:$rs1, QFPRegs:$rs2)
AsmString = "fcmpq $\x02, $\x03";
break;
}
return NULL;
case SP_V9FCMPS:
if (MCInst_getNumOperands(MI) == 3 &&
MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_FCC0 &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2)) {
// (V9FCMPS FCC0, FPRegs:$rs1, FPRegs:$rs2)
AsmString = "fcmps $\x02, $\x03";
break;
}
return NULL;
case SP_V9FMOVD_FCC:
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 0)
AsmString = "fmovda $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 8) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 8)
AsmString = "fmovdn $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 7) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 7)
AsmString = "fmovdu $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 6) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 6)
AsmString = "fmovdg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 5) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 5)
AsmString = "fmovdug $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 4) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 4)
AsmString = "fmovdl $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 3) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 3)
AsmString = "fmovdul $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 2) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 2)
AsmString = "fmovdlg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 1) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 1)
AsmString = "fmovdne $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 9) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 9)
AsmString = "fmovde $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 10) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 10)
AsmString = "fmovdue $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 11) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 11)
AsmString = "fmovdge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 12) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 12)
AsmString = "fmovduge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 13) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 13)
AsmString = "fmovdle $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 14)
AsmString = "fmovdule $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_DFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 15) {
// (V9FMOVD_FCC DFPRegs:$rd, FCCRegs:$cc, DFPRegs:$rs2, 15)
AsmString = "fmovdo $\x02, $\x03, $\x01";
break;
}
return NULL;
case SP_V9FMOVQ_FCC:
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 0)
AsmString = "fmovqa $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 8) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 8)
AsmString = "fmovqn $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 7) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 7)
AsmString = "fmovqu $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 6) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 6)
AsmString = "fmovqg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 5) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 5)
AsmString = "fmovqug $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 4) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 4)
AsmString = "fmovql $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 3) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 3)
AsmString = "fmovqul $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 2) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 2)
AsmString = "fmovqlg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 1) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 1)
AsmString = "fmovqne $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 9) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 9)
AsmString = "fmovqe $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 10) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 10)
AsmString = "fmovque $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 11) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 11)
AsmString = "fmovqge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 12) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 12)
AsmString = "fmovquge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 13) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 13)
AsmString = "fmovqle $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 14)
AsmString = "fmovqule $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_QFPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 15) {
// (V9FMOVQ_FCC QFPRegs:$rd, FCCRegs:$cc, QFPRegs:$rs2, 15)
AsmString = "fmovqo $\x02, $\x03, $\x01";
break;
}
return NULL;
case SP_V9FMOVS_FCC:
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 0)
AsmString = "fmovsa $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 8) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 8)
AsmString = "fmovsn $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 7) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 7)
AsmString = "fmovsu $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 6) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 6)
AsmString = "fmovsg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 5) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 5)
AsmString = "fmovsug $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 4) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 4)
AsmString = "fmovsl $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 3) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 3)
AsmString = "fmovsul $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 2) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 2)
AsmString = "fmovslg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 1) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 1)
AsmString = "fmovsne $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 9) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 9)
AsmString = "fmovse $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 10) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 10)
AsmString = "fmovsue $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 11) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 11)
AsmString = "fmovsge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 12) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 12)
AsmString = "fmovsuge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 13) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 13)
AsmString = "fmovsle $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 14)
AsmString = "fmovsule $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_FPRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 15) {
// (V9FMOVS_FCC FPRegs:$rd, FCCRegs:$cc, FPRegs:$rs2, 15)
AsmString = "fmovso $\x02, $\x03, $\x01";
break;
}
return NULL;
case SP_V9MOVFCCri:
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 0)
AsmString = "mova $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 8) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 8)
AsmString = "movn $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 7) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 7)
AsmString = "movu $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 6) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 6)
AsmString = "movg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 5) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 5)
AsmString = "movug $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 4) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 4)
AsmString = "movl $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 3) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 3)
AsmString = "movul $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 2) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 2)
AsmString = "movlg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 1) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 1)
AsmString = "movne $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 9) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 9)
AsmString = "move $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 10) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 10)
AsmString = "movue $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 11) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 11)
AsmString = "movge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 12) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 12)
AsmString = "movuge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 13) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 13)
AsmString = "movle $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 14)
AsmString = "movule $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 15) {
// (V9MOVFCCri IntRegs:$rd, FCCRegs:$cc, i32imm:$simm11, 15)
AsmString = "movo $\x02, $\x03, $\x01";
break;
}
return NULL;
case SP_V9MOVFCCrr:
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 0) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 0)
AsmString = "mova $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 8) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 8)
AsmString = "movn $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 7) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 7)
AsmString = "movu $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 6) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 6)
AsmString = "movg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 5) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 5)
AsmString = "movug $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 4) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 4)
AsmString = "movl $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 3) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 3)
AsmString = "movul $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 2) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 2)
AsmString = "movlg $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 1) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 1)
AsmString = "movne $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 9) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 9)
AsmString = "move $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 10) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 10)
AsmString = "movue $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 11) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 11)
AsmString = "movge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 12) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 12)
AsmString = "movuge $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 13) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 13)
AsmString = "movle $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 14) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 14)
AsmString = "movule $\x02, $\x03, $\x01";
break;
}
if (MCInst_getNumOperands(MI) == 4 &&
MCOperand_isReg(MCInst_getOperand(MI, 0)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 0) &&
MCOperand_isReg(MCInst_getOperand(MI, 1)) &&
GETREGCLASS_CONTAIN(SP_FCCRegsRegClassID, 1) &&
MCOperand_isReg(MCInst_getOperand(MI, 2)) &&
GETREGCLASS_CONTAIN(SP_IntRegsRegClassID, 2) &&
MCOperand_isImm(MCInst_getOperand(MI, 3)) &&
MCOperand_getImm(MCInst_getOperand(MI, 3)) == 15) {
// (V9MOVFCCrr IntRegs:$rd, FCCRegs:$cc, IntRegs:$rs2, 15)
AsmString = "movo $\x02, $\x03, $\x01";
break;
}
return NULL;
}
tmp = cs_strdup(AsmString);
AsmMnem = tmp;
for(AsmOps = tmp; *AsmOps; AsmOps++) {
if (*AsmOps == ' ' || *AsmOps == '\t') {
*AsmOps = '\0';
AsmOps++;
break;
}
}
SStream_concat0(OS, AsmMnem);
if (*AsmOps) {
SStream_concat0(OS, "\t");
if (strstr(AsmOps, "icc"))
Sparc_addReg(MI, SPARC_REG_ICC);
if (strstr(AsmOps, "xcc"))
Sparc_addReg(MI, SPARC_REG_XCC);
for (c = AsmOps; *c; c++) {
if (*c == '$') {
c += 1;
if (*c == (char)0xff) {
c += 1;
OpIdx = *c - 1;
c += 1;
PrintMethodIdx = *c - 1;
printCustomAliasOperand(MI, OpIdx, PrintMethodIdx, OS);
} else
printOperand(MI, *c - 1, OS);
} else {
SStream_concat(OS, "%c", *c);
}
}
}
return tmp;
}
#endif // PRINT_ALIAS_INSTR