[llvm-commits] CVS: llvm/lib/Transforms/Scalar/InstructionCombining.cpp
Chris Lattner
lattner at cs.uiuc.edu
Mon Mar 28 22:38:03 PST 2005
Changes in directory llvm/lib/Transforms/Scalar:
InstructionCombining.cpp updated: 1.316 -> 1.317
---
Log message:
disable this transformation in the one obscure case that really pessimizes
pointer analysis.
---
Diffs of the changes: (+3 -0)
InstructionCombining.cpp | 3 +++
1 files changed, 3 insertions(+)
Index: llvm/lib/Transforms/Scalar/InstructionCombining.cpp
diff -u llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.316 llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.317
--- llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.316 Fri Mar 4 17:21:33 2005
+++ llvm/lib/Transforms/Scalar/InstructionCombining.cpp Tue Mar 29 00:37:47 2005
@@ -4646,6 +4646,9 @@
}
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(DestPTy)) {
More information about the llvm-commits
mailing list