aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp')
-rw-r--r--lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp76
1 files changed, 30 insertions, 46 deletions
diff --git a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
index 73843063606c..7b331307c0f7 100644
--- a/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
+++ b/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
@@ -1,4 +1,4 @@
-//===-- AppleObjCDeclVendor.cpp ---------------------------------*- C++ -*-===//
+//===-- AppleObjCDeclVendor.cpp -------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
@@ -8,10 +8,10 @@
#include "AppleObjCDeclVendor.h"
+#include "Plugins/ExpressionParser/Clang/ClangASTMetadata.h"
+#include "Plugins/ExpressionParser/Clang/ClangUtil.h"
#include "Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h"
#include "lldb/Core/Module.h"
-#include "lldb/Symbol/ClangASTMetadata.h"
-#include "lldb/Symbol/ClangUtil.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/Log.h"
@@ -30,17 +30,14 @@ public:
bool FindExternalVisibleDeclsByName(const clang::DeclContext *decl_ctx,
clang::DeclarationName name) override {
- static unsigned int invocation_id = 0;
- unsigned int current_id = invocation_id++;
Log *log(GetLogIfAllCategoriesSet(
LIBLLDB_LOG_EXPRESSIONS)); // FIXME - a more appropriate log channel?
if (log) {
LLDB_LOGF(log,
- "AppleObjCExternalASTSource::FindExternalVisibleDeclsByName[%"
- "u] on (ASTContext*)%p Looking for %s in (%sDecl*)%p",
- current_id,
+ "AppleObjCExternalASTSource::FindExternalVisibleDeclsByName"
+ " on (ASTContext*)%p Looking for %s in (%sDecl*)%p",
static_cast<void *>(&decl_ctx->getParentASTContext()),
name.getAsString().c_str(), decl_ctx->getDeclKindName(),
static_cast<const void *>(decl_ctx));
@@ -70,44 +67,37 @@ public:
}
void CompleteType(clang::TagDecl *tag_decl) override {
- static unsigned int invocation_id = 0;
- unsigned int current_id = invocation_id++;
Log *log(GetLogIfAllCategoriesSet(
LIBLLDB_LOG_EXPRESSIONS)); // FIXME - a more appropriate log channel?
LLDB_LOGF(log,
- "AppleObjCExternalASTSource::CompleteType[%u] on "
+ "AppleObjCExternalASTSource::CompleteType on "
"(ASTContext*)%p Completing (TagDecl*)%p named %s",
- current_id, static_cast<void *>(&tag_decl->getASTContext()),
+ static_cast<void *>(&tag_decl->getASTContext()),
static_cast<void *>(tag_decl), tag_decl->getName().str().c_str());
- LLDB_LOG(log, " AOEAS::CT[{0}] Before:\n{1}", current_id,
- ClangUtil::DumpDecl(tag_decl));
+ LLDB_LOG(log, " AOEAS::CT Before:\n{1}", ClangUtil::DumpDecl(tag_decl));
- LLDB_LOG(log, " AOEAS::CT[{1}] After:{1}", current_id,
- ClangUtil::DumpDecl(tag_decl));
+ LLDB_LOG(log, " AOEAS::CT After:{1}", ClangUtil::DumpDecl(tag_decl));
return;
}
void CompleteType(clang::ObjCInterfaceDecl *interface_decl) override {
- static unsigned int invocation_id = 0;
- unsigned int current_id = invocation_id++;
Log *log(GetLogIfAllCategoriesSet(
LIBLLDB_LOG_EXPRESSIONS)); // FIXME - a more appropriate log channel?
if (log) {
LLDB_LOGF(log,
- "AppleObjCExternalASTSource::CompleteType[%u] on "
+ "AppleObjCExternalASTSource::CompleteType on "
"(ASTContext*)%p Completing (ObjCInterfaceDecl*)%p named %s",
- current_id,
static_cast<void *>(&interface_decl->getASTContext()),
static_cast<void *>(interface_decl),
interface_decl->getName().str().c_str());
- LLDB_LOGF(log, " AOEAS::CT[%u] Before:", current_id);
+ LLDB_LOGF(log, " AOEAS::CT Before:");
LLDB_LOG(log, " [CT] {0}", ClangUtil::DumpDecl(interface_decl));
}
@@ -143,10 +133,9 @@ private:
AppleObjCDeclVendor::AppleObjCDeclVendor(ObjCLanguageRuntime &runtime)
: ClangDeclVendor(eAppleObjCDeclVendor), m_runtime(runtime),
- m_ast_ctx(runtime.GetProcess()
- ->GetTarget()
- .GetArchitecture()
- .GetTriple()),
+ m_ast_ctx(
+ "AppleObjCDeclVendor AST",
+ runtime.GetProcess()->GetTarget().GetArchitecture().GetTriple()),
m_type_realizer_sp(m_runtime.GetEncodingToType()) {
m_external_source = new AppleObjCExternalASTSource(*this);
llvm::IntrusiveRefCntPtr<clang::ExternalASTSource> external_source_owning_ptr(
@@ -309,7 +298,7 @@ public:
}
clang::ObjCMethodDecl *
- BuildMethod(ClangASTContext &clang_ast_ctxt,
+ BuildMethod(TypeSystemClang &clang_ast_ctxt,
clang::ObjCInterfaceDecl *interface_decl, const char *name,
bool instance,
ObjCLanguageRuntime::EncodingToTypeSP type_realizer_sp) {
@@ -538,15 +527,13 @@ bool AppleObjCDeclVendor::FinishDecl(clang::ObjCInterfaceDecl *interface_decl) {
uint32_t AppleObjCDeclVendor::FindDecls(ConstString name, bool append,
uint32_t max_matches,
std::vector<CompilerDecl> &decls) {
- static unsigned int invocation_id = 0;
- unsigned int current_id = invocation_id++;
Log *log(GetLogIfAllCategoriesSet(
LIBLLDB_LOG_EXPRESSIONS)); // FIXME - a more appropriate log channel?
- LLDB_LOGF(log, "AppleObjCDeclVendor::FindDecls [%u] ('%s', %s, %u, )",
- current_id, (const char *)name.AsCString(),
- append ? "true" : "false", max_matches);
+ LLDB_LOGF(log, "AppleObjCDeclVendor::FindDecls ('%s', %s, %u, )",
+ (const char *)name.AsCString(), append ? "true" : "false",
+ max_matches);
if (!append)
decls.clear();
@@ -579,24 +566,21 @@ uint32_t AppleObjCDeclVendor::FindDecls(ConstString name, bool append,
isa_value = metadata->GetISAPtr();
LLDB_LOG(log,
- "AOCTV::FT [%u] Found %s (isa 0x%" PRIx64
- ") in the ASTContext",
- current_id, result_iface_type.getAsString(), isa_value);
+ "AOCTV::FT Found %s (isa 0x%" PRIx64 ") in the ASTContext",
+ result_iface_type.getAsString(), isa_value);
}
- decls.push_back(CompilerDecl(&m_ast_ctx, result_iface_decl));
+ decls.push_back(m_ast_ctx.GetCompilerDecl(result_iface_decl));
ret++;
break;
} else {
- LLDB_LOGF(log,
- "AOCTV::FT [%u] There's something in the ASTContext, but "
- "it's not something we know about",
- current_id);
+ LLDB_LOGF(log, "AOCTV::FT There's something in the ASTContext, but "
+ "it's not something we know about");
break;
}
} else if (log) {
- LLDB_LOGF(log, "AOCTV::FT [%u] Couldn't find %s in the ASTContext",
- current_id, name.AsCString());
+ LLDB_LOGF(log, "AOCTV::FT Couldn't find %s in the ASTContext",
+ name.AsCString());
}
// It's not. If it exists, we have to put it into our ASTContext.
@@ -604,7 +588,7 @@ uint32_t AppleObjCDeclVendor::FindDecls(ConstString name, bool append,
ObjCLanguageRuntime::ObjCISA isa = m_runtime.GetISA(name);
if (!isa) {
- LLDB_LOGF(log, "AOCTV::FT [%u] Couldn't find the isa", current_id);
+ LLDB_LOGF(log, "AOCTV::FT Couldn't find the isa");
break;
}
@@ -613,9 +597,9 @@ uint32_t AppleObjCDeclVendor::FindDecls(ConstString name, bool append,
if (!iface_decl) {
LLDB_LOGF(log,
- "AOCTV::FT [%u] Couldn't get the Objective-C interface for "
+ "AOCTV::FT Couldn't get the Objective-C interface for "
"isa 0x%" PRIx64,
- current_id, (uint64_t)isa);
+ (uint64_t)isa);
break;
}
@@ -623,11 +607,11 @@ uint32_t AppleObjCDeclVendor::FindDecls(ConstString name, bool append,
if (log) {
clang::QualType new_iface_type = ast_ctx.getObjCInterfaceType(iface_decl);
- LLDB_LOG(log, "AOCTV::FT [{0}] Created {1} (isa 0x{2:x})", current_id,
+ LLDB_LOG(log, "AOCTV::FT Created {1} (isa 0x{2:x})",
new_iface_type.getAsString(), (uint64_t)isa);
}
- decls.push_back(CompilerDecl(&m_ast_ctx, iface_decl));
+ decls.push_back(m_ast_ctx.GetCompilerDecl(iface_decl));
ret++;
break;
} while (false);