Remove remaining uses of REAL_VALUES_IDENTICAL
authorRichard Sandiford <richard.sandiford@arm.com>
Mon, 5 Oct 2015 11:30:52 +0000 (11:30 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Mon, 5 Oct 2015 11:30:52 +0000 (11:30 +0000)
This patch continues the removal of real-related macros.
We already had both the old-style REAL_VALUES_IDENTICAL and the
new-style real_identical, so this patch replaces all remaining
uses of the former with the latter.

Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
building one target per CPU directory and checking that there were
no new warnings and no changes in testsuite output at -O2.

gcc/
* real.h (REAL_VALUES_IDENTICAL): Delete.
* config/m68k/m68k.c (standard_68881_constant_p): Use real_identical
instead of REAL_VALUES_IDENTICAL.
* fold-const.c (operand_equal_p): Likewise.
* ipa-icf.c (sem_variable::equals): Likewise.
* tree-complex.c (some_nonzerop): Likewise.
(expand_complex_multiplication): Likewise.
* tree.c (simple_cst_equal): Likewise.
* varasm.c (compare_constant): Likewise.
---
 gcc/config/m68k/m68k.c | 5 ++---
 gcc/fold-const.c       | 3 +--
 gcc/ipa-icf.c          | 4 ++--
 gcc/real.h             | 1 -
 gcc/tree-complex.c     | 4 ++--
 gcc/tree.c             | 2 +-
 gcc/varasm.c           | 2 +-
 7 files changed, 9 insertions(+), 12 deletions(-)

From-SVN: r228474

gcc/ChangeLog
gcc/config/m68k/m68k.c
gcc/fold-const.c
gcc/ipa-icf.c
gcc/real.h
gcc/tree-complex.c
gcc/tree.c
gcc/varasm.c

index 8089fb029dd1a179344a8fbc2465ab2ffbcca38c..6493e38363293b9aa6a85e38d769d9f644ef1791 100644 (file)
@@ -1,3 +1,24 @@
+2015-10-05  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * real.h (REAL_VALUES_IDENTICAL): Delete.
+       * config/m68k/m68k.c (standard_68881_constant_p): Use real_identical
+       instead of REAL_VALUES_IDENTICAL.
+       * fold-const.c (operand_equal_p): Likewise.
+       * ipa-icf.c (sem_variable::equals): Likewise.
+       * tree-complex.c (some_nonzerop): Likewise.
+       (expand_complex_multiplication): Likewise.
+       * tree.c (simple_cst_equal): Likewise.
+       * varasm.c (compare_constant): Likewise.
+---
+ gcc/config/m68k/m68k.c | 5 ++---
+ gcc/fold-const.c       | 3 +--
+ gcc/ipa-icf.c          | 4 ++--
+ gcc/real.h             | 1 -
+ gcc/tree-complex.c     | 4 ++--
+ gcc/tree.c             | 2 +-
+ gcc/varasm.c           | 2 +-
+ 7 files changed, 9 insertions(+), 12 deletions(-)
+
 2015-10-05  Richard Sandiford  <richard.sandiford@arm.com>
 
        * real.h (real_equal): Declare.
index b7d96a55e44ecb8e8dba493e6008cf31fd0a52e7..487cbf4b573dcf21bdd0560990de992a1aae3698 100644 (file)
@@ -4336,11 +4336,10 @@ standard_68881_constant_p (rtx x)
 
   REAL_VALUE_FROM_CONST_DOUBLE (r, x);
 
-  /* Use REAL_VALUES_IDENTICAL instead of real_equal so that -0.0
-     is rejected.  */
+  /* Use real_identical instead of real_equal so that -0.0 is rejected.  */
   for (i = 0; i < 6; i++)
     {
-      if (REAL_VALUES_IDENTICAL (r, values_68881[i]))
+      if (real_identical (&r, &values_68881[i]))
         return (codes_68881[i]);
     }
   
index 768b39b0469435cac669b0fa252ecfef78f17991..1c72af639e878dfd289fc465fd28225cc5aca8e7 100644 (file)
@@ -2815,8 +2815,7 @@ operand_equal_p (const_tree arg0, const_tree arg1, unsigned int flags)
                                       TREE_FIXED_CST (arg1));
 
       case REAL_CST:
-       if (REAL_VALUES_IDENTICAL (TREE_REAL_CST (arg0),
-                                  TREE_REAL_CST (arg1)))
+       if (real_identical (&TREE_REAL_CST (arg0), &TREE_REAL_CST (arg1)))
          return 1;
 
 
index d39a3c12203b0423d406cadec833e20fd84947d9..b0762227539c7cf97dde3dc9a4955e0a879040d2 100644 (file)
@@ -2030,8 +2030,8 @@ sem_variable::equals (tree t1, tree t2)
       /* Real constants are the same only if the same width of type.  */
       if (TYPE_PRECISION (TREE_TYPE (t1)) != TYPE_PRECISION (TREE_TYPE (t2)))
         return return_false_with_msg ("REAL_CST precision mismatch");
-      return return_with_debug (REAL_VALUES_IDENTICAL (TREE_REAL_CST (t1),
-                                                      TREE_REAL_CST (t2)));
+      return return_with_debug (real_identical (&TREE_REAL_CST (t1),
+                                               &TREE_REAL_CST (t2)));
     case VECTOR_CST:
       {
        unsigned i;
index 0f20660eb91aa3d474e05ec6a3f919595161f6ad..dbb13ae1c521441fdb7eca13b24ff4d5f4f66630 100644 (file)
@@ -333,7 +333,6 @@ extern const struct real_format arm_half_format;
 #define REAL_ARITHMETIC(value, code, d1, d2) \
   real_arithmetic (&(value), code, &(d1), &(d2))
 
-#define REAL_VALUES_IDENTICAL(x, y)    real_identical (&(x), &(y))
 #define REAL_VALUES_LESS(x, y)         real_compare (LT_EXPR, &(x), &(y))
 
 /* Determine whether a floating-point value X is infinite.  */
index b0ffc00bb8fe5d0e21a1ccd3fb7c209327734972..93c0a5416e3648198784c262d90fcd66b15c53d0 100644 (file)
@@ -118,7 +118,7 @@ some_nonzerop (tree t)
      cannot be treated the same as operations with a real or imaginary
      operand if we care about the signs of zeros in the result.  */
   if (TREE_CODE (t) == REAL_CST && !flag_signed_zeros)
-    zerop = REAL_VALUES_IDENTICAL (TREE_REAL_CST (t), dconst0);
+    zerop = real_identical (&TREE_REAL_CST (t), &dconst0);
   else if (TREE_CODE (t) == FIXED_CST)
     zerop = fixed_zerop (t);
   else if (TREE_CODE (t) == INTEGER_CST)
@@ -1021,7 +1021,7 @@ expand_complex_multiplication (gimple_stmt_iterator *gsi, tree inner_type,
     case PAIR (ONLY_IMAG, ONLY_REAL):
       rr = ar;
       if (TREE_CODE (ai) == REAL_CST
-         && REAL_VALUES_IDENTICAL (TREE_REAL_CST (ai), dconst1))
+         && real_identical (&TREE_REAL_CST (ai), &dconst1))
        ri = br;
       else
        ri = gimplify_build2 (gsi, MULT_EXPR, inner_type, ai, br);
index 4bd3cae9ebf311766f868a85b1ebba1b20462968..bfcf3746da2b56766ac8c06f58af52eee4ad4283 100644 (file)
@@ -7362,7 +7362,7 @@ simple_cst_equal (const_tree t1, const_tree t2)
       return wi::to_widest (t1) == wi::to_widest (t2);
 
     case REAL_CST:
-      return REAL_VALUES_IDENTICAL (TREE_REAL_CST (t1), TREE_REAL_CST (t2));
+      return real_identical (&TREE_REAL_CST (t1), &TREE_REAL_CST (t2));
 
     case FIXED_CST:
       return FIXED_VALUES_IDENTICAL (TREE_FIXED_CST (t1), TREE_FIXED_CST (t2));
index 706e6527cfd86986148ff82b8a68674bd8e66a05..a5bb2b5912a1107ff72b799a9191483fa2d6690e 100644 (file)
@@ -3076,7 +3076,7 @@ compare_constant (const tree t1, const tree t2)
       if (TYPE_PRECISION (TREE_TYPE (t1)) != TYPE_PRECISION (TREE_TYPE (t2)))
        return 0;
 
-      return REAL_VALUES_IDENTICAL (TREE_REAL_CST (t1), TREE_REAL_CST (t2));
+      return real_identical (&TREE_REAL_CST (t1), &TREE_REAL_CST (t2));
 
     case FIXED_CST:
       /* Fixed constants are the same only if the same width of type.  */