clang API Documentation
#include <TargetInfo.h>


Classes | |
| struct | AddlRegName |
| struct | ConstraintInfo |
| struct | GCCRegAlias |
Public Types | |
| enum | IntType { NoInt = 0, SignedShort, UnsignedShort, SignedInt, UnsignedInt, SignedLong, UnsignedLong, SignedLongLong, UnsignedLongLong } |
| ===---- Target Data Type Query Methods -------------------------------===// More... | |
| enum | RealType { Float = 0, Double, LongDouble } |
Public Member Functions | |
| virtual | ~TargetInfo () |
| IntType | getSizeType () const |
| IntType | getIntMaxType () const |
| IntType | getUIntMaxType () const |
| IntType | getPtrDiffType (unsigned AddrSpace) const |
| IntType | getIntPtrType () const |
| IntType | getWCharType () const |
| IntType | getWIntType () const |
| IntType | getChar16Type () const |
| IntType | getChar32Type () const |
| IntType | getInt64Type () const |
| IntType | getSigAtomicType () const |
| unsigned | getTypeWidth (IntType T) const |
| unsigned | getTypeAlign (IntType T) const |
| uint64_t | getPointerWidth (unsigned AddrSpace) const |
| uint64_t | getPointerAlign (unsigned AddrSpace) const |
| unsigned | getBoolWidth () const |
| unsigned | getBoolAlign () const |
| unsigned | getCharWidth () const |
| unsigned | getCharAlign () const |
| unsigned | getShortWidth () const |
| unsigned | getShortAlign () const |
| unsigned | getIntWidth () const |
| unsigned | getIntAlign () const |
| unsigned | getLongWidth () const |
| unsigned | getLongAlign () const |
| unsigned | getLongLongWidth () const |
| unsigned | getLongLongAlign () const |
| unsigned | getSuitableAlign () 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 |
| getFloatEvalMethod - Return the value for the C99 FLT_EVAL_METHOD macro. | |
| unsigned | getLargeArrayMinWidth () const |
| unsigned | getLargeArrayAlign () const |
| unsigned | getMaxAtomicPromoteWidth () const |
| unsigned | getMaxAtomicInlineWidth () const |
| unsigned | getIntMaxTWidth () const |
| uint64_t | getRegisterWidth () const |
| getRegisterWidth - Return the "preferred" register width on this target. | |
| const char * | getUserLabelPrefix () const |
| const char * | getMCountName () const |
| MCountName - This returns name of the mcount instrumentation function. | |
| bool | useBitFieldTypeAlignment () const |
| bool | useZeroLengthBitfieldAlignment () const |
| unsigned | getZeroLengthBitfieldBoundary () const |
| bool | hasAlignMac68kSupport () const |
| bool | useObjCFPRetForRealType (RealType T) const |
| Check whether the given real type should use the "fpret" flavor of Obj-C message passing on this target. | |
| bool | useObjCFP2RetForComplexLongDouble () const |
| Check whether _Complex long double should use the "fp2ret" flavor of Obj-C message passing on this target. | |
| 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 const char * | getVAListDeclaration () const =0 |
| bool | isValidClobber (StringRef Name) const |
| bool | isValidGCCRegisterName (StringRef Name) const |
| StringRef | getNormalizedGCCRegisterName (StringRef Name) const |
| bool | validateOutputConstraint (ConstraintInfo &Info) const |
| bool | validateInputConstraint (ConstraintInfo *OutputConstraints, unsigned NumOutputs, ConstraintInfo &info) 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 |
| const llvm::Triple & | getTriple () const |
| getTriple - Return the target triple of the primary target. | |
| const char * | getTargetDescription () const |
| virtual bool | hasProtectedVisibility () const |
| virtual bool | useGlobalsForAutomaticVariables () const |
| virtual const char * | getCFStringSection () const |
| virtual const char * | getNSStringSection () const |
| virtual const char * | getNSStringNonFragileABISection () const |
| virtual std::string | isValidSectionSpecifier (StringRef SR) const |
| virtual void | setForcedLangOptions (LangOptions &Opts) |
| virtual void | getDefaultFeatures (llvm::StringMap< bool > &Features) const |
| virtual const char * | getABI () const |
| getABI - Get the ABI in use. | |
| virtual TargetCXXABI | getCXXABI () const |
| getCXXABI - Get the C++ ABI in use. | |
| virtual bool | setCPU (const std::string &Name) |
| virtual bool | setABI (const std::string &Name) |
| bool | setCXXABI (const std::string &Name) |
| virtual bool | setCXXABI (TargetCXXABI ABI) |
| virtual bool | setFeatureEnabled (llvm::StringMap< bool > &Features, const std::string &Name, bool Enabled) const |
| virtual void | HandleTargetFeatures (std::vector< std::string > &Features) |
| virtual bool | hasFeature (StringRef Feature) const |
| Determine whether the given target has the given feature. | |
| unsigned | getRegParmMax () const |
| bool | isTLSSupported () const |
| isTLSSupported - Whether the target supports thread-local storage. | |
| bool | hasNoAsmVariants () const |
| virtual int | getEHDataRegisterNumber (unsigned RegNo) const |
| virtual const char * | getStaticInitSectionSpecifier () const |
| 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 |
Static Public Member Functions | |
| static TargetInfo * | CreateTargetInfo (DiagnosticsEngine &Diags, TargetOptions &Opts) |
| static bool | isTypeSigned (IntType T) |
| static const char * | getTypeName (IntType T) |
| static const char * | getTypeConstantSuffix (IntType T) |
Protected Member Functions | |
| TargetInfo (const std::string &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 | MaxAtomicPromoteWidth |
| unsigned char | MaxAtomicInlineWidth |
| 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 | CXXABI |
| const LangAS::Map * | AddrSpaceMap |
| StringRef | PlatformName |
| VersionTuple | PlatformMinVersion |
| unsigned | HasAlignMac68kSupport: 1 |
| unsigned | RealTypeUsesObjCFPRet: 3 |
| unsigned | ComplexLongDoubleUsesFP2Ret: 1 |
| IntType | SizeType |
| IntType | IntMaxType |
| IntType | UIntMaxType |
| IntType | PtrDiffType |
| IntType | IntPtrType |
| IntType | WCharType |
| IntType | WIntType |
| IntType | Char16Type |
| IntType | Char32Type |
| IntType | Int64Type |
| IntType | SigAtomicType |
| unsigned | UseBitFieldTypeAlignment: 1 |
| unsigned | UseZeroLengthBitfieldAlignment: 1 |
| unsigned | ZeroLengthBitfieldBoundary |
TargetInfo - This class exposes information about the current target.
Definition at line 62 of file include/clang/Basic/TargetInfo.h.
===---- Target Data Type Query Methods -------------------------------===//
| NoInt | |
| SignedShort | |
| UnsignedShort | |
| SignedInt | |
| UnsignedInt | |
| SignedLong | |
| UnsignedLong | |
| SignedLongLong | |
| UnsignedLongLong |
Definition at line 113 of file include/clang/Basic/TargetInfo.h.
Definition at line 125 of file include/clang/Basic/TargetInfo.h.
| TargetInfo::TargetInfo | ( | const std::string & | T | ) | [protected] |
Definition at line 27 of file Basic/TargetInfo.cpp.
References AddrSpaceMap, BigEndian, BoolAlign, BoolWidth, Char16Type, Char32Type, ComplexLongDoubleUsesFP2Ret, clang::CXXABI_Itanium, DefaultAddrSpaceMap, DescriptionString, DoubleAlign, DoubleFormat, DoubleWidth, FloatAlign, FloatFormat, FloatWidth, HalfAlign, HalfFormat, HalfWidth, HasAlignMac68kSupport, Int64Type, IntAlign, IntMaxType, IntPtrType, IntWidth, LargeArrayAlign, LargeArrayMinWidth, LongAlign, LongDoubleAlign, LongDoubleFormat, LongDoubleWidth, LongLongAlign, LongLongWidth, LongWidth, MaxAtomicInlineWidth, MaxAtomicPromoteWidth, MCountName, NoAsmVariants, PlatformMinVersion, PlatformName, PointerAlign, PointerWidth, PtrDiffType, RealTypeUsesObjCFPRet, RegParmMax, SigAtomicType, SignedInt, SignedLong, SignedLongLong, SizeType, SSERegParmMax, SuitableAlign, TLSSupported, UIntMaxType, UnsignedInt, UnsignedLong, UnsignedLongLong, UnsignedShort, UseBitFieldTypeAlignment, UserLabelPrefix, UseZeroLengthBitfieldAlignment, WCharType, WIntType, and ZeroLengthBitfieldBoundary.
| TargetInfo::~TargetInfo | ( | ) | [virtual] |
Definition at line 94 of file Basic/TargetInfo.cpp.
| virtual std::string clang::TargetInfo::convertConstraint | ( | const char *& | Constraint | ) | const [inline, virtual] |
Definition at line 452 of file include/clang/Basic/TargetInfo.h.
Referenced by SimplifyConstraint().
| TargetInfo * TargetInfo::CreateTargetInfo | ( | DiagnosticsEngine & | Diags, |
| TargetOptions & | Opts | ||
| ) | [static] |
CreateTargetInfo - 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 4020 of file Targets.cpp.
References clang::TargetOptions::ABI, AllocateTarget(), clang::TargetOptions::CPU, clang::TargetOptions::CXXABI, clang::TargetOptions::Features, clang::DiagnosticsEngine::Report(), and clang::TargetOptions::Triple.
Referenced by clang::ASTUnit::CodeComplete(), clang::ChainedIncludesSource::create(), clang::CompilerInstance::ExecuteAction(), clang::ASTUnit::LoadFromCompilerInvocationAction(), and clang::ModuleMapParser::ModuleMapParser().
| virtual const char* clang::TargetInfo::getABI | ( | ) | const [inline, virtual] |
getABI - Get the ABI in use.
Definition at line 540 of file include/clang/Basic/TargetInfo.h.
| const LangAS::Map& clang::TargetInfo::getAddressSpaceMap | ( | ) | const [inline] |
Definition at line 641 of file include/clang/Basic/TargetInfo.h.
References AddrSpaceMap.
Referenced by getAddressSpaceMap().
| unsigned clang::TargetInfo::getBoolAlign | ( | ) | const [inline] |
Definition at line 192 of file include/clang/Basic/TargetInfo.h.
References BoolAlign.
Referenced by clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getBoolWidth | ( | ) | const [inline] |
getBoolWidth/Align - Return the size of '_Bool' and C++ 'bool' for this target, in bits.
Definition at line 191 of file include/clang/Basic/TargetInfo.h.
References BoolWidth.
Referenced by clang::ASTContext::getTypeInfo().
| virtual const char* clang::TargetInfo::getCFStringSection | ( | ) | const [inline, virtual] |
getCFStringSection - Return the section to use for CFString literals, or 0 if no special section is used.
Definition at line 499 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenModule::GetAddrOfConstantCFString().
| unsigned clang::TargetInfo::getChar16Align | ( | ) | const [inline] |
Definition at line 229 of file include/clang/Basic/TargetInfo.h.
References Char16Type, and getTypeAlign().
Referenced by clang::ASTContext::getTypeInfo().
| IntType clang::TargetInfo::getChar16Type | ( | ) | const [inline] |
Definition at line 162 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 228 of file include/clang/Basic/TargetInfo.h.
References Char16Type, and getTypeWidth().
Referenced by EvaluateValue(), getCharWidth(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getChar32Align | ( | ) | const [inline] |
Definition at line 234 of file include/clang/Basic/TargetInfo.h.
References Char32Type, and getTypeAlign().
Referenced by clang::ASTContext::getTypeInfo().
| IntType clang::TargetInfo::getChar32Type | ( | ) | const [inline] |
Definition at line 163 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 233 of file include/clang/Basic/TargetInfo.h.
References Char32Type, and getTypeWidth().
Referenced by EvaluateValue(), getCharWidth(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getCharAlign | ( | ) | const [inline] |
Definition at line 195 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CGObjCRuntime::EmitValueForIvarAtOffset(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getCharWidth | ( | ) | const [inline] |
Definition at line 194 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnEnumBody(), clang::CharLiteralParser::CharLiteralParser(), DefineTypeSizeof(), EvaluateValue(), getCharWidth(), clang::ASTContext::getDeclAlign(), clang::ASTContext::getTypeInfo(), handleModeAttr(), InitializePredefinedMacros(), and clang::CodeGen::CGBitFieldInfo::MakeInfo().
| virtual const char* clang::TargetInfo::getClobbers | ( | ) | const [pure virtual] |
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
| virtual TargetCXXABI clang::TargetInfo::getCXXABI | ( | ) | const [inline, virtual] |
getCXXABI - Get the C++ ABI in use.
Definition at line 545 of file include/clang/Basic/TargetInfo.h.
References CXXABI.
Referenced by clang::Sema::BuildMemberPointerType(), createCXXABI(), clang::ASTContext::createMangleContext(), and DumpCXXRecordLayout().
| virtual void clang::TargetInfo::getDefaultFeatures | ( | llvm::StringMap< bool > & | Features | ) | const [inline, virtual] |
getDefaultFeatures - Get the default set of target features for the CPU; this should include all legal feature strings on the target.
Definition at line 536 of file include/clang/Basic/TargetInfo.h.
| unsigned clang::TargetInfo::getDoubleAlign | ( | ) | const [inline] |
Definition at line 248 of file include/clang/Basic/TargetInfo.h.
References DoubleAlign.
Referenced by clang::ASTContext::getTypeInfo().
| const llvm::fltSemantics& clang::TargetInfo::getDoubleFormat | ( | ) | const [inline] |
Definition at line 249 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 247 of file include/clang/Basic/TargetInfo.h.
References DoubleWidth.
Referenced by clang::ASTContext::getTypeInfo(), and InitializePredefinedMacros().
| virtual int clang::TargetInfo::getEHDataRegisterNumber | ( | unsigned | RegNo | ) | const [inline, virtual] |
getEHDataRegisterNumber - Return the register number that __builtin_eh_return_regno would return with the specified argument.
Definition at line 631 of file include/clang/Basic/TargetInfo.h.
| unsigned clang::TargetInfo::getFloatAlign | ( | ) | const [inline] |
Definition at line 243 of file include/clang/Basic/TargetInfo.h.
References FloatAlign.
Referenced by clang::ASTContext::getTypeInfo().
| virtual unsigned clang::TargetInfo::getFloatEvalMethod | ( | ) | const [inline, virtual] |
getFloatEvalMethod - Return the value for the C99 FLT_EVAL_METHOD macro.
Definition at line 260 of file include/clang/Basic/TargetInfo.h.
Referenced by InitializePredefinedMacros().
| const llvm::fltSemantics& clang::TargetInfo::getFloatFormat | ( | ) | const [inline] |
Definition at line 244 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 242 of file include/clang/Basic/TargetInfo.h.
References FloatWidth.
Referenced by clang::ASTContext::getTypeInfo(), and InitializePredefinedMacros().
| virtual void clang::TargetInfo::getGCCAddlRegNames | ( | const AddlRegName *& | Addl, |
| unsigned & | NumAddl | ||
| ) | const [inline, protected, virtual] |
Definition at line 669 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 238 of file include/clang/Basic/TargetInfo.h.
References HalfAlign.
Referenced by clang::ASTContext::getTypeInfo().
| const llvm::fltSemantics& clang::TargetInfo::getHalfFormat | ( | ) | const [inline] |
Definition at line 239 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 237 of file include/clang/Basic/TargetInfo.h.
References HalfWidth.
Referenced by clang::ASTContext::getTypeInfo().
| IntType clang::TargetInfo::getInt64Type | ( | ) | const [inline] |
Definition at line 164 of file include/clang/Basic/TargetInfo.h.
References Int64Type.
Referenced by DefineExactWidthIntType().
| unsigned clang::TargetInfo::getIntAlign | ( | ) | const [inline] |
Definition at line 205 of file include/clang/Basic/TargetInfo.h.
References IntAlign.
Referenced by getTypeAlign(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getIntMaxTWidth | ( | ) | const [inline] |
getIntMaxTWidth - Return the size of intmax_t and uintmax_t for this target, in bits.
Definition at line 277 of file include/clang/Basic/TargetInfo.h.
References getTypeWidth(), and IntMaxType.
| IntType clang::TargetInfo::getIntMaxType | ( | ) | const [inline] |
Definition at line 154 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 159 of file include/clang/Basic/TargetInfo.h.
References IntPtrType.
Referenced by InitializePredefinedMacros().
| 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 204 of file include/clang/Basic/TargetInfo.h.
References IntWidth.
Referenced by clang::Sema::ActOnEnumBody(), clang::CharLiteralParser::CharLiteralParser(), clang::CodeGen::CodeGenModule::CodeGenModule(), EvaluateValue(), clang::ASTContext::getTypeInfo(), getTypeWidth(), and InitializePredefinedMacros().
| unsigned clang::TargetInfo::getLargeArrayAlign | ( | ) | const [inline] |
Definition at line 265 of file include/clang/Basic/TargetInfo.h.
References LargeArrayAlign.
Referenced by clang::ASTContext::getDeclAlign().
| unsigned clang::TargetInfo::getLargeArrayMinWidth | ( | ) | const [inline] |
Definition at line 264 of file include/clang/Basic/TargetInfo.h.
References LargeArrayMinWidth.
Referenced by clang::ASTContext::getDeclAlign().
| unsigned clang::TargetInfo::getLongAlign | ( | ) | const [inline] |
Definition at line 210 of file include/clang/Basic/TargetInfo.h.
References LongAlign.
Referenced by getTypeAlign(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getLongDoubleAlign | ( | ) | const [inline] |
Definition at line 254 of file include/clang/Basic/TargetInfo.h.
References LongDoubleAlign.
Referenced by clang::ASTContext::getTypeInfo().
| const llvm::fltSemantics& clang::TargetInfo::getLongDoubleFormat | ( | ) | const [inline] |
Definition at line 255 of file include/clang/Basic/TargetInfo.h.
References LongDoubleFormat.
Referenced by clang::ASTContext::getFloatTypeSemantics(), and InitializePredefinedMacros().
| unsigned clang::TargetInfo::getLongDoubleWidth | ( | ) | const [inline] |
getLongDoubleWidth/Align/Format - Return the size/align/format of 'long double'.
Definition at line 253 of file include/clang/Basic/TargetInfo.h.
References LongDoubleWidth.
Referenced by clang::ASTContext::getTypeInfo(), and InitializePredefinedMacros().
| unsigned clang::TargetInfo::getLongLongAlign | ( | ) | const [inline] |
Definition at line 215 of file include/clang/Basic/TargetInfo.h.
References LongLongAlign.
Referenced by getTypeAlign(), and clang::ASTContext::getTypeInfo().
| 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 214 of file include/clang/Basic/TargetInfo.h.
References LongLongWidth.
Referenced by clang::Sema::ActOnEnumBody(), clang::ASTContext::getTypeInfo(), 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 209 of file include/clang/Basic/TargetInfo.h.
References LongWidth.
Referenced by clang::Sema::ActOnEnumBody(), clang::ASTContext::getTypeInfo(), getTypeWidth(), handleModeAttr(), and InitializePredefinedMacros().
| unsigned clang::TargetInfo::getMaxAtomicInlineWidth | ( | ) | const [inline] |
getMaxAtomicInlineWidth - Return the maximum width lock-free atomic operation which can be inlined given the supported features of the given target.
Definition at line 273 of file include/clang/Basic/TargetInfo.h.
References MaxAtomicInlineWidth.
Referenced by clang::CodeGen::CodeGenFunction::EmitAtomicExpr().
| unsigned clang::TargetInfo::getMaxAtomicPromoteWidth | ( | ) | const [inline] |
getMaxAtomicPromoteWidth - Return the maximum width lock-free atomic operation which will ever be supported for the given target
Definition at line 269 of file include/clang/Basic/TargetInfo.h.
References MaxAtomicPromoteWidth.
| const char* clang::TargetInfo::getMCountName | ( | ) | const [inline] |
MCountName - This returns name of the mcount instrumentation function.
Definition at line 298 of file include/clang/Basic/TargetInfo.h.
References MCountName.
Referenced by clang::CodeGen::CodeGenFunction::EmitMCountInstrumentation().
| StringRef TargetInfo::getNormalizedGCCRegisterName | ( | StringRef | Name | ) | const |
Definition at line 266 of file Basic/TargetInfo.cpp.
References getGCCAddlRegNames(), getGCCRegAliases(), getGCCRegNames(), isValidGCCRegisterName(), and removeGCCRegisterPrefix().
Referenced by AddVariableConstraints(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
| virtual const char* clang::TargetInfo::getNSStringNonFragileABISection | ( | ) | const [inline, virtual] |
getNSStringNonFragileABISection - Return the section to use for NSString literals, or 0 if no special section is used (NonFragile ABI).
Definition at line 511 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenModule::GetAddrOfConstantString().
| virtual const char* clang::TargetInfo::getNSStringSection | ( | ) | const [inline, virtual] |
getNSStringSection - Return the section to use for NSString literals, or 0 if no special section is used.
Definition at line 505 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenModule::GetAddrOfConstantString().
| VersionTuple clang::TargetInfo::getPlatformMinVersion | ( | ) | const [inline] |
Retrieve the minimum desired version of the platform, to which the program should be compiled.
Definition at line 651 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 647 of file include/clang/Basic/TargetInfo.h.
References PlatformName.
Referenced by CheckAvailability().
| uint64_t clang::TargetInfo::getPointerAlign | ( | unsigned | AddrSpace | ) | const [inline] |
Definition at line 185 of file include/clang/Basic/TargetInfo.h.
References getPointerAlignV(), and PointerAlign.
Referenced by clang::CodeGen::CodeGenModule::CodeGenModule(), clang::CodeGen::CodeGenFunction::EmitAutoVarAlloca(), and clang::ASTContext::getTypeInfo().
| virtual uint64_t clang::TargetInfo::getPointerAlignV | ( | unsigned | AddrSpace | ) | const [inline, protected, virtual] |
Definition at line 659 of file include/clang/Basic/TargetInfo.h.
References PointerAlign.
Referenced by getPointerAlign().
| uint64_t clang::TargetInfo::getPointerWidth | ( | unsigned | AddrSpace | ) | const [inline] |
getPointerWidth - Return the width of pointers on this target, for the specified address space.
Definition at line 182 of file include/clang/Basic/TargetInfo.h.
References getPointerWidthV(), and PointerWidth.
Referenced by clang::CodeGen::CodeGenModule::CodeGenModule(), clang::CodeGen::CodeGenModule::ConstructAttributeList(), clang::ASTContext::getConstantArrayType(), GetNumNonZeroBytesInInit(), clang::ASTContext::getTypeInfo(), handleModeAttr(), clang::Sema::Initialize(), and InitializePredefinedMacros().
| virtual uint64_t clang::TargetInfo::getPointerWidthV | ( | unsigned | AddrSpace | ) | const [inline, protected, virtual] |
Definition at line 656 of file include/clang/Basic/TargetInfo.h.
References PointerWidth.
Referenced by getPointerWidth().
| IntType clang::TargetInfo::getPtrDiffType | ( | unsigned | AddrSpace | ) | const [inline] |
Definition at line 156 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 662 of file include/clang/Basic/TargetInfo.h.
References PtrDiffType.
Referenced by getPtrDiffType().
| uint64_t clang::TargetInfo::getRegisterWidth | ( | ) | const [inline] |
getRegisterWidth - Return the "preferred" register width on this target.
Definition at line 282 of file include/clang/Basic/TargetInfo.h.
References LongWidth.
Referenced by clang::CodeGen::CGBitFieldInfo::MakeInfo().
| unsigned clang::TargetInfo::getRegParmMax | ( | ) | const [inline] |
Definition at line 610 of file include/clang/Basic/TargetInfo.h.
References RegParmMax.
| unsigned clang::TargetInfo::getShortAlign | ( | ) | const [inline] |
Definition at line 200 of file include/clang/Basic/TargetInfo.h.
Referenced by getTypeAlign(), and clang::ASTContext::getTypeInfo().
| unsigned clang::TargetInfo::getShortWidth | ( | ) | const [inline] |
getShortWidth/Align - Return the size of 'signed short' and 'unsigned short' for this target, in bits.
Definition at line 199 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::ActOnEnumBody(), clang::ASTContext::getTypeInfo(), getTypeWidth(), and InitializePredefinedMacros().
| IntType clang::TargetInfo::getSigAtomicType | ( | ) | const [inline] |
Definition at line 165 of file include/clang/Basic/TargetInfo.h.
References SigAtomicType.
Referenced by InitializePredefinedMacros().
| IntType clang::TargetInfo::getSizeType | ( | ) | const [inline] |
Definition at line 153 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] |
getStaticInitSectionSpecifier - Return the section to use for C++ static initialization functions.
Definition at line 637 of file include/clang/Basic/TargetInfo.h.
Referenced by CreateGlobalInitOrDestructFunction().
| unsigned clang::TargetInfo::getSuitableAlign | ( | ) | const [inline] |
getSuitableAlign - Return the alignment that is suitable for storing any object with a fundamental alignment requirement.
Definition at line 219 of file include/clang/Basic/TargetInfo.h.
References SuitableAlign.
| virtual void clang::TargetInfo::getTargetBuiltins | ( | const Builtin::Info *& | Records, |
| unsigned & | NumRecords | ||
| ) | const [pure virtual] |
getTargetBuiltins - 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 --------------------------===//
getTargetDefines - 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 468 of file include/clang/Basic/TargetInfo.h.
References DescriptionString.
| const llvm::Triple& clang::TargetInfo::getTriple | ( | ) | const [inline] |
getTriple - Return the target triple of the primary target.
Definition at line 464 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::Sema::getTargetAttributesSema(), clang::CodeGen::CodeGenModule::getTargetCodeGenInfo(), getVisibilityOf(), handleAliasAttr(), handleWeakImportAttr(), clang::InitializePreprocessor(), isArc4RandomAvailable(), and clang::CodeGen::CodeGenModule::isTargetDarwin().
| unsigned TargetInfo::getTypeAlign | ( | IntType | T | ) | const |
getTypeAlign - Return the alignment (in bits) of the specified integer type enum. For example, SignedInt -> getIntAlign().
Definition at line 146 of file Basic/TargetInfo.cpp.
References getIntAlign(), getLongAlign(), getLongLongAlign(), getShortAlign(), SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by getChar16Align(), getChar32Align(), and getWCharAlign().
| const char * TargetInfo::getTypeConstantSuffix | ( | IntType | T | ) | [static] |
getTypeConstantSuffix - Return the constant suffix for the specified integer type enum. For example, SignedLong -> "L".
Definition at line 114 of file Basic/TargetInfo.cpp.
References SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineExactWidthIntType(), and DefineTypeSize().
| const char * TargetInfo::getTypeName | ( | IntType | T | ) | [static] |
getTypeName - Return the user string for the specified integer type enum. For example, SignedShort -> "short".
Definition at line 98 of file Basic/TargetInfo.cpp.
References SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineType().
| unsigned TargetInfo::getTypeWidth | ( | IntType | T | ) | const |
getTypeWidth - Return the width (in bits) of the specified integer type enum. For example, SignedInt -> getIntWidth().
Definition at line 130 of file Basic/TargetInfo.cpp.
References getIntWidth(), getLongLongWidth(), getLongWidth(), getShortWidth(), SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineExactWidthIntType(), DefineTypeSize(), DefineTypeWidth(), getChar16Width(), getChar32Width(), getIntMaxTWidth(), getWCharWidth(), and InitializePredefinedMacros().
| IntType clang::TargetInfo::getUIntMaxType | ( | ) | const [inline] |
Definition at line 155 of file include/clang/Basic/TargetInfo.h.
References UIntMaxType.
Referenced by clang::ASTContext::getUIntMaxType(), and InitializePredefinedMacros().
| const char* clang::TargetInfo::getUserLabelPrefix | ( | ) | const [inline] |
getUserLabelPrefix - This 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 293 of file include/clang/Basic/TargetInfo.h.
References UserLabelPrefix.
Referenced by InitializePredefinedMacros().
| virtual const char* clang::TargetInfo::getVAListDeclaration | ( | ) | const [pure virtual] |
getVAListDeclaration - Return the declaration to use for __builtin_va_list, which is target-specific.
Referenced by InitializePredefinedMacros().
| unsigned clang::TargetInfo::getWCharAlign | ( | ) | const [inline] |
Definition at line 224 of file include/clang/Basic/TargetInfo.h.
References getTypeAlign(), and WCharType.
Referenced by clang::ASTContext::getTypeInfo().
| IntType clang::TargetInfo::getWCharType | ( | ) | const [inline] |
Definition at line 160 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 223 of file include/clang/Basic/TargetInfo.h.
References getTypeWidth(), and WCharType.
Referenced by clang::CharLiteralParser::CharLiteralParser(), EvaluateValue(), getCharWidth(), and clang::ASTContext::getTypeInfo().
| IntType clang::TargetInfo::getWIntType | ( | ) | const [inline] |
Definition at line 161 of file include/clang/Basic/TargetInfo.h.
References WIntType.
Referenced by InitializePredefinedMacros().
| unsigned clang::TargetInfo::getZeroLengthBitfieldBoundary | ( | ) | const [inline] |
getZeroLengthBitfieldBoundary() - Get the fixed alignment value in bits for a member that follows a zero length bitfield.
Definition at line 316 of file include/clang/Basic/TargetInfo.h.
References ZeroLengthBitfieldBoundary.
| virtual void clang::TargetInfo::HandleTargetFeatures | ( | std::vector< std::string > & | Features | ) | [inline, virtual] |
HandleTargetOptions - 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 601 of file include/clang/Basic/TargetInfo.h.
| bool clang::TargetInfo::hasAlignMac68kSupport | ( | ) | const [inline] |
hasAlignMac68kSupport - Check whether this target support '#pragma options align=mac68k'.
Definition at line 322 of file include/clang/Basic/TargetInfo.h.
References HasAlignMac68kSupport.
Referenced by clang::Sema::ActOnPragmaOptionsAlign().
| virtual bool clang::TargetInfo::hasFeature | ( | StringRef | Feature | ) | const [inline, virtual] |
Determine whether the given target has the given feature.
Definition at line 605 of file include/clang/Basic/TargetInfo.h.
Referenced by hasFeature().
| bool clang::TargetInfo::hasNoAsmVariants | ( | ) | const [inline] |
hasNoAsmVariants - 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 625 of file include/clang/Basic/TargetInfo.h.
References NoAsmVariants.
Referenced by clang::AsmStmt::AnalyzeAsmString().
| virtual bool clang::TargetInfo::hasProtectedVisibility | ( | ) | const [inline, virtual] |
hasProtectedVisibility - 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 wierd 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 493 of file include/clang/Basic/TargetInfo.h.
Referenced by handleVisibilityAttr().
| bool clang::TargetInfo::isBigEndian | ( | ) | const [inline] |
Definition at line 653 of file include/clang/Basic/TargetInfo.h.
References BigEndian.
| virtual bool clang::TargetInfo::isCLZForZeroUndef | ( | ) | const [inline, virtual] |
isCLZForZeroUndef - 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 365 of file include/clang/Basic/TargetInfo.h.
| bool clang::TargetInfo::isTLSSupported | ( | ) | const [inline] |
isTLSSupported - Whether the target supports thread-local storage.
Definition at line 616 of file include/clang/Basic/TargetInfo.h.
References TLSSupported.
Referenced by hasFeature(), and HasFeature().
| bool TargetInfo::isTypeSigned | ( | IntType | T | ) | [static] |
isTypeSigned - Return whether an integer types is signed. Returns true if the type is signed; false otherwise.
Definition at line 162 of file Basic/TargetInfo.cpp.
References SignedInt, SignedLong, SignedLongLong, SignedShort, UnsignedInt, UnsignedLong, UnsignedLongLong, and UnsignedShort.
Referenced by DefineTypeSize(), clang::ASTContext::InitBuiltinTypes(), and InitializePredefinedMacros().
| bool TargetInfo::isValidClobber | ( | StringRef | Name | ) | const |
isValidClobber - Returns whether the passed in string is a valid clobber in an inline asm statement. This is used by Sema.
Definition at line 201 of file Basic/TargetInfo.cpp.
References isValidGCCRegisterName().
| bool TargetInfo::isValidGCCRegisterName | ( | StringRef | Name | ) | const |
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 209 of file Basic/TargetInfo.cpp.
References getGCCAddlRegNames(), getGCCRegAliases(), getGCCRegNames(), and removeGCCRegisterPrefix().
Referenced by AddVariableConstraints(), getNormalizedGCCRegisterName(), and isValidClobber().
| virtual std::string clang::TargetInfo::isValidSectionSpecifier | ( | StringRef | SR | ) | const [inline, virtual] |
isValidSectionSpecifier - This is 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 525 of file include/clang/Basic/TargetInfo.h.
Referenced by handleSectionAttr().
| bool TargetInfo::resolveSymbolicName | ( | const char *& | Name, |
| ConstraintInfo * | OutputConstraints, | ||
| unsigned | NumOutputs, | ||
| unsigned & | Index | ||
| ) | const |
Definition at line 373 of file Basic/TargetInfo.cpp.
References Index.
Referenced by SimplifyConstraint(), and validateInputConstraint().
| virtual bool clang::TargetInfo::setABI | ( | const std::string & | Name | ) | [inline, virtual] |
setABI - Use the specific ABI.
Definition at line 559 of file include/clang/Basic/TargetInfo.h.
| virtual bool clang::TargetInfo::setCPU | ( | const std::string & | Name | ) | [inline, virtual] |
setCPU - Target the specific CPU.
Definition at line 552 of file include/clang/Basic/TargetInfo.h.
| bool clang::TargetInfo::setCXXABI | ( | const std::string & | Name | ) | [inline] |
setCXXABI - Use this specific C++ ABI.
Definition at line 566 of file include/clang/Basic/TargetInfo.h.
References clang::CXXABI_ARM, clang::CXXABI_Itanium, clang::CXXABI_Microsoft, and Unknown.
| virtual bool clang::TargetInfo::setCXXABI | ( | TargetCXXABI | ABI | ) | [inline, virtual] |
setCXXABI - Set the C++ ABI to be used by this implementation.
Definition at line 580 of file include/clang/Basic/TargetInfo.h.
| virtual bool clang::TargetInfo::setFeatureEnabled | ( | llvm::StringMap< bool > & | Features, |
| const std::string & | Name, | ||
| bool | Enabled | ||
| ) | const [inline, virtual] |
setFeatureEnabled - Enable or disable a specific target feature, the feature name must be valid.
Definition at line 589 of file include/clang/Basic/TargetInfo.h.
| void TargetInfo::setForcedLangOptions | ( | LangOptions & | Opts | ) | [virtual] |
setForcedLangOptions - Set forced language options. Apply changes to the target information with respect to certain language options which change the target configuration.
Definition at line 181 of file Basic/TargetInfo.cpp.
References UnsignedShort, UseBitFieldTypeAlignment, and WCharType.
Referenced by clang::CompilerInstance::ExecuteAction().
| bool clang::TargetInfo::useBitFieldTypeAlignment | ( | ) | const [inline] |
useBitFieldTypeAlignment() - Check whether the alignment of bit-field types is respected when laying out structures.
Definition at line 304 of file include/clang/Basic/TargetInfo.h.
References UseBitFieldTypeAlignment.
| virtual bool clang::TargetInfo::useGlobalsForAutomaticVariables | ( | ) | const [inline, virtual] |
Definition at line 495 of file include/clang/Basic/TargetInfo.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitAutoVarAlloca(), and clang::CodeGen::CodeGenFunction::EmitReturnStmt().
| bool clang::TargetInfo::useObjCFP2RetForComplexLongDouble | ( | ) | const [inline] |
Check whether _Complex long double should use the "fp2ret" flavor of Obj-C message passing on this target.
Definition at line 342 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 Obj-C message passing on this target.
Definition at line 336 of file include/clang/Basic/TargetInfo.h.
References RealTypeUsesObjCFPRet.
Referenced by clang::CodeGen::CodeGenModule::ReturnTypeUsesFPRet().
| bool clang::TargetInfo::useZeroLengthBitfieldAlignment | ( | ) | const [inline] |
useZeroLengthBitfieldAlignment() - Check whether zero length bitfields should force alignment of the next member.
Definition at line 310 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().
| bool TargetInfo::validateInputConstraint | ( | ConstraintInfo * | OutputConstraints, |
| unsigned | NumOutputs, | ||
| ConstraintInfo & | info | ||
| ) | const |
Definition at line 397 of file Basic/TargetInfo.cpp.
References clang::TargetInfo::ConstraintInfo::ConstraintStr, clang::TargetInfo::ConstraintInfo::getTiedOperand(), clang::TargetInfo::ConstraintInfo::hasTiedOperand(), Index, resolveSymbolicName(), clang::TargetInfo::ConstraintInfo::setAllowsMemory(), clang::TargetInfo::ConstraintInfo::setAllowsRegister(), clang::TargetInfo::ConstraintInfo::setTiedOperand(), and validateAsmConstraint().
Referenced by clang::CodeGen::CodeGenFunction::EmitAsmStmt().
| bool TargetInfo::validateOutputConstraint | ( | ConstraintInfo & | Info | ) | const |
Definition at line 318 of file Basic/TargetInfo.cpp.
References clang::TargetInfo::ConstraintInfo::getConstraintStr(), clang::TargetInfo::ConstraintInfo::setAllowsMemory(), clang::TargetInfo::ConstraintInfo::setAllowsRegister(), clang::TargetInfo::ConstraintInfo::setIsReadWrite(), and validateAsmConstraint().
Referenced by AddVariableConstraints(), and clang::CodeGen::CodeGenFunction::EmitAsmStmt().
const LangAS::Map* clang::TargetInfo::AddrSpaceMap [protected] |
Definition at line 89 of file include/clang/Basic/TargetInfo.h.
Referenced by getAddressSpaceMap(), and TargetInfo().
bool clang::TargetInfo::BigEndian [protected] |
Definition at line 67 of file include/clang/Basic/TargetInfo.h.
Referenced by isBigEndian(), and TargetInfo().
unsigned char clang::TargetInfo::BoolAlign [protected] |
Definition at line 71 of file include/clang/Basic/TargetInfo.h.
Referenced by getBoolAlign(), and TargetInfo().
unsigned char clang::TargetInfo::BoolWidth [protected] |
Definition at line 71 of file include/clang/Basic/TargetInfo.h.
Referenced by getBoolWidth(), and TargetInfo().
IntType clang::TargetInfo::Char16Type [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getChar16Align(), getChar16Type(), getChar16Width(), and TargetInfo().
IntType clang::TargetInfo::Char32Type [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getChar32Align(), getChar32Type(), getChar32Width(), and TargetInfo().
unsigned clang::TargetInfo::ComplexLongDoubleUsesFP2Ret [protected] |
Definition at line 96 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useObjCFP2RetForComplexLongDouble().
TargetCXXABI clang::TargetInfo::CXXABI [protected] |
Definition at line 88 of file include/clang/Basic/TargetInfo.h.
Referenced by getCXXABI().
const char* clang::TargetInfo::DescriptionString [protected] |
Definition at line 82 of file include/clang/Basic/TargetInfo.h.
Referenced by getTargetDescription(), and TargetInfo().
unsigned char clang::TargetInfo::DoubleAlign [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by getDoubleAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::DoubleFormat [protected] |
Definition at line 85 of file include/clang/Basic/TargetInfo.h.
Referenced by getDoubleFormat(), and TargetInfo().
unsigned char clang::TargetInfo::DoubleWidth [protected] |
Definition at line 75 of file include/clang/Basic/TargetInfo.h.
Referenced by getDoubleWidth(), and TargetInfo().
unsigned char clang::TargetInfo::FloatAlign [protected] |
Definition at line 74 of file include/clang/Basic/TargetInfo.h.
Referenced by getFloatAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::FloatFormat [protected] |
Definition at line 85 of file include/clang/Basic/TargetInfo.h.
Referenced by getFloatFormat(), and TargetInfo().
unsigned char clang::TargetInfo::FloatWidth [protected] |
Definition at line 74 of file include/clang/Basic/TargetInfo.h.
Referenced by getFloatWidth(), and TargetInfo().
unsigned char clang::TargetInfo::HalfAlign [protected] |
Definition at line 73 of file include/clang/Basic/TargetInfo.h.
Referenced by getHalfAlign(), and TargetInfo().
const llvm::fltSemantics* clang::TargetInfo::HalfFormat [protected] |
Definition at line 85 of file include/clang/Basic/TargetInfo.h.
Referenced by getHalfFormat(), and TargetInfo().
unsigned char clang::TargetInfo::HalfWidth [protected] |
Definition at line 73 of file include/clang/Basic/TargetInfo.h.
Referenced by getHalfWidth(), and TargetInfo().
unsigned clang::TargetInfo::HasAlignMac68kSupport [protected] |
Definition at line 94 of file include/clang/Basic/TargetInfo.h.
Referenced by hasAlignMac68kSupport(), and TargetInfo().
IntType clang::TargetInfo::Int64Type [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getInt64Type(), and TargetInfo().
unsigned char clang::TargetInfo::IntAlign [protected] |
Definition at line 72 of file include/clang/Basic/TargetInfo.h.
Referenced by getIntAlign(), and TargetInfo().
IntType clang::TargetInfo::IntMaxType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getIntMaxTWidth(), getIntMaxType(), and TargetInfo().
IntType clang::TargetInfo::IntPtrType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getIntPtrType(), and TargetInfo().
unsigned char clang::TargetInfo::IntWidth [protected] |
Definition at line 72 of file include/clang/Basic/TargetInfo.h.
Referenced by getIntWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LargeArrayAlign [protected] |
Definition at line 77 of file include/clang/Basic/TargetInfo.h.
Referenced by getLargeArrayAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LargeArrayMinWidth [protected] |
Definition at line 77 of file include/clang/Basic/TargetInfo.h.
Referenced by getLargeArrayMinWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongAlign [protected] |
Definition at line 78 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LongDoubleAlign [protected] |
Definition at line 76 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongDoubleAlign(), and TargetInfo().
const llvm::fltSemantics * clang::TargetInfo::LongDoubleFormat [protected] |
Definition at line 85 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongDoubleFormat(), and TargetInfo().
unsigned char clang::TargetInfo::LongDoubleWidth [protected] |
Definition at line 76 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongDoubleWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongLongAlign [protected] |
Definition at line 79 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongLongAlign(), and TargetInfo().
unsigned char clang::TargetInfo::LongLongWidth [protected] |
Definition at line 79 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongLongWidth(), and TargetInfo().
unsigned char clang::TargetInfo::LongWidth [protected] |
Definition at line 78 of file include/clang/Basic/TargetInfo.h.
Referenced by getLongWidth(), getRegisterWidth(), and TargetInfo().
unsigned char clang::TargetInfo::MaxAtomicInlineWidth [protected] |
Definition at line 81 of file include/clang/Basic/TargetInfo.h.
Referenced by getMaxAtomicInlineWidth(), and TargetInfo().
unsigned char clang::TargetInfo::MaxAtomicPromoteWidth [protected] |
Definition at line 81 of file include/clang/Basic/TargetInfo.h.
Referenced by getMaxAtomicPromoteWidth(), and TargetInfo().
const char* clang::TargetInfo::MCountName [protected] |
Definition at line 84 of file include/clang/Basic/TargetInfo.h.
Referenced by getMCountName(), and TargetInfo().
bool clang::TargetInfo::NoAsmVariants [protected] |
Definition at line 69 of file include/clang/Basic/TargetInfo.h.
Referenced by hasNoAsmVariants(), and TargetInfo().
VersionTuple clang::TargetInfo::PlatformMinVersion [mutable, protected] |
Definition at line 92 of file include/clang/Basic/TargetInfo.h.
Referenced by getPlatformMinVersion(), and TargetInfo().
StringRef clang::TargetInfo::PlatformName [mutable, protected] |
Definition at line 91 of file include/clang/Basic/TargetInfo.h.
Referenced by getPlatformName(), and TargetInfo().
unsigned char clang::TargetInfo::PointerAlign [protected] |
Definition at line 70 of file include/clang/Basic/TargetInfo.h.
Referenced by getPointerAlign(), getPointerAlignV(), and TargetInfo().
unsigned char clang::TargetInfo::PointerWidth [protected] |
Definition at line 70 of file include/clang/Basic/TargetInfo.h.
Referenced by getPointerWidth(), getPointerWidthV(), and TargetInfo().
IntType clang::TargetInfo::PtrDiffType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getPtrDiffType(), getPtrDiffTypeV(), and TargetInfo().
unsigned clang::TargetInfo::RealTypeUsesObjCFPRet [protected] |
Definition at line 95 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useObjCFPRetForRealType().
unsigned char clang::TargetInfo::RegParmMax [protected] |
Definition at line 87 of file include/clang/Basic/TargetInfo.h.
Referenced by getRegParmMax(), and TargetInfo().
IntType clang::TargetInfo::SigAtomicType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getSigAtomicType(), and TargetInfo().
IntType clang::TargetInfo::SizeType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getSizeType(), and TargetInfo().
unsigned char clang::TargetInfo::SSERegParmMax [protected] |
Definition at line 87 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo().
unsigned char clang::TargetInfo::SuitableAlign [protected] |
Definition at line 80 of file include/clang/Basic/TargetInfo.h.
Referenced by getSuitableAlign(), and TargetInfo().
bool clang::TargetInfo::TLSSupported [protected] |
Definition at line 68 of file include/clang/Basic/TargetInfo.h.
Referenced by isTLSSupported(), and TargetInfo().
IntType clang::TargetInfo::UIntMaxType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getUIntMaxType(), and TargetInfo().
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 140 of file include/clang/Basic/TargetInfo.h.
Referenced by setForcedLangOptions(), TargetInfo(), and useBitFieldTypeAlignment().
const char* clang::TargetInfo::UserLabelPrefix [protected] |
Definition at line 83 of file include/clang/Basic/TargetInfo.h.
Referenced by getUserLabelPrefix(), and TargetInfo().
unsigned clang::TargetInfo::UseZeroLengthBitfieldAlignment [protected] |
Control 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 146 of file include/clang/Basic/TargetInfo.h.
Referenced by TargetInfo(), and useZeroLengthBitfieldAlignment().
IntType clang::TargetInfo::WCharType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getWCharAlign(), getWCharType(), getWCharWidth(), setForcedLangOptions(), and TargetInfo().
IntType clang::TargetInfo::WIntType [protected] |
Definition at line 132 of file include/clang/Basic/TargetInfo.h.
Referenced by getWIntType(), and TargetInfo().
unsigned clang::TargetInfo::ZeroLengthBitfieldBoundary [protected] |
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 150 of file include/clang/Basic/TargetInfo.h.
Referenced by getZeroLengthBitfieldBoundary(), and TargetInfo().