[Lldb-commits] [lldb] r114932 - in /lldb/trunk/source/Plugins/SymbolFile/DWARF: SymbolFileDWARF.cpp SymbolFileDWARF.h
Greg Clayton
gclayton at apple.com
Mon Sep 27 18:04:25 PDT 2010
Author: gclayton
Date: Mon Sep 27 20:04:25 2010
New Revision: 114932
URL: http://llvm.org/viewvc/llvm-project?rev=114932&view=rev
Log:
Added a DIE to clang opaque type map.
Removed code that shouldn't have been checked in.
Modified:
lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp?rev=114932&r1=114931&r2=114932&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Mon Sep 27 20:04:25 2010
@@ -2561,6 +2561,10 @@
assert (tag_decl_kind != -1);
clang_type = type_list->GetClangASTContext().CreateRecordType (type_name_cstr, tag_decl_kind, GetClangDeclContextForDIE (dwarf_cu, die), class_language);
+ // Store a forward declaration to this class type in case any
+ // parameters in any class methods need it for the clang
+ // types for function prototypes.
+ m_die_to_clang_type[die] = clang_type;
m_die_to_decl_ctx[die] = ClangASTContext::GetDeclContextForType (clang_type);
type_sp.reset( new Type(die->GetOffset(), this, type_name_dbstr, byte_size, NULL, LLDB_INVALID_UID, Type::eIsTypeWithUID, &decl, clang_type));
@@ -2795,10 +2799,6 @@
// Parse the function children for the parameters
bool skip_artificial = true;
- if (die->GetOffset() == 1340212) // REMOVE THIS BEFORE CHECKIN
- { // REMOVE THIS BEFORE CHECKIN
- printf("this one!\n"); // REMOVE THIS BEFORE CHECKIN
- } // REMOVE THIS BEFORE CHECKIN
ParseChildParameters (sc, type_sp, dwarf_cu, die, skip_artificial, type_list, function_param_types, function_param_decls);
// clang_type will get the function prototype clang type after this call
Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h?rev=114932&r1=114931&r2=114932&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h Mon Sep 27 20:04:25 2010
@@ -319,9 +319,11 @@
typedef llvm::DenseMap<const DWARFDebugInfoEntry *, clang::DeclContext *> DIEToDeclContextMap;
typedef llvm::DenseMap<const DWARFDebugInfoEntry *, lldb_private::Type *> DIEToTypePtr;
typedef llvm::DenseMap<const DWARFDebugInfoEntry *, lldb::VariableSP> DIEToVariableSP;
+ typedef llvm::DenseMap<const DWARFDebugInfoEntry *, void *> DIEToClangType;
DIEToDeclContextMap m_die_to_decl_ctx;
DIEToTypePtr m_die_to_type;
DIEToVariableSP m_die_to_variable_sp;
+ DIEToClangType m_die_to_clang_type;
};
More information about the lldb-commits
mailing list