LLVM
8.0.1
|
#include "llvm/MC/MCAssembler.h"
Classes | |
struct | CGProfileEntry |
Public Types | |
using | SectionListType = std::vector< MCSection * > |
using | SymbolDataListType = std::vector< const MCSymbol * > |
using | const_iterator = pointee_iterator< SectionListType::const_iterator > |
using | iterator = pointee_iterator< SectionListType::iterator > |
using | const_symbol_iterator = pointee_iterator< SymbolDataListType::const_iterator > |
using | symbol_iterator = pointee_iterator< SymbolDataListType::iterator > |
using | symbol_range = iterator_range< symbol_iterator > |
using | const_symbol_range = iterator_range< const_symbol_iterator > |
using | const_indirect_symbol_iterator = std::vector< IndirectSymbolData >::const_iterator |
using | indirect_symbol_iterator = std::vector< IndirectSymbolData >::iterator |
using | const_data_region_iterator = std::vector< DataRegionData >::const_iterator |
using | data_region_iterator = std::vector< DataRegionData >::iterator |
using | VersionInfoType = struct { bool EmitBuildVersion |
MachO specific deployment target version info. More... | |
Public Attributes | |
union { | |
MCVersionMinType Type | |
Used when EmitBuildVersion==false. More... | |
MachO::PlatformType Platform | |
Used when EmitBuildVersion==true. More... | |
} | TypeOrPlatform |
unsigned | Major |
unsigned | Minor |
unsigned | Update |
VersionTuple | SDKVersion |
An optional version of the SDK that was used to build the source. More... | |
std::vector< std::pair< StringRef, const MCSymbol * > > | Symvers |
Friends | |
class | MCAsmLayout |
Data Region List Access | |
std::vector< CGProfileEntry > | CGProfile |
std::vector< DataRegionData > & | getDataRegions () |
data_region_iterator | data_region_begin () |
const_data_region_iterator | data_region_begin () const |
data_region_iterator | data_region_end () |
const_data_region_iterator | data_region_end () const |
size_t | data_region_size () const |
MCLOHContainer & | getLOHContainer () |
const MCLOHContainer & | getLOHContainer () const |
Definition at line 61 of file MCAssembler.h.
using llvm::MCAssembler::const_data_region_iterator = std::vector<DataRegionData>::const_iterator |
Definition at line 83 of file MCAssembler.h.
using llvm::MCAssembler::const_indirect_symbol_iterator = std::vector<IndirectSymbolData>::const_iterator |
Definition at line 79 of file MCAssembler.h.
using llvm::MCAssembler::const_iterator = pointee_iterator<SectionListType::const_iterator> |
Definition at line 68 of file MCAssembler.h.
using llvm::MCAssembler::const_symbol_iterator = pointee_iterator<SymbolDataListType::const_iterator> |
Definition at line 72 of file MCAssembler.h.
Definition at line 76 of file MCAssembler.h.
using llvm::MCAssembler::data_region_iterator = std::vector<DataRegionData>::iterator |
Definition at line 84 of file MCAssembler.h.
using llvm::MCAssembler::indirect_symbol_iterator = std::vector<IndirectSymbolData>::iterator |
Definition at line 80 of file MCAssembler.h.
using llvm::MCAssembler::iterator = pointee_iterator<SectionListType::iterator> |
Definition at line 69 of file MCAssembler.h.
using llvm::MCAssembler::SectionListType = std::vector<MCSection *> |
Definition at line 65 of file MCAssembler.h.
using llvm::MCAssembler::symbol_iterator = pointee_iterator<SymbolDataListType::iterator> |
Definition at line 73 of file MCAssembler.h.
Definition at line 75 of file MCAssembler.h.
using llvm::MCAssembler::SymbolDataListType = std::vector<const MCSymbol *> |
Definition at line 66 of file MCAssembler.h.
using llvm::MCAssembler::VersionInfoType = struct { bool EmitBuildVersion |
MachO specific deployment target version info.
Definition at line 90 of file MCAssembler.h.
MCAssembler::MCAssembler | ( | MCContext & | Context, |
std::unique_ptr< MCAsmBackend > | Backend, | ||
std::unique_ptr< MCCodeEmitter > | Emitter, | ||
std::unique_ptr< MCObjectWriter > | Writer | ||
) |
Construct a new assembler instance.
Definition at line 86 of file MCAssembler.cpp.
References ~MCAssembler().
|
delete |
|
default |
Referenced by MCAssembler().
|
inline |
Definition at line 445 of file MCAssembler.h.
References llvm::computeBundlePadding(), llvm::dump(), F(), and llvm::is_contained().
Referenced by llvm::MCObjectStreamer::EmitFileDirective().
|
inline |
Definition at line 337 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::computeSymbolTable(), dump(), Finish(), and isAssociative().
|
inline |
Definition at line 338 of file MCAssembler.h.
uint64_t MCAssembler::computeFragmentSize | ( | const MCAsmLayout & | Layout, |
const MCFragment & | F | ||
) | const |
Compute the effective fragment size assuming it is laid out at the given SectionAddress
and FragmentOffset
.
Definition at line 287 of file MCAssembler.cpp.
References assert(), llvm::MCExpr::evaluateAsValue(), F(), llvm::MCFragment::FT_Align, llvm::MCFragment::FT_CompactEncodedInst, llvm::MCFragment::FT_CVDefRange, llvm::MCFragment::FT_CVInlineLines, llvm::MCFragment::FT_Data, llvm::MCFragment::FT_Dummy, llvm::MCFragment::FT_Dwarf, llvm::MCFragment::FT_DwarfFrame, llvm::MCFragment::FT_Fill, llvm::MCFragment::FT_LEB, llvm::MCFragment::FT_Org, llvm::MCFragment::FT_Padding, llvm::MCFragment::FT_Relaxable, llvm::MCFragment::FT_SymbolId, llvm::MCAlignFragment::getAlignment(), getBackend(), getBackendPtr(), getContext(), llvm::MCAsmLayout::getFragmentOffset(), llvm::MCFragment::getKind(), llvm::MCOrgFragment::getLoc(), llvm::MCAlignFragment::getMaxBytesToEmit(), llvm::MCAsmBackend::getMinimumNopSize(), llvm::MCOrgFragment::getOffset(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MCAlignFragment::hasEmitNops(), llvm_unreachable, llvm::OffsetToAlignment(), llvm::MCContext::reportError(), and Size.
Referenced by Finish(), llvm::MCAsmLayout::getSectionAddressSize(), and writeFragment().
|
inline |
Definition at line 405 of file MCAssembler.h.
|
inline |
Definition at line 406 of file MCAssembler.h.
|
inline |
Definition at line 410 of file MCAssembler.h.
|
inline |
Definition at line 411 of file MCAssembler.h.
|
inline |
Definition at line 415 of file MCAssembler.h.
LLVM_DUMP_METHOD void MCAssembler::dump | ( | ) | const |
Definition at line 1104 of file MCAssembler.cpp.
References begin(), end(), llvm::errs(), symbol_begin(), and symbol_end().
Referenced by layout().
|
inline |
Definition at line 340 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::computeSymbolTable(), dump(), Finish(), and isAssociative().
|
inline |
Definition at line 341 of file MCAssembler.h.
void MCAssembler::Finish | ( | ) |
Finish - Do final processing and write the object to the output stream.
Writer
is used for custom object writer (as the MCJIT does), if not specified it is automatically created from backend.
Definition at line 844 of file MCAssembler.cpp.
References assert(), llvm::MCSection::begin(), begin(), llvm::SmallVectorImpl< T >::clear(), computeFragmentSize(), llvm::MCFixup::create(), llvm::Data, llvm::MCDwarfLineAddr::Encode(), llvm::MCDwarfFrameEmitter::EncodeAdvanceLoc(), llvm::CodeViewContext::encodeDefRange(), llvm::CodeViewContext::encodeInlineLineTable(), llvm::MCCodeEmitter::encodeInstruction(), llvm::encodeSLEB128(), llvm::encodeULEB128(), llvm::MCSection::end(), end(), llvm::MCExpr::evaluateKnownAbsolute(), llvm::MCAsmBackend::finishLayout(), llvm::MCDwarfLineAddr::FixedEncode(), llvm::MCAsmBackend::fixupNeedsRelaxationAdvanced(), llvm::FK_Data_1, llvm::MCFragment::FT_CVDefRange, llvm::MCFragment::FT_CVInlineLines, llvm::MCFragment::FT_Dwarf, llvm::MCFragment::FT_DwarfFrame, llvm::MCFragment::FT_LEB, llvm::MCFragment::FT_Padding, llvm::MCFragment::FT_Relaxable, llvm::MCDwarfLineAddrFragment::getAddrDelta(), llvm::MCDwarfCallFrameFragment::getAddrDelta(), llvm::MCAsmLayout::getAssembler(), getBackend(), getBackendPtr(), llvm::MCEncodedFragmentWithContents< ContentsSize >::getContents(), llvm::MCLEBFragment::getContents(), llvm::MCDwarfCallFrameFragment::getContents(), llvm::MCCVInlineLineTableFragment::getContents(), getContext(), llvm::MCContext::getCVContext(), getDWARFLinetableParams(), getEmitter(), getEmitterPtr(), llvm::MCEncodedFragmentWithFixups< ContentsSize, FixupsSize >::getFixups(), llvm::MCAsmLayout::getFragmentOffset(), llvm::MCRelaxableFragment::getInst(), llvm::MCFixup::getKind(), llvm::MCSymbolRefExpr::getKind(), llvm::MCFixup::getKindForSize(), llvm::MCBinaryExpr::getLHS(), llvm::MCDwarfLineAddrFragment::getLineDelta(), getRelaxAll(), llvm::MCAsmLayout::getSectionOrder(), llvm::MCPaddingFragment::getSize(), llvm::MCEncodedFragment::getSubtargetInfo(), llvm::MCValue::getSymA(), llvm::MCLEBFragment::getValue(), getWriter(), I, llvm::ARM_PROC::IE, llvm::MCAsmLayout::invalidateFragmentsFrom(), llvm::MCLEBFragment::isSigned(), layout(), llvm::MCSection::rbegin(), llvm::MCAsmBackend::relaxInstruction(), llvm::report_fatal_error(), llvm::ARMBuildAttrs::Section, llvm::MCRelaxableFragment::setInst(), Size, llvm::SmallVectorBase::size(), llvm::MCSymbolRefExpr::VK_X86_ABS8, and llvm::MCObjectWriter::writeObject().
Referenced by llvm::MCObjectStreamer::FinishImpl().
Find the symbol which defines the atom containing the given symbol, or null if there is no such symbol.
Definition at line 180 of file MCAssembler.cpp.
References assert(), B, llvm::MCExpr::evaluateAsRelocatable(), Fixup, llvm::MCFixupKindInfo::FKF_IsAlignedDownTo32Bits, llvm::MCFixupKindInfo::FKF_IsPCRel, llvm::MCContext::getAsmInfo(), llvm::MCFragment::getAtom(), getBackend(), getBackendPtr(), llvm::MCValue::getConstant(), getContext(), llvm::MCAsmBackend::getFixupKindInfo(), llvm::MCSymbol::getFragment(), llvm::MCAsmLayout::getFragmentOffset(), llvm::MCFixup::getKind(), llvm::MCSymbolRefExpr::getKind(), llvm::MCFixup::getLoc(), llvm::MCFixup::getOffset(), llvm::MCFragment::getParent(), llvm::MCValue::getSymA(), llvm::MCValue::getSymB(), llvm::MCSymbolRefExpr::getSymbol(), llvm::MCAsmLayout::getSymbolOffset(), llvm::MCFixup::getValue(), getWriterPtr(), llvm::MCValue::isAbsolute(), llvm::MCSymbol::isDefined(), llvm::MCSymbol::isInSection(), llvm::MCAsmInfo::isSectionAtomizableBySymbols(), isSymbolLinkerVisible(), llvm::MCSymbol::isUndefined(), llvm::MCContext::reportError(), and llvm::MCSymbolRefExpr::VK_None.
Referenced by canUseLocalRelocation(), and getFixupKindLog2Size().
|
inline |
Definition at line 293 of file MCAssembler.h.
Referenced by computeFragmentSize(), llvm::MCELFStreamer::EmitAssemblerFlag(), llvm::MCWasmStreamer::EmitAssemblerFlag(), llvm::MCObjectStreamer::EmitCodePaddingBasicBlockEnd(), llvm::MCObjectStreamer::EmitCodePaddingBasicBlockStart(), llvm::MCObjectStreamer::EmitInstruction(), encodeBase64StringEntry(), Finish(), getAtom(), llvm::MachObjectWriter::isFixupKindPCRel(), isWeak(), layout(), writeFragment(), and writeFragmentPadding().
|
inline |
Definition at line 287 of file MCAssembler.h.
Referenced by absoluteSymbolDiff(), computeFragmentSize(), Finish(), getAtom(), layout(), reset(), writeFragmentPadding(), and writeSectionData().
|
inline |
Definition at line 326 of file MCAssembler.h.
Referenced by llvm::computeBundlePadding(), llvm::MCELFStreamer::EmitBundleAlignMode(), llvm::MCELFStreamer::MCELFStreamer(), setSectionAlignmentForBundling(), and writeFragmentPadding().
|
inline |
Definition at line 285 of file MCAssembler.h.
References Context.
Referenced by adjustFixupValue(), llvm::AVRAsmBackend::applyFixup(), llvm::MipsAsmBackend::applyFixup(), llvm::RISCVAsmBackend::applyFixup(), llvm::ARMAsmBackend::applyFixup(), canUseLocalRelocation(), computeFragmentSize(), llvm::MCELFStreamer::EmitCommonSymbol(), llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitFrame(), llvm::MCELFStreamer::EmitIdent(), llvm::MipsTargetELFStreamer::emitMipsAbiFlags(), encodeBase64StringEntry(), llvm::CodeViewContext::encodeDefRange(), llvm::AVRMCExpr::evaluateAsRelocatableImpl(), llvm::PPCMCExpr::evaluateAsRelocatableImpl(), Finish(), llvm::MipsTargetELFStreamer::finish(), llvm::SparcMCExpr::fixELFSymbolsInTLSFixups(), getARMFixupKindMachOInfo(), getAtom(), llvm::MCAsmLayout::getBaseSymbol(), getFixupKindLog2Size(), getFixupOffset(), llvm::HexagonMCELFStreamer::HexagonMCEmitCommonSymbol(), isAssociative(), isInSymtab(), isWeak(), layout(), llvm::MipsTargetELFStreamer::MipsTargetELFStreamer(), and llvm::RISCVAsmBackend::shouldForceRelocation().
|
inline |
Definition at line 403 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::writeObject().
|
inline |
Definition at line 299 of file MCAssembler.h.
Referenced by Finish().
|
inline |
ELF e_header flags.
Definition at line 255 of file MCAssembler.h.
Referenced by llvm::AMDGPUTargetELFStreamer::AMDGPUTargetELFStreamer(), llvm::AVRELFStreamer::AVRELFStreamer(), createPPCMCAsmInfo(), llvm::MipsTargetELFStreamer::emitDirectiveAbiCalls(), llvm::MipsTargetELFStreamer::emitDirectiveNaN2008(), llvm::MipsTargetELFStreamer::emitDirectiveNaNLegacy(), llvm::MipsTargetELFStreamer::emitDirectiveOptionPic0(), llvm::MipsTargetELFStreamer::emitDirectiveOptionPic2(), llvm::MipsTargetELFStreamer::emitDirectiveSetMips16(), llvm::MipsTargetELFStreamer::emitDirectiveSetNoReorder(), llvm::MipsTargetELFStreamer::finish(), llvm::MipsTargetELFStreamer::MipsTargetELFStreamer(), llvm::MSP430TargetELFStreamer::MSP430TargetELFStreamer(), llvm::RISCVTargetELFStreamer::RISCVTargetELFStreamer(), and llvm::MipsTargetELFStreamer::setUsesMicroMips().
|
inline |
Definition at line 295 of file MCAssembler.h.
Referenced by CheckBundleSubtargets(), llvm::MCWasmStreamer::EmitIdent(), llvm::MCWinCOFFStreamer::EmitInstToData(), llvm::MCObjectStreamer::EmitInstToFragment(), and Finish().
|
inline |
Definition at line 289 of file MCAssembler.h.
|
inline |
Definition at line 443 of file MCAssembler.h.
|
inline |
Definition at line 368 of file MCAssembler.h.
|
inline |
Definition at line 392 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::writeObject().
|
inline |
Definition at line 424 of file MCAssembler.h.
Referenced by reset(), and llvm::MachObjectWriter::writeObject().
|
inline |
Definition at line 425 of file MCAssembler.h.
|
inline |
Definition at line 321 of file MCAssembler.h.
Referenced by CanReuseDataFragment(), CheckBundleSubtargets(), llvm::MCELFStreamer::EmitBundleUnlock(), llvm::MCObjectStreamer::EmitInstruction(), Finish(), and llvm::MCELFStreamer::MCELFStreamer().
|
inline |
Definition at line 311 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::isSymbolRefDifferenceFullyResolvedImpl().
|
inline |
MachO deployment target version information.
Definition at line 259 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::writeObject().
|
inline |
Definition at line 297 of file MCAssembler.h.
Referenced by llvm::MCObjectStreamer::EmitAddrsig(), llvm::MCObjectStreamer::EmitAddrsigSym(), Finish(), and layout().
|
inline |
Definition at line 291 of file MCAssembler.h.
|
inline |
Definition at line 372 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::bindIndirectSymbols().
|
inline |
Definition at line 375 of file MCAssembler.h.
|
inline |
Definition at line 379 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::bindIndirectSymbols().
|
inline |
Definition at line 382 of file MCAssembler.h.
|
inline |
Definition at line 386 of file MCAssembler.h.
|
inline |
Definition at line 324 of file MCAssembler.h.
Referenced by CanReuseDataFragment(), CheckBundleSubtargets(), llvm::MCObjectStreamer::EmitInstruction(), llvm::MCELFStreamer::MCELFStreamer(), setSectionAlignmentForBundling(), and writeFragmentPadding().
|
inline |
Definition at line 314 of file MCAssembler.h.
Referenced by isAssociative().
Check whether a particular symbol is visible to the linker and is required in the symbol table, or whether it can be discarded by the assembler.
This also effects whether the assembler treats the label as potentially defining a separate atom.
Definition at line 165 of file MCAssembler.cpp.
References llvm::MCSymbol::isInSection(), llvm::MCSymbol::isTemporary(), and llvm::MCSymbol::isUsedInReloc().
Referenced by llvm::MachObjectWriter::computeSymbolTable(), and getAtom().
Check whether a given symbol has been flagged with .thumb_func.
Definition at line 134 of file MCAssembler.cpp.
References llvm::MCExpr::evaluateAsRelocatable(), llvm::MCSymbolRefExpr::getKind(), llvm::MCValue::getRefKind(), llvm::MCValue::getSymA(), llvm::MCValue::getSymB(), llvm::MCSymbolRefExpr::getSymbol(), llvm::MCSymbol::getVariableValue(), llvm::MCSymbol::isVariable(), llvm::Ref, and llvm::MCSymbolRefExpr::VK_None.
Referenced by llvm::ARMAsmBackend::adjustFixupValue(), getARMFixupKindMachOInfo(), isWeak(), and llvm::ARMAsmBackend::shouldForceRelocation().
void MCAssembler::layout | ( | MCAsmLayout & | Layout | ) |
Definition at line 751 of file MCAssembler.cpp.
References llvm::MCAsmBackend::applyFixup(), assert(), DEBUG_WITH_TYPE, dump(), llvm::errs(), llvm::MCObjectWriter::executePostLayoutBinding(), getBackend(), getBackendPtr(), getContext(), llvm::MCSection::getFragmentList(), llvm::MCAsmLayout::getSectionOrder(), getWriter(), llvm_unreachable, llvm::MCSection::setLayoutOrder(), and llvm::MCSection::setOrdinal().
Referenced by Finish().
|
delete |
Definition at line 126 of file MCAssembler.cpp.
References llvm::MCSection::isRegistered(), and llvm::MCSection::setIsRegistered().
Referenced by llvm::MCObjectStreamer::changeSectionImpl(), llvm::MCWinCOFFStreamer::EmitCOFFSafeSEH(), llvm::MCWinCOFFStreamer::EmitCOFFSymbolIndex(), llvm::MipsTargetELFStreamer::emitDirectiveEnd(), llvm::MipsTargetELFStreamer::emitMipsAbiFlags(), llvm::MipsRegInfoRecord::EmitMipsOptionRecord(), encodeBase64StringEntry(), and llvm::MipsTargetELFStreamer::finish().
Definition at line 445 of file MCAssembler.cpp.
References llvm::MCSymbol::isRegistered(), and llvm::MCSymbol::setIsRegistered().
Referenced by llvm::MachObjectWriter::bindIndirectSymbols(), llvm::MCELFStreamer::ChangeSection(), llvm::MCWasmStreamer::ChangeSection(), llvm::MipsELFStreamer::createPendingLabelRelocs(), llvm::MCObjectStreamer::EmitAddrsigSym(), llvm::MCObjectStreamer::EmitAssignment(), llvm::MCWinCOFFStreamer::EmitCOFFSafeSEH(), llvm::MCWinCOFFStreamer::EmitCOFFSymbolIndex(), llvm::MCWinCOFFStreamer::EmitCOFFSymbolStorageClass(), llvm::MCWinCOFFStreamer::EmitCOFFSymbolType(), llvm::MCELFStreamer::EmitCommonSymbol(), llvm::MCWinCOFFStreamer::EmitCommonSymbol(), llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), llvm::MCELFStreamer::EmitIdent(), llvm::MCObjectStreamer::EmitLabel(), llvm::MipsTargetELFStreamer::emitLabel(), llvm::MCELFStreamer::EmitLocalCommonSymbol(), llvm::MCWinCOFFStreamer::EmitSymbolAttribute(), llvm::MCELFStreamer::EmitSymbolAttribute(), llvm::MCWasmStreamer::EmitSymbolAttribute(), llvm::MCELFStreamer::EmitWeakReference(), llvm::MCWasmStreamer::EmitWeakReference(), llvm::SparcMCExpr::fixELFSymbolsInTLSFixups(), llvm::HexagonMCELFStreamer::HexagonMCEmitCommonSymbol(), llvm::HexagonMCELFStreamer::HexagonMCEmitLocalCommonSymbol(), and isWeak().
void MCAssembler::reset | ( | ) |
Reuse an assembler instance.
Definition at line 99 of file MCAssembler.cpp.
References getBackendPtr(), getEmitterPtr(), getLOHContainer(), getWriterPtr(), llvm::MCCodeEmitter::reset(), llvm::MCObjectWriter::reset(), llvm::MCAsmBackend::reset(), and llvm::MCLOHContainer::reset().
|
inline |
Definition at line 270 of file MCAssembler.h.
|
inline |
Definition at line 328 of file MCAssembler.h.
References assert(), and Size.
Referenced by llvm::MCELFStreamer::EmitBundleAlignMode().
|
inline |
Definition at line 300 of file MCAssembler.h.
References P.
|
inline |
Definition at line 256 of file MCAssembler.h.
Referenced by llvm::AMDGPUTargetELFStreamer::AMDGPUTargetELFStreamer(), llvm::AVRELFStreamer::AVRELFStreamer(), createPPCMCAsmInfo(), llvm::MipsTargetELFStreamer::emitDirectiveAbiCalls(), llvm::MipsTargetELFStreamer::emitDirectiveNaN2008(), llvm::MipsTargetELFStreamer::emitDirectiveNaNLegacy(), llvm::MipsTargetELFStreamer::emitDirectiveOptionPic0(), llvm::MipsTargetELFStreamer::emitDirectiveOptionPic2(), llvm::MipsTargetELFStreamer::emitDirectiveSetMips16(), llvm::MipsTargetELFStreamer::emitDirectiveSetNoReorder(), llvm::MipsTargetELFStreamer::finish(), llvm::HexagonGetLastSlot(), llvm::MipsTargetELFStreamer::MipsTargetELFStreamer(), llvm::MSP430TargetELFStreamer::MSP430TargetELFStreamer(), llvm::RISCVTargetELFStreamer::RISCVTargetELFStreamer(), and llvm::MipsTargetELFStreamer::setUsesMicroMips().
|
inline |
Definition at line 317 of file MCAssembler.h.
Flag a function symbol as the target of a .thumb_func directive.
Definition at line 252 of file MCAssembler.h.
References llvm::SmallPtrSetImpl< PtrType >::insert().
|
inline |
Definition at line 322 of file MCAssembler.h.
Referenced by llvm::createELFStreamer(), and llvm::createWasmStreamer().
|
inline |
Definition at line 312 of file MCAssembler.h.
Referenced by llvm::MCELFStreamer::EmitAssemblerFlag().
|
inline |
Definition at line 260 of file MCAssembler.h.
|
inline |
Definition at line 343 of file MCAssembler.h.
Referenced by llvm::MachObjectWriter::writeObject().
|
inline |
Definition at line 348 of file MCAssembler.h.
Referenced by dump().
|
inline |
Definition at line 349 of file MCAssembler.h.
|
inline |
Definition at line 351 of file MCAssembler.h.
Referenced by dump().
|
inline |
Definition at line 352 of file MCAssembler.h.
|
inline |
Definition at line 359 of file MCAssembler.h.
|
inline |
Definition at line 354 of file MCAssembler.h.
References llvm::make_range().
Referenced by llvm::MachObjectWriter::computeSymbolTable(), isInSymtab(), and isWeak().
|
inline |
Definition at line 355 of file MCAssembler.h.
References llvm::make_range().
void MCAssembler::writeFragmentPadding | ( | raw_ostream & | OS, |
const MCEncodedFragment & | F, | ||
uint64_t | FSize | ||
) | const |
Write the necessary bundle padding to OS
.
Expects a fragment F
containing instructions and its size FSize
.
Definition at line 455 of file MCAssembler.cpp.
References llvm::MCEncodedFragment::alignToBundleEnd(), assert(), getBackend(), getBackendPtr(), getBundleAlignSize(), llvm::MCEncodedFragment::getBundlePadding(), llvm::MCFragment::hasInstructions(), isBundlingEnabled(), and llvm::report_fatal_error().
Referenced by llvm::MCELFStreamer::MCELFStreamer(), and writeFragment().
void MCAssembler::writeSectionData | ( | raw_ostream & | OS, |
const MCSection * | Section, | ||
const MCAsmLayout & | Layout | ||
) | const |
Emit the section contents to OS
.
Definition at line 659 of file MCAssembler.cpp.
References assert(), F(), llvm::MCEncodedFragmentWithFixups< ContentsSize, FixupsSize >::fixup_begin(), llvm::MCEncodedFragmentWithFixups< ContentsSize, FixupsSize >::fixup_end(), llvm::MCFragment::FT_Align, llvm::MCFragment::FT_Data, llvm::MCFragment::FT_Fill, getBackendPtr(), llvm::MCEncodedFragmentWithContents< ContentsSize >::getContents(), llvm::MCAsmLayout::getSectionFileSize(), llvm::MCSection::isVirtualSection(), llvm_unreachable, llvm::report_fatal_error(), and llvm::SmallVectorBase::size().
Referenced by addData(), encodeBase64StringEntry(), and isWeak().
|
friend |
Definition at line 62 of file MCAssembler.h.
std::vector<CGProfileEntry> llvm::MCAssembler::CGProfile |
Definition at line 434 of file MCAssembler.h.
Referenced by llvm::MCELFStreamer::emitCGProfileEntry().
unsigned llvm::MCAssembler::Major |
Definition at line 95 of file MCAssembler.h.
unsigned llvm::MCAssembler::Minor |
Definition at line 96 of file MCAssembler.h.
MachO::PlatformType llvm::MCAssembler::Platform |
Used when EmitBuildVersion==true.
Definition at line 93 of file MCAssembler.h.
VersionTuple llvm::MCAssembler::SDKVersion |
An optional version of the SDK that was used to build the source.
Definition at line 99 of file MCAssembler.h.
Definition at line 214 of file MCAssembler.h.
Referenced by llvm::MCELFStreamer::emitELFSymverDirective(), and isWeak().
MCVersionMinType llvm::MCAssembler::Type |
Used when EmitBuildVersion==false.
Definition at line 92 of file MCAssembler.h.
union { ... } llvm::MCAssembler::TypeOrPlatform |
unsigned llvm::MCAssembler::Update |
Definition at line 97 of file MCAssembler.h.