Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::X86Subtarget Class Referencefinal

#include "Target/X86/X86Subtarget.h"

Inheritance diagram for llvm::X86Subtarget:
[legend]

Public Member Functions

 X86Subtarget (const Triple &TT, StringRef CPU, StringRef TuneCPU, StringRef FS, const X86TargetMachine &TM, MaybeAlign StackAlignOverride, unsigned PreferVectorWidthOverride, unsigned RequiredVectorWidth)
 This constructor initializes the data members to match that of the specified triple.
 ~X86Subtarget () override
const X86TargetLoweringgetTargetLowering () const override
const X86InstrInfogetInstrInfo () const override
const X86FrameLoweringgetFrameLowering () const override
const X86SelectionDAGInfogetSelectionDAGInfo () const override
const X86RegisterInfogetRegisterInfo () const override
unsigned getTileConfigSize () const
Align getTileConfigAlignment () const
Align getStackAlignment () const
 Returns the minimum alignment known to hold of the stack frame on entry to the function and which must be maintained by every function for this subtarget.
unsigned getMaxInlineSizeThreshold () const
 Returns the maximum memset / memcpy size that still makes it profitable to inline the call.
void ParseSubtargetFeatures (StringRef CPU, StringRef TuneCPU, StringRef FS)
 ParseSubtargetFeatures - Parses features string setting specified subtarget options.
const CallLoweringgetCallLowering () const override
 Methods used by Global ISel.
InstructionSelectorgetInstructionSelector () const override
const LegalizerInfogetLegalizerInfo () const override
const RegisterBankInfogetRegBankInfo () const override
bool isTarget64BitILP32 () const
 Is this x86_64 with the ILP32 programming model (x32 ABI)?
bool isTarget64BitLP64 () const
 Is this x86_64 with the LP64 programming model (standard AMD64, no x32)?
PICStyles::Style getPICStyle () const
void setPICStyle (PICStyles::Style Style)
bool canUseCMPXCHG8B () const
bool canUseCMPXCHG16B () const
bool canUseCMOV () const
bool hasSSE1 () const
bool hasSSE2 () const
bool hasSSE3 () const
bool hasSSSE3 () const
bool hasSSE41 () const
bool hasSSE42 () const
bool hasAVX () const
bool hasAVX2 () const
bool hasAVX512 () const
bool hasInt256 () const
bool hasAnyFMA () const
bool hasPrefetchW () const
bool hasSSEPrefetch () const
bool canUseLAHFSAHF () const
bool useIndirectThunkCalls () const
bool useIndirectThunkBranches () const
unsigned getPreferVectorWidth () const
unsigned getRequiredVectorWidth () const
bool canExtendTo512DQ () const
bool canExtendTo512BW () const
bool hasNoDomainDelay () const
bool hasNoDomainDelayMov () const
bool hasNoDomainDelayBlend () const
bool hasNoDomainDelayShuffle () const
bool useAVX512Regs () const
bool useLight256BitInstructions () const
bool useBWIRegs () const
bool hasBitScanPassThrough () const
bool isXRaySupported () const override
bool hasCLFLUSH () const
 Use clflush if we have SSE2 or we're on x86-64 (even if we asked for no-sse2).
bool hasMFence () const
 Use mfence if we have SSE2 or we're on x86-64 (even if we asked for no-sse2).
bool avoidMFence () const
 Avoid use of mfence forfence seq_cst, and instead use lock or.
const TriplegetTargetTriple () const
bool isTargetDarwin () const
bool isTargetFreeBSD () const
bool isTargetDragonFly () const
bool isTargetSolaris () const
bool isTargetPS () const
bool isTargetELF () const
bool isTargetCOFF () const
bool isTargetMachO () const
bool isTargetLinux () const
bool isTargetKFreeBSD () const
bool isTargetGlibc () const
bool isTargetAndroid () const
bool isTargetMCU () const
bool isTargetFuchsia () const
bool isTargetWindowsMSVC () const
bool isTargetWindowsCoreCLR () const
bool isTargetWindowsCygwin () const
bool isTargetWindowsGNU () const
bool isTargetWindowsItanium () const
bool isTargetCygMing () const
bool isUEFI () const
bool isOSWindows () const
bool isTargetUEFI64 () const
bool isTargetWin64 () const
bool isTargetWin32 () const
bool isPICStyleGOT () const
bool isPICStyleRIPRel () const
bool isPICStyleStubPIC () const
bool isPositionIndependent () const
bool isCallingConvWin64 (CallingConv::ID CC) const
unsigned char classifyLocalReference (const GlobalValue *GV) const
 Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context.
unsigned char classifyGlobalReference (const GlobalValue *GV, const Module &M) const
unsigned char classifyGlobalReference (const GlobalValue *GV) const
 Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context.
unsigned char classifyGlobalFunctionReference (const GlobalValue *GV, const Module &M) const
 Classify a global function reference for the current subtarget.
unsigned char classifyGlobalFunctionReference (const GlobalValue *GV) const override
unsigned char classifyBlockAddressReference () const
 Classify a blockaddress reference for the current subtarget according to how we should reference it in a non-pcrel context.
bool isLegalToCallImmediateAddr () const
 Return true if the subtarget allows calls to immediate address.
bool swiftAsyncContextIsDynamicallySet () const
 Return whether FrameLowering should always set the "extended frame present" bit in FP, or set it based on a symbol in the runtime.
bool enableIndirectBrExpand () const override
 If we are using indirect thunks, we need to expand indirectbr to avoid it lowering to an actual indirect jump.
bool enableMachineScheduler () const override
 Enable the MachineScheduler pass for all X86 subtargets.
bool enableEarlyIfConversion () const override
void getPostRAMutations (std::vector< std::unique_ptr< ScheduleDAGMutation > > &Mutations) const override
AntiDepBreakMode getAntiDepBreakMode () const override

Detailed Description

Definition at line 52 of file X86Subtarget.h.

Constructor & Destructor Documentation

◆ X86Subtarget()

X86Subtarget::X86Subtarget ( const Triple & TT,
StringRef CPU,
StringRef TuneCPU,
StringRef FS,
const X86TargetMachine & TM,
MaybeAlign StackAlignOverride,
unsigned PreferVectorWidthOverride,
unsigned RequiredVectorWidth )

◆ ~X86Subtarget()

X86Subtarget::~X86Subtarget ( )
overridedefault

Member Function Documentation

◆ avoidMFence()

bool llvm::X86Subtarget::avoidMFence ( ) const
inline

Avoid use of mfence forfence seq_cst, and instead use lock or.

Definition at line 278 of file X86Subtarget.h.

References is64Bit().

Referenced by LowerATOMIC_FENCE().

◆ canExtendTo512BW()

bool llvm::X86Subtarget::canExtendTo512BW ( ) const
inline

◆ canExtendTo512DQ()

◆ canUseCMOV()

bool llvm::X86Subtarget::canUseCMOV ( ) const
inline

Definition at line 188 of file X86Subtarget.h.

References hasSSE1(), and is64Bit().

Referenced by combineCMov(), enableEarlyIfConversion(), LowerABD(), and LowerSELECTWithCmpZero().

◆ canUseCMPXCHG16B()

bool llvm::X86Subtarget::canUseCMPXCHG16B ( ) const
inline

Definition at line 182 of file X86Subtarget.h.

References is64Bit().

◆ canUseCMPXCHG8B()

bool llvm::X86Subtarget::canUseCMPXCHG8B ( ) const
inline

Definition at line 181 of file X86Subtarget.h.

◆ canUseLAHFSAHF()

bool llvm::X86Subtarget::canUseLAHFSAHF ( ) const
inline

Definition at line 210 of file X86Subtarget.h.

References is64Bit().

◆ classifyBlockAddressReference()

unsigned char X86Subtarget::classifyBlockAddressReference ( ) const

Classify a blockaddress reference for the current subtarget according to how we should reference it in a non-pcrel context.

Definition at line 60 of file X86Subtarget.cpp.

References classifyLocalReference().

◆ classifyGlobalFunctionReference() [1/2]

unsigned char X86Subtarget::classifyGlobalFunctionReference ( const GlobalValue * GV) const
override

◆ classifyGlobalFunctionReference() [2/2]

◆ classifyGlobalReference() [1/2]

unsigned char X86Subtarget::classifyGlobalReference ( const GlobalValue * GV) const

Classify a global variable reference for the current subtarget according to how we should reference it in a non-pcrel context.

Definition at line 67 of file X86Subtarget.cpp.

References classifyGlobalReference(), and llvm::GlobalValue::getParent().

◆ classifyGlobalReference() [2/2]

◆ classifyLocalReference()

◆ enableEarlyIfConversion()

bool X86Subtarget::enableEarlyIfConversion ( ) const
override

Definition at line 364 of file X86Subtarget.cpp.

References canUseCMOV(), and X86EarlyIfConv.

◆ enableIndirectBrExpand()

bool llvm::X86Subtarget::enableIndirectBrExpand ( ) const
inlineoverride

If we are using indirect thunks, we need to expand indirectbr to avoid it lowering to an actual indirect jump.

Definition at line 414 of file X86Subtarget.h.

References useIndirectThunkBranches().

◆ enableMachineScheduler()

bool llvm::X86Subtarget::enableMachineScheduler ( ) const
inlineoverride

Enable the MachineScheduler pass for all X86 subtargets.

Definition at line 419 of file X86Subtarget.h.

◆ getAntiDepBreakMode()

AntiDepBreakMode llvm::X86Subtarget::getAntiDepBreakMode ( ) const
inlineoverride

Definition at line 426 of file X86Subtarget.h.

◆ getCallLowering()

const CallLowering * X86Subtarget::getCallLowering ( ) const
override

Methods used by Global ISel.

Definition at line 348 of file X86Subtarget.cpp.

◆ getFrameLowering()

const X86FrameLowering * llvm::X86Subtarget::getFrameLowering ( ) const
inlineoverride

Definition at line 124 of file X86Subtarget.h.

Referenced by emitLockedStackOp(), and ExpandMOVImmSExti8().

◆ getInstrInfo()

const X86InstrInfo * llvm::X86Subtarget::getInstrInfo ( ) const
inlineoverride

◆ getInstructionSelector()

InstructionSelector * X86Subtarget::getInstructionSelector ( ) const
override

Definition at line 352 of file X86Subtarget.cpp.

◆ getLegalizerInfo()

const LegalizerInfo * X86Subtarget::getLegalizerInfo ( ) const
override

Definition at line 356 of file X86Subtarget.cpp.

◆ getMaxInlineSizeThreshold()

unsigned llvm::X86Subtarget::getMaxInlineSizeThreshold ( ) const
inline

Returns the maximum memset / memcpy size that still makes it profitable to inline the call.

Definition at line 146 of file X86Subtarget.h.

Referenced by emitConstantSizeRepmov(), and emitConstantSizeRepstos().

◆ getPICStyle()

PICStyles::Style llvm::X86Subtarget::getPICStyle ( ) const
inline

Definition at line 178 of file X86Subtarget.h.

◆ getPostRAMutations()

void X86Subtarget::getPostRAMutations ( std::vector< std::unique_ptr< ScheduleDAGMutation > > & Mutations) const
override

Definition at line 368 of file X86Subtarget.cpp.

References llvm::createX86MacroFusionDAGMutation().

◆ getPreferVectorWidth()

unsigned llvm::X86Subtarget::getPreferVectorWidth ( ) const
inline

◆ getRegBankInfo()

const RegisterBankInfo * X86Subtarget::getRegBankInfo ( ) const
override

Definition at line 360 of file X86Subtarget.cpp.

◆ getRegisterInfo()

const X86RegisterInfo * llvm::X86Subtarget::getRegisterInfo ( ) const
inlineoverride

◆ getRequiredVectorWidth()

unsigned llvm::X86Subtarget::getRequiredVectorWidth ( ) const
inline

Definition at line 222 of file X86Subtarget.h.

◆ getSelectionDAGInfo()

const X86SelectionDAGInfo * llvm::X86Subtarget::getSelectionDAGInfo ( ) const
inlineoverride

Definition at line 128 of file X86Subtarget.h.

◆ getStackAlignment()

Align llvm::X86Subtarget::getStackAlignment ( ) const
inline

Returns the minimum alignment known to hold of the stack frame on entry to the function and which must be maintained by every function for this subtarget.

Definition at line 142 of file X86Subtarget.h.

Referenced by X86Subtarget().

◆ getTargetLowering()

◆ getTargetTriple()

const Triple & llvm::X86Subtarget::getTargetTriple ( ) const
inline

◆ getTileConfigAlignment()

Align llvm::X86Subtarget::getTileConfigAlignment ( ) const
inline

Definition at line 137 of file X86Subtarget.h.

◆ getTileConfigSize()

unsigned llvm::X86Subtarget::getTileConfigSize ( ) const
inline

Definition at line 136 of file X86Subtarget.h.

◆ hasAnyFMA()

bool llvm::X86Subtarget::hasAnyFMA ( ) const
inline

◆ hasAVX()

◆ hasAVX2()

◆ hasAVX512()

bool llvm::X86Subtarget::hasAVX512 ( ) const
inline

Definition at line 197 of file X86Subtarget.h.

Referenced by canCombineAsMaskOperation(), canExtendTo512DQ(), combineArithReduction(), combineAVX512SetCCToKMOV(), combineBitcast(), combineBitcastvxi1(), combineCastedMaskArithmetic(), combineCompareEqual(), combineConcatVectorOps(), combineExtSetcc(), combineLoad(), combineMaskedLoad(), combineMulToPMADDWD(), combinePMULH(), combineSelect(), combineSetCC(), combineStore(), combineTargetShuffle(), combineToExtendBoolVectorInReg(), combineTruncateWithSat(), combineVectorPack(), combineX86ShuffleChain(), commuteSelect(), convertShiftLeftToScale(), CopyToFromAsymmetricReg(), createVariablePermute(), EmitAVX512Test(), getAVX512Node(), getBroadcastOpcode(), llvm::X86RegisterInfo::getCalleeSavedRegs(), llvm::X86RegisterInfo::getCallPreservedMask(), llvm::X86RegisterInfo::getLargestLegalSuperClass(), getLoadStoreRegOpcode(), llvm::X86RegisterInfo::getReservedRegs(), isMaskableNode(), lower1BitShuffle(), lower512BitShuffle(), LowerBITCAST(), LowerEXTEND_VECTOR_INREG(), LowerFunnelShift(), LowerLoad(), LowerMGATHER(), LowerMLOAD(), LowerMSCATTER(), LowerMSTORE(), LowerMULH(), LowerRotate(), LowerShift(), lowerShuffleAsBitRotate(), lowerShuffleAsVTRUNC(), lowerShuffleWithUndefHalf(), lowerShuffleWithVPMOV(), LowerStore(), lowerUINT_TO_FP_v2i32(), lowerUINT_TO_FP_vXi32(), lowerV16I16Shuffle(), lowerV2X128Shuffle(), lowerV32I8Shuffle(), lowerV8F32Shuffle(), lowerV8I32Shuffle(), lowerVECTOR_COMPRESS(), LowerVSETCC(), matchBinaryPermuteShuffle(), matchBinaryShuffle(), matchShuffleAsBitRotate(), matchTruncateWithPACK(), matchUnaryPermuteShuffle(), matchUnaryShuffle(), supportedVectorShiftWithImm(), supportedVectorVarShift(), truncateAVX512SetCCNoBWI(), truncateVectorWithPACK(), useAVX512Regs(), useVectorCast(), and X86ChooseCmpOpcode().

◆ hasBitScanPassThrough()

bool llvm::X86Subtarget::hasBitScanPassThrough ( ) const
inline

Definition at line 263 of file X86Subtarget.h.

References is64Bit().

Referenced by combineCMov(), LowerCTLZ(), and LowerCTTZ().

◆ hasCLFLUSH()

bool llvm::X86Subtarget::hasCLFLUSH ( ) const
inline

Use clflush if we have SSE2 or we're on x86-64 (even if we asked for no-sse2).

There isn't any reason to disable it if the target processor supports it.

Definition at line 270 of file X86Subtarget.h.

References hasSSE2(), and is64Bit().

◆ hasInt256()

◆ hasMFence()

bool llvm::X86Subtarget::hasMFence ( ) const
inline

Use mfence if we have SSE2 or we're on x86-64 (even if we asked for no-sse2).

There isn't any reason to disable it if the target processor supports it.

Definition at line 275 of file X86Subtarget.h.

References hasSSE2(), and is64Bit().

Referenced by LowerATOMIC_FENCE().

◆ hasNoDomainDelay()

bool llvm::X86Subtarget::hasNoDomainDelay ( ) const
inline

◆ hasNoDomainDelayBlend()

bool llvm::X86Subtarget::hasNoDomainDelayBlend ( ) const
inline

Definition at line 239 of file X86Subtarget.h.

References hasNoDomainDelay().

◆ hasNoDomainDelayMov()

bool llvm::X86Subtarget::hasNoDomainDelayMov ( ) const
inline

Definition at line 236 of file X86Subtarget.h.

References hasNoDomainDelay().

◆ hasNoDomainDelayShuffle()

bool llvm::X86Subtarget::hasNoDomainDelayShuffle ( ) const
inline

Definition at line 242 of file X86Subtarget.h.

References hasNoDomainDelay().

◆ hasPrefetchW()

bool llvm::X86Subtarget::hasPrefetchW ( ) const
inline

Definition at line 200 of file X86Subtarget.h.

◆ hasSSE1()

◆ hasSSE2()

◆ hasSSE3()

◆ hasSSE41()

◆ hasSSE42()

bool llvm::X86Subtarget::hasSSE42 ( ) const
inline

Definition at line 194 of file X86Subtarget.h.

Referenced by LowerShiftByScalarImmediate(), and LowerVSETCC().

◆ hasSSEPrefetch()

bool llvm::X86Subtarget::hasSSEPrefetch ( ) const
inline

Definition at line 205 of file X86Subtarget.h.

References hasSSE1().

◆ hasSSSE3()

◆ isCallingConvWin64()

◆ isLegalToCallImmediateAddr()

bool X86Subtarget::isLegalToCallImmediateAddr ( ) const

Return true if the subtarget allows calls to immediate address.

Definition at line 241 of file X86Subtarget.cpp.

References isTargetELF(), isTargetWin32(), and llvm::Reloc::Static.

◆ isOSWindows()

bool llvm::X86Subtarget::isOSWindows ( ) const
inline

Definition at line 323 of file X86Subtarget.h.

Referenced by classifyGlobalReference(), isTargetWin32(), and isTargetWin64().

◆ isPICStyleGOT()

bool llvm::X86Subtarget::isPICStyleGOT ( ) const
inline

Definition at line 331 of file X86Subtarget.h.

References llvm::PICStyles::GOT.

◆ isPICStyleRIPRel()

bool llvm::X86Subtarget::isPICStyleRIPRel ( ) const
inline

Definition at line 332 of file X86Subtarget.h.

References llvm::PICStyles::RIPRel.

Referenced by X86SelectAddress().

◆ isPICStyleStubPIC()

bool llvm::X86Subtarget::isPICStyleStubPIC ( ) const
inline

Definition at line 334 of file X86Subtarget.h.

References llvm::PICStyles::StubPIC.

◆ isPositionIndependent()

bool X86Subtarget::isPositionIndependent ( ) const

Definition at line 373 of file X86Subtarget.cpp.

Referenced by classifyGlobalReference(), classifyLocalReference(), and X86Subtarget().

◆ isTarget64BitILP32()

bool llvm::X86Subtarget::isTarget64BitILP32 ( ) const
inline

Is this x86_64 with the ILP32 programming model (x32 ABI)?

Definition at line 173 of file X86Subtarget.h.

Referenced by getLeaOP(), llvm::X86RegisterInfo::getPtrSizedFrameRegister(), and llvm::X86RegisterInfo::getPtrSizedStackRegister().

◆ isTarget64BitLP64()

bool llvm::X86Subtarget::isTarget64BitLP64 ( ) const
inline

Is this x86_64 with the LP64 programming model (standard AMD64, no x32)?

Definition at line 176 of file X86Subtarget.h.

Referenced by emitRepmovs(), emitRepstos(), and LowerVACOPY().

◆ isTargetAndroid()

bool llvm::X86Subtarget::isTargetAndroid ( ) const
inline

Definition at line 295 of file X86Subtarget.h.

◆ isTargetCOFF()

bool llvm::X86Subtarget::isTargetCOFF ( ) const
inline

◆ isTargetCygMing()

bool llvm::X86Subtarget::isTargetCygMing ( ) const
inline

Definition at line 319 of file X86Subtarget.h.

◆ isTargetDarwin()

bool llvm::X86Subtarget::isTargetDarwin ( ) const
inline

◆ isTargetDragonFly()

bool llvm::X86Subtarget::isTargetDragonFly ( ) const
inline

Definition at line 284 of file X86Subtarget.h.

◆ isTargetELF()

bool llvm::X86Subtarget::isTargetELF ( ) const
inline

◆ isTargetFreeBSD()

bool llvm::X86Subtarget::isTargetFreeBSD ( ) const
inline

Definition at line 283 of file X86Subtarget.h.

◆ isTargetFuchsia()

bool llvm::X86Subtarget::isTargetFuchsia ( ) const
inline

Definition at line 297 of file X86Subtarget.h.

◆ isTargetGlibc()

bool llvm::X86Subtarget::isTargetGlibc ( ) const
inline

Definition at line 294 of file X86Subtarget.h.

◆ isTargetKFreeBSD()

bool llvm::X86Subtarget::isTargetKFreeBSD ( ) const
inline

Definition at line 293 of file X86Subtarget.h.

◆ isTargetLinux()

bool llvm::X86Subtarget::isTargetLinux ( ) const
inline

Definition at line 292 of file X86Subtarget.h.

Referenced by llvm::X86CallLowering::lowerCall().

◆ isTargetMachO()

bool llvm::X86Subtarget::isTargetMachO ( ) const
inline

Definition at line 290 of file X86Subtarget.h.

◆ isTargetMCU()

bool llvm::X86Subtarget::isTargetMCU ( ) const
inline

Definition at line 296 of file X86Subtarget.h.

Referenced by computeBytesPoppedByCalleeForSRet(), and hasCalleePopSRet().

◆ isTargetPS()

bool llvm::X86Subtarget::isTargetPS ( ) const
inline

Definition at line 286 of file X86Subtarget.h.

◆ isTargetSolaris()

bool llvm::X86Subtarget::isTargetSolaris ( ) const
inline

Definition at line 285 of file X86Subtarget.h.

◆ isTargetUEFI64()

bool llvm::X86Subtarget::isTargetUEFI64 ( ) const
inline

Definition at line 325 of file X86Subtarget.h.

References isUEFI().

Referenced by isCallingConvWin64().

◆ isTargetWin32()

bool llvm::X86Subtarget::isTargetWin32 ( ) const
inline

Definition at line 329 of file X86Subtarget.h.

References isOSWindows().

Referenced by isLegalToCallImmediateAddr().

◆ isTargetWin64()

bool llvm::X86Subtarget::isTargetWin64 ( ) const
inline

Definition at line 327 of file X86Subtarget.h.

References isOSWindows().

Referenced by isCallingConvWin64().

◆ isTargetWindowsCoreCLR()

bool llvm::X86Subtarget::isTargetWindowsCoreCLR ( ) const
inline

Definition at line 303 of file X86Subtarget.h.

◆ isTargetWindowsCygwin()

bool llvm::X86Subtarget::isTargetWindowsCygwin ( ) const
inline

Definition at line 307 of file X86Subtarget.h.

◆ isTargetWindowsGNU()

bool llvm::X86Subtarget::isTargetWindowsGNU ( ) const
inline

Definition at line 311 of file X86Subtarget.h.

◆ isTargetWindowsItanium()

bool llvm::X86Subtarget::isTargetWindowsItanium ( ) const
inline

Definition at line 315 of file X86Subtarget.h.

◆ isTargetWindowsMSVC()

bool llvm::X86Subtarget::isTargetWindowsMSVC ( ) const
inline

Definition at line 299 of file X86Subtarget.h.

◆ isUEFI()

bool llvm::X86Subtarget::isUEFI ( ) const
inline

Definition at line 321 of file X86Subtarget.h.

Referenced by isTargetUEFI64().

◆ isXRaySupported()

bool llvm::X86Subtarget::isXRaySupported ( ) const
inlineoverride

Definition at line 265 of file X86Subtarget.h.

References is64Bit().

◆ ParseSubtargetFeatures()

void llvm::X86Subtarget::ParseSubtargetFeatures ( StringRef CPU,
StringRef TuneCPU,
StringRef FS )

ParseSubtargetFeatures - Parses features string setting specified subtarget options.

Definition of function is auto generated by tblgen.

References X86Subtarget().

◆ setPICStyle()

void llvm::X86Subtarget::setPICStyle ( PICStyles::Style Style)
inline

Definition at line 179 of file X86Subtarget.h.

Referenced by X86Subtarget().

◆ swiftAsyncContextIsDynamicallySet()

bool llvm::X86Subtarget::swiftAsyncContextIsDynamicallySet ( ) const
inline

Return whether FrameLowering should always set the "extended frame present" bit in FP, or set it based on a symbol in the runtime.

Definition at line 390 of file X86Subtarget.h.

References llvm::Triple::Darwin, getTargetTriple(), llvm::Triple::IOS, llvm::Triple::MacOSX, llvm::Triple::TvOS, and llvm::Triple::WatchOS.

◆ useAVX512Regs()

◆ useBWIRegs()

bool llvm::X86Subtarget::useBWIRegs ( ) const
inline

◆ useIndirectThunkBranches()

bool llvm::X86Subtarget::useIndirectThunkBranches ( ) const
inline

Definition at line 217 of file X86Subtarget.h.

Referenced by enableIndirectBrExpand().

◆ useIndirectThunkCalls()

bool llvm::X86Subtarget::useIndirectThunkCalls ( ) const
inline

Definition at line 214 of file X86Subtarget.h.

◆ useLight256BitInstructions()

bool llvm::X86Subtarget::useLight256BitInstructions ( ) const
inline

Definition at line 252 of file X86Subtarget.h.

References getPreferVectorWidth().


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