diff options
author | David Blaikie <dblaikie@gmail.com> | 2015-09-14 20:29:26 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2015-09-14 20:29:26 +0000 |
commit | 6614d8d2308f2571a79592cdd4b4611a1e072898 (patch) | |
tree | 12bc2f2be4b939fca06d489111ec5e8aa563b464 /llvm/lib/CodeGen/GlobalMerge.cpp | |
parent | 601771ebc089d92cbdc674d1856f44ce325c82d5 (diff) | |
download | bcm5719-llvm-6614d8d2308f2571a79592cdd4b4611a1e072898.tar.gz bcm5719-llvm-6614d8d2308f2571a79592cdd4b4611a1e072898.zip |
[opaque pointer types] Switch a few cases of getElementType over, since I had them lying around anyway
llvm-svn: 247610
Diffstat (limited to 'llvm/lib/CodeGen/GlobalMerge.cpp')
-rw-r--r-- | llvm/lib/CodeGen/GlobalMerge.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/GlobalMerge.cpp b/llvm/lib/CodeGen/GlobalMerge.cpp index 3d3f354bcdd..da5c9459548 100644 --- a/llvm/lib/CodeGen/GlobalMerge.cpp +++ b/llvm/lib/CodeGen/GlobalMerge.cpp @@ -441,13 +441,13 @@ bool GlobalMerge::doMerge(const SmallVectorImpl<GlobalVariable *> &Globals, M, MergedTy, isConst, GlobalValue::PrivateLinkage, MergedInit, "_MergedGlobals", nullptr, GlobalVariable::NotThreadLocal, AddrSpace); - for (ssize_t k = i, idx = 0; k != j; k = GlobalSet.find_next(k)) { + for (ssize_t k = i, idx = 0; k != j; k = GlobalSet.find_next(k), ++idx) { GlobalValue::LinkageTypes Linkage = Globals[k]->getLinkage(); std::string Name = Globals[k]->getName(); Constant *Idx[2] = { ConstantInt::get(Int32Ty, 0), - ConstantInt::get(Int32Ty, idx++) + ConstantInt::get(Int32Ty, idx), }; Constant *GEP = ConstantExpr::getInBoundsGetElementPtr(MergedTy, MergedGV, Idx); @@ -461,9 +461,7 @@ bool GlobalMerge::doMerge(const SmallVectorImpl<GlobalVariable *> &Globals, // MergedGlobals variable) may be dead stripped at link time. if (Linkage != GlobalValue::InternalLinkage || !TM->getTargetTriple().isOSBinFormatMachO()) { - auto *PTy = cast<PointerType>(GEP->getType()); - GlobalAlias::create(PTy->getElementType(), PTy->getAddressSpace(), - Linkage, Name, GEP, &M); + GlobalAlias::create(Tys[idx], AddrSpace, Linkage, Name, GEP, &M); } NumMerged++; |