[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Chris Lattner
sabre at nondot.org
Wed Apr 11 22:59:00 PDT 2007
Changes in directory llvm/lib/CodeGen/SelectionDAG:
SelectionDAG.cpp updated: 1.396 -> 1.397
---
Log message:
fold noop vbitconvert instructions
---
Diffs of the changes: (+9 -0)
SelectionDAG.cpp | 9 +++++++++
1 files changed, 9 insertions(+)
Index: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.396 llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.397
--- llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.396 Mon Apr 9 00:23:13 2007
+++ llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp Thu Apr 12 00:58:43 2007
@@ -1484,6 +1484,15 @@
MVT::getVectorNumElements(VT) == N3.getNumOperands() &&
"Illegal VECTOR_SHUFFLE node!");
break;
+ case ISD::VBIT_CONVERT:
+ // Fold vbit_convert nodes from a type to themselves.
+ if (N1.getValueType() == MVT::Vector) {
+ assert(isa<ConstantSDNode>(*(N1.Val->op_end()-2)) &&
+ isa<VTSDNode>(*(N1.Val->op_end()-1)) && "Malformed vector input!");
+ if (*(N1.Val->op_end()-2) == N2 && *(N1.Val->op_end()-1) == N3)
+ return N1;
+ }
+ break;
}
// Memoize node if it doesn't produce a flag.
More information about the llvm-commits
mailing list