[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp PPCISelLowering.cpp PPCInstrInfo.td
Chris Lattner
lattner at cs.uiuc.edu
Sat Apr 8 15:45:21 PDT 2006
Changes in directory llvm/lib/Target/PowerPC:
PPCISelDAGToDAG.cpp updated: 1.178 -> 1.179
PPCISelLowering.cpp updated: 1.140 -> 1.141
PPCInstrInfo.td updated: 1.214 -> 1.215
---
Log message:
Add VRRC select support
---
Diffs of the changes: (+8 -2)
PPCISelDAGToDAG.cpp | 5 ++++-
PPCISelLowering.cpp | 3 ++-
PPCInstrInfo.td | 2 ++
3 files changed, 8 insertions(+), 2 deletions(-)
Index: llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp:1.178 llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp:1.179
--- llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp:1.178 Sun Mar 26 04:06:40 2006
+++ llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp Sat Apr 8 17:45:08 2006
@@ -1219,8 +1219,11 @@
SelectCCOp = PPC::SELECT_CC_Int;
else if (N->getValueType(0) == MVT::f32)
SelectCCOp = PPC::SELECT_CC_F4;
- else
+ else if (N->getValueType(0) == MVT::f64)
SelectCCOp = PPC::SELECT_CC_F8;
+ else
+ SelectCCOp = PPC::SELECT_CC_VRRC;
+
SDOperand N2, N3;
Select(N2, N->getOperand(2));
Select(N3, N->getOperand(3));
Index: llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.140 llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.141
--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.140 Sat Apr 8 02:14:26 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp Sat Apr 8 17:45:08 2006
@@ -1484,7 +1484,8 @@
MachineBasicBlock *BB) {
assert((MI->getOpcode() == PPC::SELECT_CC_Int ||
MI->getOpcode() == PPC::SELECT_CC_F4 ||
- MI->getOpcode() == PPC::SELECT_CC_F8) &&
+ MI->getOpcode() == PPC::SELECT_CC_F8 ||
+ MI->getOpcode() == PPC::SELECT_CC_VRRC) &&
"Unexpected instr type to insert");
// To "insert" a SELECT_CC instruction, we actually have to insert the diamond
Index: llvm/lib/Target/PowerPC/PPCInstrInfo.td
diff -u llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.214 llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.215
--- llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.214 Thu Mar 30 23:13:27 2006
+++ llvm/lib/Target/PowerPC/PPCInstrInfo.td Sat Apr 8 17:45:08 2006
@@ -247,6 +247,8 @@
i32imm:$BROPC), "; SELECT_CC PSEUDO!", []>;
def SELECT_CC_F8 : Pseudo<(ops F8RC:$dst, CRRC:$cond, F8RC:$T, F8RC:$F,
i32imm:$BROPC), "; SELECT_CC PSEUDO!", []>;
+ def SELECT_CC_VRRC: Pseudo<(ops VRRC:$dst, CRRC:$cond, VRRC:$T, VRRC:$F,
+ i32imm:$BROPC), "; SELECT_CC PSEUDO!", []>;
}
let isTerminator = 1, noResults = 1, PPC970_Unit = 7 in {
More information about the llvm-commits
mailing list