mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-21 03:53:04 +02:00
Utilize CastInst::CreatePointerBitCastOrAddrSpaceCast here.
llvm-svn: 213189
This commit is contained in:
parent
8124ab9a24
commit
e41c2e7cde
@ -1582,9 +1582,8 @@ Instruction *InstCombiner::visitGetElementPtrInst(GetElementPtrInst &GEP) {
|
|||||||
Builder->CreateGEP(StrippedPtr, Idx, GEP.getName());
|
Builder->CreateGEP(StrippedPtr, Idx, GEP.getName());
|
||||||
|
|
||||||
// V and GEP are both pointer types --> BitCast
|
// V and GEP are both pointer types --> BitCast
|
||||||
if (StrippedPtrTy->getAddressSpace() == GEP.getPointerAddressSpace())
|
return CastInst::CreatePointerBitCastOrAddrSpaceCast(NewGEP,
|
||||||
return new BitCastInst(NewGEP, GEP.getType());
|
GEP.getType());
|
||||||
return new AddrSpaceCastInst(NewGEP, GEP.getType());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Transform things like:
|
// Transform things like:
|
||||||
@ -1616,9 +1615,8 @@ Instruction *InstCombiner::visitGetElementPtrInst(GetElementPtrInst &GEP) {
|
|||||||
Builder->CreateGEP(StrippedPtr, NewIdx, GEP.getName());
|
Builder->CreateGEP(StrippedPtr, NewIdx, GEP.getName());
|
||||||
|
|
||||||
// The NewGEP must be pointer typed, so must the old one -> BitCast
|
// The NewGEP must be pointer typed, so must the old one -> BitCast
|
||||||
if (StrippedPtrTy->getAddressSpace() == GEP.getPointerAddressSpace())
|
return CastInst::CreatePointerBitCastOrAddrSpaceCast(NewGEP,
|
||||||
return new BitCastInst(NewGEP, GEP.getType());
|
GEP.getType());
|
||||||
return new AddrSpaceCastInst(NewGEP, GEP.getType());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1658,9 +1656,8 @@ Instruction *InstCombiner::visitGetElementPtrInst(GetElementPtrInst &GEP) {
|
|||||||
Builder->CreateInBoundsGEP(StrippedPtr, Off, GEP.getName()) :
|
Builder->CreateInBoundsGEP(StrippedPtr, Off, GEP.getName()) :
|
||||||
Builder->CreateGEP(StrippedPtr, Off, GEP.getName());
|
Builder->CreateGEP(StrippedPtr, Off, GEP.getName());
|
||||||
// The NewGEP must be pointer typed, so must the old one -> BitCast
|
// The NewGEP must be pointer typed, so must the old one -> BitCast
|
||||||
if (StrippedPtrTy->getAddressSpace() == GEP.getPointerAddressSpace())
|
return CastInst::CreatePointerBitCastOrAddrSpaceCast(NewGEP,
|
||||||
return new BitCastInst(NewGEP, GEP.getType());
|
GEP.getType());
|
||||||
return new AddrSpaceCastInst(NewGEP, GEP.getType());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user