|
clang 22.0.0git
|
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Basic/Targets/AArch64.h"
Public Member Functions | |
| MicrosoftARM64TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| void | getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const override |
| ===-— Other target property query methods -----------------------—===// | |
| TargetInfo::CallingConvKind | getCallingConvKind (bool ClangABICompat4) const override |
| unsigned | getMinGlobalAlign (uint64_t TypeSize, bool HasNonWeakDef) const override |
| getMinGlobalAlign - Return the minimum alignment of a global variable, unless its alignment is explicitly reduced via attributes. | |
| Public Member Functions inherited from clang::targets::WindowsARM64TargetInfo | |
| WindowsARM64TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| void | setDataLayout () override |
| BuiltinVaListKind | getBuiltinVaListKind () const override |
| Returns the kind of __builtin_va_list type that should be used with this target. | |
| CallingConvCheckResult | checkCallingConvention (CallingConv CC) const override |
| Determines whether a given calling convention is valid for the target. | |
| Public Member Functions inherited from clang::targets::WindowsTargetInfo< AArch64leTargetInfo > | |
| WindowsTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| Public Member Functions inherited from clang::targets::OSTargetInfo< AArch64leTargetInfo > | |
| OSTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| void | getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const override |
| Public Member Functions inherited from clang::targets::AArch64leTargetInfo | |
| AArch64leTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| Public Member Functions inherited from clang::targets::AArch64TargetInfo | |
| AArch64TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | |
| StringRef | getABI () const override |
| Get the ABI currently in use. | |
| bool | setABI (const std::string &Name) override |
| Use the specified ABI. | |
| bool | validateBranchProtection (StringRef Spec, StringRef Arch, BranchProtectionInfo &BPI, const LangOptions &LO, StringRef &Err) const override |
| Determine if this TargetInfo supports the given branch protection specification. | |
| bool | isValidCPUName (StringRef Name) const override |
| Determine whether this TargetInfo supports the given CPU name. | |
| void | fillValidCPUList (SmallVectorImpl< StringRef > &Values) const override |
| Fill a SmallVectorImpl with the valid values to setCPU. | |
| bool | setCPU (const std::string &Name) override |
| Target the specified CPU. | |
| llvm::APInt | getFMVPriority (ArrayRef< StringRef > Features) const override |
| bool | useFP16ConversionIntrinsics () const override |
| Check whether llvm intrinsics such as llvm.convert.to.fp16 should be used to convert to and from __fp16. | |
| void | getTargetDefinesARMV81A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV82A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV83A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV84A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV85A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV86A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV87A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV88A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV89A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV9A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV91A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV92A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV93A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV94A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV95A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV96A (const LangOptions &Opts, MacroBuilder &Builder) const |
| void | getTargetDefinesARMV97A (const LangOptions &Opts, MacroBuilder &Builder) const |
| llvm::SmallVector< Builtin::InfosShard > | getTargetBuiltins () const override |
| Return information about target-specific builtins for the current primary target, and info about which builtins are non-portable across the current set of primary and secondary targets. | |
| std::optional< std::pair< unsigned, unsigned > > | getVScaleRange (const LangOptions &LangOpts, ArmStreamingKind Mode, llvm::StringMap< bool > *FeatureMap=nullptr) const override |
| Returns target-specific min and max values VScale_Range. | |
| bool | doesFeatureAffectCodeGen (StringRef Name) const override |
| Returns true if feature has an impact on target code generation. | |
| bool | validateCpuSupports (StringRef FeatureStr) const override |
| bool | hasFeature (StringRef Feature) const override |
| Determine whether the given target has the given feature. | |
| void | setFeatureEnabled (llvm::StringMap< bool > &Features, StringRef Name, bool Enabled) const override |
| Enable or disable a specific target feature; the feature name must be valid. | |
| bool | handleTargetFeatures (std::vector< std::string > &Features, DiagnosticsEngine &Diags) override |
| Perform initialization based on the user configured set of features (e.g., +sse4). | |
| ParsedTargetAttr | parseTargetAttr (StringRef Str) const override |
| bool | supportsTargetAttributeTune () const override |
| Determine whether this TargetInfo supports tune in target attribute. | |
| bool | supportsCpuSupports () const override |
| bool | checkArithmeticFenceSupported () const override |
| Controls if __arithmetic_fence is supported in the targeted backend. | |
| bool | hasBFloat16Type () const override |
| Determine whether the _BFloat16 type is supported on this target. | |
| bool | isCLZForZeroUndef () const override |
| The __builtin_clz* and __builtin_ctz* built-in functions are specified to have undefined results for zero inputs, but on targets that support these operations in a way that provides well-defined results for zero without loss of performance, it is a good idea to avoid optimizing based on that undef behavior. | |
| ArrayRef< const char * > | getGCCRegNames () const override |
| ArrayRef< TargetInfo::GCCRegAlias > | getGCCRegAliases () const override |
| std::string | convertConstraint (const char *&Constraint) const override |
| bool | validateAsmConstraint (const char *&Name, TargetInfo::ConstraintInfo &Info) const override |
| bool | validateConstraintModifier (StringRef Constraint, char Modifier, unsigned Size, std::string &SuggestedModifier) const override |
| std::string_view | getClobbers () const override |
| Returns a string of target-specific clobbers, in LLVM format. | |
| StringRef | getConstraintRegister (StringRef Constraint, StringRef Expression) const override |
| Extracts a register from the passed constraint (if it is a single-register constraint) and the asm label expression related to a variable in the input or output list of an inline asm statement. | |
| int | getEHDataRegisterNumber (unsigned RegNo) const override |
| Return the register number that __builtin_eh_return_regno would return with the specified argument. | |
| bool | validatePointerAuthKey (const llvm::APSInt &value) const override |
| Determine whether the given pointer-authentication key is valid. | |
| const char * | getBFloat16Mangling () const override |
| Return the mangled code of bfloat. | |
| std::pair< unsigned, unsigned > | hardwareInterferenceSizes () const override |
| The first value in the pair is the minimum offset between two objects to avoid false sharing (destructive interference). | |
| bool | hasInt128Type () const override |
| Determine whether the __int128 type is supported on this target. | |
| bool | hasBitIntType () const override |
| Determine whether the _BitInt type is supported on this target. | |
| bool | validateTarget (DiagnosticsEngine &Diags) const override |
| Check the target is valid after it is fully initialized. | |
| bool | validateGlobalRegisterVariable (StringRef RegName, unsigned RegSize, bool &HasSizeMismatch) const override |
| Validate register name used for global register variables. | |
| uint64_t | getPointerWidthV (LangAS AddrSpace) const override |
| uint64_t | getPointerAlignV (LangAS AddrSpace) const override |
| Public Member Functions inherited from clang::TargetInfo | |
| virtual | ~TargetInfo () |
| TargetOptions & | getTargetOpts () const |
| Retrieve the target options. | |
| IntType | getSizeType () const |
| IntType | getSignedSizeType () const |
| IntType | getIntMaxType () const |
| IntType | getUIntMaxType () const |
| IntType | getPtrDiffType (LangAS AddrSpace) const |
| IntType | getUnsignedPtrDiffType (LangAS AddrSpace) const |
| IntType | getIntPtrType () const |
| IntType | getUIntPtrType () const |
| IntType | getWCharType () const |
| IntType | getWIntType () const |
| IntType | getChar16Type () const |
| IntType | getChar32Type () const |
| IntType | getInt64Type () const |
| IntType | getUInt64Type () const |
| IntType | getInt16Type () const |
| IntType | getUInt16Type () const |
| IntType | getSigAtomicType () const |
| IntType | getProcessIDType () const |
| bool | doUnsignedFixedPointTypesHavePadding () const |
| In the event this target uses the same number of fractional bits for its unsigned types as it does with its signed counterparts, there will be exactly one bit of padding. | |
| unsigned | getTypeWidth (IntType T) const |
| Return the width (in bits) of the specified integer type enum. | |
| virtual IntType | getIntTypeByWidth (unsigned BitWidth, bool IsSigned) const |
| Return integer type with specified width. | |
| virtual IntType | getLeastIntTypeByWidth (unsigned BitWidth, bool IsSigned) const |
| Return the smallest integer type with at least the specified width. | |
| FloatModeKind | getRealTypeByWidth (unsigned BitWidth, FloatModeKind ExplicitType) const |
| Return floating point type with specified width. | |
| unsigned | getTypeAlign (IntType T) const |
| Return the alignment (in bits) of the specified integer type enum. | |
| uint64_t | getPointerWidth (LangAS AddrSpace) const |
| Return the width of pointers on this target, for the specified address space. | |
| uint64_t | getPointerAlign (LangAS AddrSpace) const |
| virtual uint64_t | getMaxPointerWidth () const |
| Return the maximum width of pointers on this target. | |
| virtual uint64_t | getNullPointerValue (LangAS AddrSpace) const |
| Get integer value for null pointer. | |
| virtual bool | isAddressSpaceSupersetOf (LangAS A, LangAS B) const |
| Returns true if an address space can be safely converted to another. | |
| unsigned | getBoolWidth () const |
| Return the size of '_Bool' and C++ 'bool' for this target, in bits. | |
| unsigned | getBoolAlign () const |
| Return the alignment of '_Bool' and C++ 'bool' for this target. | |
| unsigned | getCharWidth () const |
| unsigned | getCharAlign () const |
| unsigned | getShortWidth () const |
| getShortWidth/Align - Return the size of 'signed short' and 'unsigned short' for this target, in bits. | |
| unsigned | getShortAlign () const |
| unsigned | getIntWidth () const |
| getIntWidth/Align - Return the size of 'signed int' and 'unsigned int' for this target, in bits. | |
| unsigned | getIntAlign () const |
| unsigned | getLongWidth () const |
| getLongWidth/Align - Return the size of 'signed long' and 'unsigned long' for this target, in bits. | |
| unsigned | getLongAlign () const |
| unsigned | getLongLongWidth () const |
| getLongLongWidth/Align - Return the size of 'signed long long' and 'unsigned long long' for this target, in bits. | |
| unsigned | getLongLongAlign () const |
| unsigned | getInt128Align () const |
| getInt128Align() - Returns the alignment of Int128. | |
| unsigned | getBitIntMaxAlign () const |
| getBitIntMaxAlign() - Returns the maximum possible alignment of '_BitInt' and 'unsigned _BitInt'. | |
| unsigned | getBitIntWidth (unsigned NumBits) const |
| getBitIntAlign/Width - Return aligned size of '_BitInt' and 'unsigned _BitInt' for this target, in bits. | |
| unsigned | getBitIntAlign (unsigned NumBits) const |
| unsigned | getShortAccumWidth () const |
| getShortAccumWidth/Align - Return the size of 'signed short _Accum' and 'unsigned short _Accum' for this target, in bits. | |
| unsigned | getShortAccumAlign () const |
| unsigned | getAccumWidth () const |
| getAccumWidth/Align - Return the size of 'signed _Accum' and 'unsigned _Accum' for this target, in bits. | |
| unsigned | getAccumAlign () const |
| unsigned | getLongAccumWidth () const |
| getLongAccumWidth/Align - Return the size of 'signed long _Accum' and 'unsigned long _Accum' for this target, in bits. | |
| unsigned | getLongAccumAlign () const |
| unsigned | getShortFractWidth () const |
| getShortFractWidth/Align - Return the size of 'signed short _Fract' and 'unsigned short _Fract' for this target, in bits. | |
| unsigned | getShortFractAlign () const |
| unsigned | getFractWidth () const |
| getFractWidth/Align - Return the size of 'signed _Fract' and 'unsigned _Fract' for this target, in bits. | |
| unsigned | getFractAlign () const |
| unsigned | getLongFractWidth () const |
| getLongFractWidth/Align - Return the size of 'signed long _Fract' and 'unsigned long _Fract' for this target, in bits. | |
| unsigned | getLongFractAlign () const |
| unsigned | getShortAccumScale () const |
| getShortAccumScale/IBits - Return the number of fractional/integral bits in a 'signed short _Accum' type. | |
| unsigned | getShortAccumIBits () const |
| unsigned | getAccumScale () const |
| getAccumScale/IBits - Return the number of fractional/integral bits in a 'signed _Accum' type. | |
| unsigned | getAccumIBits () const |
| unsigned | getLongAccumScale () const |
| getLongAccumScale/IBits - Return the number of fractional/integral bits in a 'signed long _Accum' type. | |
| unsigned | getLongAccumIBits () const |
| unsigned | getUnsignedShortAccumScale () const |
| getUnsignedShortAccumScale/IBits - Return the number of fractional/integral bits in a 'unsigned short _Accum' type. | |
| unsigned | getUnsignedShortAccumIBits () const |
| unsigned | getUnsignedAccumScale () const |
| getUnsignedAccumScale/IBits - Return the number of fractional/integral bits in a 'unsigned _Accum' type. | |
| unsigned | getUnsignedAccumIBits () const |
| unsigned | getUnsignedLongAccumScale () const |
| getUnsignedLongAccumScale/IBits - Return the number of fractional/integral bits in a 'unsigned long _Accum' type. | |
| unsigned | getUnsignedLongAccumIBits () const |
| unsigned | getShortFractScale () const |
| getShortFractScale - Return the number of fractional bits in a 'signed short _Fract' type. | |
| unsigned | getFractScale () const |
| getFractScale - Return the number of fractional bits in a 'signed _Fract' type. | |
| unsigned | getLongFractScale () const |
| getLongFractScale - Return the number of fractional bits in a 'signed long _Fract' type. | |
| unsigned | getUnsignedShortFractScale () const |
| getUnsignedShortFractScale - Return the number of fractional bits in a 'unsigned short _Fract' type. | |
| unsigned | getUnsignedFractScale () const |
| getUnsignedFractScale - Return the number of fractional bits in a 'unsigned _Fract' type. | |
| unsigned | getUnsignedLongFractScale () const |
| getUnsignedLongFractScale - Return the number of fractional bits in a 'unsigned long _Fract' type. | |
| virtual size_t | getMaxBitIntWidth () const |
| virtual bool | hasFastHalfType () const |
| Determine whether the target has fast native support for operations on half types. | |
| virtual bool | allowHalfArgsAndReturns () const |
| Whether half args and returns are supported. | |
| virtual bool | hasFloat128Type () const |
| Determine whether the __float128 type is supported on this target. | |
| virtual bool | hasFloat16Type () const |
| Determine whether the _Float16 type is supported on this target. | |
| virtual bool | hasFullBFloat16Type () const |
| Determine whether the BFloat type is fully supported on this target, i.e arithemtic operations. | |
| virtual bool | hasIbm128Type () const |
| Determine whether the __ibm128 type is supported on this target. | |
| virtual bool | hasLongDoubleType () const |
| Determine whether the long double type is supported on this target. | |
| virtual bool | hasFPReturn () const |
| Determine whether return of a floating point value is supported on this target. | |
| virtual bool | hasStrictFP () const |
| Determine whether constrained floating point is supported on this target. | |
| unsigned | getSuitableAlign () const |
| Return the alignment that is the largest alignment ever used for any scalar/SIMD data type on the target machine you are compiling for (including types with an extended alignment requirement). | |
| unsigned | getDefaultAlignForAttributeAligned () const |
| Return the default alignment for attribute((aligned)) on this target, to be used if no alignment value is specified. | |
| unsigned | getNewAlign () const |
| Return the largest alignment for which a suitably-sized allocation with '::operator new(size_t)' is guaranteed to produce a correctly-aligned pointer. | |
| unsigned | getWCharWidth () const |
| getWCharWidth/Align - Return the size of 'wchar_t' for this target, in bits. | |
| unsigned | getWCharAlign () const |
| unsigned | getChar16Width () const |
| getChar16Width/Align - Return the size of 'char16_t' for this target, in bits. | |
| unsigned | getChar16Align () const |
| unsigned | getChar32Width () const |
| getChar32Width/Align - Return the size of 'char32_t' for this target, in bits. | |
| unsigned | getChar32Align () const |
| unsigned | getHalfWidth () const |
| getHalfWidth/Align/Format - Return the size/align/format of 'half'. | |
| unsigned | getHalfAlign () const |
| const llvm::fltSemantics & | getHalfFormat () const |
| unsigned | getFloatWidth () const |
| getFloatWidth/Align/Format - Return the size/align/format of 'float'. | |
| unsigned | getFloatAlign () const |
| const llvm::fltSemantics & | getFloatFormat () const |
| unsigned | getBFloat16Width () const |
| getBFloat16Width/Align/Format - Return the size/align/format of '__bf16'. | |
| unsigned | getBFloat16Align () const |
| const llvm::fltSemantics & | getBFloat16Format () const |
| unsigned | getDoubleWidth () const |
| getDoubleWidth/Align/Format - Return the size/align/format of 'double'. | |
| unsigned | getDoubleAlign () const |
| const llvm::fltSemantics & | getDoubleFormat () const |
| unsigned | getLongDoubleWidth () const |
| getLongDoubleWidth/Align/Format - Return the size/align/format of 'long double'. | |
| unsigned | getLongDoubleAlign () const |
| const llvm::fltSemantics & | getLongDoubleFormat () const |
| unsigned | getFloat128Width () const |
| getFloat128Width/Align/Format - Return the size/align/format of '__float128'. | |
| unsigned | getFloat128Align () const |
| const llvm::fltSemantics & | getFloat128Format () const |
| unsigned | getIbm128Width () const |
| getIbm128Width/Align/Format - Return the size/align/format of '__ibm128'. | |
| unsigned | getIbm128Align () const |
| const llvm::fltSemantics & | getIbm128Format () const |
| virtual const char * | getLongDoubleMangling () const |
| Return the mangled code of long double. | |
| virtual const char * | getFloat128Mangling () const |
| Return the mangled code of __float128. | |
| virtual const char * | getIbm128Mangling () const |
| Return the mangled code of __ibm128. | |
| virtual LangOptions::FPEvalMethodKind | getFPEvalMethod () const |
| Return the value for the C99 FLT_EVAL_METHOD macro. | |
| virtual bool | supportSourceEvalMethod () const |
| unsigned | getLargeArrayMinWidth () const |
| unsigned | getLargeArrayAlign () const |
| unsigned | getMaxAtomicPromoteWidth () const |
| Return the maximum width lock-free atomic operation which will ever be supported for the given target. | |
| unsigned | getMaxAtomicInlineWidth () const |
| Return the maximum width lock-free atomic operation which can be inlined given the supported features of the given target. | |
| virtual void | setMaxAtomicWidth () |
| Set the maximum inline or promote width lock-free atomic operation for the given target. | |
| virtual bool | hasBuiltinAtomic (uint64_t AtomicSizeInBits, uint64_t AlignmentInBits) const |
| Returns true if the given target supports lock-free atomic operations at the specified width and alignment. | |
| unsigned | getMaxVectorAlign () const |
| Return the maximum vector alignment supported for the given target. | |
| unsigned | getMaxOpenCLWorkGroupSize () const |
| virtual unsigned | getExnObjectAlignment () const |
| Return the alignment (in bits) of the thrown exception object. | |
| unsigned | getIntMaxTWidth () const |
| Return the size of intmax_t and uintmax_t for this target, in bits. | |
| virtual unsigned | getUnwindWordWidth () const |
| virtual unsigned | getRegisterWidth () const |
| Return the "preferred" register width on this target. | |
| bool | hasUnalignedAccess () const |
| Return true iff unaligned accesses are a single instruction (rather than a synthesized sequence). | |
| bool | hasCheapUnalignedBitFieldAccess () const |
| Return true iff unaligned accesses are cheap. | |
| const char * | getUserLabelPrefix () const |
| Returns the default value of the USER_LABEL_PREFIX macro, which is the prefix given to user symbols by default. | |
| const char * | getMCountName () const |
| Returns the name of the mcount instrumentation function. | |
| bool | useSignedCharForObjCBool () const |
| Check if the Objective-C built-in boolean type should be signed char. | |
| void | noSignedCharForObjCBool () |
| bool | useBitFieldTypeAlignment () const |
| Check whether the alignment of bit-field types is respected when laying out structures. | |
| bool | useZeroLengthBitfieldAlignment () const |
| Check whether zero length bitfields should force alignment of the next member. | |
| bool | useLeadingZeroLengthBitfield () const |
| Check whether zero length bitfield alignment is respected if they are leading members. | |
| unsigned | getZeroLengthBitfieldBoundary () const |
| Get the fixed alignment value in bits for a member that follows a zero length bitfield. | |
| unsigned | getLargestOverSizedBitfieldContainer () const |
| unsigned | getMaxAlignedAttribute () const |
| Get the maximum alignment in bits for a static variable with aligned attribute. | |
| bool | useExplicitBitFieldAlignment () const |
| Check whether explicit bitfield alignment attributes should be. | |
| bool | hasAlignMac68kSupport () const |
| Check whether this target support '#pragma options align=mac68k'. | |
| const char * | getTypeConstantSuffix (IntType T) const |
| Return the constant suffix for the specified integer type enum. | |
| bool | useObjCFPRetForRealType (FloatModeKind T) const |
| Check whether the given real type should use the "fpret" flavor of Objective-C message passing on this target. | |
| bool | useObjCFP2RetForComplexLongDouble () const |
| Check whether _Complex long double should use the "fp2ret" flavor of Objective-C message passing on this target. | |
| bool | useAddressSpaceMapMangling () const |
| Specify if mangling based on address space map should be used or not for language specific address spaces. | |
| bool | hasBuiltinMSVaList () const |
Returns whether or not type __builtin_ms_va_list type is available on this target. | |
| bool | hasAArch64ACLETypes () const |
| Returns whether or not the AArch64 ACLE built-in types are available on this target. | |
| bool | hasRISCVVTypes () const |
| Returns whether or not the RISC-V V built-in types are available on this target. | |
| uint32_t | getARMCDECoprocMask () const |
| For ARM targets returns a mask defining which coprocessors are configured as Custom Datapath. | |
| virtual unsigned | getARMLDREXMask () const |
| bool | isValidClobber (StringRef Name) const |
| Returns whether the passed in string is a valid clobber in an inline asm statement. | |
| virtual bool | isValidGCCRegisterName (StringRef Name) const |
| Returns whether the passed in string is a valid register name according to GCC. | |
| StringRef | getNormalizedGCCRegisterName (StringRef Name, bool ReturnCanonical=false) const |
| Returns the "normalized" GCC register name. | |
| virtual bool | isSPRegName (StringRef) const |
| bool | validateOutputConstraint (ConstraintInfo &Info) const |
| bool | validateInputConstraint (MutableArrayRef< ConstraintInfo > OutputConstraints, ConstraintInfo &info) const |
| virtual bool | validateOutputSize (const llvm::StringMap< bool > &FeatureMap, StringRef, unsigned) const |
| virtual bool | validateInputSize (const llvm::StringMap< bool > &FeatureMap, StringRef, unsigned) const |
| bool | resolveSymbolicName (const char *&Name, ArrayRef< ConstraintInfo > OutputConstraints, unsigned &Index) const |
| std::string | simplifyConstraint (StringRef Constraint, SmallVectorImpl< ConstraintInfo > *OutCons=nullptr) const |
| virtual std::optional< std::string > | handleAsmEscapedChar (char C) const |
| Replace some escaped characters with another string based on target-specific rules. | |
| virtual bool | isNan2008 () const |
| Returns true if NaN encoding is IEEE 754-2008. | |
| const llvm::Triple & | getTriple () const |
| Returns the target triple of the primary target. | |
| virtual std::optional< std::string > | getTargetID () const |
| Returns the target ID if supported. | |
| const char * | getDataLayoutString () const |
| virtual bool | hasProtectedVisibility () const |
| Does this target support "protected" visibility? | |
| virtual bool | shouldDLLImportComdatSymbols () const |
| Does this target aim for semantic compatibility with Microsoft C++ code using dllimport/export attributes? | |
| virtual bool | hasPS4DLLImportExport () const |
| virtual void | adjust (DiagnosticsEngine &Diags, LangOptions &Opts, const TargetInfo *Aux) |
| Set forced language options. | |
| virtual bool | initFeatureMap (llvm::StringMap< bool > &Features, DiagnosticsEngine &Diags, StringRef CPU, const std::vector< std::string > &FeatureVec) const |
| Initialize the map with the default set of target features for the CPU this should include all legal feature strings on the target. | |
| TargetCXXABI | getCXXABI () const |
| Get the C++ ABI currently in use. | |
| bool | shouldUseMicrosoftCCforMangling () const |
| Should the Microsoft mangling scheme be used for C Calling Convention. | |
| virtual void | fillValidTuneCPUList (SmallVectorImpl< StringRef > &Values) const |
| Fill a SmallVectorImpl with the valid values for tuning CPU. | |
| virtual bool | isValidTuneCPUName (StringRef Name) const |
| Determine whether this TargetInfo supports the given CPU name for tuning. | |
| virtual bool | setFPMath (StringRef Name) |
| Use the specified unit for FP math. | |
| virtual bool | hasFeatureEnabled (const llvm::StringMap< bool > &Features, StringRef Name) const |
| Check if target has a given feature enabled. | |
| virtual bool | isValidFeatureName (StringRef Feature) const |
| Determine whether this TargetInfo supports the given feature. | |
| virtual bool | isBranchProtectionSupportedArch (StringRef Arch) const |
| Determine if the Architecture in this TargetInfo supports branch protection. | |
| bool | isReadOnlyFeature (StringRef Feature) const |
| Determine whether the given target feature is read only. | |
| bool | supportsMultiVersioning () const |
| Identify whether this target supports multiversioning of functions, which requires support for cpu_supports and cpu_is functionality. | |
| bool | supportsIFunc () const |
| Identify whether this target supports IFuncs. | |
| virtual bool | supportsCpuIs () const |
| virtual bool | supportsCpuInit () const |
| virtual bool | validateCpuIs (StringRef Name) const |
| virtual bool | validateCPUSpecificCPUDispatch (StringRef Name) const |
| virtual char | CPUSpecificManglingCharacter (StringRef Name) const |
| virtual StringRef | getCPUSpecificTuneName (StringRef Name) const |
| virtual void | getCPUSpecificCPUDispatchFeatures (StringRef Name, llvm::SmallVectorImpl< StringRef > &Features) const |
| virtual std::optional< unsigned > | getCPUCacheLineSize () const |
| unsigned | getRegParmMax () const |
| bool | isTLSSupported () const |
| Whether the target supports thread-local storage. | |
| unsigned | getMaxTLSAlign () const |
| Return the maximum alignment (in bits) of a TLS variable. | |
| bool | isVLASupported () const |
| Whether target supports variable-length arrays. | |
| bool | isSEHTrySupported () const |
| Whether the target supports SEH __try. | |
| bool | hasNoAsmVariants () const |
| Return true if {|} are normal characters in the asm string. | |
| virtual const char * | getStaticInitSectionSpecifier () const |
| Return the section to use for C++ static initialization functions. | |
| const LangASMap & | getAddressSpaceMap () const |
| unsigned | getTargetAddressSpace (LangAS AS) const |
| virtual LangAS | getOpenCLBuiltinAddressSpace (unsigned AS) const |
| Map from the address space field in builtin description strings to the language address space. | |
| virtual LangAS | getCUDABuiltinAddressSpace (unsigned AS) const |
| Map from the address space field in builtin description strings to the language address space. | |
| virtual std::optional< LangAS > | getConstantAddressSpace () const |
| Return an AST address space which can be used opportunistically for constant global memory. | |
| virtual const llvm::omp::GV & | getGridValue () const |
| StringRef | getPlatformName () const |
| Retrieve the name of the platform as it is used in the availability attribute. | |
| VersionTuple | getPlatformMinVersion () const |
| Retrieve the minimum desired version of the platform, to which the program should be compiled. | |
| bool | isBigEndian () const |
| bool | isLittleEndian () const |
| virtual bool | supportsExtendIntArgs () const |
| Whether the option -fextend-arguments={32,64} is supported on the target. | |
| virtual CallingConv | getDefaultCallingConv () const |
| Gets the default calling convention for the given target. | |
| AtomicOptions | getAtomicOpts () const |
| Get the default atomic options. | |
| virtual bool | areDefaultedSMFStillPOD (const LangOptions &) const |
| Controls whether explicitly defaulted (= default) special member functions disqualify something from being POD-for-the-purposes-of-layout. | |
| virtual bool | callGlobalDeleteInDeletingDtor (const LangOptions &) const |
| Controls whether global operator delete is called by the deleting destructor or at the point where ::delete was called. | |
| virtual bool | hasSjLjLowering () const |
| Controls if __builtin_longjmp / __builtin_setjmp can be lowered to llvm.eh.sjlj.longjmp / llvm.eh.sjlj.setjmp. | |
| virtual bool | checkCFProtectionBranchSupported (DiagnosticsEngine &Diags) const |
| Check if the target supports CFProtection branch. | |
| virtual CFBranchLabelSchemeKind | getDefaultCFBranchLabelScheme () const |
| Get the target default CFBranchLabelScheme scheme. | |
| virtual bool | checkCFBranchLabelSchemeSupported (const CFBranchLabelSchemeKind Scheme, DiagnosticsEngine &Diags) const |
| virtual bool | checkCFProtectionReturnSupported (DiagnosticsEngine &Diags) const |
| Check if the target supports CFProtection return. | |
| virtual bool | allowsLargerPreferedTypeAlignment () const |
| Whether target allows to overalign ABI-specified preferred alignment. | |
| virtual bool | defaultsToAIXPowerAlignment () const |
| Whether target defaults to the power alignment rules of AIX. | |
| virtual void | setSupportedOpenCLOpts () |
| Set supported OpenCL extensions and optional core features. | |
| virtual void | supportAllOpenCLOpts (bool V=true) |
| virtual void | setCommandLineOpenCLOpts () |
| Set supported OpenCL extensions as written on command line. | |
| llvm::StringMap< bool > & | getSupportedOpenCLOpts () |
| Get supported OpenCL extensions and optional core features. | |
| const llvm::StringMap< bool > & | getSupportedOpenCLOpts () const |
| Get const supported OpenCL extensions and optional core features. | |
| virtual LangAS | getOpenCLTypeAddrSpace (OpenCLTypeKind TK) const |
| Get address space for OpenCL type. | |
| virtual unsigned | getVtblPtrAddressSpace () const |
| virtual std::optional< unsigned > | getDWARFAddressSpace (unsigned AddressSpace) const |
| const llvm::VersionTuple & | getSDKVersion () const |
| virtual bool | validateOpenCLTarget (const LangOptions &Opts, DiagnosticsEngine &Diags) const |
| Check that OpenCL target has valid options setting based on OpenCL version. | |
| virtual void | setAuxTarget (const TargetInfo *Aux) |
| bool | hasMicrosoftRecordLayout () const |
| virtual bool | allowDebugInfoForExternalRef () const |
| Whether target allows debuginfo types for decl only variables/functions. | |
| const llvm::Triple * | getDarwinTargetVariantTriple () const |
| Returns the darwin target variant triple, the variant of the deployment target for which the code is being compiled. | |
| std::optional< VersionTuple > | getDarwinTargetVariantSDKVersion () const |
| Returns the version of the darwin target variant SDK which was used during the compilation if one was specified, or an empty version otherwise. | |
| virtual bool | hasHIPImageSupport () const |
| Whether to support HIP image/texture API's. | |
| MicrosoftARM64TargetInfo::MicrosoftARM64TargetInfo | ( | const llvm::Triple & | Triple, |
| const TargetOptions & | Opts ) |
Definition at line 1739 of file AArch64.cpp.
References clang::TargetInfo::TheCXXABI, and clang::targets::WindowsARM64TargetInfo::WindowsARM64TargetInfo().
|
overridevirtual |
Reimplemented from clang::TargetInfo.
Definition at line 1758 of file AArch64.cpp.
References clang::TargetInfo::CCK_MicrosoftWin64.
|
overridevirtual |
getMinGlobalAlign - Return the minimum alignment of a global variable, unless its alignment is explicitly reduced via attributes.
If
| HasNonWeakDef | is true, this concerns a VarDecl which has a definition in current translation unit and that is not weak. |
Reimplemented from clang::TargetInfo.
Definition at line 1762 of file AArch64.cpp.
References clang::TargetInfo::getMinGlobalAlign().
|
overridevirtual |
===-— Other target property query methods -----------------------—===//
Appends the target-specific #define values for this target set to the specified buffer.
Reimplemented from clang::targets::AArch64leTargetInfo.
Definition at line 1745 of file AArch64.cpp.
References clang::TargetInfo::getTargetDefines(), and clang::TargetInfo::getTriple().