1*9880d681SAndroid Build Coastguard Worker //===- ARMInstPrinter.h - Convert ARM MCInst to assembly syntax -*- C++ -*-===// 2*9880d681SAndroid Build Coastguard Worker // 3*9880d681SAndroid Build Coastguard Worker // The LLVM Compiler Infrastructure 4*9880d681SAndroid Build Coastguard Worker // 5*9880d681SAndroid Build Coastguard Worker // This file is distributed under the University of Illinois Open Source 6*9880d681SAndroid Build Coastguard Worker // License. See LICENSE.TXT for details. 7*9880d681SAndroid Build Coastguard Worker // 8*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===// 9*9880d681SAndroid Build Coastguard Worker // 10*9880d681SAndroid Build Coastguard Worker // This class prints an ARM MCInst to a .s file. 11*9880d681SAndroid Build Coastguard Worker // 12*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===// 13*9880d681SAndroid Build Coastguard Worker 14*9880d681SAndroid Build Coastguard Worker #ifndef LLVM_LIB_TARGET_ARM_INSTPRINTER_ARMINSTPRINTER_H 15*9880d681SAndroid Build Coastguard Worker #define LLVM_LIB_TARGET_ARM_INSTPRINTER_ARMINSTPRINTER_H 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker #include "llvm/MC/MCInstPrinter.h" 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Worker namespace llvm { 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Worker class ARMInstPrinter : public MCInstPrinter { 22*9880d681SAndroid Build Coastguard Worker public: 23*9880d681SAndroid Build Coastguard Worker ARMInstPrinter(const MCAsmInfo &MAI, const MCInstrInfo &MII, 24*9880d681SAndroid Build Coastguard Worker const MCRegisterInfo &MRI); 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Worker void printInst(const MCInst *MI, raw_ostream &O, StringRef Annot, 27*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI) override; 28*9880d681SAndroid Build Coastguard Worker void printRegName(raw_ostream &OS, unsigned RegNo) const override; 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Worker // Autogenerated by tblgen. 31*9880d681SAndroid Build Coastguard Worker void printInstruction(const MCInst *MI, const MCSubtargetInfo &STI, 32*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 33*9880d681SAndroid Build Coastguard Worker virtual bool printAliasInstr(const MCInst *MI, const MCSubtargetInfo &STI, 34*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 35*9880d681SAndroid Build Coastguard Worker virtual void printCustomAliasOperand(const MCInst *MI, unsigned OpIdx, 36*9880d681SAndroid Build Coastguard Worker unsigned PrintMethodIdx, 37*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 38*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 39*9880d681SAndroid Build Coastguard Worker static const char *getRegisterName(unsigned RegNo); 40*9880d681SAndroid Build Coastguard Worker 41*9880d681SAndroid Build Coastguard Worker void printOperand(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, 42*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 43*9880d681SAndroid Build Coastguard Worker 44*9880d681SAndroid Build Coastguard Worker void printSORegRegOperand(const MCInst *MI, unsigned OpNum, 45*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 46*9880d681SAndroid Build Coastguard Worker void printSORegImmOperand(const MCInst *MI, unsigned OpNum, 47*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 48*9880d681SAndroid Build Coastguard Worker 49*9880d681SAndroid Build Coastguard Worker void printAddrModeTBB(const MCInst *MI, unsigned OpNum, 50*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 51*9880d681SAndroid Build Coastguard Worker void printAddrModeTBH(const MCInst *MI, unsigned OpNum, 52*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 53*9880d681SAndroid Build Coastguard Worker void printAddrMode2Operand(const MCInst *MI, unsigned OpNum, 54*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 55*9880d681SAndroid Build Coastguard Worker void printAM2PostIndexOp(const MCInst *MI, unsigned OpNum, 56*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 57*9880d681SAndroid Build Coastguard Worker void printAM2PreOrOffsetIndexOp(const MCInst *MI, unsigned OpNum, 58*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 59*9880d681SAndroid Build Coastguard Worker void printAddrMode2OffsetOperand(const MCInst *MI, unsigned OpNum, 60*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 61*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 62*9880d681SAndroid Build Coastguard Worker void printAddrMode3Operand(const MCInst *MI, unsigned OpNum, 63*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 64*9880d681SAndroid Build Coastguard Worker void printAddrMode3OffsetOperand(const MCInst *MI, unsigned OpNum, 65*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 66*9880d681SAndroid Build Coastguard Worker void printAM3PreOrOffsetIndexOp(const MCInst *MI, unsigned Op, raw_ostream &O, 67*9880d681SAndroid Build Coastguard Worker bool AlwaysPrintImm0); 68*9880d681SAndroid Build Coastguard Worker void printPostIdxImm8Operand(const MCInst *MI, unsigned OpNum, 69*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 70*9880d681SAndroid Build Coastguard Worker void printPostIdxRegOperand(const MCInst *MI, unsigned OpNum, 71*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 72*9880d681SAndroid Build Coastguard Worker void printPostIdxImm8s4Operand(const MCInst *MI, unsigned OpNum, 73*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 74*9880d681SAndroid Build Coastguard Worker 75*9880d681SAndroid Build Coastguard Worker void printLdStmModeOperand(const MCInst *MI, unsigned OpNum, 76*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 77*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 78*9880d681SAndroid Build Coastguard Worker void printAddrMode5Operand(const MCInst *MI, unsigned OpNum, 79*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 80*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 81*9880d681SAndroid Build Coastguard Worker void printAddrMode5FP16Operand(const MCInst *MI, unsigned OpNum, 82*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 83*9880d681SAndroid Build Coastguard Worker void printAddrMode6Operand(const MCInst *MI, unsigned OpNum, 84*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 85*9880d681SAndroid Build Coastguard Worker void printAddrMode7Operand(const MCInst *MI, unsigned OpNum, 86*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 87*9880d681SAndroid Build Coastguard Worker void printAddrMode6OffsetOperand(const MCInst *MI, unsigned OpNum, 88*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 89*9880d681SAndroid Build Coastguard Worker 90*9880d681SAndroid Build Coastguard Worker void printBitfieldInvMaskImmOperand(const MCInst *MI, unsigned OpNum, 91*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 92*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 93*9880d681SAndroid Build Coastguard Worker void printMemBOption(const MCInst *MI, unsigned OpNum, 94*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 95*9880d681SAndroid Build Coastguard Worker void printInstSyncBOption(const MCInst *MI, unsigned OpNum, 96*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 97*9880d681SAndroid Build Coastguard Worker void printShiftImmOperand(const MCInst *MI, unsigned OpNum, 98*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 99*9880d681SAndroid Build Coastguard Worker void printPKHLSLShiftImm(const MCInst *MI, unsigned OpNum, 100*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 101*9880d681SAndroid Build Coastguard Worker void printPKHASRShiftImm(const MCInst *MI, unsigned OpNum, 102*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 103*9880d681SAndroid Build Coastguard Worker 104*9880d681SAndroid Build Coastguard Worker template <unsigned scale> 105*9880d681SAndroid Build Coastguard Worker void printAdrLabelOperand(const MCInst *MI, unsigned OpNum, 106*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 107*9880d681SAndroid Build Coastguard Worker void printThumbS4ImmOperand(const MCInst *MI, unsigned OpNum, 108*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 109*9880d681SAndroid Build Coastguard Worker void printThumbSRImm(const MCInst *MI, unsigned OpNum, 110*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 111*9880d681SAndroid Build Coastguard Worker void printThumbITMask(const MCInst *MI, unsigned OpNum, 112*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 113*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeRROperand(const MCInst *MI, unsigned OpNum, 114*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 115*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeImm5SOperand(const MCInst *MI, unsigned OpNum, 116*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 117*9880d681SAndroid Build Coastguard Worker raw_ostream &O, unsigned Scale); 118*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeImm5S1Operand(const MCInst *MI, unsigned OpNum, 119*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 120*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 121*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeImm5S2Operand(const MCInst *MI, unsigned OpNum, 122*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 123*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 124*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeImm5S4Operand(const MCInst *MI, unsigned OpNum, 125*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 126*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 127*9880d681SAndroid Build Coastguard Worker void printThumbAddrModeSPOperand(const MCInst *MI, unsigned OpNum, 128*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 129*9880d681SAndroid Build Coastguard Worker 130*9880d681SAndroid Build Coastguard Worker void printT2SOOperand(const MCInst *MI, unsigned OpNum, 131*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 132*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 133*9880d681SAndroid Build Coastguard Worker void printAddrModeImm12Operand(const MCInst *MI, unsigned OpNum, 134*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 135*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 136*9880d681SAndroid Build Coastguard Worker void printT2AddrModeImm8Operand(const MCInst *MI, unsigned OpNum, 137*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 138*9880d681SAndroid Build Coastguard Worker template <bool AlwaysPrintImm0> 139*9880d681SAndroid Build Coastguard Worker void printT2AddrModeImm8s4Operand(const MCInst *MI, unsigned OpNum, 140*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 141*9880d681SAndroid Build Coastguard Worker void printT2AddrModeImm0_1020s4Operand(const MCInst *MI, unsigned OpNum, 142*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 143*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 144*9880d681SAndroid Build Coastguard Worker void printT2AddrModeImm8OffsetOperand(const MCInst *MI, unsigned OpNum, 145*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 146*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 147*9880d681SAndroid Build Coastguard Worker void printT2AddrModeImm8s4OffsetOperand(const MCInst *MI, unsigned OpNum, 148*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 149*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 150*9880d681SAndroid Build Coastguard Worker void printT2AddrModeSoRegOperand(const MCInst *MI, unsigned OpNum, 151*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 152*9880d681SAndroid Build Coastguard Worker 153*9880d681SAndroid Build Coastguard Worker void printSetendOperand(const MCInst *MI, unsigned OpNum, 154*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 155*9880d681SAndroid Build Coastguard Worker void printCPSIMod(const MCInst *MI, unsigned OpNum, 156*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 157*9880d681SAndroid Build Coastguard Worker void printCPSIFlag(const MCInst *MI, unsigned OpNum, 158*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 159*9880d681SAndroid Build Coastguard Worker void printMSRMaskOperand(const MCInst *MI, unsigned OpNum, 160*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 161*9880d681SAndroid Build Coastguard Worker void printBankedRegOperand(const MCInst *MI, unsigned OpNum, 162*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 163*9880d681SAndroid Build Coastguard Worker void printPredicateOperand(const MCInst *MI, unsigned OpNum, 164*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 165*9880d681SAndroid Build Coastguard Worker void printMandatoryPredicateOperand(const MCInst *MI, unsigned OpNum, 166*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 167*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 168*9880d681SAndroid Build Coastguard Worker void printSBitModifierOperand(const MCInst *MI, unsigned OpNum, 169*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 170*9880d681SAndroid Build Coastguard Worker void printRegisterList(const MCInst *MI, unsigned OpNum, 171*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 172*9880d681SAndroid Build Coastguard Worker void printNoHashImmediate(const MCInst *MI, unsigned OpNum, 173*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 174*9880d681SAndroid Build Coastguard Worker void printPImmediate(const MCInst *MI, unsigned OpNum, 175*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 176*9880d681SAndroid Build Coastguard Worker void printCImmediate(const MCInst *MI, unsigned OpNum, 177*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 178*9880d681SAndroid Build Coastguard Worker void printCoprocOptionImm(const MCInst *MI, unsigned OpNum, 179*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 180*9880d681SAndroid Build Coastguard Worker void printFPImmOperand(const MCInst *MI, unsigned OpNum, 181*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 182*9880d681SAndroid Build Coastguard Worker void printNEONModImmOperand(const MCInst *MI, unsigned OpNum, 183*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 184*9880d681SAndroid Build Coastguard Worker void printImmPlusOneOperand(const MCInst *MI, unsigned OpNum, 185*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 186*9880d681SAndroid Build Coastguard Worker void printRotImmOperand(const MCInst *MI, unsigned OpNum, 187*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 188*9880d681SAndroid Build Coastguard Worker void printModImmOperand(const MCInst *MI, unsigned OpNum, 189*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 190*9880d681SAndroid Build Coastguard Worker void printGPRPairOperand(const MCInst *MI, unsigned OpNum, 191*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 192*9880d681SAndroid Build Coastguard Worker 193*9880d681SAndroid Build Coastguard Worker void printPCLabel(const MCInst *MI, unsigned OpNum, 194*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 195*9880d681SAndroid Build Coastguard Worker void printThumbLdrLabelOperand(const MCInst *MI, unsigned OpNum, 196*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 197*9880d681SAndroid Build Coastguard Worker void printFBits16(const MCInst *MI, unsigned OpNum, 198*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 199*9880d681SAndroid Build Coastguard Worker void printFBits32(const MCInst *MI, unsigned OpNum, 200*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 201*9880d681SAndroid Build Coastguard Worker void printVectorIndex(const MCInst *MI, unsigned OpNum, 202*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 203*9880d681SAndroid Build Coastguard Worker void printVectorListOne(const MCInst *MI, unsigned OpNum, 204*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 205*9880d681SAndroid Build Coastguard Worker void printVectorListTwo(const MCInst *MI, unsigned OpNum, 206*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 207*9880d681SAndroid Build Coastguard Worker void printVectorListTwoSpaced(const MCInst *MI, unsigned OpNum, 208*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 209*9880d681SAndroid Build Coastguard Worker void printVectorListThree(const MCInst *MI, unsigned OpNum, 210*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 211*9880d681SAndroid Build Coastguard Worker void printVectorListFour(const MCInst *MI, unsigned OpNum, 212*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 213*9880d681SAndroid Build Coastguard Worker void printVectorListOneAllLanes(const MCInst *MI, unsigned OpNum, 214*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 215*9880d681SAndroid Build Coastguard Worker void printVectorListTwoAllLanes(const MCInst *MI, unsigned OpNum, 216*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 217*9880d681SAndroid Build Coastguard Worker void printVectorListThreeAllLanes(const MCInst *MI, unsigned OpNum, 218*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 219*9880d681SAndroid Build Coastguard Worker void printVectorListFourAllLanes(const MCInst *MI, unsigned OpNum, 220*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 221*9880d681SAndroid Build Coastguard Worker void printVectorListTwoSpacedAllLanes(const MCInst *MI, unsigned OpNum, 222*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 223*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 224*9880d681SAndroid Build Coastguard Worker void printVectorListThreeSpacedAllLanes(const MCInst *MI, unsigned OpNum, 225*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 226*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 227*9880d681SAndroid Build Coastguard Worker void printVectorListFourSpacedAllLanes(const MCInst *MI, unsigned OpNum, 228*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, 229*9880d681SAndroid Build Coastguard Worker raw_ostream &O); 230*9880d681SAndroid Build Coastguard Worker void printVectorListThreeSpaced(const MCInst *MI, unsigned OpNum, 231*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 232*9880d681SAndroid Build Coastguard Worker void printVectorListFourSpaced(const MCInst *MI, unsigned OpNum, 233*9880d681SAndroid Build Coastguard Worker const MCSubtargetInfo &STI, raw_ostream &O); 234*9880d681SAndroid Build Coastguard Worker }; 235*9880d681SAndroid Build Coastguard Worker 236*9880d681SAndroid Build Coastguard Worker } // end namespace llvm 237*9880d681SAndroid Build Coastguard Worker 238*9880d681SAndroid Build Coastguard Worker #endif 239