diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-03-09 03:27:46 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-03-09 03:27:46 +0000 |
commit | 1c8d2ca82996a1e6c6f3e827fa44fb2acde97c89 (patch) | |
tree | 28cdccddba6938f96136c17aa11a3884c1b793b9 /clang/lib/CodeGen/CodeGenModule.h | |
parent | 9d60f6076032f2947055f9c2791afedc29d75299 (diff) | |
download | bcm5719-llvm-1c8d2ca82996a1e6c6f3e827fa44fb2acde97c89.tar.gz bcm5719-llvm-1c8d2ca82996a1e6c6f3e827fa44fb2acde97c89.zip |
Make sure we update the static local decl address map when we are forced to rebuild a global because of the initializer. <rdar://problem/10957867>.
llvm-svn: 152372
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index d6983ce7822..be0727eaeeb 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -279,7 +279,7 @@ class CodeGenModule : public CodeGenTypeCache { llvm::StringMap<llvm::Constant*> CFConstantStringMap; llvm::StringMap<llvm::GlobalVariable*> ConstantStringMap; - llvm::DenseMap<const Decl*, llvm::Value*> StaticLocalDeclMap; + llvm::DenseMap<const Decl*, llvm::Constant *> StaticLocalDeclMap; llvm::DenseMap<QualType, llvm::Constant *> AtomicSetterHelperFnMap; llvm::DenseMap<QualType, llvm::Constant *> AtomicGetterHelperFnMap; @@ -397,12 +397,12 @@ public: return *RRData; } - llvm::Value *getStaticLocalDeclAddress(const VarDecl *VD) { - return StaticLocalDeclMap[VD]; + llvm::Constant *getStaticLocalDeclAddress(const VarDecl *D) { + return StaticLocalDeclMap[D]; } void setStaticLocalDeclAddress(const VarDecl *D, - llvm::GlobalVariable *GV) { - StaticLocalDeclMap[D] = GV; + llvm::Constant *C) { + StaticLocalDeclMap[D] = C; } llvm::Constant *getAtomicSetterHelperFnMap(QualType Ty) { |