aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-03-05 05:06:40 +0000
committerChris Lattner <sabre@nondot.org>2006-03-05 05:06:40 +0000
commit38bf3bffe3abfd00169d6dcf4fad7e2197808dbf (patch)
tree77fc45b17b86cbb2ed3fd531e0e048d6ef572727
parenta4929df2dadbf6b027106088f38282b0e0d51ee2 (diff)
downloadexternal_llvm-38bf3bffe3abfd00169d6dcf4fad7e2197808dbf.zip
external_llvm-38bf3bffe3abfd00169d6dcf4fad7e2197808dbf.tar.gz
external_llvm-38bf3bffe3abfd00169d6dcf4fad7e2197808dbf.tar.bz2
Add a copysign node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26540 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/CodeGen/SelectionDAGNodes.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h
index 392a684..9a5a3b2 100644
--- a/include/llvm/CodeGen/SelectionDAGNodes.h
+++ b/include/llvm/CodeGen/SelectionDAGNodes.h
@@ -140,6 +140,12 @@ namespace ISD {
// Simple binary floating point operators.
FADD, FSUB, FMUL, FDIV, FREM,
+
+ // FCOPYSIGN(X, Y) - Return the value of X with the sign of Y. NOTE: This
+ // DAG node does not require that X and Y have the same type, just that they
+ // are both floating point. X and the result must have the same type.
+ // FCOPYSIGN(f32, f64) is allowed.
+ FCOPYSIGN,
// Simple abstract vector operators. Unlike the integer and floating point
// binary operators, these nodes also take two additional operands:
@@ -243,7 +249,7 @@ namespace ISD {
// FNEG, FABS, FSQRT, FSIN, FCOS - Perform unary floating point negation,
// absolute value, square root, sine and cosine operations.
FNEG, FABS, FSQRT, FSIN, FCOS,
-
+
// Other operators. LOAD and STORE have token chains as their first
// operand, then the same operands as an LLVM load/store instruction, then a
// SRCVALUE node that provides alias analysis information.