clang API Documentation
Exposes information about the current target. More...
#include <TargetInfo.h>
Classes | |
struct | AddlRegName |
struct | ConstraintInfo |
struct | GCCRegAlias |
Public Types | |
enum | IntType { NoInt = 0, SignedChar, UnsignedChar, SignedShort, UnsignedShort, SignedInt, UnsignedInt, SignedLong, UnsignedLong, SignedLongLong, UnsignedLongLong } |
===---- Target Data Type Query Methods -------------------------------===// More... | |
enum | RealType { NoFloat = 255, Float = 0, Double, LongDouble } |
enum | BuiltinVaListKind { CharPtrBuiltinVaList = 0, VoidPtrBuiltinVaList, AArch64ABIBuiltinVaList, PNaClABIBuiltinVaList, PowerABIBuiltinVaList, X86_64ABIBuiltinVaList, AAPCSABIBuiltinVaList, SystemZBuiltinVaList } |
The different kinds of __builtin_va_list types defined by the target implementation. More... | |
enum | CallingConvMethodType { CCMT_Unknown, CCMT_Member, CCMT_NonMember } |
enum | CallingConvCheckResult { CCCR_OK, CCCR_Warning } |
Public Member Functions | |
virtual | ~TargetInfo () |
TargetOptions & | getTargetOpts () const |
Retrieve the target options. | |
IntType | getSizeType () const |
IntType | getIntMaxType () const |
IntType | getUIntMaxType () const |
IntType | getPtrDiffType (unsigned 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 | getSigAtomicType () const |
IntType | getProcessIDType () const |
unsigned | getTypeWidth (IntType T) const |
Return the width (in bits) of the specified integer type enum. | |
IntType | getIntTypeByWidth (unsigned BitWidth, bool IsSigned) const |
Return integer type with specified width. | |
IntType | getLeastIntTypeByWidth (unsigned BitWidth, bool IsSigned) const |
Return the smallest integer type with at least the specified width. | |
RealType | getRealTypeByWidth (unsigned BitWidth) 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 (unsigned AddrSpace) const |
Return the width of pointers on this target, for the specified address space. | |
uint64_t | getPointerAlign (unsigned AddrSpace) const |
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 |
Return the size of 'signed short' and 'unsigned short' for this target, in bits. | |
unsigned | getShortAlign () const |
Return the alignment of 'signed short' and 'unsigned short' for this target. | |
unsigned | getIntWidth () const |
unsigned | getIntAlign () const |
unsigned | getLongWidth () const |
unsigned | getLongAlign () const |
unsigned | getLongLongWidth () const |
unsigned | getLongLongAlign () const |
virtual bool | hasInt128Type () const |
Determine whether the __int128 type is supported on this target. | |
unsigned | getSuitableAlign () const |
Return the alignment that is suitable for storing any object with a fundamental alignment requirement. | |
unsigned | getMinGlobalAlign () const |
unsigned | getWCharWidth () const |
unsigned | getWCharAlign () const |
unsigned | getChar16Width () const |
unsigned | getChar16Align () const |
unsigned | getChar32Width () const |
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 | getDoubleWidth () const |
getDoubleWidth/Align/Format - Return the size/align/format of 'double'. | |
unsigned | getDoubleAlign () const |
const llvm::fltSemantics & | getDoubleFormat () const |
unsigned | getLongDoubleWidth () const |
unsigned | getLongDoubleAlign () const |
const llvm::fltSemantics & | getLongDoubleFormat () const |
virtual unsigned | getFloatEvalMethod () const |
Return the value for the C99 FLT_EVAL_METHOD macro. | |
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. | |
unsigned | getMaxVectorAlign () const |
Return the maximum vector alignment supported for the given target. | |
unsigned | getIntMaxTWidth () const |
Return the size of intmax_t and uintmax_t for this target, in bits. | |
unsigned | getUnwindWordWidth () const |
unsigned | getRegisterWidth () const |
Return the "preferred" register width on this target. | |
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. | |
unsigned | getZeroLengthBitfieldBoundary () const |
Get the fixed alignment value in bits for a member that follows a zero length bitfield. | |
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 (RealType 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 void | getTargetDefines (const LangOptions &Opts, MacroBuilder &Builder) const =0 |
===---- Other target property query methods --------------------------===// | |
virtual void | getTargetBuiltins (const Builtin::Info *&Records, unsigned &NumRecords) const =0 |
virtual bool | isCLZForZeroUndef () const |
virtual BuiltinVaListKind | getBuiltinVaListKind () const =0 |
Returns the kind of __builtin_va_list type that should be used with this target. | |
bool | isValidClobber (StringRef Name) const |
Returns whether the passed in string is a valid clobber in an inline asm statement. | |
bool | isValidGCCRegisterName (StringRef Name) const |
Returns whether the passed in string is a valid register name according to GCC. | |
StringRef | getNormalizedGCCRegisterName (StringRef Name) const |
Returns the "normalized" GCC register name. | |
bool | validateOutputConstraint (ConstraintInfo &Info) const |
bool | validateInputConstraint (ConstraintInfo *OutputConstraints, unsigned NumOutputs, ConstraintInfo &info) const |
virtual bool | validateOutputSize (StringRef, unsigned) const |
virtual bool | validateInputSize (StringRef, unsigned) const |
virtual bool | validateConstraintModifier (StringRef, char, unsigned, std::string &) const |
bool | resolveSymbolicName (const char *&Name, ConstraintInfo *OutputConstraints, unsigned NumOutputs, unsigned &Index) const |
virtual std::string | convertConstraint (const char *&Constraint) const |
virtual const char * | getClobbers () const =0 |
Returns a string of target-specific clobbers, in LLVM format. | |
const llvm::Triple & | getTriple () const |
Returns the target triple of the primary target. | |
const char * | getTargetDescription () const |
virtual bool | hasProtectedVisibility () const |
Does this target support "protected" visibility? | |
virtual std::string | isValidSectionSpecifier (StringRef SR) const |
An optional hook that targets can implement to perform semantic checking on attribute((section("foo"))) specifiers. | |
virtual void | adjust (const LangOptions &Opts) |
Set forced language options. | |
virtual void | getDefaultFeatures (llvm::StringMap< bool > &Features) const |
Get the default set of target features for the CPU; this should include all legal feature strings on the target. | |
virtual StringRef | getABI () const |
Get the ABI currently in use. | |
TargetCXXABI | getCXXABI () const |
Get the C++ ABI currently in use. | |
virtual bool | setCPU (const std::string &Name) |
Target the specified CPU. | |
virtual bool | setABI (const std::string &Name) |
Use the specified ABI. | |
virtual bool | setFPMath (StringRef Name) |
Use the specified unit for FP math. | |
bool | setCXXABI (llvm::StringRef name) |
Use this specified C++ ABI. | |
virtual bool | setCXXABI (TargetCXXABI ABI) |
Set the C++ ABI to be used by this implementation. | |
virtual void | setFeatureEnabled (llvm::StringMap< bool > &Features, StringRef Name, bool Enabled) const |
Enable or disable a specific target feature; the feature name must be valid. | |
virtual bool | handleTargetFeatures (std::vector< std::string > &Features, DiagnosticsEngine &Diags) |
Perform initialization based on the user configured set of features (e.g., +sse4). | |
virtual bool | hasFeature (StringRef Feature) const |
Determine whether the given target has the given feature. | |
unsigned | getRegParmMax () const |
bool | isTLSSupported () const |
Whether the target supports thread-local storage. | |
bool | hasNoAsmVariants () const |
Return true if {|} are normal characters in the asm string. | |
virtual int | getEHDataRegisterNumber (unsigned RegNo) const |
Return the register number that __builtin_eh_return_regno would return with the specified argument. | |
virtual const char * | getStaticInitSectionSpecifier () const |
Return the section to use for C++ static initialization functions. | |
const LangAS::Map & | getAddressSpaceMap () 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 |
virtual CallingConv | getDefaultCallingConv (CallingConvMethodType MT) const |
Gets the default calling convention for the given target and declaration context. | |
virtual CallingConvCheckResult | checkCallingConvention (CallingConv CC) const |
Determines whether a given calling convention is valid for the target. A calling convention can either be accepted, produce a warning and be substituted with the default calling convention, or (someday) produce an error (such as using thiscall on a non-instance function). | |
Static Public Member Functions | |
static TargetInfo * | CreateTargetInfo (DiagnosticsEngine &Diags, const std::shared_ptr< TargetOptions > &Opts) |
Construct a target for the given options. | |
static IntType | getCorrespondingUnsignedType (IntType T) |
static bool | isTypeSigned (IntType T) |
Returns true if the type is signed; false otherwise. | |
static const char * | getTypeName (IntType T) |
Return the user string for the specified integer type enum. | |
static const char * | getTypeFormatModifier (IntType T) |
Return the printf format modifier for the specified integer type enum. | |
Protected Member Functions | |
TargetInfo (const llvm::Triple &T) | |
virtual uint64_t | getPointerWidthV (unsigned AddrSpace) const |
virtual uint64_t | getPointerAlignV (unsigned AddrSpace) const |
virtual enum IntType | getPtrDiffTypeV (unsigned AddrSpace) const |
virtual void | getGCCRegNames (const char *const *&Names, unsigned &NumNames) const =0 |
virtual void | getGCCRegAliases (const GCCRegAlias *&Aliases, unsigned &NumAliases) const =0 |
virtual void | getGCCAddlRegNames (const AddlRegName *&Addl, unsigned &NumAddl) const |
virtual bool | validateAsmConstraint (const char *&Name, TargetInfo::ConstraintInfo &info) const =0 |
Protected Attributes | |
bool | BigEndian |
bool | TLSSupported |
bool | NoAsmVariants |
unsigned char | PointerWidth |
unsigned char | PointerAlign |
unsigned char | BoolWidth |
unsigned char | BoolAlign |
unsigned char | IntWidth |
unsigned char | IntAlign |
unsigned char | HalfWidth |
unsigned char | HalfAlign |
unsigned char | FloatWidth |
unsigned char | FloatAlign |
unsigned char | DoubleWidth |
unsigned char | DoubleAlign |
unsigned char | LongDoubleWidth |
unsigned char | LongDoubleAlign |
unsigned char | LargeArrayMinWidth |
unsigned char | LargeArrayAlign |
unsigned char | LongWidth |
unsigned char | LongAlign |
unsigned char | LongLongWidth |
unsigned char | LongLongAlign |
unsigned char | SuitableAlign |
unsigned char | MinGlobalAlign |
unsigned char | MaxAtomicPromoteWidth |
unsigned char | MaxAtomicInlineWidth |
unsigned short | MaxVectorAlign |
const char * | DescriptionString |
const char * | UserLabelPrefix |
const char * | MCountName |
const llvm::fltSemantics * | HalfFormat |
const llvm::fltSemantics * | FloatFormat |
const llvm::fltSemantics * | DoubleFormat |
const llvm::fltSemantics * | LongDoubleFormat |
unsigned char | RegParmMax |
unsigned char | SSERegParmMax |
TargetCXXABI | TheCXXABI |
const LangAS::Map * | AddrSpaceMap |
StringRef | PlatformName |
VersionTuple | PlatformMinVersion |
unsigned | HasAlignMac68kSupport: 1 |
unsigned | RealTypeUsesObjCFPRet: 3 |
unsigned | ComplexLongDoubleUsesFP2Ret: 1 |
IntType | SizeType |
IntType | IntMaxType |
IntType | PtrDiffType |
IntType | IntPtrType |
IntType | WCharType |
IntType | WIntType |
IntType | Char16Type |
IntType | Char32Type |
IntType | Int64Type |
IntType | SigAtomicType |
IntType | ProcessIDType |
unsigned | UseSignedCharForObjCBool: 1 |
Whether Objective-C's built-in boolean type should be signed char. | |
unsigned | UseBitFieldTypeAlignment: 1 |
unsigned | UseZeroLengthBitfieldAlignment: 1 |
Whether zero length bitfields (e.g., int : 0;) force alignment of the next bitfield. | |
unsigned | ZeroLengthBitfieldBoundary |
bool | UseAddrSpaceMapMangling |
Specify if mangling based on address space map should be used or not for language specific address spaces. |
Exposes information about the current target.
Definition at line 49 of file include/clang/Basic/TargetInfo.h.
The different kinds of __builtin_va_list types defined by the target implementation.
CharPtrBuiltinVaList |
typedef char* __builtin_va_list; |
VoidPtrBuiltinVaList |
typedef void* __builtin_va_list; |
AArch64ABIBuiltinVaList |
__builtin_va_list as defind by the AArch64 ABI http://infocenter.arm.com/help/topic/com.arm.doc.ihi0055a/IHI0055A_aapcs64.pdf |
PNaClABIBuiltinVaList |
__builtin_va_list as defined by the PNaCl ABI: http://www.chromium.org/nativeclient/pnacl/bitcode-abi#TOC-Machine-Types |
PowerABIBuiltinVaList |
__builtin_va_list as defined by the Power ABI: https://www.power.org /resources/downloads/Power-Arch-32-bit-ABI-supp-1.0-Embedded.pdf |
X86_64ABIBuiltinVaList |
__builtin_va_list as defined by the x86-64 ABI: http://www.x86-64.org/documentation/abi.pdf |
AAPCSABIBuiltinVaList |
__builtin_va_list as defined by ARM AAPCS ABI http://infocenter.arm.com |
SystemZBuiltinVaList |
Definition at line 133 of file include/clang/Basic/TargetInfo.h.
Definition at line 807 of file include/clang/Basic/TargetInfo.h.
Definition at line 792 of file include/clang/Basic/TargetInfo.h.
===---- Target Data Type Query Methods -------------------------------===//
NoInt | |
SignedChar | |
UnsignedChar | |
SignedShort | |
UnsignedShort | |
SignedInt | |
UnsignedInt | |
SignedLong | |
UnsignedLong | |
SignedLongLong | |
UnsignedLongLong |
Definition at line 110 of file include/clang/Basic/TargetInfo.h.
Definition at line 124 of file include/clang/Basic/TargetInfo.h.
TargetInfo::TargetInfo | ( | const llvm::Triple & | T | ) | [protected] |
Definition at line 27 of file Basic/TargetInfo.cpp.
References AddrSpaceMap, BigEndian, BoolAlign, BoolWidth, Char16Type, Char32Type, ComplexLongDoubleUsesFP2Ret, DefaultAddrSpaceMap, DescriptionString, DoubleAlign, DoubleFormat, DoubleWidth, FloatAlign, FloatFormat, FloatWidth, clang::TargetCXXABI::GenericItanium, HalfAlign, HalfFormat, HalfWidth, HasAlignMac68kSupport, Int64Type, IntAlign, IntMaxType, IntPtrType, IntWidth, LargeArrayAlign, LargeArrayMinWidth, LongAlign, LongDoubleAlign, LongDoubleFormat, LongDoubleWidth, LongLongAlign, LongLongWidth, LongWidth, MaxAtomicInlineWidth, MaxAtomicPromoteWidth, MaxVectorAlign, MCountName, clang::TargetCXXABI::Microsoft, MinGlobalAlign, NoAsmVariants, PlatformMinVersion, PlatformName, PointerAlign, PointerWidth, ProcessIDType, PtrDiffType, RealTypeUsesObjCFPRet, RegParmMax, clang::TargetCXXABI::set(), SigAtomicType, SignedInt, SignedLong, SignedLongLong, SizeType, SSERegParmMax, SuitableAlign, TheCXXABI, TLSSupported, UnsignedInt, UnsignedLong, UnsignedShort, UseAddrSpaceMapMangling, UseBitFieldTypeAlignment, UserLabelPrefix, UseSignedCharForObjCBool, UseZeroLengthBitfieldAlignment, WCharType, WIntType, and ZeroLengthBitfieldBoundary.
TargetInfo::~TargetInfo | ( | ) | [virtual] |
Definition at line 99 of file Basic/TargetInfo.cpp.
void TargetInfo::adjust | ( | const LangOptions & | Opts | ) | [virtual] |
Set forced language options.
Apply changes to the target information with respect to certain language options which change the target configuration.
adjust - Set forced language options. Apply changes to the target information with respect to certain language options which change the target configuration.
Definition at line 270 of file Basic/TargetInfo.cpp.
References DoubleAlign, DoubleFormat, DoubleWidth, FloatAlign, FloatFormat, FloatWidth, HalfAlign, HalfFormat, HalfWidth, Int64Type, IntAlign, IntMaxType, IntPtrType, IntWidth, LongAlign, LongDoubleAlign, LongDoubleFormat, LongDoubleWidth, LongLongAlign, LongLongWidth, LongWidth, PointerWidth, PtrDiffType, SignedInt, SignedLong, SignedLongLong, SizeType, UnsignedInt, UnsignedLong, UnsignedShort, UseBitFieldTypeAlignment, and WCharType.
Referenced by clang::CompilerInstance::ExecuteAction().
virtual CallingConvCheckResult clang::TargetInfo::checkCallingConvention | ( | CallingConv | CC | ) | const [inline, virtual] |
Determines whether a given calling convention is valid for the target. A calling convention can either be accepted, produce a warning and be substituted with the default calling convention, or (someday) produce an error (such as using thiscall on a non-instance function).
Definition at line 816 of file include/clang/Basic/TargetInfo.h.
References clang::CC_C, CCCR_OK, and CCCR_Warning.
Referenced by clang::Sema::CheckCallingConvAttr().
virtual std::string clang::TargetInfo::convertConstraint | ( | const char *& | Constraint | ) | const [inline, virtual] |
Definition at line 604 of file include/clang/Basic/TargetInfo.h.
Referenced by SimplifyConstraint().
TargetInfo * TargetInfo::CreateTargetInfo | ( | DiagnosticsEngine & | Diags, |
const std::shared_ptr< TargetOptions > & | Opts | ||
) | [static] |
Construct a target for the given options.
Opts | - The options to use to initialize the target. The target may modify the options to canonicalize the target feature information to match what the backend expects. |
CreateTargetInfo - Return the target info object for the specified target triple.
Definition at line 6607 of file Targets.cpp.
References AllocateTarget(), and clang::DiagnosticsEngine::Report().
Referenced by clang::ASTUnit::CodeComplete(), clang::createChainedIncludesSource(), clang::CompilerInstance::ExecuteAction(), and clang::ASTUnit::LoadFromCompilerInvocationAction().
virtual StringRef clang::TargetInfo::getABI | ( | ) | const [inline, virtual] |
Get the ABI currently in use.
Definition at line 674 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenModule::getTargetCodeGenInfo().
const LangAS::Map& clang::TargetInfo::getAddressSpaceMap | ( | ) | const [inline] |
Definition at line 778 of file include/clang/Basic/TargetInfo.h.
References AddrSpaceMap.
Referenced by getAddressSpaceMap().
unsigned clang::TargetInfo::getBoolAlign | ( | ) | const [inline] |
Return the alignment of '_Bool' and C++ 'bool' for this target.
Definition at line 282 of file include/clang/Basic/TargetInfo.h.
References BoolAlign.
unsigned clang::TargetInfo::getBoolWidth | ( | ) | const [inline] |
Return the size of '_Bool' and C++ 'bool' for this target, in bits.
Definition at line 279 of file include/clang/Basic/TargetInfo.h.
References BoolWidth.
virtual BuiltinVaListKind clang::TargetInfo::getBuiltinVaListKind | ( | ) | const [pure virtual] |
Returns the kind of __builtin_va_list type that should be used with this target.
Referenced by clang::ASTContext::getBuiltinVaListDecl().
unsigned clang::TargetInfo::getChar16Align | ( | ) | const [inline] |
Definition at line 329 of file include/clang/Basic/TargetInfo.h.
References Char16Type, and getTypeAlign().
IntType clang::TargetInfo::getChar16Type | ( | ) | const [inline] |
Definition at line 221 of file include/clang/Basic/TargetInfo.h.
References Char16Type.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getChar16Width | ( | ) | const [inline] |
getChar16Width/Align - Return the size of 'char16_t' for this target, in bits.
Definition at line 328 of file include/clang/Basic/TargetInfo.h.
References Char16Type, and getTypeWidth().
Referenced by EvaluateValue(), and getCharWidth().
unsigned clang::TargetInfo::getChar32Align | ( | ) | const [inline] |
Definition at line 334 of file include/clang/Basic/TargetInfo.h.
References Char32Type, and getTypeAlign().
IntType clang::TargetInfo::getChar32Type | ( | ) | const [inline] |
Definition at line 222 of file include/clang/Basic/TargetInfo.h.
References Char32Type.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getChar32Width | ( | ) | const [inline] |
getChar32Width/Align - Return the size of 'char32_t' for this target, in bits.
Definition at line 333 of file include/clang/Basic/TargetInfo.h.
References Char32Type, and getTypeWidth().
Referenced by EvaluateValue(), and getCharWidth().
unsigned clang::TargetInfo::getCharAlign | ( | ) | const [inline] |
Definition at line 285 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CGObjCRuntime::EmitValueForIvarAtOffset(), getTypeAlign(), and roundUpSizeToCharAlignment().
unsigned clang::TargetInfo::getCharWidth | ( | ) | const [inline] |
Definition at line 284 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnEnumBody(), clang::CharLiteralParser::CharLiteralParser(), DefineTypeSizeof(), EvaluateValue(), getCharWidth(), clang::ASTContext::getDeclAlign(), getIntTypeByWidth(), getLeastIntTypeByWidth(), getTypeConstantSuffix(), getTypeWidth(), handleModeAttr(), and InitializePredefinedMacros().
virtual const char* clang::TargetInfo::getClobbers | ( | ) | const [pure virtual] |
Returns a string of target-specific clobbers, in LLVM format.
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
static IntType clang::TargetInfo::getCorrespondingUnsignedType | ( | IntType | T | ) | [inline, static] |
Definition at line 230 of file include/clang/Basic/TargetInfo.h.
References SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by getUInt64Type(), getUIntMaxType(), and getUIntPtrType().
TargetCXXABI clang::TargetInfo::getCXXABI | ( | ) | const [inline] |
Get the C++ ABI currently in use.
Definition at line 677 of file include/clang/Basic/TargetInfo.h.
References TheCXXABI.
Referenced by BuildAppleKextVirtualCall(), clang::Sema::BuildArrayType(), clang::Sema::BuildCallToMemberFunction(), clang::Sema::CheckAddressOfOperand(), clang::Sema::CheckBaseSpecifier(), checkDLLAttribute(), checkDLLAttributeRedeclaration(), clang::Sema::CheckFunctionDeclaration(), clang::Sema::CheckParmsForFunctionDef(), CheckTemplateArgumentPointerToMember(), computeKeyFunction(), createCXXABI(), clang::CodeGen::CreateItaniumCXXABI(), clang::ASTContext::createMangleContext(), deactivateArgCleanupsBeforeCall(), clang::CodeGen::CodeGenFunction::EmitCallArg(), clang::CodeGen::CodeGenFunction::EmitCallArgs(), clang::CodeGen::CodeGenFunction::EmitConstructorBody(), clang::CodeGen::CGCXXABI::EmitCtorCompleteObjectHandler(), clang::CodeGen::CodeGenFunction::EmitCtorPrologue(), clang::CodeGen::CodeGenFunction::EmitParmDecl(), getCallingConvMangling(), getConstantArrayInfoInChars(), getUniqueTagTypeName(), clang::ASTContext::getVTableContext(), handleDLLAttr(), isMsLayout(), clang::MangleContext::mangleName(), clang::Sema::MarkVTableUsed(), clang::Sema::PerformImplicitConversion(), TryReinterpretCast(), TryStaticImplicitCast(), useClangCallTerminate(), and clang::Sema::VerifyBitField().
virtual CallingConv clang::TargetInfo::getDefaultCallingConv | ( | CallingConvMethodType | MT | ) | const [inline, virtual] |
Gets the default calling convention for the given target and declaration context.
Definition at line 800 of file include/clang/Basic/TargetInfo.h.
References clang::CC_C.
Referenced by clang::Sema::CheckCallingConvAttr().
virtual void clang::TargetInfo::getDefaultFeatures | ( | llvm::StringMap< bool > & | Features | ) | const [inline, virtual] |
Get the default set of target features for the CPU; this should include all legal feature strings on the target.
Definition at line 670 of file include/clang/Basic/TargetInfo.h.
unsigned clang::TargetInfo::getDoubleAlign | ( | ) | const [inline] |
Definition at line 348 of file include/clang/Basic/TargetInfo.h.
References DoubleAlign.
const llvm::fltSemantics& clang::TargetInfo::getDoubleFormat | ( | ) | const [inline] |
Definition at line 349 of file include/clang/Basic/TargetInfo.h.
References DoubleFormat.
Referenced by clang::ASTContext::getFloatTypeSemantics(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getDoubleWidth | ( | ) | const [inline] |
getDoubleWidth/Align/Format - Return the size/align/format of 'double'.
Definition at line 347 of file include/clang/Basic/TargetInfo.h.
References DoubleWidth.
Referenced by getRealTypeByWidth(), and InitializePredefinedMacros().
virtual int clang::TargetInfo::getEHDataRegisterNumber | ( | unsigned | RegNo | ) | const [inline, virtual] |
Return the register number that __builtin_eh_return_regno would return with the specified argument.
Definition at line 769 of file include/clang/Basic/TargetInfo.h.
unsigned clang::TargetInfo::getFloatAlign | ( | ) | const [inline] |
Definition at line 343 of file include/clang/Basic/TargetInfo.h.
References FloatAlign.
virtual unsigned clang::TargetInfo::getFloatEvalMethod | ( | ) | const [inline, virtual] |
Return the value for the C99 FLT_EVAL_METHOD macro.
Definition at line 360 of file include/clang/Basic/TargetInfo.h.
Referenced by InitializePredefinedMacros().
const llvm::fltSemantics& clang::TargetInfo::getFloatFormat | ( | ) | const [inline] |
Definition at line 344 of file include/clang/Basic/TargetInfo.h.
References FloatFormat.
Referenced by clang::ASTContext::getFloatTypeSemantics(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getFloatWidth | ( | ) | const [inline] |
getFloatWidth/Align/Format - Return the size/align/format of 'float'.
Definition at line 342 of file include/clang/Basic/TargetInfo.h.
References FloatWidth.
Referenced by getRealTypeByWidth(), and InitializePredefinedMacros().
virtual void clang::TargetInfo::getGCCAddlRegNames | ( | const AddlRegName *& | Addl, |
unsigned & | NumAddl | ||
) | const [inline, protected, virtual] |
Definition at line 839 of file include/clang/Basic/TargetInfo.h.
Referenced by getNormalizedGCCRegisterName(), and isValidGCCRegisterName().
virtual void clang::TargetInfo::getGCCRegAliases | ( | const GCCRegAlias *& | Aliases, |
unsigned & | NumAliases | ||
) | const [protected, pure virtual] |
Referenced by getNormalizedGCCRegisterName(), and isValidGCCRegisterName().
virtual void clang::TargetInfo::getGCCRegNames | ( | const char *const *& | Names, |
unsigned & | NumNames | ||
) | const [protected, pure virtual] |
Referenced by getNormalizedGCCRegisterName(), and isValidGCCRegisterName().
unsigned clang::TargetInfo::getHalfAlign | ( | ) | const [inline] |
Definition at line 338 of file include/clang/Basic/TargetInfo.h.
References HalfAlign.
const llvm::fltSemantics& clang::TargetInfo::getHalfFormat | ( | ) | const [inline] |
Definition at line 339 of file include/clang/Basic/TargetInfo.h.
References HalfFormat.
Referenced by clang::ASTContext::getFloatTypeSemantics().
unsigned clang::TargetInfo::getHalfWidth | ( | ) | const [inline] |
getHalfWidth/Align/Format - Return the size/align/format of 'half'.
Definition at line 337 of file include/clang/Basic/TargetInfo.h.
References HalfWidth.
IntType clang::TargetInfo::getInt64Type | ( | ) | const [inline] |
Definition at line 223 of file include/clang/Basic/TargetInfo.h.
References Int64Type.
Referenced by DecodeTypeFromStr(), DefineExactWidthIntType(), and DefineExactWidthIntTypeSize().
unsigned clang::TargetInfo::getIntAlign | ( | ) | const [inline] |
Definition at line 298 of file include/clang/Basic/TargetInfo.h.
References IntAlign.
Referenced by getTypeAlign().
unsigned clang::TargetInfo::getIntMaxTWidth | ( | ) | const [inline] |
Return the size of intmax_t and uintmax_t for this target, in bits.
Definition at line 378 of file include/clang/Basic/TargetInfo.h.
References getTypeWidth(), and IntMaxType.
Referenced by clang::Sema::ActOnNumericConstant().
IntType clang::TargetInfo::getIntMaxType | ( | ) | const [inline] |
Definition at line 208 of file include/clang/Basic/TargetInfo.h.
References IntMaxType.
Referenced by clang::ASTContext::getIntMaxType(), and InitializePredefinedMacros().
IntType clang::TargetInfo::getIntPtrType | ( | ) | const [inline] |
Definition at line 215 of file include/clang/Basic/TargetInfo.h.
References IntPtrType.
Referenced by clang::ASTContext::getIntPtrType(), and InitializePredefinedMacros().
TargetInfo::IntType TargetInfo::getIntTypeByWidth | ( | unsigned | BitWidth, |
bool | IsSigned | ||
) | const |
Return integer type with specified width.
Definition at line 178 of file Basic/TargetInfo.cpp.
References getCharWidth(), getIntWidth(), getLongLongWidth(), getLongWidth(), getShortWidth(), NoInt, SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by clang::ASTContext::getIntTypeForBitwidth().
unsigned clang::TargetInfo::getIntWidth | ( | ) | const [inline] |
getIntWidth/Align - Return the size of 'signed int' and 'unsigned int' for this target, in bits.
Definition at line 297 of file include/clang/Basic/TargetInfo.h.
References IntWidth.
Referenced by clang::Sema::ActOnCXXNew(), clang::Sema::ActOnEnumBody(), clang::Sema::ActOnGNUNullExpr(), clang::Sema::ActOnIntegerConstant(), clang::Sema::ActOnNumericConstant(), clang::Sema::BuildCXXNew(), clang::CharLiteralParser::CharLiteralParser(), clang::Sema::CheckEnumConstant(), clang::CodeGen::CodeGenModule::CodeGenModule(), EvaluateValue(), getIntTypeByWidth(), getLeastIntTypeByWidth(), getTypeConstantSuffix(), getTypeWidth(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getLargeArrayAlign | ( | ) | const [inline] |
Definition at line 365 of file include/clang/Basic/TargetInfo.h.
References LargeArrayAlign.
Referenced by clang::ASTContext::getDeclAlign().
unsigned clang::TargetInfo::getLargeArrayMinWidth | ( | ) | const [inline] |
Definition at line 364 of file include/clang/Basic/TargetInfo.h.
References LargeArrayMinWidth.
Referenced by clang::ASTContext::getDeclAlign().
TargetInfo::IntType TargetInfo::getLeastIntTypeByWidth | ( | unsigned | BitWidth, |
bool | IsSigned | ||
) | const |
Return the smallest integer type with at least the specified width.
Definition at line 193 of file Basic/TargetInfo.cpp.
References getCharWidth(), getIntWidth(), getLongLongWidth(), getLongWidth(), getShortWidth(), NoInt, SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineFastIntType(), and DefineLeastWidthIntType().
unsigned clang::TargetInfo::getLongAlign | ( | ) | const [inline] |
Definition at line 303 of file include/clang/Basic/TargetInfo.h.
References LongAlign.
Referenced by getTypeAlign().
unsigned clang::TargetInfo::getLongDoubleAlign | ( | ) | const [inline] |
Definition at line 354 of file include/clang/Basic/TargetInfo.h.
References LongDoubleAlign.
const llvm::fltSemantics& clang::TargetInfo::getLongDoubleFormat | ( | ) | const [inline] |
Definition at line 355 of file include/clang/Basic/TargetInfo.h.
References LongDoubleFormat.
Referenced by clang::ASTContext::getFloatTypeSemantics(), getRealTypeByWidth(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getLongDoubleWidth | ( | ) | const [inline] |
getLongDoubleWidth/Align/Format - Return the size/align/format of 'long double'.
Definition at line 353 of file include/clang/Basic/TargetInfo.h.
References LongDoubleWidth.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getLongLongAlign | ( | ) | const [inline] |
Definition at line 308 of file include/clang/Basic/TargetInfo.h.
References LongLongAlign.
Referenced by getTypeAlign().
unsigned clang::TargetInfo::getLongLongWidth | ( | ) | const [inline] |
getLongLongWidth/Align - Return the size of 'signed long long' and 'unsigned long long' for this target, in bits.
Definition at line 307 of file include/clang/Basic/TargetInfo.h.
References LongLongWidth.
Referenced by clang::Sema::ActOnEnumBody(), clang::Sema::ActOnGNUNullExpr(), clang::Sema::ActOnNumericConstant(), getIntTypeByWidth(), getLeastIntTypeByWidth(), getTypeWidth(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getLongWidth | ( | ) | const [inline] |
getLongWidth/Align - Return the size of 'signed long' and 'unsigned long' for this target, in bits.
Definition at line 302 of file include/clang/Basic/TargetInfo.h.
References LongWidth.
Referenced by clang::Sema::ActOnEnumBody(), clang::Sema::ActOnGNUNullExpr(), clang::Sema::ActOnNumericConstant(), getIntTypeByWidth(), getLeastIntTypeByWidth(), getObjCEncodingForPrimitiveKind(), getTypeWidth(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getMaxAtomicInlineWidth | ( | ) | const [inline] |
Return the maximum width lock-free atomic operation which can be inlined given the supported features of the given target.
Definition at line 372 of file include/clang/Basic/TargetInfo.h.
References MaxAtomicInlineWidth.
Referenced by clang::ASTContext::AtomicUsesUnsupportedLibcall(), clang::CodeGen::CodeGenFunction::EmitAtomicExpr(), and InitializePredefinedMacros().
unsigned clang::TargetInfo::getMaxAtomicPromoteWidth | ( | ) | const [inline] |
Return the maximum width lock-free atomic operation which will ever be supported for the given target.
Definition at line 369 of file include/clang/Basic/TargetInfo.h.
References MaxAtomicPromoteWidth.
unsigned clang::TargetInfo::getMaxVectorAlign | ( | ) | const [inline] |
Return the maximum vector alignment supported for the given target.
Definition at line 375 of file include/clang/Basic/TargetInfo.h.
References MaxVectorAlign.
const char* clang::TargetInfo::getMCountName | ( | ) | const [inline] |
Returns the name of the mcount instrumentation function.
Definition at line 402 of file include/clang/Basic/TargetInfo.h.
References MCountName.
unsigned clang::TargetInfo::getMinGlobalAlign | ( | ) | const [inline] |
getMinGlobalAlign - Return the minimum alignment of a global variable, unless its alignment is explicitly reduced via attributes.
Definition at line 319 of file include/clang/Basic/TargetInfo.h.
References MinGlobalAlign.
Referenced by clang::ASTContext::getDeclAlign().
StringRef TargetInfo::getNormalizedGCCRegisterName | ( | StringRef | Name | ) | const |
Returns the "normalized" GCC register name.
For example, on x86 it will return "ax" when "eax" is passed in.
Definition at line 391 of file Basic/TargetInfo.cpp.
References getGCCAddlRegNames(), getGCCRegAliases(), getGCCRegNames(), clang::isDigit(), isValidGCCRegisterName(), and removeGCCRegisterPrefix().
Referenced by AddVariableConstraints(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
VersionTuple clang::TargetInfo::getPlatformMinVersion | ( | ) | const [inline] |
Retrieve the minimum desired version of the platform, to which the program should be compiled.
Definition at line 788 of file include/clang/Basic/TargetInfo.h.
References PlatformMinVersion.
Referenced by CheckAvailability().
StringRef clang::TargetInfo::getPlatformName | ( | ) | const [inline] |
Retrieve the name of the platform as it is used in the availability attribute.
Definition at line 784 of file include/clang/Basic/TargetInfo.h.
References PlatformName.
Referenced by CheckAvailability().
uint64_t clang::TargetInfo::getPointerAlign | ( | unsigned | AddrSpace | ) | const [inline] |
Definition at line 274 of file include/clang/Basic/TargetInfo.h.
References getPointerAlignV(), and PointerAlign.
Referenced by clang::CodeGen::CodeGenModule::CodeGenModule(), and InitializePredefinedMacros().
virtual uint64_t clang::TargetInfo::getPointerAlignV | ( | unsigned | AddrSpace | ) | const [inline, protected, virtual] |
Definition at line 829 of file include/clang/Basic/TargetInfo.h.
References PointerAlign.
Referenced by getPointerAlign().
uint64_t clang::TargetInfo::getPointerWidth | ( | unsigned | AddrSpace | ) | const [inline] |
Return the width of pointers on this target, for the specified address space.
Definition at line 271 of file include/clang/Basic/TargetInfo.h.
References getPointerWidthV(), and PointerWidth.
Referenced by clang::Sema::ActOnGNUNullExpr(), clang::CodeGen::CodeGenModule::CodeGenModule(), clang::Sema::FindAllocationFunctions(), getConstantArrayInfoInChars(), clang::ASTContext::getConstantArrayType(), GetNumNonZeroBytesInInit(), getUnwindWordWidth(), handleModeAttr(), hasInt128Type(), InitializePredefinedMacros(), and clang::MangleContext::mangleName().
virtual uint64_t clang::TargetInfo::getPointerWidthV | ( | unsigned | AddrSpace | ) | const [inline, protected, virtual] |
Definition at line 826 of file include/clang/Basic/TargetInfo.h.
References PointerWidth.
Referenced by getPointerWidth().
IntType clang::TargetInfo::getProcessIDType | ( | ) | const [inline] |
Definition at line 228 of file include/clang/Basic/TargetInfo.h.
References ProcessIDType.
Referenced by clang::ASTContext::getProcessIDType().
IntType clang::TargetInfo::getPtrDiffType | ( | unsigned | AddrSpace | ) | const [inline] |
Definition at line 212 of file include/clang/Basic/TargetInfo.h.
References getPtrDiffTypeV(), and PtrDiffType.
Referenced by clang::ASTContext::getPointerDiffType(), and InitializePredefinedMacros().
virtual enum IntType clang::TargetInfo::getPtrDiffTypeV | ( | unsigned | AddrSpace | ) | const [inline, protected, virtual] |
Definition at line 832 of file include/clang/Basic/TargetInfo.h.
References PtrDiffType.
Referenced by getPtrDiffType().
TargetInfo::RealType TargetInfo::getRealTypeByWidth | ( | unsigned | BitWidth | ) | const |
Return floating point type with specified width.
Definition at line 208 of file Basic/TargetInfo.cpp.
References Double, Float, getDoubleWidth(), getFloatWidth(), getLongDoubleFormat(), LongDouble, and NoFloat.
Referenced by clang::ASTContext::getRealTypeForBitwidth().
unsigned clang::TargetInfo::getRegisterWidth | ( | ) | const [inline] |
Return the "preferred" register width on this target.
Definition at line 386 of file include/clang/Basic/TargetInfo.h.
References PointerWidth.
unsigned clang::TargetInfo::getRegParmMax | ( | ) | const [inline] |
Definition at line 747 of file include/clang/Basic/TargetInfo.h.
References RegParmMax.
Referenced by clang::Sema::CheckRegparmAttr().
unsigned clang::TargetInfo::getShortAlign | ( | ) | const [inline] |
Return the alignment of 'signed short' and 'unsigned short' for this target.
Definition at line 293 of file include/clang/Basic/TargetInfo.h.
Referenced by getTypeAlign().
unsigned clang::TargetInfo::getShortWidth | ( | ) | const [inline] |
Return the size of 'signed short' and 'unsigned short' for this target, in bits.
Definition at line 289 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnEnumBody(), getIntTypeByWidth(), getLeastIntTypeByWidth(), getTypeConstantSuffix(), getTypeWidth(), and InitializePredefinedMacros().
IntType clang::TargetInfo::getSigAtomicType | ( | ) | const [inline] |
Definition at line 227 of file include/clang/Basic/TargetInfo.h.
References SigAtomicType.
Referenced by InitializePredefinedMacros().
IntType clang::TargetInfo::getSizeType | ( | ) | const [inline] |
Definition at line 207 of file include/clang/Basic/TargetInfo.h.
References SizeType.
Referenced by clang::ASTContext::getSizeType(), and InitializePredefinedMacros().
virtual const char* clang::TargetInfo::getStaticInitSectionSpecifier | ( | ) | const [inline, virtual] |
Return the section to use for C++ static initialization functions.
Definition at line 774 of file include/clang/Basic/TargetInfo.h.
unsigned clang::TargetInfo::getSuitableAlign | ( | ) | const [inline] |
Return the alignment that is suitable for storing any object with a fundamental alignment requirement.
Definition at line 315 of file include/clang/Basic/TargetInfo.h.
References SuitableAlign.
Referenced by clang::Sema::BuildCXXNew().
virtual void clang::TargetInfo::getTargetBuiltins | ( | const Builtin::Info *& | Records, |
unsigned & | NumRecords | ||
) | const [pure virtual] |
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.
Referenced by clang::Builtin::Context::InitializeTarget().
virtual void clang::TargetInfo::getTargetDefines | ( | const LangOptions & | Opts, |
MacroBuilder & | Builder | ||
) | const [pure virtual] |
===---- Other target property query methods --------------------------===//
Appends the target-specific #define values for this target set to the specified buffer.
Referenced by InitializePredefinedMacros().
const char* clang::TargetInfo::getTargetDescription | ( | ) | const [inline] |
Definition at line 620 of file include/clang/Basic/TargetInfo.h.
References DescriptionString.
Referenced by clang::CodeGenAction::ExecuteAction(), and clang::BackendConsumer::HandleTranslationUnit().
TargetOptions& clang::TargetInfo::getTargetOpts | ( | ) | const [inline] |
Retrieve the target options.
Definition at line 104 of file include/clang/Basic/TargetInfo.h.
const llvm::Triple& clang::TargetInfo::getTriple | ( | ) | const [inline] |
Returns the target triple of the primary target.
Definition at line 616 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenTypes::arrangeObjCMessageSendSignature(), clang::ASTContext::AtomicUsesUnsupportedLibcall(), clang::arcmt::trans::canApplyWeak(), clang::Sema::CheckCallingConvAttr(), clang::Sema::CheckMain(), clang::CodeGen::CreateItaniumCXXABI(), clang::CodeGen::CodeGenFunction::EmitCXXThrowExpr(), clang::CodeGen::CodeGenFunction::EmitCXXTryStmt(), emitGlobalDtorWithCXAAtExit(), clang::analyze_printf::PrintfSpecifier::getArgType(), clang::analyze_scanf::ScanfSpecifier::getArgType(), getCallingConvMangling(), getCodegenToUse(), getOrInsertRegisterBB(), clang::ASTContext::getPreferredTypeAlign(), clang::CodeGen::CodeGenModule::getTargetCodeGenInfo(), clang::CodeGen::CodeGenModule::getTriple(), getVisibilityOf(), handleAliasAttr(), handleInterruptAttr(), handleWeakImportAttr(), clang::analyze_format_string::FormatSpecifier::hasValidLengthModifier(), isArc4RandomAvailable(), isMachO(), clang::FunctionDecl::isMSVCRTEntryPoint(), isPermittedNeonBaseType(), isThreadWrapperReplaceable(), ParsePrintfSpecifier(), ParseScanfSpecifier(), ProcessDeclAttribute(), and clang::CodeGen::CodeGenModule::Release().
unsigned TargetInfo::getTypeAlign | ( | IntType | T | ) | const |
Return the alignment (in bits) of the specified integer type enum.
For example, SignedInt -> getIntAlign().
getTypeAlign - Return the alignment (in bits) of the specified integer type enum. For example, SignedInt -> getIntAlign().
Definition at line 231 of file Basic/TargetInfo.cpp.
References getCharAlign(), getIntAlign(), getLongAlign(), getLongLongAlign(), getShortAlign(), SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by getChar16Align(), getChar32Align(), and getWCharAlign().
const char * TargetInfo::getTypeConstantSuffix | ( | IntType | T | ) | const |
Return the constant suffix for the specified integer type enum.
For example, SignedLong -> "L".
getTypeConstantSuffix - Return the constant suffix for the specified integer type enum. For example, SignedLong -> "L".
Definition at line 121 of file Basic/TargetInfo.cpp.
References getCharWidth(), getIntWidth(), getShortWidth(), SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineExactWidthIntType(), DefineTypeSize(), and InitializePredefinedMacros().
const char * TargetInfo::getTypeFormatModifier | ( | IntType | T | ) | [static] |
Return the printf format modifier for the specified integer type enum.
For example, SignedLong -> "l".
getTypeFormatModifier - Return the printf format modifier for the specified integer type enum. For example, SignedLong -> "l".
Definition at line 144 of file Basic/TargetInfo.cpp.
References SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineFmt().
const char * TargetInfo::getTypeName | ( | IntType | T | ) | [static] |
Return the user string for the specified integer type enum.
For example, SignedShort -> "short".
getTypeName - Return the user string for the specified integer type enum. For example, SignedShort -> "short".
Definition at line 103 of file Basic/TargetInfo.cpp.
References SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineType().
unsigned TargetInfo::getTypeWidth | ( | IntType | T | ) | const |
Return the width (in bits) of the specified integer type enum.
For example, SignedInt -> getIntWidth().
getTypeWidth - Return the width (in bits) of the specified integer type enum. For example, SignedInt -> getIntWidth().
Definition at line 162 of file Basic/TargetInfo.cpp.
References getCharWidth(), getIntWidth(), getLongLongWidth(), getLongWidth(), getShortWidth(), SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineExactWidthIntType(), DefineExactWidthIntTypeSize(), DefineTypeSize(), DefineTypeWidth(), getChar16Width(), getChar32Width(), getIntMaxTWidth(), getWCharWidth(), and InitializePredefinedMacros().
IntType clang::TargetInfo::getUInt64Type | ( | ) | const [inline] |
Definition at line 224 of file include/clang/Basic/TargetInfo.h.
References getCorrespondingUnsignedType(), and Int64Type.
Referenced by DefineExactWidthIntType(), and DefineExactWidthIntTypeSize().
IntType clang::TargetInfo::getUIntMaxType | ( | ) | const [inline] |
Definition at line 209 of file include/clang/Basic/TargetInfo.h.
References getCorrespondingUnsignedType(), and IntMaxType.
Referenced by clang::ASTContext::getUIntMaxType(), and InitializePredefinedMacros().
IntType clang::TargetInfo::getUIntPtrType | ( | ) | const [inline] |
Definition at line 216 of file include/clang/Basic/TargetInfo.h.
References getCorrespondingUnsignedType(), and IntPtrType.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getUnwindWordWidth | ( | ) | const [inline] |
Definition at line 383 of file include/clang/Basic/TargetInfo.h.
References getPointerWidth().
Referenced by handleModeAttr().
const char* clang::TargetInfo::getUserLabelPrefix | ( | ) | const [inline] |
Returns the default value of the __USER_LABEL_PREFIX__ macro, which is the prefix given to user symbols by default.
On most platforms this is "_", but it is "" on some, and "." on others.
Definition at line 397 of file include/clang/Basic/TargetInfo.h.
References UserLabelPrefix.
Referenced by InitializePredefinedMacros(), and clang::MangleContext::mangleName().
unsigned clang::TargetInfo::getWCharAlign | ( | ) | const [inline] |
Definition at line 324 of file include/clang/Basic/TargetInfo.h.
References getTypeAlign(), and WCharType.
IntType clang::TargetInfo::getWCharType | ( | ) | const [inline] |
Definition at line 219 of file include/clang/Basic/TargetInfo.h.
References WCharType.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getWCharWidth | ( | ) | const [inline] |
getWCharWidth/Align - Return the size of 'wchar_t' for this target, in bits.
Definition at line 323 of file include/clang/Basic/TargetInfo.h.
References getTypeWidth(), and WCharType.
Referenced by clang::CharLiteralParser::CharLiteralParser(), EvaluateValue(), and getCharWidth().
IntType clang::TargetInfo::getWIntType | ( | ) | const [inline] |
Definition at line 220 of file include/clang/Basic/TargetInfo.h.
References WIntType.
Referenced by InitializePredefinedMacros().
unsigned clang::TargetInfo::getZeroLengthBitfieldBoundary | ( | ) | const [inline] |
Get the fixed alignment value in bits for a member that follows a zero length bitfield.
Definition at line 432 of file include/clang/Basic/TargetInfo.h.
References ZeroLengthBitfieldBoundary.
virtual bool clang::TargetInfo::handleTargetFeatures | ( | std::vector< std::string > & | Features, |
DiagnosticsEngine & | Diags | ||
) | [inline, virtual] |
Perform initialization based on the user configured set of features (e.g., +sse4).
The list is guaranteed to have at most one entry per feature.
The target may modify the features list, to change which options are passed onwards to the backend.
Definition at line 736 of file include/clang/Basic/TargetInfo.h.
bool clang::TargetInfo::hasAlignMac68kSupport | ( | ) | const [inline] |
Check whether this target support '#pragma options align=mac68k'.
Definition at line 437 of file include/clang/Basic/TargetInfo.h.
References HasAlignMac68kSupport.
virtual bool clang::TargetInfo::hasFeature | ( | StringRef | Feature | ) | const [inline, virtual] |
Determine whether the given target has the given feature.
Definition at line 742 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::DeclSpec::Finish(), HandleNeonVectorTypeAttr(), and hasFeature().
virtual bool clang::TargetInfo::hasInt128Type | ( | ) | const [inline, virtual] |
Determine whether the __int128 type is supported on this target.
Definition at line 311 of file include/clang/Basic/TargetInfo.h.
References getPointerWidth().
Referenced by clang::Sema::ActOnNumericConstant(), ConvertDeclSpecToType(), clang::Sema::Initialize(), and InitializePredefinedMacros().
bool clang::TargetInfo::hasNoAsmVariants | ( | ) | const [inline] |
Return true if {|} are normal characters in the asm string.
If this returns false (the default), then {abc|xyz} is syntax that says that when compiling for asm variant #0, "abc" should be generated, but when compiling for asm variant #1, "xyz" should be generated.
Definition at line 763 of file include/clang/Basic/TargetInfo.h.
References NoAsmVariants.
Referenced by clang::GCCAsmStmt::AnalyzeAsmString().
virtual bool clang::TargetInfo::hasProtectedVisibility | ( | ) | const [inline, virtual] |
Does this target support "protected" visibility?
Any target which dynamic libraries will naturally support something like "default" (meaning that the symbol is visible outside this shared object) and "hidden" (meaning that it isn't) visibilities, but "protected" is really an ELF-specific concept with weird semantics designed around the convenience of dynamic linker implementations. Which is not to suggest that there's consistent target-independent semantics for "default" visibility either; the entire thing is pretty badly mangled.
Definition at line 645 of file include/clang/Basic/TargetInfo.h.
Referenced by handleVisibilityAttr().
bool clang::TargetInfo::isBigEndian | ( | ) | const [inline] |
Definition at line 790 of file include/clang/Basic/TargetInfo.h.
References BigEndian.
Referenced by InitializePredefinedMacros().
virtual bool clang::TargetInfo::isCLZForZeroUndef | ( | ) | const [inline, virtual] |
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.
Definition at line 494 of file include/clang/Basic/TargetInfo.h.
bool clang::TargetInfo::isTLSSupported | ( | ) | const [inline] |
Whether the target supports thread-local storage.
Definition at line 753 of file include/clang/Basic/TargetInfo.h.
References TLSSupported.
Referenced by clang::Sema::ActOnVariableDeclarator(), handleDeclspecThreadAttr(), HasExtension(), hasFeature(), and HasFeature().
bool TargetInfo::isTypeSigned | ( | IntType | T | ) | [static] |
Returns true if the type is signed; false otherwise.
isTypeSigned - Return whether an integer types is signed. Returns true if the type is signed; false otherwise.
Definition at line 249 of file Basic/TargetInfo.cpp.
References SignedChar, SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedChar, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineExactWidthIntType(), DefineExactWidthIntTypeSize(), DefineFmt(), DefineTypeSize(), clang::ASTContext::InitBuiltinTypes(), and InitializePredefinedMacros().
bool TargetInfo::isValidClobber | ( | StringRef | Name | ) | const |
Returns whether the passed in string is a valid clobber in an inline asm statement.
This is used by Sema.
isValidClobber - Returns whether the passed in string is a valid clobber in an inline asm statement. This is used by Sema.
Definition at line 324 of file Basic/TargetInfo.cpp.
References isValidGCCRegisterName().
Referenced by clang::Sema::ActOnGCCAsmStmt().
bool TargetInfo::isValidGCCRegisterName | ( | StringRef | Name | ) | const |
Returns whether the passed in string is a valid register name according to GCC.
This is used by Sema for inline asm statements.
isValidGCCRegisterName - Returns whether the passed in string is a valid register name according to GCC. This is used by Sema for inline asm statements.
Definition at line 332 of file Basic/TargetInfo.cpp.
References getGCCAddlRegNames(), getGCCRegAliases(), getGCCRegNames(), clang::isDigit(), and removeGCCRegisterPrefix().
Referenced by clang::Sema::ActOnVariableDeclarator(), AddVariableConstraints(), getNormalizedGCCRegisterName(), and isValidClobber().
virtual std::string clang::TargetInfo::isValidSectionSpecifier | ( | StringRef | SR | ) | const [inline, virtual] |
An optional hook that targets can implement to perform semantic checking on attribute((section("foo"))) specifiers.
In this case, "foo" is passed in to be checked. If the section specifier is invalid, the backend should return a non-empty string that indicates the problem.
This hook is a simple quality of implementation feature to catch errors and give good diagnostics in cases when the assembler or code generator would otherwise reject the section specifier.
Definition at line 658 of file include/clang/Basic/TargetInfo.h.
Referenced by handleSectionAttr().
void clang::TargetInfo::noSignedCharForObjCBool | ( | ) | [inline] |
Definition at line 414 of file include/clang/Basic/TargetInfo.h.
References UseSignedCharForObjCBool.
Referenced by clang::CompilerInstance::ExecuteAction().
bool TargetInfo::resolveSymbolicName | ( | const char *& | Name, |
ConstraintInfo * | OutputConstraints, | ||
unsigned | NumOutputs, | ||
unsigned & | Index | ||
) | const |
Definition at line 502 of file Basic/TargetInfo.cpp.
Referenced by SimplifyConstraint(), and validateInputConstraint().
virtual bool clang::TargetInfo::setABI | ( | const std::string & | Name | ) | [inline, virtual] |
Use the specified ABI.
Definition at line 691 of file include/clang/Basic/TargetInfo.h.
virtual bool clang::TargetInfo::setCPU | ( | const std::string & | Name | ) | [inline, virtual] |
Target the specified CPU.
Definition at line 684 of file include/clang/Basic/TargetInfo.h.
bool clang::TargetInfo::setCXXABI | ( | llvm::StringRef | name | ) | [inline] |
Use this specified C++ ABI.
Definition at line 705 of file include/clang/Basic/TargetInfo.h.
References clang::TargetCXXABI::tryParse().
virtual bool clang::TargetInfo::setCXXABI | ( | TargetCXXABI | ABI | ) | [inline, virtual] |
Set the C++ ABI to be used by this implementation.
Definition at line 714 of file include/clang/Basic/TargetInfo.h.
References TheCXXABI.
virtual void clang::TargetInfo::setFeatureEnabled | ( | llvm::StringMap< bool > & | Features, |
StringRef | Name, | ||
bool | Enabled | ||
) | const [inline, virtual] |
Enable or disable a specific target feature; the feature name must be valid.
Definition at line 721 of file include/clang/Basic/TargetInfo.h.
virtual bool clang::TargetInfo::setFPMath | ( | StringRef | Name | ) | [inline, virtual] |
Use the specified unit for FP math.
Definition at line 698 of file include/clang/Basic/TargetInfo.h.
bool clang::TargetInfo::useAddressSpaceMapMangling | ( | ) | const [inline] |
Specify if mangling based on address space map should be used or not for language specific address spaces.
Definition at line 471 of file include/clang/Basic/TargetInfo.h.
References UseAddrSpaceMapMangling.
Referenced by isAddrSpaceMapManglingEnabled().
bool clang::TargetInfo::useBitFieldTypeAlignment | ( | ) | const [inline] |
Check whether the alignment of bit-field types is respected when laying out structures.
Definition at line 420 of file include/clang/Basic/TargetInfo.h.
References UseBitFieldTypeAlignment.
bool clang::TargetInfo::useObjCFP2RetForComplexLongDouble | ( | ) | const [inline] |
Check whether _Complex long double should use the "fp2ret" flavor of Objective-C message passing on this target.
Definition at line 465 of file include/clang/Basic/TargetInfo.h.
References ComplexLongDoubleUsesFP2Ret.
Referenced by clang::CodeGen::CodeGenModule::ReturnTypeUsesFP2Ret().
bool clang::TargetInfo::useObjCFPRetForRealType | ( | RealType | T | ) | const [inline] |
Check whether the given real type should use the "fpret" flavor of Objective-C message passing on this target.
Definition at line 459 of file include/clang/Basic/TargetInfo.h.
References RealTypeUsesObjCFPRet.
Referenced by clang::CodeGen::CodeGenModule::ReturnTypeUsesFPRet().
bool clang::TargetInfo::useSignedCharForObjCBool | ( | ) | const [inline] |
Check if the Objective-C built-in boolean type should be signed char.
Otherwise, if this returns false, the normal built-in boolean type should also be used for Objective-C.
Definition at line 411 of file include/clang/Basic/TargetInfo.h.
References UseSignedCharForObjCBool.
bool clang::TargetInfo::useZeroLengthBitfieldAlignment | ( | ) | const [inline] |
Check whether zero length bitfields should force alignment of the next member.
Definition at line 426 of file include/clang/Basic/TargetInfo.h.
References UseZeroLengthBitfieldAlignment.
virtual bool clang::TargetInfo::validateAsmConstraint | ( | const char *& | Name, |
TargetInfo::ConstraintInfo & | info | ||
) | const [protected, pure virtual] |
Referenced by validateInputConstraint(), and validateOutputConstraint().
virtual bool clang::TargetInfo::validateConstraintModifier | ( | StringRef | , |
char | , | ||
unsigned | , | ||
std::string & | |||
) | const [inline, virtual] |
Definition at line 591 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnGCCAsmStmt().
bool TargetInfo::validateInputConstraint | ( | ConstraintInfo * | OutputConstraints, |
unsigned | NumOutputs, | ||
ConstraintInfo & | info | ||
) | const |
Definition at line 526 of file Basic/TargetInfo.cpp.
References clang::TargetInfo::ConstraintInfo::ConstraintStr, clang::TargetInfo::ConstraintInfo::getTiedOperand(), clang::TargetInfo::ConstraintInfo::hasTiedOperand(), resolveSymbolicName(), clang::TargetInfo::ConstraintInfo::setAllowsMemory(), clang::TargetInfo::ConstraintInfo::setAllowsRegister(), clang::TargetInfo::ConstraintInfo::setTiedOperand(), and validateAsmConstraint().
Referenced by clang::Sema::ActOnGCCAsmStmt(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
virtual bool clang::TargetInfo::validateInputSize | ( | StringRef | , |
unsigned | |||
) | const [inline, virtual] |
Definition at line 586 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnGCCAsmStmt().
bool TargetInfo::validateOutputConstraint | ( | ConstraintInfo & | Info | ) | const |
Definition at line 443 of file Basic/TargetInfo.cpp.
References clang::TargetInfo::ConstraintInfo::allowsMemory(), clang::TargetInfo::ConstraintInfo::allowsRegister(), clang::TargetInfo::ConstraintInfo::getConstraintStr(), clang::TargetInfo::ConstraintInfo::setAllowsMemory(), clang::TargetInfo::ConstraintInfo::setAllowsRegister(), clang::TargetInfo::ConstraintInfo::setIsReadWrite(), and validateAsmConstraint().
Referenced by clang::Sema::ActOnGCCAsmStmt(), AddVariableConstraints(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
virtual bool clang::TargetInfo::validateOutputSize | ( | StringRef | , |
unsigned | |||
) | const [inline, virtual] |
Definition at line 581 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnGCCAsmStmt().
const LangAS::Map* clang::TargetInfo::AddrSpaceMap [protected] |
Definition at line 79 of file include/clang/Basic/TargetInfo.h.
Referenced by getAddressSpaceMap(), and TargetInfo().
bool clang::TargetInfo::BigEndian [protected] |
Definition at line 55 of file include/clang/Basic/TargetInfo.h.
Referenced by isBigEndian(), and TargetInfo().
unsigned char clang::TargetInfo::BoolAlign [protected] |
Definition at line 59 of file include/clang/Basic/TargetInfo.h.
Referenced by getBoolAlign(), and TargetInfo().
unsigned char clang::TargetInfo::BoolWidth [protected] |
Definition at line 59 of file include/clang/Basic/TargetInfo.h.
Referenced by getBoolWidth(), and TargetInfo().
IntType clang::TargetInfo::Char16Type [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by getChar16Align(), getChar16Type(), getChar16Width(), and TargetInfo().
IntType clang::TargetInfo::Char32Type [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by getChar32Align(), getChar32Type(), getChar32Width(), and TargetInfo().
Definition at line 86 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useObjCFP2RetForComplexLongDouble().
const char* clang::TargetInfo::DescriptionString [protected] |
Definition at line 72 of file include/clang/Basic/TargetInfo.h.
Referenced by getTargetDescription(), and TargetInfo().
unsigned char clang::TargetInfo::DoubleAlign [protected] |
Definition at line 63 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getDoubleAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::DoubleFormat [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getDoubleFormat(), and TargetInfo().
unsigned char clang::TargetInfo::DoubleWidth [protected] |
Definition at line 63 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getDoubleWidth(), and TargetInfo().
unsigned char clang::TargetInfo::FloatAlign [protected] |
Definition at line 62 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getFloatAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::FloatFormat [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getFloatFormat(), and TargetInfo().
unsigned char clang::TargetInfo::FloatWidth [protected] |
Definition at line 62 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getFloatWidth(), and TargetInfo().
unsigned char clang::TargetInfo::HalfAlign [protected] |
Definition at line 61 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getHalfAlign(), and TargetInfo().
const llvm::fltSemantics* clang::TargetInfo::HalfFormat [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getHalfFormat(), and TargetInfo().
unsigned char clang::TargetInfo::HalfWidth [protected] |
Definition at line 61 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getHalfWidth(), and TargetInfo().
unsigned clang::TargetInfo::HasAlignMac68kSupport [protected] |
Definition at line 84 of file include/clang/Basic/TargetInfo.h.
Referenced by hasAlignMac68kSupport(), and TargetInfo().
IntType clang::TargetInfo::Int64Type [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getInt64Type(), getUInt64Type(), and TargetInfo().
unsigned char clang::TargetInfo::IntAlign [protected] |
Definition at line 60 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getIntAlign(), and TargetInfo().
IntType clang::TargetInfo::IntMaxType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getIntMaxTWidth(), getIntMaxType(), getUIntMaxType(), and TargetInfo().
IntType clang::TargetInfo::IntPtrType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getIntPtrType(), getUIntPtrType(), and TargetInfo().
unsigned char clang::TargetInfo::IntWidth [protected] |
Definition at line 60 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getIntWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LargeArrayAlign [protected] |
Definition at line 65 of file include/clang/Basic/TargetInfo.h.
Referenced by getLargeArrayAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LargeArrayMinWidth [protected] |
Definition at line 65 of file include/clang/Basic/TargetInfo.h.
Referenced by getLargeArrayMinWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongAlign [protected] |
Definition at line 66 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LongDoubleAlign [protected] |
Definition at line 64 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongDoubleAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::LongDoubleFormat [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongDoubleFormat(), and TargetInfo().
unsigned char clang::TargetInfo::LongDoubleWidth [protected] |
Definition at line 64 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongDoubleWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongLongAlign [protected] |
Definition at line 67 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongLongAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LongLongWidth [protected] |
Definition at line 67 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongLongWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongWidth [protected] |
Definition at line 66 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getLongWidth(), and TargetInfo().
unsigned char clang::TargetInfo::MaxAtomicInlineWidth [protected] |
Definition at line 70 of file include/clang/Basic/TargetInfo.h.
Referenced by getMaxAtomicInlineWidth(), and TargetInfo().
unsigned char clang::TargetInfo::MaxAtomicPromoteWidth [protected] |
Definition at line 70 of file include/clang/Basic/TargetInfo.h.
Referenced by getMaxAtomicPromoteWidth(), and TargetInfo().
unsigned short clang::TargetInfo::MaxVectorAlign [protected] |
Definition at line 71 of file include/clang/Basic/TargetInfo.h.
Referenced by getMaxVectorAlign(), and TargetInfo().
const char* clang::TargetInfo::MCountName [protected] |
Definition at line 74 of file include/clang/Basic/TargetInfo.h.
Referenced by getMCountName(), and TargetInfo().
unsigned char clang::TargetInfo::MinGlobalAlign [protected] |
Definition at line 69 of file include/clang/Basic/TargetInfo.h.
Referenced by getMinGlobalAlign(), and TargetInfo().
bool clang::TargetInfo::NoAsmVariants [protected] |
Definition at line 57 of file include/clang/Basic/TargetInfo.h.
Referenced by hasNoAsmVariants(), and TargetInfo().
VersionTuple clang::TargetInfo::PlatformMinVersion [mutable, protected] |
Definition at line 82 of file include/clang/Basic/TargetInfo.h.
Referenced by getPlatformMinVersion(), and TargetInfo().
StringRef clang::TargetInfo::PlatformName [mutable, protected] |
Definition at line 81 of file include/clang/Basic/TargetInfo.h.
Referenced by getPlatformName(), and TargetInfo().
unsigned char clang::TargetInfo::PointerAlign [protected] |
Definition at line 58 of file include/clang/Basic/TargetInfo.h.
Referenced by getPointerAlign(), getPointerAlignV(), and TargetInfo().
unsigned char clang::TargetInfo::PointerWidth [protected] |
Definition at line 58 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getPointerWidth(), getPointerWidthV(), getRegisterWidth(), and TargetInfo().
IntType clang::TargetInfo::ProcessIDType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by getProcessIDType(), and TargetInfo().
IntType clang::TargetInfo::PtrDiffType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getPtrDiffType(), getPtrDiffTypeV(), and TargetInfo().
unsigned clang::TargetInfo::RealTypeUsesObjCFPRet [protected] |
Definition at line 85 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useObjCFPRetForRealType().
unsigned char clang::TargetInfo::RegParmMax [protected] |
Definition at line 77 of file include/clang/Basic/TargetInfo.h.
Referenced by getRegParmMax(), and TargetInfo().
IntType clang::TargetInfo::SigAtomicType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by getSigAtomicType(), and TargetInfo().
IntType clang::TargetInfo::SizeType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getSizeType(), and TargetInfo().
unsigned char clang::TargetInfo::SSERegParmMax [protected] |
Definition at line 77 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo().
unsigned char clang::TargetInfo::SuitableAlign [protected] |
Definition at line 68 of file include/clang/Basic/TargetInfo.h.
Referenced by getSuitableAlign(), and TargetInfo().
TargetCXXABI clang::TargetInfo::TheCXXABI [protected] |
Definition at line 78 of file include/clang/Basic/TargetInfo.h.
Referenced by getCXXABI(), setCXXABI(), and TargetInfo().
bool clang::TargetInfo::TLSSupported [protected] |
Definition at line 56 of file include/clang/Basic/TargetInfo.h.
Referenced by isTLSSupported(), and TargetInfo().
bool clang::TargetInfo::UseAddrSpaceMapMangling [protected] |
Specify if mangling based on address space map should be used or not for language specific address spaces.
Definition at line 204 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useAddressSpaceMapMangling().
unsigned clang::TargetInfo::UseBitFieldTypeAlignment [protected] |
Control whether the alignment of bit-field types is respected when laying out structures. If true, then the alignment of the bit-field type will be used to (a) impact the alignment of the containing structure, and (b) ensure that the individual bit-field will not straddle an alignment boundary.
Definition at line 188 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), TargetInfo(), and useBitFieldTypeAlignment().
const char* clang::TargetInfo::UserLabelPrefix [protected] |
Definition at line 73 of file include/clang/Basic/TargetInfo.h.
Referenced by getUserLabelPrefix(), and TargetInfo().
unsigned clang::TargetInfo::UseSignedCharForObjCBool [protected] |
Whether Objective-C's built-in boolean type should be signed char.
Otherwise, when this flag is not set, the normal built-in boolean type is used.
Definition at line 181 of file include/clang/Basic/TargetInfo.h.
Referenced by noSignedCharForObjCBool(), TargetInfo(), and useSignedCharForObjCBool().
Whether zero length bitfields (e.g., int : 0;) force alignment of the next bitfield.
If the alignment of the zero length bitfield is greater than the member that follows it, `bar', `bar' will be aligned as the type of the zero-length bitfield.
Definition at line 196 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useZeroLengthBitfieldAlignment().
IntType clang::TargetInfo::WCharType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by adjust(), getWCharAlign(), getWCharType(), getWCharWidth(), and TargetInfo().
IntType clang::TargetInfo::WIntType [protected] |
Definition at line 173 of file include/clang/Basic/TargetInfo.h.
Referenced by getWIntType(), and TargetInfo().
If non-zero, specifies a fixed alignment value for bitfields that follow zero length bitfield, regardless of the zero length bitfield type.
Definition at line 200 of file include/clang/Basic/TargetInfo.h.
Referenced by getZeroLengthBitfieldBoundary(), and TargetInfo().