|  | 
|  | OHOSX86_32TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | 
|  | OHOSTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | 
| const char * | getStaticInitSectionSpecifier () const override | 
|  | OSTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | 
| void | getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const override | 
|  | X86_32TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts) | 
| BuiltinVaListKind | getBuiltinVaListKind () const override | 
|  | Returns the kind of __builtin_va_list type that should be used with this target. 
 | 
| int | getEHDataRegisterNumber (unsigned RegNo) const override | 
|  | Return the register number that __builtin_eh_return_regno would return with the specified argument. 
 | 
| bool | validateOperandSize (const llvm::StringMap< bool > &FeatureMap, StringRef Constraint, unsigned Size) const override | 
| void | setMaxAtomicWidth () override | 
|  | Set the maximum inline or promote width lock-free atomic operation for the given target. 
 | 
| 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. 
 | 
| bool | hasBitIntType () const override | 
|  | Determine whether the _BitInt type is supported on this target. 
 | 
| size_t | getMaxBitIntWidth () const override | 
|  | X86TargetInfo (const llvm::Triple &Triple, const TargetOptions &) | 
| const char * | getLongDoubleMangling () const override | 
|  | Return the mangled code of long double. 
 | 
| LangOptions::FPEvalMethodKind | getFPEvalMethod () const override | 
|  | Return the value for the C99 FLT_EVAL_METHOD macro. 
 | 
| bool | supportSourceEvalMethod () const override | 
| ArrayRef< const char * > | getGCCRegNames () const override | 
| ArrayRef< TargetInfo::GCCRegAlias > | getGCCRegAliases () const override | 
| ArrayRef< TargetInfo::AddlRegName > | getGCCAddlRegNames () const override | 
| bool | isSPRegName (StringRef RegName) const override | 
| bool | supportsCpuSupports () const override | 
| bool | supportsCpuIs () const override | 
| bool | supportsCpuInit () const override | 
| bool | validateCpuSupports (StringRef FeatureStr) const override | 
| bool | validateCpuIs (StringRef FeatureStr) const override | 
| bool | validateCPUSpecificCPUDispatch (StringRef Name) const override | 
| char | CPUSpecificManglingCharacter (StringRef Name) const override | 
| void | getCPUSpecificCPUDispatchFeatures (StringRef Name, llvm::SmallVectorImpl< StringRef > &Features) const override | 
| std::optional< unsigned > | getCPUCacheLineSize () const override | 
| bool | validateAsmConstraint (const char *&Name, TargetInfo::ConstraintInfo &info) const override | 
| bool | validateGlobalRegisterVariable (StringRef RegName, unsigned RegSize, bool &HasSizeMismatch) const override | 
|  | Validate register name used for global register variables. 
 | 
| bool | validateOutputSize (const llvm::StringMap< bool > &FeatureMap, StringRef Constraint, unsigned Size) const override | 
| bool | validateInputSize (const llvm::StringMap< bool > &FeatureMap, StringRef Constraint, unsigned Size) const override | 
| bool | checkCFProtectionReturnSupported (DiagnosticsEngine &Diags) const override | 
|  | Check if the target supports CFProtection return. 
 | 
| bool | checkCFProtectionBranchSupported (DiagnosticsEngine &Diags) const override | 
|  | Check if the target supports CFProtection branch. 
 | 
| std::string | convertConstraint (const char *&Constraint) 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. 
 | 
| bool | useFP16ConversionIntrinsics () const override | 
|  | Check whether llvm intrinsics such as llvm.convert.to.fp16 should be used to convert to and from __fp16. 
 | 
| void | getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const override | 
|  | X86TargetInfo::getTargetDefines - Return the set of the X86-specific macro definitions for this particular subtarget. 
 | 
| void | setFeatureEnabled (llvm::StringMap< bool > &Features, StringRef Name, bool Enabled) const final | 
|  | Enable or disable a specific target feature; the feature name must be valid. 
 | 
| bool | initFeatureMap (llvm::StringMap< bool > &Features, DiagnosticsEngine &Diags, StringRef CPU, const std::vector< std::string > &FeaturesVec) const override | 
|  | Initialize the map with the default set of target features for the CPU this should include all legal feature strings on the target. 
 | 
| bool | isValidFeatureName (StringRef Name) const override | 
|  | Determine whether this TargetInfo supports the given feature. 
 | 
| bool | hasFeature (StringRef Feature) const final | 
|  | Determine whether the given target has the given feature. 
 | 
| bool | handleTargetFeatures (std::vector< std::string > &Features, DiagnosticsEngine &Diags) override | 
|  | handleTargetFeatures - Perform initialization based on the user configured set of features. 
 | 
| StringRef | getABI () const override | 
|  | Get the ABI currently in use. 
 | 
| bool | supportsTargetAttributeTune () const override | 
|  | Determine whether this TargetInfo supports tune in target attribute. 
 | 
| bool | isValidCPUName (StringRef Name) const override | 
|  | Determine whether this TargetInfo supports the given CPU name. 
 | 
| bool | isValidTuneCPUName (StringRef Name) const override | 
|  | Determine whether this TargetInfo supports the given CPU name for tuning. 
 | 
| void | fillValidCPUList (SmallVectorImpl< StringRef > &Values) const override | 
|  | Fill a SmallVectorImpl with the valid values to setCPU. 
 | 
| void | fillValidTuneCPUList (SmallVectorImpl< StringRef > &Values) const override | 
|  | Fill a SmallVectorImpl with the valid values for tuning CPU. 
 | 
| bool | setCPU (const std::string &Name) override | 
|  | Target the specified CPU. 
 | 
| llvm::APInt | getFMVPriority (ArrayRef< StringRef > Features) const override | 
| bool | setFPMath (StringRef Name) override | 
|  | Use the specified unit for FP math. 
 | 
| bool | supportsExtendIntArgs () const override | 
|  | Whether the option -fextend-arguments={32,64} is supported on the target. 
 | 
| CallingConvCheckResult | checkCallingConvention (CallingConv CC) const override | 
|  | Determines whether a given calling convention is valid for the target. 
 | 
| bool | checkArithmeticFenceSupported () const override | 
|  | Controls if __arithmetic_fence is supported in the targeted backend. 
 | 
| CallingConv | getDefaultCallingConv () const override | 
|  | Gets the default calling convention for the given target. 
 | 
| bool | hasSjLjLowering () const override | 
|  | Controls if __builtin_longjmp / __builtin_setjmp can be lowered to llvm.eh.sjlj.longjmp / llvm.eh.sjlj.setjmp. 
 | 
| void | setSupportedOpenCLOpts () override | 
|  | Set supported OpenCL extensions and optional core features. 
 | 
| uint64_t | getPointerWidthV (LangAS AS) const override | 
| uint64_t | getPointerAlignV (LangAS AddrSpace) const override | 
| void | adjust (DiagnosticsEngine &Diags, LangOptions &Opts, const TargetInfo *Aux) override | 
|  | Set forced language options. 
 | 
| 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 bool | hasInt128Type () const | 
|  | Determine whether the __int128 type is supported on this target. 
 | 
| 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 | hasBFloat16Type () const | 
|  | Determine whether the _BFloat16 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. 
 | 
| virtual unsigned | getMinGlobalAlign (uint64_t Size, bool HasNonWeakDef) const | 
|  | getMinGlobalAlign - Return the minimum alignment of a global variable, unless its alignment is explicitly reduced via attributes. 
 | 
| 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 * | getFloat128Mangling () const | 
|  | Return the mangled code of __float128. 
 | 
| virtual const char * | getIbm128Mangling () const | 
|  | Return the mangled code of __ibm128. 
 | 
| virtual const char * | getBFloat16Mangling () const | 
|  | Return the mangled code of bfloat. 
 | 
| 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 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. 
 | 
| virtual std::optional< std::pair< unsigned, unsigned > > | getVScaleRange (const LangOptions &LangOpts, ArmStreamingKind Mode, llvm::StringMap< bool > *FeatureMap=nullptr) const | 
|  | Returns target-specific min and max values VScale_Range. 
 | 
| virtual bool | isCLZForZeroUndef () const | 
|  | 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. 
 | 
| bool | hasBuiltinMSVaList () const | 
|  | Returns whether or not type __builtin_ms_va_listtype 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. 
 | 
| bool | validateOutputConstraint (ConstraintInfo &Info) const | 
| bool | validateInputConstraint (MutableArrayRef< ConstraintInfo > OutputConstraints, ConstraintInfo &info) const | 
| virtual bool | validateConstraintModifier (StringRef, char, unsigned, std::string &) 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 | 
| 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 ParsedTargetAttr | parseTargetAttr (StringRef Str) const | 
| virtual bool | setABI (const std::string &Name) | 
|  | Use the specified ABI. 
 | 
| virtual bool | hasFeatureEnabled (const llvm::StringMap< bool > &Features, StringRef Name) const | 
|  | Check if target has a given feature enabled. 
 | 
| virtual bool | doesFeatureAffectCodeGen (StringRef Feature) const | 
|  | Returns true if feature has an impact on target code generation. 
 | 
| virtual bool | isBranchProtectionSupportedArch (StringRef Arch) const | 
|  | Determine if the Architecture in this TargetInfo supports branch protection. 
 | 
| virtual bool | validateBranchProtection (StringRef Spec, StringRef Arch, BranchProtectionInfo &BPI, const LangOptions &LO, StringRef &Err) const | 
|  | Determine if this TargetInfo supports the given branch protection specification. 
 | 
| 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 StringRef | getCPUSpecificTuneName (StringRef Name) 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. 
 | 
| const LangASMap & | getAddressSpaceMap () const | 
| unsigned | getTargetAddressSpace (LangAS AS) const | 
| virtual bool | validatePointerAuthKey (const llvm::APSInt &value) const | 
|  | Determine whether the given pointer-authentication key is valid. 
 | 
| 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 | 
| AtomicOptions | getAtomicOpts () const | 
|  | Get the default atomic options. 
 | 
| virtual CallingConvKind | getCallingConvKind (bool ClangABICompat4) const | 
| 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 CFBranchLabelSchemeKind | getDefaultCFBranchLabelScheme () const | 
|  | Get the target default CFBranchLabelScheme scheme. 
 | 
| virtual bool | checkCFBranchLabelSchemeSupported (const CFBranchLabelSchemeKind Scheme, DiagnosticsEngine &Diags) const | 
| 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 | 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 | validateTarget (DiagnosticsEngine &Diags) const | 
|  | Check the target is valid after it is fully initialized. 
 | 
| 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. 
 | 
| virtual std::pair< unsigned, unsigned > | hardwareInterferenceSizes () const | 
|  | The first value in the pair is the minimum offset between two objects to avoid false sharing (destructive interference). 
 |