Home
last modified time | relevance | path

Searched refs:CXXABI (Results 1 – 11 of 11) sorted by relevance

/freebsd/contrib/llvm-project/clang/lib/AST/
H A DCXXABI.h29 class CXXABI {
31 virtual ~CXXABI();
76 CXXABI *CreateItaniumCXXABI(ASTContext &Ctx);
77 CXXABI *CreateMicrosoftCXXABI(ASTContext &Ctx);
H A DItaniumCXXABI.cpp216 class ItaniumCXXABI : public CXXABI {
293 CXXABI *clang::CreateItaniumCXXABI(ASTContext &Ctx) { in CreateItaniumCXXABI()
H A DASTContext.cpp822 return getLangOpts().CXXABI.value_or(Kind); in getCXXABIKind()
825 CXXABI *ASTContext::createCXXABI(const TargetInfo &T) { in createCXXABI()
2271 CXXABI::MemberPointerInfo MPI = ABI->getMemberPointerInfo(MPT); in getTypeInfoImpl()
12560 CXXABI::~CXXABI() = default;
/freebsd/contrib/llvm-project/clang/include/clang/Basic/
H A DTargetCXXABI.h32 #define CXXABI(Name, Str) Name, macro
44 #define CXXABI(Name, Str) {Str, Name}, in getABIMap() macro
52 #define CXXABI(Name, Str) {Name, Str}, in getSpellingMap() macro
124 #define CXXABI(Name, Str) in isItaniumFamily() macro
138 #define CXXABI(Name, Str) in isMicrosoft() macro
H A DTargetCXXABI.def10 // Users of this file must define the CXXABI macro to make use of this
15 #ifndef CXXABI
16 #error Define the CXXABI macro to handle C++ ABI kinds.
20 #define ITANIUM_CXXABI(Name, Str) CXXABI(Name, Str)
24 #define MICROSOFT_CXXABI(Name, Str) CXXABI(Name, Str)
127 #undef CXXABI
H A DLangOptions.h549 std::optional<TargetCXXABI::Kind> CXXABI; variable
/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DABIInfoImpl.h61 CGCXXABI::RecordArgABI getRecordArgABI(const RecordType *RT, CGCXXABI &CXXABI);
63 CGCXXABI::RecordArgABI getRecordArgABI(QualType T, CGCXXABI &CXXABI);
65 bool classifyReturnType(const CGCXXABI &CXXABI, CGFunctionInfo &FI,
H A DABIInfoImpl.cpp114 CGCXXABI &CXXABI) { in getRecordArgABI() argument
121 return CXXABI.getRecordArgABI(RD); in getRecordArgABI()
124 CGCXXABI::RecordArgABI CodeGen::getRecordArgABI(QualType T, CGCXXABI &CXXABI) { in getRecordArgABI() argument
128 return getRecordArgABI(RT, CXXABI); in getRecordArgABI()
131 bool CodeGen::classifyReturnType(const CGCXXABI &CXXABI, CGFunctionInfo &FI, in classifyReturnType() argument
142 return CXXABI.classifyReturnType(FI); in classifyReturnType()
H A DItaniumCXXABI.cpp3413 const ItaniumCXXABI &CXXABI; // Per-module state. member in __anond94614940311::ItaniumRTTIBuilder
3452 : CGM(ABI.CGM), VMContext(CGM.getModule().getContext()), CXXABI(ABI) {} in ItaniumRTTIBuilder()
4060 else if (CXXABI.classifyRTTIUniqueness(Ty, Linkage) == in BuildTypeInfo()
4094 CXXABI.classifyRTTIUniqueness(Ty, Linkage); in BuildTypeInfo()
4288 ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(SuperTy); in BuildObjCObjectTypeInfo()
4299 ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(RD->bases_begin()->getType()); in BuildSIClassTypeInfo()
4418 Fields.push_back(ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(Base.getType())); in BuildVMIClassTypeInfo()
4496 ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(PointeeTy); in BuildPointerTypeInfo()
4523 ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(PointeeTy); in BuildPointerToMemberTypeInfo()
4531 ItaniumRTTIBuilder(CXXABI).BuildTypeInfo(QualType(ClassType, 0))); in BuildPointerToMemberTypeInfo()
/freebsd/contrib/llvm-project/clang/lib/Frontend/
H A DCompilerInvocation.cpp3809 if (Opts.CXXABI) in GenerateLangArgs()
3811 TargetCXXABI::getSpelling(*Opts.CXXABI)); in GenerateLangArgs()
4342 StringRef CXXABI = Args.getLastArgValue(OPT_fcxx_abi_EQ); in ParseLangArgs() local
4343 if (!CXXABI.empty()) { in ParseLangArgs()
4344 if (!TargetCXXABI::isABI(CXXABI)) { in ParseLangArgs()
4345 Diags.Report(diag::err_invalid_cxx_abi) << CXXABI; in ParseLangArgs()
4347 auto Kind = TargetCXXABI::getKind(CXXABI); in ParseLangArgs()
4349 Diags.Report(diag::err_unsupported_cxx_abi) << CXXABI << T.str(); in ParseLangArgs()
4351 Opts.CXXABI = Kind; in ParseLangArgs()
/freebsd/contrib/llvm-project/clang/include/clang/AST/
H A DASTContext.h65 class CXXABI; variable
639 std::unique_ptr<CXXABI> ABI;
640 CXXABI *createCXXABI(const TargetInfo &T);