LLVM  14.0.0git
MipsTargetStreamer.h
Go to the documentation of this file.
1 //===-- MipsTargetStreamer.h - Mips Target Streamer ------------*- 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 #ifndef LLVM_LIB_TARGET_MIPS_MIPSTARGETSTREAMER_H
10 #define LLVM_LIB_TARGET_MIPS_MIPSTARGETSTREAMER_H
11 
14 #include "llvm/ADT/Optional.h"
15 #include "llvm/ADT/STLExtras.h"
16 #include "llvm/MC/MCELFStreamer.h"
17 #include "llvm/MC/MCRegisterInfo.h"
18 #include "llvm/MC/MCStreamer.h"
19 
20 namespace llvm {
21 
22 class formatted_raw_ostream;
23 
25 public:
27 
28  virtual void setPic(bool Value) {}
29 
30  virtual void emitDirectiveSetMicroMips();
31  virtual void emitDirectiveSetNoMicroMips();
32  virtual void setUsesMicroMips();
33  virtual void emitDirectiveSetMips16();
34  virtual void emitDirectiveSetNoMips16();
35 
36  virtual void emitDirectiveSetReorder();
37  virtual void emitDirectiveSetNoReorder();
38  virtual void emitDirectiveSetMacro();
39  virtual void emitDirectiveSetNoMacro();
40  virtual void emitDirectiveSetMsa();
41  virtual void emitDirectiveSetNoMsa();
42  virtual void emitDirectiveSetMt();
43  virtual void emitDirectiveSetNoMt();
44  virtual void emitDirectiveSetCRC();
45  virtual void emitDirectiveSetNoCRC();
46  virtual void emitDirectiveSetVirt();
47  virtual void emitDirectiveSetNoVirt();
48  virtual void emitDirectiveSetGINV();
49  virtual void emitDirectiveSetNoGINV();
50  virtual void emitDirectiveSetAt();
51  virtual void emitDirectiveSetAtWithArg(unsigned RegNo);
52  virtual void emitDirectiveSetNoAt();
53  virtual void emitDirectiveEnd(StringRef Name);
54 
55  virtual void emitDirectiveEnt(const MCSymbol &Symbol);
56  virtual void emitDirectiveAbiCalls();
57  virtual void emitDirectiveNaN2008();
58  virtual void emitDirectiveNaNLegacy();
59  virtual void emitDirectiveOptionPic0();
60  virtual void emitDirectiveOptionPic2();
61  virtual void emitDirectiveInsn();
62  virtual void emitFrame(unsigned StackReg, unsigned StackSize,
63  unsigned ReturnReg);
64  virtual void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff);
65  virtual void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff);
66 
67  virtual void emitDirectiveSetArch(StringRef Arch);
68  virtual void emitDirectiveSetMips0();
69  virtual void emitDirectiveSetMips1();
70  virtual void emitDirectiveSetMips2();
71  virtual void emitDirectiveSetMips3();
72  virtual void emitDirectiveSetMips4();
73  virtual void emitDirectiveSetMips5();
74  virtual void emitDirectiveSetMips32();
75  virtual void emitDirectiveSetMips32R2();
76  virtual void emitDirectiveSetMips32R3();
77  virtual void emitDirectiveSetMips32R5();
78  virtual void emitDirectiveSetMips32R6();
79  virtual void emitDirectiveSetMips64();
80  virtual void emitDirectiveSetMips64R2();
81  virtual void emitDirectiveSetMips64R3();
82  virtual void emitDirectiveSetMips64R5();
83  virtual void emitDirectiveSetMips64R6();
84  virtual void emitDirectiveSetDsp();
85  virtual void emitDirectiveSetDspr2();
86  virtual void emitDirectiveSetNoDsp();
87  virtual void emitDirectiveSetMips3D();
88  virtual void emitDirectiveSetNoMips3D();
89  virtual void emitDirectiveSetPop();
90  virtual void emitDirectiveSetPush();
91  virtual void emitDirectiveSetSoftFloat();
92  virtual void emitDirectiveSetHardFloat();
93 
94  // PIC support
95  virtual void emitDirectiveCpAdd(unsigned RegNo);
96  virtual void emitDirectiveCpLoad(unsigned RegNo);
97  virtual void emitDirectiveCpLocal(unsigned RegNo);
98  virtual bool emitDirectiveCpRestore(int Offset,
99  function_ref<unsigned()> GetATReg,
100  SMLoc IDLoc, const MCSubtargetInfo *STI);
101  virtual void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset,
102  const MCSymbol &Sym, bool IsReg);
103  virtual void emitDirectiveCpreturn(unsigned SaveLocation,
104  bool SaveLocationIsRegister);
105 
106  // FP abiflags directives
107  virtual void emitDirectiveModuleFP();
108  virtual void emitDirectiveModuleOddSPReg();
109  virtual void emitDirectiveModuleSoftFloat();
110  virtual void emitDirectiveModuleHardFloat();
111  virtual void emitDirectiveModuleMT();
113  virtual void emitDirectiveSetOddSPReg();
114  virtual void emitDirectiveSetNoOddSPReg();
115  virtual void emitDirectiveModuleCRC();
116  virtual void emitDirectiveModuleNoCRC();
117  virtual void emitDirectiveModuleVirt();
118  virtual void emitDirectiveModuleNoVirt();
119  virtual void emitDirectiveModuleGINV();
120  virtual void emitDirectiveModuleNoGINV();
121 
122  void emitR(unsigned Opcode, unsigned Reg0, SMLoc IDLoc,
123  const MCSubtargetInfo *STI);
124  void emitII(unsigned Opcode, int16_t Imm1, int16_t Imm2, SMLoc IDLoc,
125  const MCSubtargetInfo *STI);
126  void emitRX(unsigned Opcode, unsigned Reg0, MCOperand Op1, SMLoc IDLoc,
127  const MCSubtargetInfo *STI);
128  void emitRI(unsigned Opcode, unsigned Reg0, int32_t Imm, SMLoc IDLoc,
129  const MCSubtargetInfo *STI);
130  void emitRR(unsigned Opcode, unsigned Reg0, unsigned Reg1, SMLoc IDLoc,
131  const MCSubtargetInfo *STI);
132  void emitRRX(unsigned Opcode, unsigned Reg0, unsigned Reg1, MCOperand Op2,
133  SMLoc IDLoc, const MCSubtargetInfo *STI);
134  void emitRRR(unsigned Opcode, unsigned Reg0, unsigned Reg1, unsigned Reg2,
135  SMLoc IDLoc, const MCSubtargetInfo *STI);
136  void emitRRRX(unsigned Opcode, unsigned Reg0, unsigned Reg1, unsigned Reg2,
137  MCOperand Op3, SMLoc IDLoc, const MCSubtargetInfo *STI);
138  void emitRRI(unsigned Opcode, unsigned Reg0, unsigned Reg1, int16_t Imm,
139  SMLoc IDLoc, const MCSubtargetInfo *STI);
140  void emitRRIII(unsigned Opcode, unsigned Reg0, unsigned Reg1, int16_t Imm0,
141  int16_t Imm1, int16_t Imm2, SMLoc IDLoc,
142  const MCSubtargetInfo *STI);
143  void emitAddu(unsigned DstReg, unsigned SrcReg, unsigned TrgReg, bool Is64Bit,
144  const MCSubtargetInfo *STI);
145  void emitDSLL(unsigned DstReg, unsigned SrcReg, int16_t ShiftAmount,
146  SMLoc IDLoc, const MCSubtargetInfo *STI);
147  void emitEmptyDelaySlot(bool hasShortDelaySlot, SMLoc IDLoc,
148  const MCSubtargetInfo *STI);
149  void emitNop(SMLoc IDLoc, const MCSubtargetInfo *STI);
150 
151  /// Emit a store instruction with an offset. If the offset is out of range
152  /// then it will be synthesized using the assembler temporary.
153  ///
154  /// GetATReg() is a callback that can be used to obtain the current assembler
155  /// temporary and is only called when the assembler temporary is required. It
156  /// must handle the case where no assembler temporary is available (typically
157  /// by reporting an error).
158  void emitStoreWithImmOffset(unsigned Opcode, unsigned SrcReg,
159  unsigned BaseReg, int64_t Offset,
160  function_ref<unsigned()> GetATReg, SMLoc IDLoc,
161  const MCSubtargetInfo *STI);
162  void emitLoadWithImmOffset(unsigned Opcode, unsigned DstReg, unsigned BaseReg,
163  int64_t Offset, unsigned TmpReg, SMLoc IDLoc,
164  const MCSubtargetInfo *STI);
165  void emitGPRestore(int Offset, SMLoc IDLoc, const MCSubtargetInfo *STI);
166 
167  void forbidModuleDirective() { ModuleDirectiveAllowed = false; }
168  void reallowModuleDirective() { ModuleDirectiveAllowed = true; }
169  bool isModuleDirectiveAllowed() { return ModuleDirectiveAllowed; }
170 
171  // This method enables template classes to set internal abi flags
172  // structure values.
173  template <class PredicateLibrary>
174  void updateABIInfo(const PredicateLibrary &P) {
175  ABI = P.getABI();
177  }
178 
180  const MipsABIInfo &getABI() const {
181  assert(ABI.hasValue() && "ABI hasn't been set!");
182  return *ABI;
183  }
184 
185 protected:
188 
190  unsigned GPRBitMask;
192 
194  unsigned FPRBitMask;
196 
199  unsigned FrameReg;
200  unsigned GPReg;
201  unsigned ReturnReg;
202 
203 private:
204  bool ModuleDirectiveAllowed;
205 };
206 
207 // This part is for ascii assembly output
210 
211 public:
213  void emitDirectiveSetMicroMips() override;
214  void emitDirectiveSetNoMicroMips() override;
215  void emitDirectiveSetMips16() override;
216  void emitDirectiveSetNoMips16() override;
217 
218  void emitDirectiveSetReorder() override;
219  void emitDirectiveSetNoReorder() override;
220  void emitDirectiveSetMacro() override;
221  void emitDirectiveSetNoMacro() override;
222  void emitDirectiveSetMsa() override;
223  void emitDirectiveSetNoMsa() override;
224  void emitDirectiveSetMt() override;
225  void emitDirectiveSetNoMt() override;
226  void emitDirectiveSetCRC() override;
227  void emitDirectiveSetNoCRC() override;
228  void emitDirectiveSetVirt() override;
229  void emitDirectiveSetNoVirt() override;
230  void emitDirectiveSetGINV() override;
231  void emitDirectiveSetNoGINV() override;
232  void emitDirectiveSetAt() override;
233  void emitDirectiveSetAtWithArg(unsigned RegNo) override;
234  void emitDirectiveSetNoAt() override;
235  void emitDirectiveEnd(StringRef Name) override;
236 
237  void emitDirectiveEnt(const MCSymbol &Symbol) override;
238  void emitDirectiveAbiCalls() override;
239  void emitDirectiveNaN2008() override;
240  void emitDirectiveNaNLegacy() override;
241  void emitDirectiveOptionPic0() override;
242  void emitDirectiveOptionPic2() override;
243  void emitDirectiveInsn() override;
244  void emitFrame(unsigned StackReg, unsigned StackSize,
245  unsigned ReturnReg) override;
246  void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override;
247  void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override;
248 
249  void emitDirectiveSetArch(StringRef Arch) override;
250  void emitDirectiveSetMips0() override;
251  void emitDirectiveSetMips1() override;
252  void emitDirectiveSetMips2() override;
253  void emitDirectiveSetMips3() override;
254  void emitDirectiveSetMips4() override;
255  void emitDirectiveSetMips5() override;
256  void emitDirectiveSetMips32() override;
257  void emitDirectiveSetMips32R2() override;
258  void emitDirectiveSetMips32R3() override;
259  void emitDirectiveSetMips32R5() override;
260  void emitDirectiveSetMips32R6() override;
261  void emitDirectiveSetMips64() override;
262  void emitDirectiveSetMips64R2() override;
263  void emitDirectiveSetMips64R3() override;
264  void emitDirectiveSetMips64R5() override;
265  void emitDirectiveSetMips64R6() override;
266  void emitDirectiveSetDsp() override;
267  void emitDirectiveSetDspr2() override;
268  void emitDirectiveSetNoDsp() override;
269  void emitDirectiveSetMips3D() override;
270  void emitDirectiveSetNoMips3D() override;
271  void emitDirectiveSetPop() override;
272  void emitDirectiveSetPush() override;
273  void emitDirectiveSetSoftFloat() override;
274  void emitDirectiveSetHardFloat() override;
275 
276  // PIC support
277  void emitDirectiveCpAdd(unsigned RegNo) override;
278  void emitDirectiveCpLoad(unsigned RegNo) override;
279  void emitDirectiveCpLocal(unsigned RegNo) override;
280 
281  /// Emit a .cprestore directive. If the offset is out of range then it will
282  /// be synthesized using the assembler temporary.
283  ///
284  /// GetATReg() is a callback that can be used to obtain the current assembler
285  /// temporary and is only called when the assembler temporary is required. It
286  /// must handle the case where no assembler temporary is available (typically
287  /// by reporting an error).
288  bool emitDirectiveCpRestore(int Offset, function_ref<unsigned()> GetATReg,
289  SMLoc IDLoc, const MCSubtargetInfo *STI) override;
290  void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset,
291  const MCSymbol &Sym, bool IsReg) override;
292  void emitDirectiveCpreturn(unsigned SaveLocation,
293  bool SaveLocationIsRegister) override;
294 
295  // FP abiflags directives
296  void emitDirectiveModuleFP() override;
297  void emitDirectiveModuleOddSPReg() override;
298  void emitDirectiveModuleSoftFloat() override;
299  void emitDirectiveModuleHardFloat() override;
300  void emitDirectiveModuleMT() override;
301  void emitDirectiveModuleCRC() override;
302  void emitDirectiveModuleNoCRC() override;
303  void emitDirectiveModuleVirt() override;
304  void emitDirectiveModuleNoVirt() override;
305  void emitDirectiveModuleGINV() override;
306  void emitDirectiveModuleNoGINV() override;
308  void emitDirectiveSetOddSPReg() override;
309  void emitDirectiveSetNoOddSPReg() override;
310 };
311 
312 // This part is for ELF object output
314  bool MicroMipsEnabled;
315  const MCSubtargetInfo &STI;
316  bool Pic;
317 
318 public:
319  bool isMicroMipsEnabled() const { return MicroMipsEnabled; }
322 
323  void setPic(bool Value) override { Pic = Value; }
324 
325  void emitLabel(MCSymbol *Symbol) override;
326  void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
327  void finish() override;
328 
329  void emitDirectiveSetMicroMips() override;
330  void emitDirectiveSetNoMicroMips() override;
331  void setUsesMicroMips() override;
332  void emitDirectiveSetMips16() override;
333 
334  void emitDirectiveSetNoReorder() override;
335  void emitDirectiveEnd(StringRef Name) override;
336 
337  void emitDirectiveEnt(const MCSymbol &Symbol) override;
338  void emitDirectiveAbiCalls() override;
339  void emitDirectiveNaN2008() override;
340  void emitDirectiveNaNLegacy() override;
341  void emitDirectiveOptionPic0() override;
342  void emitDirectiveOptionPic2() override;
343  void emitDirectiveInsn() override;
344  void emitFrame(unsigned StackReg, unsigned StackSize,
345  unsigned ReturnReg) override;
346  void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override;
347  void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override;
348 
349  // PIC support
350  void emitDirectiveCpAdd(unsigned RegNo) override;
351  void emitDirectiveCpLoad(unsigned RegNo) override;
352  void emitDirectiveCpLocal(unsigned RegNo) override;
353  bool emitDirectiveCpRestore(int Offset, function_ref<unsigned()> GetATReg,
354  SMLoc IDLoc, const MCSubtargetInfo *STI) override;
355  void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset,
356  const MCSymbol &Sym, bool IsReg) override;
357  void emitDirectiveCpreturn(unsigned SaveLocation,
358  bool SaveLocationIsRegister) override;
359 
360  void emitMipsAbiFlags();
361 };
362 }
363 #endif
llvm::MipsTargetStreamer::emitLoadWithImmOffset
void emitLoadWithImmOffset(unsigned Opcode, unsigned DstReg, unsigned BaseReg, int64_t Offset, unsigned TmpReg, SMLoc IDLoc, const MCSubtargetInfo *STI)
Emit a load instruction with an immediate offset.
Definition: MipsTargetStreamer.cpp:337
llvm::MipsTargetELFStreamer::emitDirectiveCpRestore
bool emitDirectiveCpRestore(int Offset, function_ref< unsigned()> GetATReg, SMLoc IDLoc, const MCSubtargetInfo *STI) override
Definition: MipsTargetStreamer.cpp:1203
llvm::MipsTargetAsmStreamer::emitDirectiveSetReorder
void emitDirectiveSetReorder() override
Definition: MipsTargetStreamer.cpp:393
llvm::MipsTargetStreamer::emitDirectiveSetMips5
virtual void emitDirectiveSetMips5()
Definition: MipsTargetStreamer.cpp:90
llvm::MipsTargetStreamer::emitDirectiveSetVirt
virtual void emitDirectiveSetVirt()
Definition: MipsTargetStreamer.cpp:60
llvm::MipsTargetStreamer::emitDirectiveSetNoVirt
virtual void emitDirectiveSetNoVirt()
Definition: MipsTargetStreamer.cpp:61
llvm::MipsTargetAsmStreamer::emitDirectiveModuleFP
void emitDirectiveModuleFP() override
Definition: MipsTargetStreamer.cpp:717
llvm::MipsTargetStreamer::emitDirectiveSetMips32R3
virtual void emitDirectiveSetMips32R3()
Definition: MipsTargetStreamer.cpp:93
llvm::MipsTargetStreamer::emitII
void emitII(unsigned Opcode, int16_t Imm1, int16_t Imm2, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:198
llvm
---------------------— PointerInfo ------------------------------------—
Definition: AllocatorList.h:23
llvm::MipsTargetStreamer::emitDirectiveOptionPic0
virtual void emitDirectiveOptionPic0()
Definition: MipsTargetStreamer.cpp:74
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R5
void emitDirectiveSetMips64R5() override
Definition: MipsTargetStreamer.cpp:590
llvm::MipsTargetStreamer::emitRR
void emitRR(unsigned Opcode, unsigned Reg0, unsigned Reg1, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:193
llvm::MipsTargetAsmStreamer::emitDirectiveSetFp
void emitDirectiveSetFp(MipsABIFlagsSection::FpABIKind Value) override
Definition: MipsTargetStreamer.cpp:725
llvm::MCSymbol
MCSymbol - Instances of this class represent a symbol name in the MC file, and MCSymbols are created ...
Definition: MCSymbol.h:41
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoReorder
void emitDirectiveSetNoReorder() override
Definition: MipsTargetStreamer.cpp:398
llvm::MipsTargetAsmStreamer::emitDirectiveCpsetup
void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg) override
Definition: MipsTargetStreamer.cpp:692
llvm::MipsTargetStreamer::emitRX
void emitRX(unsigned Opcode, unsigned Reg0, MCOperand Op1, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:178
Optional.h
llvm::MipsTargetStreamer::emitDirectiveModuleMT
virtual void emitDirectiveModuleMT()
Definition: MipsTargetStreamer.cpp:153
llvm::MipsTargetStreamer::emitGPRestore
void emitGPRestore(int Offset, SMLoc IDLoc, const MCSubtargetInfo *STI)
Emit the $gp restore operation for .cprestore.
Definition: MipsTargetStreamer.cpp:294
llvm::MipsTargetStreamer::emitDirectiveSetNoMips3D
virtual void emitDirectiveSetNoMips3D()
Definition: MipsTargetStreamer.cpp:113
llvm::MipsTargetELFStreamer::emitLabel
void emitLabel(MCSymbol *Symbol) override
Definition: MipsTargetStreamer.cpp:865
llvm::MipsTargetStreamer::emitDirectiveSetNoMt
virtual void emitDirectiveSetNoMt()
Definition: MipsTargetStreamer.cpp:57
llvm::MipsABIInfo
Definition: MipsABIInfo.h:22
llvm::MipsTargetAsmStreamer::MipsTargetAsmStreamer
MipsTargetAsmStreamer(MCStreamer &S, formatted_raw_ostream &OS)
Definition: MipsTargetStreamer.cpp:369
llvm::MipsTargetELFStreamer::emitMipsAbiFlags
void emitMipsAbiFlags()
Definition: MipsTargetStreamer.cpp:1307
llvm::MipsTargetStreamer::emitDirectiveEnt
virtual void emitDirectiveEnt(const MCSymbol &Symbol)
Definition: MipsTargetStreamer.cpp:70
llvm::MipsTargetAsmStreamer::emitDirectiveNaNLegacy
void emitDirectiveNaNLegacy() override
Definition: MipsTargetStreamer.cpp:490
P
This currently compiles esp xmm0 movsd esp eax eax esp ret We should use not the dag combiner This is because dagcombine2 needs to be able to see through the X86ISD::Wrapper which DAGCombine can t really do The code for turning x load into a single vector load is target independent and should be moved to the dag combiner The code for turning x load into a vector load can only handle a direct load from a global or a direct load from the stack It should be generalized to handle any load from P
Definition: README-SSE.txt:411
llvm::MipsTargetStreamer::emitDirectiveSetMips16
virtual void emitDirectiveSetMips16()
Definition: MipsTargetStreamer.cpp:48
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoVirt
void emitDirectiveSetNoVirt() override
Definition: MipsTargetStreamer.cpp:448
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips5
void emitDirectiveSetMips5() override
Definition: MipsTargetStreamer.cpp:545
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMicroMips
void emitDirectiveSetNoMicroMips() override
Definition: MipsTargetStreamer.cpp:378
llvm::MipsTargetELFStreamer::emitDirectiveEnt
void emitDirectiveEnt(const MCSymbol &Symbol) override
Definition: MipsTargetStreamer.cpp:1050
llvm::MipsTargetELFStreamer::MipsTargetELFStreamer
MipsTargetELFStreamer(MCStreamer &S, const MCSubtargetInfo &STI)
Definition: MipsTargetStreamer.cpp:786
llvm::MipsTargetStreamer::emitDirectiveSetArch
virtual void emitDirectiveSetArch(StringRef Arch)
Definition: MipsTargetStreamer.cpp:82
llvm::MipsTargetStreamer::emitDirectiveModuleVirt
virtual void emitDirectiveModuleVirt()
Definition: MipsTargetStreamer.cpp:156
llvm::MipsTargetStreamer::emitDirectiveModuleNoCRC
virtual void emitDirectiveModuleNoCRC()
Definition: MipsTargetStreamer.cpp:155
llvm::MipsTargetStreamer::emitRRI
void emitRRI(unsigned Opcode, unsigned Reg0, unsigned Reg1, int16_t Imm, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:239
llvm::MipsTargetAsmStreamer
Definition: MipsTargetStreamer.h:208
llvm::MipsTargetStreamer::setPic
virtual void setPic(bool Value)
Definition: MipsTargetStreamer.h:28
llvm::MipsTargetAsmStreamer::emitDirectiveModuleNoGINV
void emitDirectiveModuleNoGINV() override
Definition: MipsTargetStreamer.cpp:781
llvm::MipsTargetAsmStreamer::emitDirectiveCpRestore
bool emitDirectiveCpRestore(int Offset, function_ref< unsigned()> GetATReg, SMLoc IDLoc, const MCSubtargetInfo *STI) override
Emit a .cprestore directive.
Definition: MipsTargetStreamer.cpp:684
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R3
void emitDirectiveSetMips32R3() override
Definition: MipsTargetStreamer.cpp:560
llvm::MipsTargetStreamer::emitFrame
virtual void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg)
Definition: MipsTargetStreamer.cpp:77
llvm::MipsTargetStreamer::emitDirectiveModuleNoGINV
virtual void emitDirectiveModuleNoGINV()
Definition: MipsTargetStreamer.cpp:159
llvm::MipsTargetStreamer::emitDSLL
void emitDSLL(unsigned DstReg, unsigned SrcReg, int16_t ShiftAmount, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:267
llvm::MipsTargetStreamer::emitDirectiveModuleCRC
virtual void emitDirectiveModuleCRC()
Definition: MipsTargetStreamer.cpp:154
llvm::MipsTargetELFStreamer::emitDirectiveCpLoad
void emitDirectiveCpLoad(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:1141
llvm::MipsTargetStreamer::emitDirectiveModuleFP
virtual void emitDirectiveModuleFP()
Definition: MipsTargetStreamer.cpp:145
llvm::MipsABIFlagsSection::setAllFromPredicates
void setAllFromPredicates(const PredicateLibrary &P)
Definition: MipsABIFlagsSection.h:193
llvm::MipsTargetStreamer::emitDirectiveSetMips3D
virtual void emitDirectiveSetMips3D()
Definition: MipsTargetStreamer.cpp:112
llvm::MipsTargetStreamer::emitDirectiveSetMips32R5
virtual void emitDirectiveSetMips32R5()
Definition: MipsTargetStreamer.cpp:94
llvm::MipsTargetAsmStreamer::emitDirectiveOptionPic0
void emitDirectiveOptionPic0() override
Definition: MipsTargetStreamer.cpp:494
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMt
void emitDirectiveSetNoMt() override
Definition: MipsTargetStreamer.cpp:428
llvm::MipsTargetStreamer::emitDirectiveInsn
virtual void emitDirectiveInsn()
Definition: MipsTargetStreamer.cpp:76
llvm::Optional
Definition: APInt.h:33
Offset
uint64_t Offset
Definition: ELFObjHandler.cpp:81
llvm::MipsTargetStreamer::emitDirectiveModuleNoVirt
virtual void emitDirectiveModuleNoVirt()
Definition: MipsTargetStreamer.cpp:157
llvm::MipsTargetStreamer::emitDirectiveSetNoAt
virtual void emitDirectiveSetNoAt()
Definition: MipsTargetStreamer.cpp:68
STLExtras.h
llvm::MipsTargetELFStreamer::emitDirectiveSetMicroMips
void emitDirectiveSetMicroMips() override
Definition: MipsTargetStreamer.cpp:968
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoGINV
void emitDirectiveSetNoGINV() override
Definition: MipsTargetStreamer.cpp:458
llvm::MipsTargetELFStreamer::isMicroMipsEnabled
bool isMicroMipsEnabled() const
Definition: MipsTargetStreamer.h:319
llvm::MipsTargetStreamer::emitDirectiveSetAt
virtual void emitDirectiveSetAt()
Definition: MipsTargetStreamer.cpp:64
llvm::MipsTargetStreamer::emitDirectiveSetNoMacro
virtual void emitDirectiveSetNoMacro()
Definition: MipsTargetStreamer.cpp:53
llvm::MipsTargetStreamer::MipsTargetStreamer
MipsTargetStreamer(MCStreamer &S)
Definition: MipsTargetStreamer.cpp:41
llvm::MipsTargetAsmStreamer::emitDirectiveSetDsp
void emitDirectiveSetDsp() override
Definition: MipsTargetStreamer.cpp:600
llvm::MipsTargetStreamer::emitRRRX
void emitRRRX(unsigned Opcode, unsigned Reg0, unsigned Reg1, unsigned Reg2, MCOperand Op3, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:226
llvm::MipsTargetStreamer::emitDirectiveCpLoad
virtual void emitDirectiveCpLoad(unsigned RegNo)
Definition: MipsTargetStreamer.cpp:115
MCELFStreamer.h
llvm::MipsTargetELFStreamer::finish
void finish() override
Definition: MipsTargetStreamer.cpp:876
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips16
void emitDirectiveSetMips16() override
Definition: MipsTargetStreamer.cpp:383
llvm::MipsTargetAsmStreamer::emitDirectiveSetPop
void emitDirectiveSetPop() override
Definition: MipsTargetStreamer.cpp:625
llvm::MipsTargetStreamer::emitDirectiveSetNoMips16
virtual void emitDirectiveSetNoMips16()
Definition: MipsTargetStreamer.cpp:49
llvm::MipsTargetStreamer::emitDirectiveSetNoOddSPReg
virtual void emitDirectiveSetNoOddSPReg()
Definition: MipsTargetStreamer.cpp:165
llvm::MipsTargetStreamer::FrameReg
unsigned FrameReg
Definition: MipsTargetStreamer.h:199
llvm::MipsTargetStreamer::emitDirectiveSetMacro
virtual void emitDirectiveSetMacro()
Definition: MipsTargetStreamer.cpp:52
llvm::MipsTargetStreamer::FrameInfoSet
bool FrameInfoSet
Definition: MipsTargetStreamer.h:197
llvm::MipsTargetStreamer::getABIFlagsSection
MipsABIFlagsSection & getABIFlagsSection()
Definition: MipsTargetStreamer.h:179
llvm::MCStreamer
Streaming machine code generation interface.
Definition: MCStreamer.h:199
llvm::MipsTargetELFStreamer::emitDirectiveCpAdd
void emitDirectiveCpAdd(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:1130
llvm::MipsTargetELFStreamer::emitDirectiveNaN2008
void emitDirectiveNaN2008() override
Definition: MipsTargetStreamer.cpp:1064
llvm::MipsTargetAsmStreamer::emitDirectiveSetArch
void emitDirectiveSetArch(StringRef Arch) override
Definition: MipsTargetStreamer.cpp:515
llvm::MCELFStreamer
Definition: MCELFStreamer.h:24
llvm::MipsTargetAsmStreamer::emitDirectiveSetAt
void emitDirectiveSetAt() override
Definition: MipsTargetStreamer.cpp:463
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips0
void emitDirectiveSetMips0() override
Definition: MipsTargetStreamer.cpp:520
llvm::SMLoc
Represents a location in source code.
Definition: SMLoc.h:23
llvm::MipsTargetStreamer::emitDirectiveCpsetup
virtual void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg)
Definition: MipsTargetStreamer.cpp:139
llvm::MipsTargetStreamer::emitMask
virtual void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff)
Definition: MipsTargetStreamer.cpp:79
llvm::MipsTargetStreamer::GPRInfoSet
bool GPRInfoSet
Definition: MipsTargetStreamer.h:189
llvm::MipsTargetELFStreamer::emitDirectiveSetMips16
void emitDirectiveSetMips16() override
Definition: MipsTargetStreamer.cpp:985
llvm::MipsTargetStreamer::emitDirectiveSetGINV
virtual void emitDirectiveSetGINV()
Definition: MipsTargetStreamer.cpp:62
llvm::MipsTargetAsmStreamer::emitDirectiveCpLocal
void emitDirectiveCpLocal(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:678
llvm::MipsTargetAsmStreamer::emitDirectiveModuleVirt
void emitDirectiveModuleVirt() override
Definition: MipsTargetStreamer.cpp:769
llvm::MipsTargetAsmStreamer::emitDirectiveModuleHardFloat
void emitDirectiveModuleHardFloat() override
Definition: MipsTargetStreamer.cpp:753
llvm::MipsTargetStreamer::emitDirectiveSetMips64R3
virtual void emitDirectiveSetMips64R3()
Definition: MipsTargetStreamer.cpp:98
llvm::MipsTargetStreamer::emitDirectiveModuleGINV
virtual void emitDirectiveModuleGINV()
Definition: MipsTargetStreamer.cpp:158
llvm::MipsTargetAsmStreamer::emitDirectiveAbiCalls
void emitDirectiveAbiCalls() override
Definition: MipsTargetStreamer.cpp:486
llvm::MipsTargetStreamer::emitDirectiveSetOddSPReg
virtual void emitDirectiveSetOddSPReg()
Definition: MipsTargetStreamer.cpp:164
llvm::MipsTargetStreamer::emitDirectiveSetNoDsp
virtual void emitDirectiveSetNoDsp()
Definition: MipsTargetStreamer.cpp:111
llvm::MipsTargetStreamer::emitDirectiveSetNoReorder
virtual void emitDirectiveSetNoReorder()
Definition: MipsTargetStreamer.cpp:51
llvm::MipsTargetELFStreamer::emitDirectiveEnd
void emitDirectiveEnd(StringRef Name) override
Definition: MipsTargetStreamer.cpp:1001
llvm::MCTargetStreamer
Target specific streamer interface.
Definition: MCStreamer.h:91
llvm::MipsTargetAsmStreamer::emitFMask
void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override
Definition: MipsTargetStreamer.cpp:659
llvm::MipsTargetStreamer::emitDirectiveSetMips3
virtual void emitDirectiveSetMips3()
Definition: MipsTargetStreamer.cpp:88
llvm::MipsTargetAsmStreamer::emitDirectiveSetMsa
void emitDirectiveSetMsa() override
Definition: MipsTargetStreamer.cpp:413
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R5
void emitDirectiveSetMips32R5() override
Definition: MipsTargetStreamer.cpp:565
llvm::MipsTargetStreamer::emitDirectiveModuleSoftFloat
virtual void emitDirectiveModuleSoftFloat()
Definition: MipsTargetStreamer.cpp:151
llvm::MipsTargetStreamer::emitDirectiveSetDspr2
virtual void emitDirectiveSetDspr2()
Definition: MipsTargetStreamer.cpp:110
llvm::MipsTargetStreamer::emitDirectiveOptionPic2
virtual void emitDirectiveOptionPic2()
Definition: MipsTargetStreamer.cpp:75
llvm::MipsTargetELFStreamer
Definition: MipsTargetStreamer.h:313
llvm::MipsTargetStreamer::emitEmptyDelaySlot
void emitEmptyDelaySlot(bool hasShortDelaySlot, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:278
llvm::MipsTargetStreamer::emitDirectiveCpRestore
virtual bool emitDirectiveCpRestore(int Offset, function_ref< unsigned()> GetATReg, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:133
llvm::MipsTargetStreamer::emitDirectiveSetMt
virtual void emitDirectiveSetMt()
Definition: MipsTargetStreamer.cpp:56
llvm::MipsTargetELFStreamer::emitDirectiveSetNoMicroMips
void emitDirectiveSetNoMicroMips() override
Definition: MipsTargetStreamer.cpp:973
llvm::MipsTargetAsmStreamer::emitDirectiveSetMt
void emitDirectiveSetMt() override
Definition: MipsTargetStreamer.cpp:423
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R3
void emitDirectiveSetMips64R3() override
Definition: MipsTargetStreamer.cpp:585
llvm::MipsTargetStreamer::emitDirectiveSetMips64
virtual void emitDirectiveSetMips64()
Definition: MipsTargetStreamer.cpp:96
llvm::function_ref
An efficient, type-erasing, non-owning reference to a callable.
Definition: STLExtras.h:168
llvm::MipsTargetStreamer::emitStoreWithImmOffset
void emitStoreWithImmOffset(unsigned Opcode, unsigned SrcReg, unsigned BaseReg, int64_t Offset, function_ref< unsigned()> GetATReg, SMLoc IDLoc, const MCSubtargetInfo *STI)
Emit a store instruction with an offset.
Definition: MipsTargetStreamer.cpp:300
llvm::MipsTargetStreamer::emitDirectiveSetMips64R6
virtual void emitDirectiveSetMips64R6()
Definition: MipsTargetStreamer.cpp:100
llvm::MipsTargetAsmStreamer::emitDirectiveModuleNoCRC
void emitDirectiveModuleNoCRC() override
Definition: MipsTargetStreamer.cpp:765
llvm::MipsTargetStreamer::emitDirectiveSetNoCRC
virtual void emitDirectiveSetNoCRC()
Definition: MipsTargetStreamer.cpp:59
llvm::MipsTargetStreamer::GPRBitMask
unsigned GPRBitMask
Definition: MipsTargetStreamer.h:190
llvm::MipsTargetELFStreamer::emitMask
void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override
Definition: MipsTargetStreamer.cpp:1116
llvm::MipsTargetStreamer::emitAddu
void emitAddu(unsigned DstReg, unsigned SrcReg, unsigned TrgReg, bool Is64Bit, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:260
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMsa
void emitDirectiveSetNoMsa() override
Definition: MipsTargetStreamer.cpp:418
llvm::MipsTargetAsmStreamer::emitDirectiveSetCRC
void emitDirectiveSetCRC() override
Definition: MipsTargetStreamer.cpp:433
llvm::MipsTargetStreamer::reallowModuleDirective
void reallowModuleDirective()
Definition: MipsTargetStreamer.h:168
llvm::MipsTargetStreamer::FPRBitMask
unsigned FPRBitMask
Definition: MipsTargetStreamer.h:194
llvm::MipsTargetELFStreamer::emitFrame
void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg) override
Definition: MipsTargetStreamer.cpp:1105
llvm::MipsTargetStreamer::FPRInfoSet
bool FPRInfoSet
Definition: MipsTargetStreamer.h:193
llvm::MipsTargetAsmStreamer::emitDirectiveModuleGINV
void emitDirectiveModuleGINV() override
Definition: MipsTargetStreamer.cpp:777
MCRegisterInfo.h
llvm::MipsTargetStreamer::emitDirectiveNaN2008
virtual void emitDirectiveNaN2008()
Definition: MipsTargetStreamer.cpp:72
llvm::MipsTargetELFStreamer::emitDirectiveCpreturn
void emitDirectiveCpreturn(unsigned SaveLocation, bool SaveLocationIsRegister) override
Definition: MipsTargetStreamer.cpp:1283
llvm::MipsTargetAsmStreamer::emitDirectiveSetVirt
void emitDirectiveSetVirt() override
Definition: MipsTargetStreamer.cpp:443
llvm::MipsTargetStreamer::emitDirectiveSetMips64R5
virtual void emitDirectiveSetMips64R5()
Definition: MipsTargetStreamer.cpp:99
llvm::MipsTargetAsmStreamer::emitDirectiveCpAdd
void emitDirectiveCpAdd(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:666
llvm::formatted_raw_ostream
formatted_raw_ostream - A raw_ostream that wraps another one and keeps track of line and column posit...
Definition: FormattedStream.h:30
assert
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
llvm::MipsTargetELFStreamer::emitFMask
void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff) override
Definition: MipsTargetStreamer.cpp:1123
llvm::MipsTargetStreamer::emitRRX
void emitRRX(unsigned Opcode, unsigned Reg0, unsigned Reg1, MCOperand Op2, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:208
llvm::MipsTargetELFStreamer::setPic
void setPic(bool Value) override
Definition: MipsTargetStreamer.h:323
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64
void emitDirectiveSetMips64() override
Definition: MipsTargetStreamer.cpp:575
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoCRC
void emitDirectiveSetNoCRC() override
Definition: MipsTargetStreamer.cpp:438
llvm::MipsTargetAsmStreamer::emitDirectiveModuleSoftFloat
void emitDirectiveModuleSoftFloat() override
Definition: MipsTargetStreamer.cpp:749
llvm::MipsTargetStreamer::emitDirectiveSetFp
virtual void emitDirectiveSetFp(MipsABIFlagsSection::FpABIKind Value)
Definition: MipsTargetStreamer.cpp:160
llvm::MipsTargetStreamer::emitDirectiveSetMips0
virtual void emitDirectiveSetMips0()
Definition: MipsTargetStreamer.cpp:85
llvm::MipsTargetStreamer::emitDirectiveAbiCalls
virtual void emitDirectiveAbiCalls()
Definition: MipsTargetStreamer.cpp:71
llvm::MipsTargetStreamer::emitDirectiveNaNLegacy
virtual void emitDirectiveNaNLegacy()
Definition: MipsTargetStreamer.cpp:73
llvm::MipsTargetStreamer::emitRI
void emitRI(unsigned Opcode, unsigned Reg0, int32_t Imm, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:188
llvm::MipsTargetAsmStreamer::emitDirectiveSetAtWithArg
void emitDirectiveSetAtWithArg(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:468
llvm::MipsTargetAsmStreamer::emitDirectiveModuleNoVirt
void emitDirectiveModuleNoVirt() override
Definition: MipsTargetStreamer.cpp:773
hasShortDelaySlot
static bool hasShortDelaySlot(MCInst &Inst)
Definition: MipsAsmParser.cpp:1758
llvm::MipsTargetStreamer::isModuleDirectiveAllowed
bool isModuleDirectiveAllowed()
Definition: MipsTargetStreamer.h:169
llvm::MipsTargetStreamer::FPROffset
int FPROffset
Definition: MipsTargetStreamer.h:195
llvm::MipsTargetAsmStreamer::emitDirectiveSetGINV
void emitDirectiveSetGINV() override
Definition: MipsTargetStreamer.cpp:453
llvm::MipsTargetELFStreamer::emitDirectiveOptionPic2
void emitDirectiveOptionPic2() override
Definition: MipsTargetStreamer.cpp:1087
llvm::StringRef
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:58
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R6
void emitDirectiveSetMips32R6() override
Definition: MipsTargetStreamer.cpp:570
llvm::MipsTargetStreamer::updateABIInfo
void updateABIInfo(const PredicateLibrary &P)
Definition: MipsTargetStreamer.h:174
llvm::MipsTargetELFStreamer::setUsesMicroMips
void setUsesMicroMips() override
Definition: MipsTargetStreamer.cpp:978
llvm::MipsTargetAsmStreamer::emitDirectiveOptionPic2
void emitDirectiveOptionPic2() override
Definition: MipsTargetStreamer.cpp:498
llvm::MipsTargetAsmStreamer::emitDirectiveModuleOddSPReg
void emitDirectiveModuleOddSPReg() override
Definition: MipsTargetStreamer.cpp:733
llvm::MipsTargetELFStreamer::emitDirectiveAbiCalls
void emitDirectiveAbiCalls() override
Definition: MipsTargetStreamer.cpp:1057
S
add sub stmia L5 ldr r0 bl L_printf $stub Instead of a and a wouldn t it be better to do three moves *Return an aggregate type is even return S
Definition: README.txt:210
llvm::MipsTargetStreamer::GPROffset
int GPROffset
Definition: MipsTargetStreamer.h:191
llvm::MipsTargetStreamer::emitDirectiveSetMips2
virtual void emitDirectiveSetMips2()
Definition: MipsTargetStreamer.cpp:87
llvm::MipsTargetStreamer::emitDirectiveModuleOddSPReg
virtual void emitDirectiveModuleOddSPReg()
Definition: MipsTargetStreamer.cpp:147
llvm::MipsTargetStreamer::emitDirectiveCpAdd
virtual void emitDirectiveCpAdd(unsigned RegNo)
Definition: MipsTargetStreamer.cpp:114
llvm::MipsTargetStreamer::emitDirectiveSetNoMsa
virtual void emitDirectiveSetNoMsa()
Definition: MipsTargetStreamer.cpp:55
llvm::MipsTargetStreamer::emitDirectiveSetNoGINV
virtual void emitDirectiveSetNoGINV()
Definition: MipsTargetStreamer.cpp:63
llvm::MipsTargetAsmStreamer::emitDirectiveSetOddSPReg
void emitDirectiveSetOddSPReg() override
Definition: MipsTargetStreamer.cpp:739
llvm::MipsTargetAsmStreamer::emitDirectiveEnd
void emitDirectiveEnd(StringRef Name) override
Definition: MipsTargetStreamer.cpp:478
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32R2
void emitDirectiveSetMips32R2() override
Definition: MipsTargetStreamer.cpp:555
llvm::MipsTargetStreamer::emitFMask
virtual void emitFMask(unsigned FPUBitmask, int FPUTopSavedRegOff)
Definition: MipsTargetStreamer.cpp:80
llvm::MipsTargetStreamer::emitDirectiveSetCRC
virtual void emitDirectiveSetCRC()
Definition: MipsTargetStreamer.cpp:58
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMips3D
void emitDirectiveSetNoMips3D() override
Definition: MipsTargetStreamer.cpp:620
llvm::MipsTargetAsmStreamer::emitDirectiveSetMacro
void emitDirectiveSetMacro() override
Definition: MipsTargetStreamer.cpp:403
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoAt
void emitDirectiveSetNoAt() override
Definition: MipsTargetStreamer.cpp:473
llvm::MipsABIFlagsSection
Definition: MipsABIFlagsSection.h:21
llvm::MipsTargetELFStreamer::emitDirectiveCpLocal
void emitDirectiveCpLocal(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:1198
llvm::MipsTargetStreamer::emitDirectiveSetMicroMips
virtual void emitDirectiveSetMicroMips()
Definition: MipsTargetStreamer.cpp:45
llvm::GraphProgram::Name
Name
Definition: GraphWriter.h:52
llvm::MipsTargetStreamer::emitRRR
void emitRRR(unsigned Opcode, unsigned Reg0, unsigned Reg1, unsigned Reg2, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:220
llvm::MipsTargetELFStreamer::emitAssignment
void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override
Definition: MipsTargetStreamer.cpp:950
llvm::MipsTargetStreamer::forbidModuleDirective
void forbidModuleDirective()
Definition: MipsTargetStreamer.h:167
llvm::MipsTargetStreamer::emitDirectiveCpLocal
virtual void emitDirectiveCpLocal(unsigned RegNo)
Definition: MipsTargetStreamer.cpp:116
llvm::MipsTargetAsmStreamer::emitDirectiveSetPush
void emitDirectiveSetPush() override
Definition: MipsTargetStreamer.cpp:630
llvm::MipsTargetStreamer::emitDirectiveSetMips1
virtual void emitDirectiveSetMips1()
Definition: MipsTargetStreamer.cpp:86
MipsABIInfo.h
llvm::MipsTargetStreamer::emitRRIII
void emitRRIII(unsigned Opcode, unsigned Reg0, unsigned Reg1, int16_t Imm0, int16_t Imm1, int16_t Imm2, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:245
llvm::MipsTargetStreamer
Definition: MipsTargetStreamer.h:24
llvm::MipsTargetStreamer::emitDirectiveSetHardFloat
virtual void emitDirectiveSetHardFloat()
Definition: MipsTargetStreamer.cpp:106
llvm::TargetStackID::Value
Value
Definition: TargetFrameLowering.h:27
llvm::MipsTargetStreamer::emitDirectiveSetMips32R6
virtual void emitDirectiveSetMips32R6()
Definition: MipsTargetStreamer.cpp:95
llvm::MipsTargetStreamer::emitDirectiveCpreturn
virtual void emitDirectiveCpreturn(unsigned SaveLocation, bool SaveLocationIsRegister)
Definition: MipsTargetStreamer.cpp:142
llvm::MipsTargetStreamer::setUsesMicroMips
virtual void setUsesMicroMips()
Definition: MipsTargetStreamer.cpp:47
llvm::MipsTargetAsmStreamer::emitDirectiveSetSoftFloat
void emitDirectiveSetSoftFloat() override
Definition: MipsTargetStreamer.cpp:635
llvm::MipsABIFlagsSection::FpABIKind
FpABIKind
Definition: MipsABIFlagsSection.h:23
llvm::MipsTargetStreamer::emitDirectiveSetMips4
virtual void emitDirectiveSetMips4()
Definition: MipsTargetStreamer.cpp:89
llvm::MipsTargetAsmStreamer::emitDirectiveEnt
void emitDirectiveEnt(const MCSymbol &Symbol) override
Definition: MipsTargetStreamer.cpp:482
llvm::MipsTargetStreamer::emitNop
void emitNop(SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:286
llvm::MipsTargetAsmStreamer::emitDirectiveCpLoad
void emitDirectiveCpLoad(unsigned RegNo) override
Definition: MipsTargetStreamer.cpp:672
llvm::MipsTargetELFStreamer::emitDirectiveSetNoReorder
void emitDirectiveSetNoReorder() override
Definition: MipsTargetStreamer.cpp:993
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R2
void emitDirectiveSetMips64R2() override
Definition: MipsTargetStreamer.cpp:580
llvm::ARMBuildAttrs::Symbol
@ Symbol
Definition: ARMBuildAttributes.h:79
llvm::MipsTargetAsmStreamer::emitDirectiveCpreturn
void emitDirectiveCpreturn(unsigned SaveLocation, bool SaveLocationIsRegister) override
Definition: MipsTargetStreamer.cpp:711
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips32
void emitDirectiveSetMips32() override
Definition: MipsTargetStreamer.cpp:550
llvm::MipsTargetStreamer::ABI
llvm::Optional< MipsABIInfo > ABI
Definition: MipsTargetStreamer.h:186
llvm::MipsTargetStreamer::emitR
void emitR(unsigned Opcode, unsigned Reg0, SMLoc IDLoc, const MCSubtargetInfo *STI)
Definition: MipsTargetStreamer.cpp:169
llvm::MipsTargetAsmStreamer::emitDirectiveInsn
void emitDirectiveInsn() override
Definition: MipsTargetStreamer.cpp:502
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMips16
void emitDirectiveSetNoMips16() override
Definition: MipsTargetStreamer.cpp:388
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips3D
void emitDirectiveSetMips3D() override
Definition: MipsTargetStreamer.cpp:615
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoMacro
void emitDirectiveSetNoMacro() override
Definition: MipsTargetStreamer.cpp:408
llvm::MipsTargetAsmStreamer::emitDirectiveSetDspr2
void emitDirectiveSetDspr2() override
Definition: MipsTargetStreamer.cpp:605
llvm::MipsTargetELFStreamer::emitDirectiveCpsetup
void emitDirectiveCpsetup(unsigned RegNo, int RegOrOffset, const MCSymbol &Sym, bool IsReg) override
Definition: MipsTargetStreamer.cpp:1224
llvm::MipsTargetAsmStreamer::emitMask
void emitMask(unsigned CPUBitmask, int CPUTopSavedRegOff) override
Definition: MipsTargetStreamer.cpp:652
llvm::MipsTargetStreamer::emitDirectiveSetPop
virtual void emitDirectiveSetPop()
Definition: MipsTargetStreamer.cpp:101
llvm::MipsTargetStreamer::emitDirectiveEnd
virtual void emitDirectiveEnd(StringRef Name)
Definition: MipsTargetStreamer.cpp:69
llvm::MipsTargetAsmStreamer::emitDirectiveSetHardFloat
void emitDirectiveSetHardFloat() override
Definition: MipsTargetStreamer.cpp:640
llvm::MipsTargetStreamer::emitDirectiveModuleHardFloat
virtual void emitDirectiveModuleHardFloat()
Definition: MipsTargetStreamer.cpp:152
MCStreamer.h
llvm::MipsTargetStreamer::ABIFlagsSection
MipsABIFlagsSection ABIFlagsSection
Definition: MipsTargetStreamer.h:187
llvm::MipsTargetELFStreamer::emitDirectiveOptionPic0
void emitDirectiveOptionPic0() override
Definition: MipsTargetStreamer.cpp:1078
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips4
void emitDirectiveSetMips4() override
Definition: MipsTargetStreamer.cpp:540
llvm::MipsTargetStreamer::emitDirectiveSetDsp
virtual void emitDirectiveSetDsp()
Definition: MipsTargetStreamer.cpp:109
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoOddSPReg
void emitDirectiveSetNoOddSPReg() override
Definition: MipsTargetStreamer.cpp:744
llvm::MipsTargetAsmStreamer::emitDirectiveModuleCRC
void emitDirectiveModuleCRC() override
Definition: MipsTargetStreamer.cpp:761
llvm::MipsTargetStreamer::emitDirectiveSetMsa
virtual void emitDirectiveSetMsa()
Definition: MipsTargetStreamer.cpp:54
llvm::MipsTargetStreamer::getABI
const MipsABIInfo & getABI() const
Definition: MipsTargetStreamer.h:180
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips64R6
void emitDirectiveSetMips64R6() override
Definition: MipsTargetStreamer.cpp:595
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips3
void emitDirectiveSetMips3() override
Definition: MipsTargetStreamer.cpp:535
llvm::MipsTargetAsmStreamer::emitDirectiveSetMicroMips
void emitDirectiveSetMicroMips() override
Definition: MipsTargetStreamer.cpp:373
llvm::MCOperand
Instances of this class represent operands of the MCInst class.
Definition: MCInst.h:36
llvm::MipsTargetELFStreamer::emitDirectiveInsn
void emitDirectiveInsn() override
Definition: MipsTargetStreamer.cpp:1099
llvm::MipsTargetStreamer::emitDirectiveSetReorder
virtual void emitDirectiveSetReorder()
Definition: MipsTargetStreamer.cpp:50
llvm::MipsTargetELFStreamer::getStreamer
MCELFStreamer & getStreamer()
Definition: MipsTargetStreamer.cpp:964
MipsABIFlagsSection.h
llvm::MipsTargetStreamer::emitDirectiveSetSoftFloat
virtual void emitDirectiveSetSoftFloat()
Definition: MipsTargetStreamer.cpp:103
llvm::MipsTargetStreamer::emitDirectiveSetMips32R2
virtual void emitDirectiveSetMips32R2()
Definition: MipsTargetStreamer.cpp:92
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips1
void emitDirectiveSetMips1() override
Definition: MipsTargetStreamer.cpp:525
llvm::MipsTargetStreamer::emitDirectiveSetMips32
virtual void emitDirectiveSetMips32()
Definition: MipsTargetStreamer.cpp:91
llvm::MipsTargetAsmStreamer::emitDirectiveModuleMT
void emitDirectiveModuleMT() override
Definition: MipsTargetStreamer.cpp:757
llvm::MipsTargetStreamer::emitDirectiveSetNoMicroMips
virtual void emitDirectiveSetNoMicroMips()
Definition: MipsTargetStreamer.cpp:46
llvm::MCSubtargetInfo
Generic base class for all target subtargets.
Definition: MCSubtargetInfo.h:75
llvm::MipsTargetStreamer::GPReg
unsigned GPReg
Definition: MipsTargetStreamer.h:200
llvm::MipsTargetStreamer::emitDirectiveSetPush
virtual void emitDirectiveSetPush()
Definition: MipsTargetStreamer.cpp:102
llvm::Value
LLVM Value Representation.
Definition: Value.h:75
llvm::MCExpr
Base class for the full range of assembler expressions which are needed for parsing.
Definition: MCExpr.h:35
llvm::MipsTargetAsmStreamer::emitDirectiveSetMips2
void emitDirectiveSetMips2() override
Definition: MipsTargetStreamer.cpp:530
llvm::MipsTargetStreamer::emitDirectiveSetMips64R2
virtual void emitDirectiveSetMips64R2()
Definition: MipsTargetStreamer.cpp:97
llvm::MipsTargetAsmStreamer::emitDirectiveNaN2008
void emitDirectiveNaN2008() override
Definition: MipsTargetStreamer.cpp:488
llvm::MipsTargetStreamer::FrameOffset
int FrameOffset
Definition: MipsTargetStreamer.h:198
llvm::MipsTargetAsmStreamer::emitDirectiveSetNoDsp
void emitDirectiveSetNoDsp() override
Definition: MipsTargetStreamer.cpp:610
llvm::MipsTargetStreamer::ReturnReg
unsigned ReturnReg
Definition: MipsTargetStreamer.h:201
llvm::MipsTargetELFStreamer::emitDirectiveNaNLegacy
void emitDirectiveNaNLegacy() override
Definition: MipsTargetStreamer.cpp:1071
llvm::MipsTargetStreamer::emitDirectiveSetAtWithArg
virtual void emitDirectiveSetAtWithArg(unsigned RegNo)
Definition: MipsTargetStreamer.cpp:65
llvm::MipsTargetAsmStreamer::emitFrame
void emitFrame(unsigned StackReg, unsigned StackSize, unsigned ReturnReg) override
Definition: MipsTargetStreamer.cpp:507