mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-19 19:29:31 +00:00
disable this transformation in the one obscure case that really pessimizes
pointer analysis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20916 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0b77be8f0f
commit
b1515fe522
@ -4646,6 +4646,9 @@ static Instruction *InstCombineLoadCast(InstCombiner &IC, LoadInst &LI) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((SrcPTy->isInteger() || isa<PointerType>(SrcPTy)) &&
|
if ((SrcPTy->isInteger() || isa<PointerType>(SrcPTy)) &&
|
||||||
|
// Do not allow turning this into a load of an integer, which is then
|
||||||
|
// casted to a pointer, this pessimizes pointer analysis a lot.
|
||||||
|
(isa<PointerType>(SrcPTy) == isa<PointerType>(LI.getType())) &&
|
||||||
IC.getTargetData().getTypeSize(SrcPTy) ==
|
IC.getTargetData().getTypeSize(SrcPTy) ==
|
||||||
IC.getTargetData().getTypeSize(DestPTy)) {
|
IC.getTargetData().getTypeSize(DestPTy)) {
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user