From 38bf3bffe3abfd00169d6dcf4fad7e2197808dbf Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 5 Mar 2006 05:06:40 +0000 Subject: [PATCH] Add a copysign node git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26540 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/SelectionDAGNodes.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h index 392a6847a9f..9a5a3b27bc2 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.