diff options
author | Chris Lattner <sabre@nondot.org> | 2008-02-02 04:43:11 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-02-02 04:43:11 +0000 |
commit | 495737830441e3e01ed2699eb9e38c8f15116cb5 (patch) | |
tree | 8fe00ec94930653a2aa052dc81bf00359d61914a /CodeGen/CodeGenModule.cpp | |
parent | 49c1f4aa2a6c360d25d605004ec3c4affd62db77 (diff) |
fix codegen on static variables which have multiple decl nodes. These
should be merged just like normal globals. This fixes this testcase
that Anders provided:
static struct s a;
static struct s *ap1 = &a;
static struct s a = { 10 };
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46661 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CodeGen/CodeGenModule.cpp')
-rw-r--r-- | CodeGen/CodeGenModule.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/CodeGen/CodeGenModule.cpp b/CodeGen/CodeGenModule.cpp index ee84f954c5..edf3dc4283 100644 --- a/CodeGen/CodeGenModule.cpp +++ b/CodeGen/CodeGenModule.cpp @@ -134,7 +134,7 @@ llvm::Constant *CodeGenModule::GetAddrOfGlobalVar(const VarDecl *D, const llvm::Type *Ty = getTypes().ConvertTypeForMem(D->getType()); // Check to see if the global already exists. - llvm::GlobalVariable *GV = getModule().getGlobalVariable(D->getName()); + llvm::GlobalVariable *GV = getModule().getGlobalVariable(D->getName(), true); // If it doesn't already exist, just create and return an entry. if (GV == 0) { |