[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp
Chris Lattner
lattner at cs.uiuc.edu
Sun Aug 21 17:47:39 PDT 2005
Changes in directory llvm/lib/Target/PowerPC:
PPC32ISelPattern.cpp updated: 1.158 -> 1.159
---
Log message:
Make sure expressions only have one use before emitting them into a place that is conditionally executed
---
Diffs of the changes: (+4 -3)
PPC32ISelPattern.cpp | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
Index: llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp
diff -u llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp:1.158 llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp:1.159
--- llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp:1.158 Sun Aug 21 14:03:28 2005
+++ llvm/lib/Target/PowerPC/PPC32ISelPattern.cpp Sun Aug 21 19:47:28 2005
@@ -1670,9 +1670,10 @@
// If the false value is simple enough, evaluate it inline in the false
// block.
- if (isa<ConstantSDNode>(N.getOperand(3)) ||
- isa<ConstantFPSDNode>(N.getOperand(3)) ||
- isa<GlobalAddressSDNode>(N.getOperand(3)))
+ if (N.getOperand(3).Val->hasOneUse() &&
+ (isa<ConstantSDNode>(N.getOperand(3)) ||
+ isa<ConstantFPSDNode>(N.getOperand(3)) ||
+ isa<GlobalAddressSDNode>(N.getOperand(3))))
FalseValue = 0;
else
FalseValue = SelectExpr(N.getOperand(3));
More information about the llvm-commits
mailing list