[llvm-commits] [llvm] r137998 - /llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp

Devang Patel dpatel at apple.com
Thu Aug 18 15:21:51 PDT 2011


Author: dpatel
Date: Thu Aug 18 17:21:50 2011
New Revision: 137998

URL: http://llvm.org/viewvc/llvm-project?rev=137998&view=rev
Log:
Add new DIE into the map asap.

Modified:
    llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp

Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp?rev=137998&r1=137997&r2=137998&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp Thu Aug 18 17:21:50 2011
@@ -1030,26 +1030,26 @@
 
 /// createGlobalVariableDIE - create global variable DIE.
 void CompileUnit::createGlobalVariableDIE(const MDNode *N) {
-  DIGlobalVariable GV(N);
-
   // Check for pre-existence.
-  if (getDIE(GV))
+  if (getDIE(N))
     return;
 
-  DIType GTy = GV.getType();
+  DIGlobalVariable GV(N);
   DIE *VariableDIE = new DIE(GV.getTag());
-
-  bool isGlobalVariable = GV.getGlobal() != NULL;
+  // Add to map.
+  insertDIE(N, VariableDIE);
 
   // Add name.
   addString(VariableDIE, dwarf::DW_AT_name, dwarf::DW_FORM_string,
                    GV.getDisplayName());
   StringRef LinkageName = GV.getLinkageName();
+  bool isGlobalVariable = GV.getGlobal() != NULL;
   if (!LinkageName.empty() && isGlobalVariable)
     addString(VariableDIE, dwarf::DW_AT_MIPS_linkage_name, 
                      dwarf::DW_FORM_string,
                      getRealLinkageName(LinkageName));
   // Add type.
+  DIType GTy = GV.getType();
   addType(VariableDIE, GTy);
 
   // Add scoping info.
@@ -1060,8 +1060,6 @@
   }
   // Add line number info.
   addSourceLine(VariableDIE, GV);
-  // Add to map.
-  insertDIE(N, VariableDIE);
   // Add to context owner.
   DIDescriptor GVContext = GV.getContext();
   addToContextOwner(VariableDIE, GVContext);





More information about the llvm-commits mailing list