[llvm-commits] CVS: llvm/include/llvm/Target/TargetLowering.h
Chris Lattner
lattner at cs.uiuc.edu
Fri Jan 27 19:37:01 PST 2006
Changes in directory llvm/include/llvm/Target:
TargetLowering.h updated: 1.39 -> 1.40
---
Log message:
add a new callback
---
Diffs of the changes: (+12 -5)
TargetLowering.h | 17 ++++++++++++-----
1 files changed, 12 insertions(+), 5 deletions(-)
Index: llvm/include/llvm/Target/TargetLowering.h
diff -u llvm/include/llvm/Target/TargetLowering.h:1.39 llvm/include/llvm/Target/TargetLowering.h:1.40
--- llvm/include/llvm/Target/TargetLowering.h:1.39 Fri Jan 27 21:14:31 2006
+++ llvm/include/llvm/Target/TargetLowering.h Fri Jan 27 21:36:49 2006
@@ -368,17 +368,24 @@
LowerFrameReturnAddress(bool isFrameAddr, SDOperand Chain, unsigned Depth,
SelectionDAG &DAG);
- /// LowerOperation - For operations that are unsupported by the target, and
- /// which are registered to use 'custom' lowering, this callback is invoked.
+ /// LowerOperation - This callback is invoked for operations that are
+ /// unsupported by the target, which are registered to use 'custom' lowering,
+ /// and whose defined values are all legal.
/// If the target has no operations that require custom lowering, it need not
/// implement this. The default implementation of this aborts.
virtual SDOperand LowerOperation(SDOperand Op, SelectionDAG &DAG);
- /// CustomPromoteOperation - For operations that are unsupported by the
- /// target, are registered to use 'custom' lowering, and whose type needs to
- /// be promoted, this callback is invoked.
+ /// CustomPromoteOperation - This callback is invoked for operations that are
+ /// unsupported by the target, are registered to use 'custom' lowering, and
+ /// whose type needs to be promoted.
virtual SDOperand CustomPromoteOperation(SDOperand Op, SelectionDAG &DAG);
+ /// CustomExpandOperation - This callback is invoked for operations that are
+ /// unsupported by the target, are registered to use 'custom' lowering, and
+ /// whose type needs to be expanded.
+ virtual void CustomExpandOperation(SDOperand Op, SDOperand &Lo, SDOperand &Hi,
+ SelectionDAG &DAG);
+
/// getTargetNodeName() - This method returns the name of a target specific
/// DAG node.
virtual const char *getTargetNodeName(unsigned Opcode) const;
More information about the llvm-commits
mailing list