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
This commit is contained in:
Dan Gohman 2007-10-05 14:07:56 +00:00
parent 3ec81c0ee7
commit fdd04d5dde

View File

@ -234,6 +234,15 @@ namespace ISD {
// Simple integer binary arithmetic operators. // Simple integer binary arithmetic operators.
ADD, SUB, MUL, SDIV, UDIV, SREM, UREM, 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, // CARRY_FALSE - This node is used when folding other nodes,
// like ADDC/SUBC, which indicate the carry result is always false. // like ADDC/SUBC, which indicate the carry result is always false.
CARRY_FALSE, CARRY_FALSE,