Updated to latest LLVM/Clang for external AST source changes that allow
TagDecl subclasses and Objective C interfaces to complete themselves through
the ExternalASTSource class.
llvm-svn: 120749
diff --git a/lldb/include/lldb/Expression/ClangExpressionParser.h b/lldb/include/lldb/Expression/ClangExpressionParser.h
index 6121241..9893dfd 100644
--- a/lldb/include/lldb/Expression/ClangExpressionParser.h
+++ b/lldb/include/lldb/Expression/ClangExpressionParser.h
@@ -174,7 +174,6 @@
std::string m_target_triple; ///< The target triple used to initialize LLVM
std::auto_ptr<clang::FileManager> m_file_manager; ///< The Clang file manager object used by the compiler
- std::auto_ptr<clang::FileSystemOptions> m_file_system_options; ///< The Clang file system options object used by the compiler
std::auto_ptr<clang::CompilerInstance> m_compiler; ///< The Clang compiler used to parse expressions into IR
std::auto_ptr<clang::Builtin::Context> m_builtin_context; ///< Context for Clang built-ins
std::auto_ptr<clang::SelectorTable> m_selector_table; ///< Selector table for Objective-C methods
diff --git a/lldb/include/lldb/Symbol/ClangASTContext.h b/lldb/include/lldb/Symbol/ClangASTContext.h
index 4ea3260..dcb9f67 100644
--- a/lldb/include/lldb/Symbol/ClangASTContext.h
+++ b/lldb/include/lldb/Symbol/ClangASTContext.h
@@ -75,9 +75,6 @@
clang::FileManager *
getFileManager();
- clang::FileSystemOptions *
- getFileSystemOptions();
-
clang::SourceManager *
getSourceManager();
diff --git a/lldb/scripts/build-llvm.pl b/lldb/scripts/build-llvm.pl
index 43de6cd..02ce2e1 100644
--- a/lldb/scripts/build-llvm.pl
+++ b/lldb/scripts/build-llvm.pl
@@ -25,7 +25,7 @@
our $llvm_configuration = $ENV{LLVM_CONFIGURATION};
-our $llvm_revision = "'{2010-11-19T13:00}'";
+our $llvm_revision = "120727";
our $llvm_source_dir = "$ENV{SRCROOT}";
our $cc = "$ENV{DEVELOPER_BIN_DIR}/gcc-4.2";
our $cxx = "$ENV{DEVELOPER_BIN_DIR}/g++-4.2";
diff --git a/lldb/source/Core/FileSpec.cpp b/lldb/source/Core/FileSpec.cpp
index f99fcd0..3650a82 100644
--- a/lldb/source/Core/FileSpec.cpp
+++ b/lldb/source/Core/FileSpec.cpp
@@ -19,8 +19,8 @@
#include <fstream>
#include "llvm/ADT/StringRef.h"
-#include "llvm/System/Path.h"
-#include "llvm/System/Program.h"
+#include "llvm/Support/Path.h"
+#include "llvm/Support/Program.h"
#include "lldb/Core/FileSpec.h"
#include "lldb/Core/DataBufferHeap.h"
diff --git a/lldb/source/Expression/ClangExpressionParser.cpp b/lldb/source/Expression/ClangExpressionParser.cpp
index ffc2c9d..be7a4e9 100644
--- a/lldb/source/Expression/ClangExpressionParser.cpp
+++ b/lldb/source/Expression/ClangExpressionParser.cpp
@@ -54,9 +54,9 @@
#include "llvm/LLVMContext.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MemoryBuffer.h"
-#include "llvm/System/DynamicLibrary.h"
-#include "llvm/System/Host.h"
-#include "llvm/System/Signals.h"
+#include "llvm/Support/DynamicLibrary.h"
+#include "llvm/Support/Host.h"
+#include "llvm/Support/Signals.h"
#include "llvm/Target/TargetRegistry.h"
#include "llvm/Target/TargetSelect.h"
@@ -243,11 +243,11 @@
// 5. Set up the source management objects inside the compiler
- m_file_manager.reset(new clang::FileManager());
- m_file_system_options.reset(new clang::FileSystemOptions());
+ clang::FileSystemOptions file_system_options;
+ m_file_manager.reset(new clang::FileManager(file_system_options));
if (!m_compiler->hasSourceManager())
- m_compiler->createSourceManager(*m_file_manager.get(), *m_file_system_options.get());
+ m_compiler->createSourceManager(*m_file_manager.get());
m_compiler->createFileManager();
m_compiler->createPreprocessor();
diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp
index 566c3ea..14af2ab 100644
--- a/lldb/source/Symbol/ClangASTContext.cpp
+++ b/lldb/source/Symbol/ClangASTContext.cpp
@@ -356,23 +356,18 @@
ClangASTContext::getFileManager()
{
if (m_file_manager_ap.get() == NULL)
- m_file_manager_ap.reset(new clang::FileManager());
+ {
+ clang::FileSystemOptions file_system_options;
+ m_file_manager_ap.reset(new clang::FileManager(file_system_options));
+ }
return m_file_manager_ap.get();
}
-clang::FileSystemOptions *
-ClangASTContext::getFileSystemOptions()
-{
- if (m_file_system_options_ap.get() == NULL)
- m_file_system_options_ap.reset(new clang::FileSystemOptions());
- return m_file_system_options_ap.get();
-}
-
clang::SourceManager *
ClangASTContext::getSourceManager()
{
if (m_source_manager_ap.get() == NULL)
- m_source_manager_ap.reset(new clang::SourceManager(*getDiagnostic(), *getFileManager(), *getFileSystemOptions()));
+ m_source_manager_ap.reset(new clang::SourceManager(*getDiagnostic(), *getFileManager()));
return m_source_manager_ap.get();
}
@@ -748,33 +743,33 @@
};
clang_type_t
-ClangASTContext::CopyType (ASTContext *dest_context,
- ASTContext *source_context,
+ClangASTContext::CopyType (ASTContext *dst_ast,
+ ASTContext *src_ast,
clang_type_t clang_type)
{
// null_client's ownership is transferred to diagnostics
- FileManager file_manager;
FileSystemOptions file_system_options;
- ASTImporter importer(*dest_context, file_manager, file_system_options,
- *source_context, file_manager, file_system_options);
+ FileManager file_manager (file_system_options);
+ ASTImporter importer(*dst_ast, file_manager,
+ *src_ast, file_manager);
- QualType src = QualType::getFromOpaquePtr(clang_type);
- QualType dst = importer.Import(src);
+ QualType src (QualType::getFromOpaquePtr(clang_type));
+ QualType dst (importer.Import(src));
return dst.getAsOpaquePtr();
}
clang::Decl *
-ClangASTContext::CopyDecl (ASTContext *dest_context,
- ASTContext *source_context,
+ClangASTContext::CopyDecl (ASTContext *dst_ast,
+ ASTContext *src_ast,
clang::Decl *source_decl)
{
// null_client's ownership is transferred to diagnostics
- FileManager file_manager;
FileSystemOptions file_system_options;
- ASTImporter importer(*dest_context, file_manager, file_system_options,
- *source_context, file_manager, file_system_options);
+ FileManager file_manager (file_system_options);
+ ASTImporter importer(*dst_ast, file_manager,
+ *src_ast, file_manager);
return importer.Import(source_decl);
}