Provide support for detecting if the Win32 imaghlp and psapi libraries
[oota-llvm.git] / include / llvm / CodeGen / SelectionDAGNodes.h
index 80eaf4b25f52496f1120841361f9cb987ef60ed4..c5b9756de393a5e5f17396a3634e6047216b8de6 100644 (file)
@@ -47,6 +47,10 @@ namespace ISD {
   /// SelectionDAG.
   ///
   enum NodeType {
+    // DELETED_NODE - This is an illegal flag value that is used to catch
+    // errors.  This opcode is not a legal opcode for any node.
+    DELETED_NODE,
+    
     // EntryToken - This is the marker used to indicate the start of the region.
     EntryToken,
 
@@ -125,10 +129,10 @@ namespace ISD {
     FORMAL_ARGUMENTS,
     
     /// RV1, RV2...RVn, CHAIN = CALL(CHAIN, CC#, ISVARARG, ISTAILCALL, CALLEE,
-    ///                              ARG0, ARG1, ... ARGn)
+    ///                              ARG0, SIGN0, ARG1, SIGN1, ... ARGn, SIGNn)
     /// This node represents a fully general function call, before the legalizer
-    /// runs.  This has one result value for each argument, plus a chain result.
-    /// It must be custom legalized.
+    /// runs.  This has one result value for each argument / signness pair, plus
+    /// a chain result. It must be custom legalized.
     CALL,
 
     // EXTRACT_ELEMENT - This is used to get the first or second (determined by
@@ -414,8 +418,9 @@ namespace ISD {
     BR_CC,
     
     // RET - Return from function.  The first operand is the chain,
-    // and any subsequent operands are the return values for the
-    // function.  This operation can have variable number of operands.
+    // and any subsequent operands are pairs of return value and return value
+    // signness for the function.  This operation can have variable number of
+    // operands.
     RET,
 
     // INLINEASM - Represents an inline asm block.  This node always has two
@@ -711,6 +716,7 @@ class SDNode {
 public:
   virtual ~SDNode() {
     assert(NumOperands == 0 && "Operand list not cleared before deletion");
+    NodeType = ISD::DELETED_NODE;
   }
   
   //===--------------------------------------------------------------------===//