[llvm-commits] [llvm] r42632 - /llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h

Dan Gohman djg at cray.com
Fri Oct 5 07:07:57 PDT 2007


Author: djg
Date: Fri Oct  5 09:07:56 2007
New Revision: 42632

URL: http://llvm.org/viewvc/llvm-project?rev=42632&view=rev
Log:
Define target-indepenent SDNode types for multiply and divide that
produce two results.

Modified:
    llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h

Modified: llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h?rev=42632&r1=42631&r2=42632&view=diff

==============================================================================
--- llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h (original)
+++ llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h Fri Oct  5 09:07:56 2007
@@ -233,6 +233,15 @@
 
     // Simple integer binary arithmetic operators.
     ADD, SUB, MUL, SDIV, UDIV, SREM, UREM,
+
+    // SMUL_LOHI/UMUL_LOHI - Multiply two integers of type iN, producing
+    // a signed/unsigned value of type i[2*n], and return the full value as
+    // two results, each of type iN.
+    SMUL_LOHI, UMUL_LOHI,
+
+    // SDIVREM/UDIVREM - Divide two integers and produce both a quotient and
+    // remainder result.
+    SDIVREM, UDIVREM,
     
     // CARRY_FALSE - This node is used when folding other nodes,
     // like ADDC/SUBC, which indicate the carry result is always false.





More information about the llvm-commits mailing list