LLVM 24.0.0git
llvm::MCTargetOptions Class Reference

#include "llvm/MC/MCTargetOptions.h"

Public Types

enum  AsmInstrumentation { AsmInstrumentationNone , AsmInstrumentationAddress }
enum  DwarfDirectory { DisableDwarfDirectory , EnableDwarfDirectory , DefaultDwarfDirectory }

Public Member Functions

LLVM_ABI MCTargetOptions ()
LLVM_ABI StringRef getABIName () const
 getABIName - If this returns a non-empty string this represents the textual name of the ABI that we want the backend to use, e.g.
LLVM_ABI StringRef getAssemblyLanguage () const
 getAssemblyLanguage - If this returns a non-empty string this represents the textual name of the assembly language that we will use for this target, e.g.

Static Public Member Functions

static LLVM_ABI std::pair< int, int > parseBinutilsVersion (StringRef Version)
 Parse a binutils version string ("major[.minor]" or "none") into a (major, minor) pair.

Public Attributes

bool MCRelaxAll: 1
bool MCNoExecStack: 1
bool MCFatalWarnings: 1
bool MCNoWarn: 1
bool MCNoDeprecatedWarn: 1
bool MCNoTypeCheck: 1
bool MCSaveTempLabels: 1
bool MCIncrementalLinkerCompatible: 1
bool FDPIC: 1
bool ShowMCEncoding: 1
bool ShowMCInst: 1
bool AsmVerbose: 1
bool PreserveAsmComments: 1
 Preserve Comments in Assembly.
bool Dwarf64: 1
bool Crel = false
bool ImplicitMapSyms = false
bool X86RelaxRelocations = true
bool X86Sse2Avx = false
bool DisableIntegratedAS = false
RelocSectionSymType RelocSectionSym = RelocSectionSymType::All
std::optional< unsignedOutputAsmVariant
EmitDwarfUnwindType EmitDwarfUnwind
int DwarfVersion = 0
std::pair< int, int > BinutilsVersion = {0, 0}
 If greater than 0, overrides the default MCAsmInfo binutils version.
DwarfDirectory MCUseDwarfDirectory
DebugCompressionType CompressDebugSections = DebugCompressionType::None
std::string ABIName
std::string AssemblyLanguage
std::string SplitDwarfFile
std::string AsSecureLogFile
std::string Argv0
std::string CommandlineArgs
std::vector< std::string > IASSearchPaths
 Additional paths to search for .include directives when using the integrated assembler.
std::vector< std::string > InstPrinterOptions
bool EmitCompactUnwindNonCanonical: 1
bool EmitSFrameUnwind: 1
bool PPCUseFullRegisterNames: 1
bool LargeEHEncoding = false

Detailed Description

Definition at line 39 of file MCTargetOptions.h.

Member Enumeration Documentation

◆ AsmInstrumentation

Enumerator
AsmInstrumentationNone 
AsmInstrumentationAddress 

Definition at line 41 of file MCTargetOptions.h.

◆ DwarfDirectory

Enumerator
DisableDwarfDirectory 
EnableDwarfDirectory 
DefaultDwarfDirectory 

Definition at line 90 of file MCTargetOptions.h.

Constructor & Destructor Documentation

◆ MCTargetOptions()

Member Function Documentation

◆ getABIName()

StringRef MCTargetOptions::getABIName ( ) const

getABIName - If this returns a non-empty string this represents the textual name of the ABI that we want the backend to use, e.g.

o32, or aapcs-linux.

Definition at line 35 of file MCTargetOptions.cpp.

References ABIName.

◆ getAssemblyLanguage()

StringRef MCTargetOptions::getAssemblyLanguage ( ) const

getAssemblyLanguage - If this returns a non-empty string this represents the textual name of the assembly language that we will use for this target, e.g.

masm.

Definition at line 39 of file MCTargetOptions.cpp.

References AssemblyLanguage.

◆ parseBinutilsVersion()

std::pair< int, int > MCTargetOptions::parseBinutilsVersion ( StringRef Version)
static

Parse a binutils version string ("major[.minor]" or "none") into a (major, minor) pair.

"none" maps to {INT_MAX, INT_MAX}.

Definition at line 26 of file MCTargetOptions.cpp.

References llvm::Version.

Member Data Documentation

◆ ABIName

std::string llvm::MCTargetOptions::ABIName

◆ Argv0

std::string llvm::MCTargetOptions::Argv0

Definition at line 110 of file MCTargetOptions.h.

◆ AsmVerbose

bool llvm::MCTargetOptions::AsmVerbose

Definition at line 57 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ AsSecureLogFile

std::string llvm::MCTargetOptions::AsSecureLogFile

Definition at line 107 of file MCTargetOptions.h.

Referenced by llvm::MCContext::MCContext().

◆ AssemblyLanguage

std::string llvm::MCTargetOptions::AssemblyLanguage

Definition at line 105 of file MCTargetOptions.h.

Referenced by getAssemblyLanguage().

◆ BinutilsVersion

std::pair<int, int> llvm::MCTargetOptions::BinutilsVersion = {0, 0}

If greater than 0, overrides the default MCAsmInfo binutils version.

Definition at line 88 of file MCTargetOptions.h.

◆ CommandlineArgs

std::string llvm::MCTargetOptions::CommandlineArgs

Definition at line 111 of file MCTargetOptions.h.

◆ CompressDebugSections

DebugCompressionType llvm::MCTargetOptions::CompressDebugSections = DebugCompressionType::None

Definition at line 102 of file MCTargetOptions.h.

◆ Crel

bool llvm::MCTargetOptions::Crel = false

Definition at line 65 of file MCTargetOptions.h.

Referenced by llvm::ELFObjectWriter::usesRela().

◆ DisableIntegratedAS

bool llvm::MCTargetOptions::DisableIntegratedAS = false

Definition at line 76 of file MCTargetOptions.h.

◆ Dwarf64

bool llvm::MCTargetOptions::Dwarf64

Definition at line 62 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ DwarfVersion

int llvm::MCTargetOptions::DwarfVersion = 0

Definition at line 85 of file MCTargetOptions.h.

◆ EmitCompactUnwindNonCanonical

bool llvm::MCTargetOptions::EmitCompactUnwindNonCanonical

◆ EmitDwarfUnwind

EmitDwarfUnwindType llvm::MCTargetOptions::EmitDwarfUnwind

Definition at line 83 of file MCTargetOptions.h.

Referenced by llvm::MCContext::emitDwarfUnwindInfo(), and MCTargetOptions().

◆ EmitSFrameUnwind

bool llvm::MCTargetOptions::EmitSFrameUnwind

Definition at line 125 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ FDPIC

bool llvm::MCTargetOptions::FDPIC

Definition at line 54 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ IASSearchPaths

std::vector<std::string> llvm::MCTargetOptions::IASSearchPaths

Additional paths to search for .include directives when using the integrated assembler.

Definition at line 115 of file MCTargetOptions.h.

◆ ImplicitMapSyms

bool llvm::MCTargetOptions::ImplicitMapSyms = false

Definition at line 67 of file MCTargetOptions.h.

◆ InstPrinterOptions

std::vector<std::string> llvm::MCTargetOptions::InstPrinterOptions

Definition at line 118 of file MCTargetOptions.h.

◆ LargeEHEncoding

bool llvm::MCTargetOptions::LargeEHEncoding = false

◆ MCFatalWarnings

bool llvm::MCTargetOptions::MCFatalWarnings

Definition at line 48 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCIncrementalLinkerCompatible

bool llvm::MCTargetOptions::MCIncrementalLinkerCompatible

Definition at line 53 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCNoDeprecatedWarn

bool llvm::MCTargetOptions::MCNoDeprecatedWarn

Definition at line 50 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCNoExecStack

bool llvm::MCTargetOptions::MCNoExecStack

Definition at line 47 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCNoTypeCheck

bool llvm::MCTargetOptions::MCNoTypeCheck

Definition at line 51 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCNoWarn

bool llvm::MCTargetOptions::MCNoWarn

Definition at line 49 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCRelaxAll

bool llvm::MCTargetOptions::MCRelaxAll

Definition at line 46 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ MCSaveTempLabels

bool llvm::MCTargetOptions::MCSaveTempLabels

Definition at line 52 of file MCTargetOptions.h.

Referenced by llvm::MCContext::MCContext(), and MCTargetOptions().

◆ MCUseDwarfDirectory

DwarfDirectory llvm::MCTargetOptions::MCUseDwarfDirectory

Definition at line 99 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ OutputAsmVariant

std::optional<unsigned> llvm::MCTargetOptions::OutputAsmVariant

Definition at line 81 of file MCTargetOptions.h.

◆ PPCUseFullRegisterNames

bool llvm::MCTargetOptions::PPCUseFullRegisterNames

Definition at line 128 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ PreserveAsmComments

bool llvm::MCTargetOptions::PreserveAsmComments

Preserve Comments in Assembly.

Definition at line 60 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ RelocSectionSym

RelocSectionSymType llvm::MCTargetOptions::RelocSectionSym = RelocSectionSymType::All

Definition at line 79 of file MCTargetOptions.h.

Referenced by llvm::ELFObjectWriter::recordRelocation().

◆ ShowMCEncoding

bool llvm::MCTargetOptions::ShowMCEncoding

Definition at line 55 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ ShowMCInst

bool llvm::MCTargetOptions::ShowMCInst

Definition at line 56 of file MCTargetOptions.h.

Referenced by MCTargetOptions().

◆ SplitDwarfFile

std::string llvm::MCTargetOptions::SplitDwarfFile

Definition at line 106 of file MCTargetOptions.h.

Referenced by codegen().

◆ X86RelaxRelocations

bool llvm::MCTargetOptions::X86RelaxRelocations = true

Definition at line 71 of file MCTargetOptions.h.

Referenced by llvm::computeLTOCacheKey().

◆ X86Sse2Avx

bool llvm::MCTargetOptions::X86Sse2Avx = false

Definition at line 73 of file MCTargetOptions.h.


The documentation for this class was generated from the following files: