mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-20 17:03:09 +00:00
Don't drop alignment on globals when cloning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57320 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d2a27ee974
commit
a6bf66d0d6
@ -55,10 +55,14 @@ Module *llvm::CloneModule(const Module *M,
|
||||
// don't worry about attributes or initializers, they will come later.
|
||||
//
|
||||
for (Module::const_global_iterator I = M->global_begin(), E = M->global_end();
|
||||
I != E; ++I)
|
||||
ValueMap[I] = new GlobalVariable(I->getType()->getElementType(), false,
|
||||
GlobalValue::ExternalLinkage, 0,
|
||||
I->getName(), New);
|
||||
I != E; ++I) {
|
||||
GlobalVariable *GV = new GlobalVariable(I->getType()->getElementType(),
|
||||
false,
|
||||
GlobalValue::ExternalLinkage, 0,
|
||||
I->getName(), New);
|
||||
GV->setAlignment(I->getAlignment());
|
||||
ValueMap[I] = GV;
|
||||
}
|
||||
|
||||
// Loop over the functions in the module, making external functions as before
|
||||
for (Module::const_iterator I = M->begin(), E = M->end(); I != E; ++I) {
|
||||
@ -66,7 +70,7 @@ Module *llvm::CloneModule(const Module *M,
|
||||
Function::Create(cast<FunctionType>(I->getType()->getElementType()),
|
||||
GlobalValue::ExternalLinkage, I->getName(), New);
|
||||
NF->copyAttributesFrom(I);
|
||||
ValueMap[I]= NF;
|
||||
ValueMap[I] = NF;
|
||||
}
|
||||
|
||||
// Loop over the aliases in the module
|
||||
|
Loading…
x
Reference in New Issue
Block a user