LLVM 20.0.0git
|
#include "llvm/MC/MCStreamer.h"
Public Member Functions | |
ARMTargetStreamer (MCStreamer &S) | |
~ARMTargetStreamer () override | |
virtual void | emitFnStart () |
virtual void | emitFnEnd () |
virtual void | emitCantUnwind () |
virtual void | emitPersonality (const MCSymbol *Personality) |
virtual void | emitPersonalityIndex (unsigned Index) |
virtual void | emitHandlerData () |
virtual void | emitSetFP (unsigned FpReg, unsigned SpReg, int64_t Offset=0) |
virtual void | emitMovSP (unsigned Reg, int64_t Offset=0) |
virtual void | emitPad (int64_t Offset) |
virtual void | emitRegSave (const SmallVectorImpl< unsigned > &RegList, bool isVector) |
virtual void | emitUnwindRaw (int64_t StackOffset, const SmallVectorImpl< uint8_t > &Opcodes) |
virtual void | switchVendor (StringRef Vendor) |
virtual void | emitAttribute (unsigned Attribute, unsigned Value) |
virtual void | emitTextAttribute (unsigned Attribute, StringRef String) |
virtual void | emitIntTextAttribute (unsigned Attribute, unsigned IntValue, StringRef StringValue="") |
virtual void | emitFPU (ARM::FPUKind FPU) |
virtual void | emitArch (ARM::ArchKind Arch) |
virtual void | emitArchExtension (uint64_t ArchExt) |
virtual void | emitObjectArch (ARM::ArchKind Arch) |
void | emitTargetAttributes (const MCSubtargetInfo &STI) |
Emit the build attributes that only depend on the hardware that we expect. | |
virtual void | finishAttributeSection () |
virtual void | emitInst (uint32_t Inst, char Suffix='\0') |
virtual void | annotateTLSDescriptorSequence (const MCSymbolRefExpr *SRE) |
virtual void | emitThumbSet (MCSymbol *Symbol, const MCExpr *Value) |
void | emitConstantPools () override |
virtual void | emitARMWinCFIAllocStack (unsigned Size, bool Wide) |
virtual void | emitARMWinCFISaveRegMask (unsigned Mask, bool Wide) |
virtual void | emitARMWinCFISaveSP (unsigned Reg) |
virtual void | emitARMWinCFISaveFRegs (unsigned First, unsigned Last) |
virtual void | emitARMWinCFISaveLR (unsigned Offset) |
virtual void | emitARMWinCFIPrologEnd (bool Fragment) |
virtual void | emitARMWinCFINop (bool Wide) |
virtual void | emitARMWinCFIEpilogStart (unsigned Condition) |
virtual void | emitARMWinCFIEpilogEnd () |
virtual void | emitARMWinCFICustom (unsigned Opcode) |
virtual void | reset () |
Reset any state between object emissions, i.e. | |
const MCExpr * | addConstantPoolEntry (const MCExpr *, SMLoc Loc) |
Callback used to implement the ldr= pseudo. | |
void | emitCurrentConstantPool () |
Callback used to implement the .ltorg directive. | |
Public Member Functions inherited from llvm::MCTargetStreamer | |
MCTargetStreamer (MCStreamer &S) | |
virtual | ~MCTargetStreamer () |
MCStreamer & | getStreamer () |
virtual void | emitLabel (MCSymbol *Symbol) |
virtual void | emitAssignment (MCSymbol *Symbol, const MCExpr *Value) |
virtual void | prettyPrintAsm (MCInstPrinter &InstPrinter, uint64_t Address, const MCInst &Inst, const MCSubtargetInfo &STI, raw_ostream &OS) |
virtual void | emitDwarfFileDirective (StringRef Directive) |
virtual void | changeSection (const MCSection *CurSection, MCSection *Section, uint32_t SubSection, raw_ostream &OS) |
Update streamer for a new active section. | |
virtual void | emitValue (const MCExpr *Value) |
virtual void | emitRawBytes (StringRef Data) |
Emit the bytes in Data into the output. | |
virtual void | emitConstantPools () |
virtual void | finish () |
Additional Inherited Members | |
Protected Attributes inherited from llvm::MCTargetStreamer | |
MCStreamer & | Streamer |
Definition at line 136 of file MCStreamer.h.
ARMTargetStreamer::ARMTargetStreamer | ( | MCStreamer & | S | ) |
Definition at line 28 of file ARMTargetStreamer.cpp.
|
overridedefault |
Callback used to implement the ldr= pseudo.
Add a new entry to the constant pool for the current section and return an MCExpr that can be used to refer to the constant pool location.
Definition at line 35 of file ARMTargetStreamer.cpp.
References llvm::MCTargetStreamer::Streamer.
|
virtual |
Definition at line 116 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 111 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 112 of file ARMTargetStreamer.cpp.
Referenced by emitTargetAttributes().
Definition at line 120 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 129 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 128 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 127 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 125 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 126 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
Definition at line 123 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 124 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
Definition at line 121 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 122 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
Definition at line 105 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitEndOfAsmFile(), and emitTargetAttributes().
|
virtual |
Definition at line 91 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMException::endFunction().
|
overridevirtual |
Reimplemented from llvm::MCTargetStreamer.
Definition at line 45 of file ARMTargetStreamer.cpp.
References llvm::MCTargetStreamer::Streamer.
void ARMTargetStreamer::emitCurrentConstantPool | ( | ) |
Callback used to implement the .ltorg directive.
Emit contents of constant pool for the current section.
Definition at line 39 of file ARMTargetStreamer.cpp.
References llvm::MCTargetStreamer::Streamer.
|
virtual |
Definition at line 90 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMException::endFunction().
|
virtual |
Definition at line 89 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMException::beginFunction().
|
virtual |
Definition at line 114 of file ARMTargetStreamer.cpp.
Referenced by emitTargetAttributes().
|
virtual |
Definition at line 94 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMException::endFunction().
Definition at line 52 of file ARMTargetStreamer.cpp.
References llvm::MCStreamer::emitBytes(), llvm::MCContext::getAsmInfo(), llvm::MCStreamer::getContext(), llvm::MCTargetStreamer::getStreamer(), I, II, llvm::MCAsmInfo::isLittleEndian(), llvm_unreachable, and Size.
Referenced by llvm::ARMAsmPrinter::emitInstruction().
|
virtual |
Definition at line 108 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 97 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 113 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 98 of file ARMTargetStreamer.cpp.
Definition at line 92 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMException::endFunction().
|
virtual |
Definition at line 93 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 99 of file ARMTargetStreamer.cpp.
Definition at line 95 of file ARMTargetStreamer.cpp.
void ARMTargetStreamer::emitTargetAttributes | ( | const MCSubtargetInfo & | STI | ) |
Emit the build attributes that only depend on the hardware that we expect.
Definition at line 176 of file ARMTargetStreamer.cpp.
References llvm::ARMBuildAttrs::ABI_HardFP_use, llvm::ARMBuildAttrs::Advanced_SIMD_arch, llvm::ARM::AEK_DSP, llvm::ARM::AEK_FP, llvm::ARM::AEK_HWDIVARM, llvm::ARM::AEK_HWDIVTHUMB, llvm::ARM::AEK_SIMD, llvm::ARMBuildAttrs::AllowBTI, llvm::ARMBuildAttrs::AllowDIVExt, llvm::ARMBuildAttrs::Allowed, llvm::ARMBuildAttrs::AllowHPFP, llvm::ARMBuildAttrs::AllowMP, llvm::ARMBuildAttrs::AllowMVEInteger, llvm::ARMBuildAttrs::AllowMVEIntegerAndFloat, llvm::ARMBuildAttrs::AllowNeonARMv8, llvm::ARMBuildAttrs::AllowNeonARMv8_1a, llvm::ARMBuildAttrs::AllowPAC, llvm::ARMBuildAttrs::AllowThumb32, llvm::ARMBuildAttrs::AllowThumbDerived, llvm::ARMBuildAttrs::AllowTZ, llvm::ARMBuildAttrs::AllowTZVirtualization, llvm::ARMBuildAttrs::AllowVirtualization, llvm::ARMBuildAttrs::ApplicationProfile, llvm::ARMBuildAttrs::ARM_ISA_use, llvm::ARMBuildAttrs::BTI_extension, llvm::ARMBuildAttrs::CPU_arch, llvm::ARMBuildAttrs::CPU_arch_profile, llvm::ARMBuildAttrs::CPU_name, llvm::ARMBuildAttrs::CPU_unaligned_access, llvm::ARMBuildAttrs::DIV_use, llvm::ARMBuildAttrs::DSP_extension, emitArchExtension(), emitAttribute(), emitFPU(), emitTextAttribute(), llvm::StringRef::empty(), llvm::ARMBuildAttrs::FP_HP_extension, getArchForCPU(), llvm::MCSubtargetInfo::getCPU(), llvm::ARMBuildAttrs::HardFPSinglePrecision, llvm::MCSubtargetInfo::hasFeature(), isV8M(), llvm::ARMBuildAttrs::MicroControllerProfile, llvm::ARMBuildAttrs::MPextension_use, llvm::ARMBuildAttrs::MVE_arch, llvm::ARMBuildAttrs::Not_Allowed, llvm::ARMBuildAttrs::PAC_extension, llvm::ARMBuildAttrs::RealTimeProfile, llvm::StringRef::starts_with(), switchVendor(), llvm::ARMBuildAttrs::THUMB_ISA_use, and llvm::ARMBuildAttrs::Virtualization_use.
Definition at line 106 of file ARMTargetStreamer.cpp.
Referenced by emitTargetAttributes().
Definition at line 118 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 101 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 115 of file ARMTargetStreamer.cpp.
Referenced by llvm::ARMAsmPrinter::emitEndOfAsmFile().
|
virtual |
Reset any state between object emissions, i.e.
the equivalent of MCStreamer's reset method.
Definition at line 50 of file ARMTargetStreamer.cpp.
|
virtual |
Definition at line 104 of file ARMTargetStreamer.cpp.
Referenced by emitTargetAttributes().