diff options
author | Devang Patel <dpatel@apple.com> | 2010-04-29 17:48:37 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2010-04-29 17:48:37 +0000 |
commit | 5d822f06e84196c8bf80641d793d35e8cc7adb0e (patch) | |
tree | 6fc838070ec26be33530c28333841170c73deb0f | |
parent | cf9991013921df75c226f6d9bbc08e3a4f00d91e (diff) |
Use clang::VarDecl name instead of llvm::GlobalVariable name.
llvm::GLobalVariable name may not match user visibile name for function static variables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102644 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/CGDebugInfo.cpp | 2 | ||||
-rw-r--r-- | test/CodeGen/2009-10-20-GlobalDebug.c | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/lib/CodeGen/CGDebugInfo.cpp b/lib/CodeGen/CGDebugInfo.cpp index 4991c0ff02..4963e73fe4 100644 --- a/lib/CodeGen/CGDebugInfo.cpp +++ b/lib/CodeGen/CGDebugInfo.cpp @@ -1601,7 +1601,7 @@ void CGDebugInfo::EmitGlobalVariable(llvm::GlobalVariable *Var, T = CGM.getContext().getConstantArrayType(ET, ConstVal, ArrayType::Normal, 0); } - llvm::StringRef DeclName = Var->getName(); + llvm::StringRef DeclName = D->getName(); llvm::DIDescriptor DContext = getContextDescriptor(dyn_cast<Decl>(D->getDeclContext()), Unit); DebugFactory.CreateGlobalVariable(DContext, DeclName, diff --git a/test/CodeGen/2009-10-20-GlobalDebug.c b/test/CodeGen/2009-10-20-GlobalDebug.c index 99be46996e..1db37de4bb 100644 --- a/test/CodeGen/2009-10-20-GlobalDebug.c +++ b/test/CodeGen/2009-10-20-GlobalDebug.c @@ -1,4 +1,8 @@ // RUN: %clang -ccc-host-triple i386-apple-darwin10 -S -g -dA %s -o - | FileCheck %s int global; -// CHECK: asciz "global" ## External Name -int main() { return 0;} +// CHECK: asciz "global" ## External Name +// CHECK: asciz "localstatic" ## External Name +int main() { + static int localstatic; + return 0; +} |