[llvm-commits] [llvm-gcc-4.2] r95567 - /llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp

Devang Patel dpatel at apple.com
Mon Feb 8 12:51:18 PST 2010


Author: dpatel
Date: Mon Feb  8 14:51:18 2010
New Revision: 95567

URL: http://llvm.org/viewvc/llvm-project?rev=95567&view=rev
Log:
Do not emit linkage name for function local statics. 
Emit linkage name otherwise.

Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp?rev=95567&r1=95566&r2=95567&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-debug.cpp Mon Feb  8 14:51:18 2010
@@ -542,9 +542,13 @@
     if (IDENTIFIER_POINTER(DECL_NAME(decl)))
       DispName = IDENTIFIER_POINTER(DECL_NAME(decl));
   }
-    
+  StringRef LinkageName;
+  // The gdb does not expect linkage names for function local statics.
+  if (DECL_CONTEXT (decl))
+    if (TREE_CODE (DECL_CONTEXT (decl)) != FUNCTION_DECL)
+      LinkageName = GV->getName();
   DebugFactory.CreateGlobalVariable(findRegion(DECL_CONTEXT(decl)),
-                                    DispName, DispName, StringRef(),
+                                    DispName, DispName, LinkageName,
                                     getOrCreateCompileUnit(Loc.file), Loc.line,
                                     TyD, GV->hasInternalLinkage(),
                                     true/*definition*/, GV);





More information about the llvm-commits mailing list