[llvm-commits] CVS: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
Chris Lattner
lattner at cs.uiuc.edu
Mon Mar 27 16:39:18 PST 2006
Changes in directory llvm/include/llvm/CodeGen:
SelectionDAGNodes.h updated: 1.123 -> 1.124
---
Log message:
Tblgen doesn't like multiple SDNode<> definitions that map to the same
enum value. Split them into separate enums.
---
Diffs of the changes: (+22 -8)
SelectionDAGNodes.h | 30 ++++++++++++++++++++++--------
1 files changed, 22 insertions(+), 8 deletions(-)
Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.123 llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.124
--- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.123 Mon Mar 27 00:58:47 2006
+++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h Mon Mar 27 18:39:06 2006
@@ -80,14 +80,28 @@
TargetConstantPool,
TargetExternalSymbol,
- /// RESULT{,OUTCHAIN} = INTRINSIC({INCHAIN,} INTRINSICID, arg1, arg2, ...)
- /// This node represents a target intrinsic function. If the intrinsic
- /// has side effects, the first operand is a chain pointer and the result
- /// includes an output chain. After this input is the ID number of the
- /// intrinsic, from the llvm::intrinsic namespace. The operands to the
- /// intrinsic follow.
- INTRINSIC,
-
+ /// RESULT = INTRINSIC_WO_CHAIN(INTRINSICID, arg1, arg2, ...)
+ /// This node represents a target intrinsic function with no side effects.
+ /// The first operand is the ID number of the intrinsic from the
+ /// llvm::Intrinsic namespace. The operands to the intrinsic follow. The
+ /// node has returns the result of the intrinsic.
+ INTRINSIC_WO_CHAIN,
+
+ /// RESULT,OUTCHAIN = INTRINSIC_W_CHAIN(INCHAIN, INTRINSICID, arg1, ...)
+ /// This node represents a target intrinsic function with side effects that
+ /// returns a result. The first operand is a chain pointer. The second is
+ /// the ID number of the intrinsic from the llvm::Intrinsic namespace. The
+ /// operands to the intrinsic follow. The node has two results, the result
+ /// of the intrinsic and an output chain.
+ INTRINSIC_W_CHAIN,
+
+ /// OUTCHAIN = INTRINSIC_VOID(INCHAIN, INTRINSICID, arg1, arg2, ...)
+ /// This node represents a target intrinsic function with side effects that
+ /// does not return a result. The first operand is a chain pointer. The
+ /// second is the ID number of the intrinsic from the llvm::Intrinsic
+ /// namespace. The operands to the intrinsic follow.
+ INTRINSIC_VOID,
+
// CopyToReg - This node has three operands: a chain, a register number to
// set to this value, and a value.
CopyToReg,
More information about the llvm-commits
mailing list