[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