aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Gohman <djg@cray.com>2007-10-05 14:07:56 +0000
committerDan Gohman <djg@cray.com>2007-10-05 14:07:56 +0000
commitbf167e3514ed97a40eee6a366e0d29edb4f47458 (patch)
tree2c54d15ad7b87f2046339a0e86e9e5e8709e7633
parentb0fcefb29f21a65092ed1177a3fb0eae05f543b5 (diff)
downloadexternal_llvm-bf167e3514ed97a40eee6a366e0d29edb4f47458.zip
external_llvm-bf167e3514ed97a40eee6a366e0d29edb4f47458.tar.gz
external_llvm-bf167e3514ed97a40eee6a366e0d29edb4f47458.tar.bz2
Define target-indepenent SDNode types for multiply and divide that
produce two results. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42632 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/CodeGen/SelectionDAGNodes.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h
index ee926f1..e153ee9 100644
--- a/include/llvm/CodeGen/SelectionDAGNodes.h
+++ b/include/llvm/CodeGen/SelectionDAGNodes.h
@@ -233,6 +233,15 @@ namespace ISD {
// 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.