[cfe-commits] r125210 - in /cfe/trunk: lib/CodeGen/CGDebugInfo.cpp test/CodeGenObjC/debug-info-static-var.m
Devang Patel
dpatel at apple.com
Wed Feb 9 11:16:39 PST 2011
Author: dpatel
Date: Wed Feb 9 13:16:38 2011
New Revision: 125210
URL: http://llvm.org/viewvc/llvm-project?rev=125210&view=rev
Log:
Do not emit AT_MIPS_linkage_name for Objective-C method static variable i.
Added:
cfe/trunk/test/CodeGenObjC/debug-info-static-var.m
Modified:
cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.cpp?rev=125210&r1=125209&r2=125210&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGDebugInfo.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Wed Feb 9 13:16:38 2011
@@ -1954,7 +1954,8 @@
}
llvm::StringRef DeclName = D->getName();
llvm::StringRef LinkageName;
- if (D->getDeclContext() && !isa<FunctionDecl>(D->getDeclContext()))
+ if (D->getDeclContext() && !isa<FunctionDecl>(D->getDeclContext())
+ && !isa<ObjCMethodDecl>(D->getDeclContext()))
LinkageName = Var->getName();
if (LinkageName == DeclName)
LinkageName = llvm::StringRef();
Added: cfe/trunk/test/CodeGenObjC/debug-info-static-var.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenObjC/debug-info-static-var.m?rev=125210&view=auto
==============================================================================
--- cfe/trunk/test/CodeGenObjC/debug-info-static-var.m (added)
+++ cfe/trunk/test/CodeGenObjC/debug-info-static-var.m Wed Feb 9 13:16:38 2011
@@ -0,0 +1,23 @@
+// RUN: %clang_cc1 -g -S -masm-verbose -o - %s | FileCheck %s
+// Radar 8801045
+// Do not emit AT_MIPS_linkage_name for static variable i
+
+// CHECK: DW_TAG_variable
+// CHECK-NEXT: .byte 105 ## DW_AT_name
+// CHECK-NEXT: .byte 0
+// CHECK-NEXT: DW_AT_type
+// CHECK-NEXT: DW_AT_decl_file
+// CHECK-NEXT: DW_AT_decl_line
+// CHECK-NEXT: DW_AT_location
+
+ at interface A {
+}
+-(void) foo;
+ at end
+
+ at implementation A
+-(void)foo {
+ static int i = 1;
+}
+ at end
+
More information about the cfe-commits
mailing list