LLVM  13.0.0git
AMDGPUInstPrinter.h
Go to the documentation of this file.
1 //===-- AMDGPUInstPrinter.h - AMDGPU MC Inst -> ASM interface ---*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 /// \file
10 //===----------------------------------------------------------------------===//
11 
12 #ifndef LLVM_LIB_TARGET_AMDGPU_MCTARGETDESC_AMDGPUINSTPRINTER_H
13 #define LLVM_LIB_TARGET_AMDGPU_MCTARGETDESC_AMDGPUINSTPRINTER_H
14 
15 #include "llvm/MC/MCInstPrinter.h"
16 
17 namespace llvm {
18 
20 public:
22  const MCInstrInfo &MII, const MCRegisterInfo &MRI)
23  : MCInstPrinter(MAI, MII, MRI) {}
24 
25  //Autogenerated by tblgen
26  void printRegName(raw_ostream &OS, unsigned RegNo) const override;
27  std::pair<const char *, uint64_t> getMnemonic(const MCInst *MI) override;
28  void printInstruction(const MCInst *MI, uint64_t Address,
29  const MCSubtargetInfo &STI, raw_ostream &O);
30  static const char *getRegisterName(unsigned RegNo);
31 
32  void printInst(const MCInst *MI, uint64_t Address, StringRef Annot,
33  const MCSubtargetInfo &STI, raw_ostream &O) override;
34  static void printRegOperand(unsigned RegNo, raw_ostream &O,
35  const MCRegisterInfo &MRI);
36 
37 private:
38  void printU4ImmOperand(const MCInst *MI, unsigned OpNo,
39  const MCSubtargetInfo &STI, raw_ostream &O);
40  void printU8ImmOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
41  void printU16ImmOperand(const MCInst *MI, unsigned OpNo,
42  const MCSubtargetInfo &STI, raw_ostream &O);
43  void printU4ImmDecOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
44  void printU8ImmDecOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
45  void printU16ImmDecOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
46  void printU32ImmOperand(const MCInst *MI, unsigned OpNo,
47  const MCSubtargetInfo &STI, raw_ostream &O);
48  void printNamedBit(const MCInst *MI, unsigned OpNo, raw_ostream &O,
49  StringRef BitName);
50  void printOffen(const MCInst *MI, unsigned OpNo, raw_ostream &O);
51  void printIdxen(const MCInst *MI, unsigned OpNo, raw_ostream &O);
52  void printAddr64(const MCInst *MI, unsigned OpNo, raw_ostream &O);
53  void printMBUFOffset(const MCInst *MI, unsigned OpNo, raw_ostream &O);
54  void printOffset(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
55  raw_ostream &O);
56  void printFlatOffset(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
57  raw_ostream &O);
58 
59  void printOffset0(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
60  raw_ostream &O);
61  void printOffset1(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
62  raw_ostream &O);
63  void printSMRDOffset8(const MCInst *MI, unsigned OpNo,
64  const MCSubtargetInfo &STI, raw_ostream &O);
65  void printSMEMOffset(const MCInst *MI, unsigned OpNo,
66  const MCSubtargetInfo &STI, raw_ostream &O);
67  void printSMRDLiteralOffset(const MCInst *MI, unsigned OpNo,
68  const MCSubtargetInfo &STI, raw_ostream &O);
69  void printGDS(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
70  raw_ostream &O);
71  void printCPol(const MCInst *MI, unsigned OpNo,
72  const MCSubtargetInfo &STI, raw_ostream &O);
73  void printSWZ(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
74  raw_ostream &O);
75  void printTFE(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
76  raw_ostream &O);
77  void printDMask(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
78  raw_ostream &O);
79  void printDim(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
80  raw_ostream &O);
81  void printUNorm(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
82  raw_ostream &O);
83  void printDA(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
84  raw_ostream &O);
85  void printR128A16(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
86  raw_ostream &O);
87  void printGFX10A16(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
88  raw_ostream &O);
89  void printLWE(const MCInst *MI, unsigned OpNo,
90  const MCSubtargetInfo &STI, raw_ostream &O);
91  void printD16(const MCInst *MI, unsigned OpNo,
92  const MCSubtargetInfo &STI, raw_ostream &O);
93  void printExpCompr(const MCInst *MI, unsigned OpNo,
94  const MCSubtargetInfo &STI, raw_ostream &O);
95  void printExpVM(const MCInst *MI, unsigned OpNo,
96  const MCSubtargetInfo &STI, raw_ostream &O);
97  void printFORMAT(const MCInst *MI, unsigned OpNo,
98  const MCSubtargetInfo &STI, raw_ostream &O);
99  void printSymbolicFormat(const MCInst *MI,
100  const MCSubtargetInfo &STI, raw_ostream &O);
101 
102  void printRegOperand(unsigned RegNo, raw_ostream &O);
103  void printVOPDst(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
104  raw_ostream &O);
105  void printVINTRPDst(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
106  raw_ostream &O);
107  void printImmediateInt16(uint32_t Imm, const MCSubtargetInfo &STI,
108  raw_ostream &O);
109  void printImmediate16(uint32_t Imm, const MCSubtargetInfo &STI,
110  raw_ostream &O);
111  void printImmediateV216(uint32_t Imm, const MCSubtargetInfo &STI,
112  raw_ostream &O);
113  void printImmediate32(uint32_t Imm, const MCSubtargetInfo &STI,
114  raw_ostream &O);
115  void printImmediate64(uint64_t Imm, const MCSubtargetInfo &STI,
116  raw_ostream &O);
117  void printOperand(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
118  raw_ostream &O);
119  void printOperand(const MCInst *MI, uint64_t /*Address*/, unsigned OpNum,
120  const MCSubtargetInfo &STI, raw_ostream &O) {
121  printOperand(MI, OpNum, STI, O);
122  }
123  void printOperandAndFPInputMods(const MCInst *MI, unsigned OpNo,
124  const MCSubtargetInfo &STI, raw_ostream &O);
125  void printOperandAndIntInputMods(const MCInst *MI, unsigned OpNo,
126  const MCSubtargetInfo &STI, raw_ostream &O);
127  void printDPP8(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
128  raw_ostream &O);
129  void printDPPCtrl(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
130  raw_ostream &O);
131  void printRowMask(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
132  raw_ostream &O);
133  void printBankMask(const MCInst *MI, unsigned OpNo,
134  const MCSubtargetInfo &STI, raw_ostream &O);
135  void printBoundCtrl(const MCInst *MI, unsigned OpNo,
136  const MCSubtargetInfo &STI, raw_ostream &O);
137  void printFI(const MCInst *MI, unsigned OpNo,
138  const MCSubtargetInfo &STI, raw_ostream &O);
139  void printSDWASel(const MCInst *MI, unsigned OpNo, raw_ostream &O);
140  void printSDWADstSel(const MCInst *MI, unsigned OpNo,
141  const MCSubtargetInfo &STI, raw_ostream &O);
142  void printSDWASrc0Sel(const MCInst *MI, unsigned OpNo,
143  const MCSubtargetInfo &STI, raw_ostream &O);
144  void printSDWASrc1Sel(const MCInst *MI, unsigned OpNo,
145  const MCSubtargetInfo &STI, raw_ostream &O);
146  void printSDWADstUnused(const MCInst *MI, unsigned OpNo,
147  const MCSubtargetInfo &STI, raw_ostream &O);
148  void printPackedModifier(const MCInst *MI, StringRef Name, unsigned Mod,
149  raw_ostream &O);
150  void printOpSel(const MCInst *MI, unsigned OpNo,
151  const MCSubtargetInfo &STI, raw_ostream &O);
152  void printOpSelHi(const MCInst *MI, unsigned OpNo,
153  const MCSubtargetInfo &STI, raw_ostream &O);
154  void printNegLo(const MCInst *MI, unsigned OpNo,
155  const MCSubtargetInfo &STI, raw_ostream &O);
156  void printNegHi(const MCInst *MI, unsigned OpNo,
157  const MCSubtargetInfo &STI, raw_ostream &O);
158  void printInterpSlot(const MCInst *MI, unsigned OpNo,
159  const MCSubtargetInfo &STI, raw_ostream &O);
160  void printInterpAttr(const MCInst *MI, unsigned OpNo,
161  const MCSubtargetInfo &STI, raw_ostream &O);
162  void printInterpAttrChan(const MCInst *MI, unsigned OpNo,
163  const MCSubtargetInfo &STI, raw_ostream &O);
164 
165  void printVGPRIndexMode(const MCInst *MI, unsigned OpNo,
166  const MCSubtargetInfo &STI, raw_ostream &O);
167  void printMemOperand(const MCInst *MI, unsigned OpNo,
168  const MCSubtargetInfo &STI, raw_ostream &O);
169  void printBLGP(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
170  raw_ostream &O);
171  void printCBSZ(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
172  raw_ostream &O);
173  void printABID(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
174  raw_ostream &O);
175  void printDefaultVccOperand(unsigned OpNo, const MCSubtargetInfo &STI,
176  raw_ostream &O);
177 
178  void printExpSrcN(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
179  raw_ostream &O, unsigned N);
180  void printExpSrc0(const MCInst *MI, unsigned OpNo,
181  const MCSubtargetInfo &STI, raw_ostream &O);
182  void printExpSrc1(const MCInst *MI, unsigned OpNo,
183  const MCSubtargetInfo &STI, raw_ostream &O);
184  void printExpSrc2(const MCInst *MI, unsigned OpNo,
185  const MCSubtargetInfo &STI, raw_ostream &O);
186  void printExpSrc3(const MCInst *MI, unsigned OpNo,
187  const MCSubtargetInfo &STI, raw_ostream &O);
188  void printExpTgt(const MCInst *MI, unsigned OpNo,
189  const MCSubtargetInfo &STI, raw_ostream &O);
190 
191 public:
192  static void printIfSet(const MCInst *MI, unsigned OpNo, raw_ostream &O,
193  StringRef Asm, StringRef Default = "");
194  static void printIfSet(const MCInst *MI, unsigned OpNo, raw_ostream &O,
195  char Asm);
196 protected:
197  void printAbs(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
198  raw_ostream &O);
199  void printHigh(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
200  raw_ostream &O);
201  void printClamp(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
202  raw_ostream &O);
203  void printClampSI(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
204  raw_ostream &O);
205  void printOModSI(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
206  raw_ostream &O);
207  void printLiteral(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
208  raw_ostream &O);
209  void printLast(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
210  raw_ostream &O);
211  void printNeg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
212  raw_ostream &O);
213  void printOMOD(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
214  raw_ostream &O);
215  void printRel(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
216  raw_ostream &O);
217  void printUpdateExecMask(const MCInst *MI, unsigned OpNo,
218  const MCSubtargetInfo &STI, raw_ostream &O);
219  void printUpdatePred(const MCInst *MI, unsigned OpNo,
220  const MCSubtargetInfo &STI, raw_ostream &O);
221  void printWrite(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
222  raw_ostream &O);
223  void printBankSwizzle(const MCInst *MI, unsigned OpNo,
224  const MCSubtargetInfo &STI, raw_ostream &O);
225  void printRSel(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
226  raw_ostream &O);
227  void printCT(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
228  raw_ostream &O);
229  void printKCache(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
230  raw_ostream &O);
231  void printSendMsg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
232  raw_ostream &O);
233  void printSwizzle(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
234  raw_ostream &O);
235  void printWaitFlag(const MCInst *MI, unsigned OpNo,
236  const MCSubtargetInfo &STI, raw_ostream &O);
237  void printHwreg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
238  raw_ostream &O);
239  void printEndpgm(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI,
240  raw_ostream &O);
241 };
242 
244 public:
246  const MCRegisterInfo &MRI)
247  : MCInstPrinter(MAI, MII, MRI) {}
248 
249  void printInst(const MCInst *MI, uint64_t Address, StringRef Annot,
250  const MCSubtargetInfo &STI, raw_ostream &O) override;
251  std::pair<const char *, uint64_t> getMnemonic(const MCInst *MI) override;
252  void printInstruction(const MCInst *MI, uint64_t Address, raw_ostream &O);
253  static const char *getRegisterName(unsigned RegNo);
254 
255  void printAbs(const MCInst *MI, unsigned OpNo, raw_ostream &O);
256  void printBankSwizzle(const MCInst *MI, unsigned OpNo, raw_ostream &O);
257  void printClamp(const MCInst *MI, unsigned OpNo, raw_ostream &O);
258  void printCT(const MCInst *MI, unsigned OpNo, raw_ostream &O);
259  void printKCache(const MCInst *MI, unsigned OpNo, raw_ostream &O);
260  void printLast(const MCInst *MI, unsigned OpNo, raw_ostream &O);
261  void printLiteral(const MCInst *MI, unsigned OpNo, raw_ostream &O);
262  void printMemOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
263  void printNeg(const MCInst *MI, unsigned OpNo, raw_ostream &O);
264  void printOMOD(const MCInst *MI, unsigned OpNo, raw_ostream &O);
265  void printOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O);
266  void printRel(const MCInst *MI, unsigned OpNo, raw_ostream &O);
267  void printRSel(const MCInst *MI, unsigned OpNo, raw_ostream &O);
268  void printUpdateExecMask(const MCInst *MI, unsigned OpNo, raw_ostream &O);
269  void printUpdatePred(const MCInst *MI, unsigned OpNo, raw_ostream &O);
270  void printWrite(const MCInst *MI, unsigned OpNo, raw_ostream &O);
271 };
272 
273 } // End namespace llvm
274 
275 #endif
llvm::AMDGPUInstPrinter::printClamp
void printClamp(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::MCInstPrinter::MII
const MCInstrInfo & MII
Definition: MCInstPrinter.h:50
MI
IRTranslator LLVM IR MI
Definition: IRTranslator.cpp:102
llvm
Definition: AllocatorList.h:23
llvm::AMDGPUInstPrinter::printInstruction
void printInstruction(const MCInst *MI, uint64_t Address, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printClamp
void printClamp(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1492
llvm::R600InstPrinter::printBankSwizzle
void printBankSwizzle(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1468
llvm::AMDGPUInstPrinter::printUpdateExecMask
void printUpdateExecMask(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::MCAsmInfo
This class is intended to be used as a base class for asm properties and features specific to the tar...
Definition: MCAsmInfo.h:56
llvm::R600InstPrinter::printCT
void printCT(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1497
llvm::AMDGPUInstPrinter::printWaitFlag
void printWaitFlag(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1389
llvm::AMDGPUInstPrinter::printAbs
void printAbs(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printOMOD
void printOMOD(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1547
llvm::AMDGPUInstPrinter::printOModSI
void printOModSI(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1241
llvm::AMDGPUInstPrinter::printLiteral
void printLiteral(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printNeg
void printNeg(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1542
llvm::MCInst
Instances of this class represent a single low-level machine instruction.
Definition: MCInst.h:184
llvm::AMDGPUInstPrinter::printHigh
void printHigh(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1229
llvm::R600InstPrinter::getRegisterName
static const char * getRegisterName(unsigned RegNo)
llvm::MCInstPrinter::MRI
const MCRegisterInfo & MRI
Definition: MCInstPrinter.h:51
llvm::AMDGPUInstPrinter::printSendMsg
void printSendMsg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1253
llvm::AMDGPUInstPrinter
Definition: AMDGPUInstPrinter.h:19
llvm::AMDGPUInstPrinter::printKCache
void printKCache(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::AMDGPUInstPrinter::printUpdatePred
void printUpdatePred(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::AMDGPUInstPrinter::getMnemonic
std::pair< const char *, uint64_t > getMnemonic(const MCInst *MI) override
Returns a pair containing the mnemonic for MI and the number of bits left for further processing by p...
llvm::AMDGPUInstPrinter::printRegName
void printRegName(raw_ostream &OS, unsigned RegNo) const override
Print the assembler register name.
Definition: AMDGPUInstPrinter.cpp:33
llvm::R600InstPrinter::printKCache
void printKCache(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1512
llvm::AMDGPUInstPrinter::printNeg
void printNeg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printLiteral
void printLiteral(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1529
llvm::R600InstPrinter::printInst
void printInst(const MCInst *MI, uint64_t Address, StringRef Annot, const MCSubtargetInfo &STI, raw_ostream &O) override
Print the specified MCInst to the specified raw_ostream.
Definition: AMDGPUInstPrinter.cpp:1455
llvm::R600InstPrinter::printRel
void printRel(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1605
llvm::raw_ostream
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:50
llvm::R600InstPrinter::printRSel
void printRSel(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1610
llvm::AMDGPUInstPrinter::printClampSI
void printClampSI(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1235
llvm::R600InstPrinter::printUpdatePred
void printUpdatePred(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1645
llvm::AMDGPUInstPrinter::printLast
void printLast(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
MCInstPrinter.h
llvm::R600InstPrinter::printUpdateExecMask
void printUpdateExecMask(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1640
llvm::AMDGPUInstPrinter::printSwizzle
void printSwizzle(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1316
llvm::AMDGPUInstPrinter::printIfSet
static void printIfSet(const MCInst *MI, unsigned OpNo, raw_ostream &O, StringRef Asm, StringRef Default="")
Definition: AMDGPUInstPrinter.cpp:1209
llvm::RISCVFenceField::O
@ O
Definition: RISCVBaseInfo.h:179
llvm::MCInstPrinter
This is an instance of a target assembly language printer that converts an MCInst to valid target ass...
Definition: MCInstPrinter.h:43
llvm::AMDGPUInstPrinter::printEndpgm
void printEndpgm(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1442
llvm::R600InstPrinter::printLast
void printLast(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1524
llvm::AMDGPUInstPrinter::printRel
void printRel(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::AMDGPUInstPrinter::AMDGPUInstPrinter
AMDGPUInstPrinter(const MCAsmInfo &MAI, const MCInstrInfo &MII, const MCRegisterInfo &MRI)
Definition: AMDGPUInstPrinter.h:21
llvm::StringRef
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:58
llvm::AMDGPUInstPrinter::getRegisterName
static const char * getRegisterName(unsigned RegNo)
uint32_t
llvm::MCRegisterInfo
MCRegisterInfo base class - We assume that the target defines a static array of MCRegisterDesc object...
Definition: MCRegisterInfo.h:135
llvm::AMDGPUInstPrinter::printBankSwizzle
void printBankSwizzle(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::MCInstrInfo
Interface to description of machine instruction set.
Definition: MCInstrInfo.h:25
llvm::GraphProgram::Name
Name
Definition: GraphWriter.h:52
llvm::R600InstPrinter::printAbs
void printAbs(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1463
llvm::AMDGPUInstPrinter::printRSel
void printRSel(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::AMDGPUInstPrinter::printHwreg
void printHwreg(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1419
llvm::AMDGPUInstPrinter::printInst
void printInst(const MCInst *MI, uint64_t Address, StringRef Annot, const MCSubtargetInfo &STI, raw_ostream &O) override
Print the specified MCInst to the specified raw_ostream.
Definition: AMDGPUInstPrinter.cpp:49
llvm::R600InstPrinter
Definition: AMDGPUInstPrinter.h:243
llvm::R600InstPrinter::R600InstPrinter
R600InstPrinter(const MCAsmInfo &MAI, const MCInstrInfo &MII, const MCRegisterInfo &MRI)
Definition: AMDGPUInstPrinter.h:245
llvm::R600InstPrinter::printOperand
void printOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1570
llvm::R600InstPrinter::getMnemonic
std::pair< const char *, uint64_t > getMnemonic(const MCInst *MI) override
Returns a pair containing the mnemonic for MI and the number of bits left for further processing by p...
llvm::MCInstPrinter::MAI
const MCAsmInfo & MAI
Definition: MCInstPrinter.h:49
N
#define N
llvm::R600InstPrinter::printWrite
void printWrite(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1650
llvm::AMDGPUInstPrinter::printCT
void printCT(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printMemOperand
void printMemOperand(const MCInst *MI, unsigned OpNo, raw_ostream &O)
Definition: AMDGPUInstPrinter.cpp:1563
llvm::HexStyle::Asm
@ Asm
0ffh
Definition: MCInstPrinter.h:34
llvm::AMDGPUInstPrinter::printOMOD
void printOMOD(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::R600InstPrinter::printInstruction
void printInstruction(const MCInst *MI, uint64_t Address, raw_ostream &O)
llvm::MCSubtargetInfo
Generic base class for all target subtargets.
Definition: MCSubtargetInfo.h:75
llvm::AMDGPUInstPrinter::printWrite
void printWrite(const MCInst *MI, unsigned OpNo, const MCSubtargetInfo &STI, raw_ostream &O)
llvm::AMDGPUInstPrinter::printRegOperand
static void printRegOperand(unsigned RegNo, raw_ostream &O, const MCRegisterInfo &MRI)
Definition: AMDGPUInstPrinter.cpp:341