diff mbox

Replace REAL_VALUES_LESS with real_less

Message ID 87fv1pd290.fsf@e105548-lin.cambridge.arm.com
State New
Headers show

Commit Message

Richard Sandiford Oct. 5, 2015, 10:43 a.m. UTC
This patch continues the removal of real-related macros by
replacing REAL_VALUES_LESS with real_less.

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.  OK to install?

Thanks,
Richard


gcc/ada/
	* gcc-interface/trans.c (convert_with_check): Use real_less instead
	of REAL_VALUES_LESS.

gcc/
	* doc/tm.texi.in (REAL_VALUES_LESS): Delete.
	* doc/tm.texi: Regenerate.
	* real.h (real_less): Declare.
	(REAL_VALUES_LESS): Delete.
	* real.c (real_less): New function.
	(real_compare): Use it.
	* config/m68k/m68k.c (floating_exact_log2): Use real_less instead
	of REAL_VALUES_LESS.
	* config/microblaze/microblaze.c (microblaze_const_double_ok):
	Likewise.
	* fold-const.c (fold_convert_const_int_from_real): Likewise.
	* simplify-rtx.c (simplify_const_unary_operation): Likewise.
	(simplify_const_relational_operation): Likewise.
	* tree-call-cdce.c (check_pow): Likewise.
	(gen_conditions_for_pow_cst_base): Likewise.

Comments

Richard Biener Oct. 5, 2015, 11 a.m. UTC | #1
On Mon, Oct 5, 2015 at 12:43 PM, Richard Sandiford
<richard.sandiford@arm.com> wrote:
> This patch continues the removal of real-related macros by
> replacing REAL_VALUES_LESS with real_less.
>
> 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.  OK to install?

Ok.

Thanks,
Richard.

> Thanks,
> Richard
>
>
> gcc/ada/
>         * gcc-interface/trans.c (convert_with_check): Use real_less instead
>         of REAL_VALUES_LESS.
>
> gcc/
>         * doc/tm.texi.in (REAL_VALUES_LESS): Delete.
>         * doc/tm.texi: Regenerate.
>         * real.h (real_less): Declare.
>         (REAL_VALUES_LESS): Delete.
>         * real.c (real_less): New function.
>         (real_compare): Use it.
>         * config/m68k/m68k.c (floating_exact_log2): Use real_less instead
>         of REAL_VALUES_LESS.
>         * config/microblaze/microblaze.c (microblaze_const_double_ok):
>         Likewise.
>         * fold-const.c (fold_convert_const_int_from_real): Likewise.
>         * simplify-rtx.c (simplify_const_unary_operation): Likewise.
>         (simplify_const_relational_operation): Likewise.
>         * tree-call-cdce.c (check_pow): Likewise.
>         (gen_conditions_for_pow_cst_base): Likewise.
>
> diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
> index 3252ea2..9838da0 100644
> --- a/gcc/ada/gcc-interface/trans.c
> +++ b/gcc/ada/gcc-interface/trans.c
> @@ -8999,8 +8999,8 @@ convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp,
>        if (INTEGRAL_TYPE_P (gnu_in_basetype)
>           ? tree_int_cst_lt (gnu_in_lb, gnu_out_lb)
>           : (FLOAT_TYPE_P (gnu_base_type)
> -            ? REAL_VALUES_LESS (TREE_REAL_CST (gnu_in_lb),
> -                                TREE_REAL_CST (gnu_out_lb))
> +            ? real_less (&TREE_REAL_CST (gnu_in_lb),
> +                         &TREE_REAL_CST (gnu_out_lb))
>              : 1))
>         gnu_cond
>           = invert_truthvalue
> @@ -9011,8 +9011,8 @@ convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp,
>        if (INTEGRAL_TYPE_P (gnu_in_basetype)
>           ? tree_int_cst_lt (gnu_out_ub, gnu_in_ub)
>           : (FLOAT_TYPE_P (gnu_base_type)
> -            ? REAL_VALUES_LESS (TREE_REAL_CST (gnu_out_ub),
> -                                TREE_REAL_CST (gnu_in_lb))
> +            ? real_less (&TREE_REAL_CST (gnu_out_ub),
> +                         &TREE_REAL_CST (gnu_in_lb))
>              : 1))
>         gnu_cond
>           = build_binary_op (TRUTH_ORIF_EXPR, boolean_type_node, gnu_cond,
> diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
> index 487cbf4..74de983 100644
> --- a/gcc/config/m68k/m68k.c
> +++ b/gcc/config/m68k/m68k.c
> @@ -4365,7 +4365,7 @@ floating_exact_log2 (rtx x)
>
>    REAL_VALUE_FROM_CONST_DOUBLE (r, x);
>
> -  if (REAL_VALUES_LESS (r, dconst1))
> +  if (real_less (&r, &dconst1))
>      return 0;
>
>    exp = real_exponent (&r);
> diff --git a/gcc/config/microblaze/microblaze.c b/gcc/config/microblaze/microblaze.c
> index ebcf65a..9efa739 100644
> --- a/gcc/config/microblaze/microblaze.c
> +++ b/gcc/config/microblaze/microblaze.c
> @@ -280,12 +280,12 @@ microblaze_const_double_ok (rtx op, machine_mode mode)
>
>    if (mode == DFmode)
>      {
> -      if (REAL_VALUES_LESS (d, dfhigh) && REAL_VALUES_LESS (dflow, d))
> +      if (real_less (&d, &dfhigh) && real_less (&dflow, &d))
>         return 1;
>      }
>    else
>      {
> -      if (REAL_VALUES_LESS (d, sfhigh) && REAL_VALUES_LESS (sflow, d))
> +      if (real_less (&d, &sfhigh) && real_less (&sflow, &d))
>         return 1;
>      }
>
> diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
> index fdd49d9..f6a0b5d 100644
> --- a/gcc/doc/tm.texi
> +++ b/gcc/doc/tm.texi
> @@ -9708,10 +9708,6 @@ array of @code{HOST_WIDE_INT}, but all code should treat it as an opaque
>  quantity.
>  @end defmac
>
> -@deftypefn Macro int REAL_VALUES_LESS (REAL_VALUE_TYPE @var{x}, REAL_VALUE_TYPE @var{y})
> -Tests whether @var{x} is less than @var{y}.
> -@end deftypefn
> -
>  @deftypefn Macro HOST_WIDE_INT REAL_VALUE_FIX (REAL_VALUE_TYPE @var{x})
>  Truncates @var{x} to a signed integer, rounding toward zero.
>  @end deftypefn
> diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
> index ab75ad9..7fae1ca 100644
> --- a/gcc/doc/tm.texi.in
> +++ b/gcc/doc/tm.texi.in
> @@ -7131,10 +7131,6 @@ array of @code{HOST_WIDE_INT}, but all code should treat it as an opaque
>  quantity.
>  @end defmac
>
> -@deftypefn Macro int REAL_VALUES_LESS (REAL_VALUE_TYPE @var{x}, REAL_VALUE_TYPE @var{y})
> -Tests whether @var{x} is less than @var{y}.
> -@end deftypefn
> -
>  @deftypefn Macro HOST_WIDE_INT REAL_VALUE_FIX (REAL_VALUE_TYPE @var{x})
>  Truncates @var{x} to a signed integer, rounding toward zero.
>  @end deftypefn
> diff --git a/gcc/fold-const.c b/gcc/fold-const.c
> index 1c72af6..2851a29 100644
> --- a/gcc/fold-const.c
> +++ b/gcc/fold-const.c
> @@ -1877,7 +1877,7 @@ fold_convert_const_int_from_real (enum tree_code code, tree type, const_tree arg
>      {
>        tree lt = TYPE_MIN_VALUE (type);
>        REAL_VALUE_TYPE l = real_value_from_int_cst (NULL_TREE, lt);
> -      if (REAL_VALUES_LESS (r, l))
> +      if (real_less (&r, &l))
>         {
>           overflow = true;
>           val = lt;
> @@ -1890,7 +1890,7 @@ fold_convert_const_int_from_real (enum tree_code code, tree type, const_tree arg
>        if (ut)
>         {
>           REAL_VALUE_TYPE u = real_value_from_int_cst (NULL_TREE, ut);
> -         if (REAL_VALUES_LESS (u, r))
> +         if (real_less (&u, &r))
>             {
>               overflow = true;
>               val = ut;
> diff --git a/gcc/real.c b/gcc/real.c
> index d47f32a..49d6739 100644
> --- a/gcc/real.c
> +++ b/gcc/real.c
> @@ -1086,6 +1086,14 @@ real_equal (const REAL_VALUE_TYPE *op0, const REAL_VALUE_TYPE *op1)
>    return do_compare (op0, op1, -1) == 0;
>  }
>
> +/* Return whether OP0 < OP1.  */
> +
> +bool
> +real_less (const REAL_VALUE_TYPE *op0, const REAL_VALUE_TYPE *op1)
> +{
> +  return do_compare (op0, op1, 1) < 0;
> +}
> +
>  bool
>  real_compare (int icode, const REAL_VALUE_TYPE *op0,
>               const REAL_VALUE_TYPE *op1)
> @@ -1095,7 +1103,7 @@ real_compare (int icode, const REAL_VALUE_TYPE *op0,
>    switch (code)
>      {
>      case LT_EXPR:
> -      return do_compare (op0, op1, 1) < 0;
> +      return real_less (op0, op1);
>      case LE_EXPR:
>        return do_compare (op0, op1, 1) <= 0;
>      case GT_EXPR:
> diff --git a/gcc/real.h b/gcc/real.h
> index 1be4104..dc55ab2 100644
> --- a/gcc/real.h
> +++ b/gcc/real.h
> @@ -250,6 +250,7 @@ extern bool real_isnegzero (const REAL_VALUE_TYPE *);
>  /* Test relationships between reals.  */
>  extern bool real_identical (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
>  extern bool real_equal (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
> +extern bool real_less (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
>
>  /* Extend or truncate to a new mode.  */
>  extern void real_convert (REAL_VALUE_TYPE *, machine_mode,
> @@ -333,8 +334,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_LESS(x, y)         real_compare (LT_EXPR, &(x), &(y))
> -
>  /* Determine whether a floating-point value X is infinite.  */
>  #define REAL_VALUE_ISINF(x)            real_isinf (&(x))
>
> diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
> index b4d95a2..9f791a7 100644
> --- a/gcc/simplify-rtx.c
> +++ b/gcc/simplify-rtx.c
> @@ -1862,13 +1862,13 @@ simplify_const_unary_operation (enum rtx_code code, machine_mode mode,
>           /* Test against the signed upper bound.  */
>           wmax = wi::max_value (width, SIGNED);
>           real_from_integer (&t, VOIDmode, wmax, SIGNED);
> -         if (REAL_VALUES_LESS (t, x))
> +         if (real_less (&t, &x))
>             return immed_wide_int_const (wmax, mode);
>
>           /* Test against the signed lower bound.  */
>           wmin = wi::min_value (width, SIGNED);
>           real_from_integer (&t, VOIDmode, wmin, SIGNED);
> -         if (REAL_VALUES_LESS (x, t))
> +         if (real_less (&x, &t))
>             return immed_wide_int_const (wmin, mode);
>
>           return immed_wide_int_const (real_to_integer (&x, &fail, width), mode);
> @@ -1881,7 +1881,7 @@ simplify_const_unary_operation (enum rtx_code code, machine_mode mode,
>           /* Test against the unsigned upper bound.  */
>           wmax = wi::max_value (width, UNSIGNED);
>           real_from_integer (&t, VOIDmode, wmax, UNSIGNED);
> -         if (REAL_VALUES_LESS (t, x))
> +         if (real_less (&t, &x))
>             return immed_wide_int_const (wmax, mode);
>
>           return immed_wide_int_const (real_to_integer (&x, &fail, width),
> @@ -4943,7 +4943,7 @@ simplify_const_relational_operation (enum rtx_code code,
>
>        return comparison_result (code,
>                                 (real_equal (&d0, &d1) ? CMP_EQ :
> -                                REAL_VALUES_LESS (d0, d1) ? CMP_LT : CMP_GT));
> +                                real_less (&d0, &d1) ? CMP_LT : CMP_GT));
>      }
>
>    /* Otherwise, see if the operands are both integers.  */
> diff --git a/gcc/tree-call-cdce.c b/gcc/tree-call-cdce.c
> index 7a0275a..112a325 100644
> --- a/gcc/tree-call-cdce.c
> +++ b/gcc/tree-call-cdce.c
> @@ -201,10 +201,10 @@ check_pow (gcall *pow_call)
>        REAL_VALUE_TYPE bcv = TREE_REAL_CST (base);
>        if (real_equal (&bcv, &dconst1))
>          return false;
> -      if (REAL_VALUES_LESS (bcv, dconst1))
> +      if (real_less (&bcv, &dconst1))
>          return false;
>        real_from_integer (&mv, TYPE_MODE (TREE_TYPE (base)), 256, UNSIGNED);
> -      if (REAL_VALUES_LESS (mv, bcv))
> +      if (real_less (&mv, &bcv))
>          return false;
>        return true;
>      }
> @@ -421,9 +421,9 @@ gen_conditions_for_pow_cst_base (tree base, tree expn,
>    REAL_VALUE_TYPE mv;
>    REAL_VALUE_TYPE bcv = TREE_REAL_CST (base);
>    gcc_assert (!real_equal (&bcv, &dconst1)
> -              && !REAL_VALUES_LESS (bcv, dconst1));
> +              && !real_less (&bcv, &dconst1));
>    real_from_integer (&mv, TYPE_MODE (TREE_TYPE (base)), 256, UNSIGNED);
> -  gcc_assert (!REAL_VALUES_LESS (mv, bcv));
> +  gcc_assert (!real_less (&mv, &bcv));
>
>    exp_domain = get_domain (0, false, false,
>                             127, true, false);
>
diff mbox

Patch

diff --git a/gcc/ada/gcc-interface/trans.c b/gcc/ada/gcc-interface/trans.c
index 3252ea2..9838da0 100644
--- a/gcc/ada/gcc-interface/trans.c
+++ b/gcc/ada/gcc-interface/trans.c
@@ -8999,8 +8999,8 @@  convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp,
       if (INTEGRAL_TYPE_P (gnu_in_basetype)
 	  ? tree_int_cst_lt (gnu_in_lb, gnu_out_lb)
 	  : (FLOAT_TYPE_P (gnu_base_type)
-	     ? REAL_VALUES_LESS (TREE_REAL_CST (gnu_in_lb),
-				 TREE_REAL_CST (gnu_out_lb))
+	     ? real_less (&TREE_REAL_CST (gnu_in_lb),
+			  &TREE_REAL_CST (gnu_out_lb))
 	     : 1))
 	gnu_cond
 	  = invert_truthvalue
@@ -9011,8 +9011,8 @@  convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp,
       if (INTEGRAL_TYPE_P (gnu_in_basetype)
 	  ? tree_int_cst_lt (gnu_out_ub, gnu_in_ub)
 	  : (FLOAT_TYPE_P (gnu_base_type)
-	     ? REAL_VALUES_LESS (TREE_REAL_CST (gnu_out_ub),
-				 TREE_REAL_CST (gnu_in_lb))
+	     ? real_less (&TREE_REAL_CST (gnu_out_ub),
+			  &TREE_REAL_CST (gnu_in_lb))
 	     : 1))
 	gnu_cond
 	  = build_binary_op (TRUTH_ORIF_EXPR, boolean_type_node, gnu_cond,
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 487cbf4..74de983 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -4365,7 +4365,7 @@  floating_exact_log2 (rtx x)
 
   REAL_VALUE_FROM_CONST_DOUBLE (r, x);
 
-  if (REAL_VALUES_LESS (r, dconst1))
+  if (real_less (&r, &dconst1))
     return 0;
 
   exp = real_exponent (&r);
diff --git a/gcc/config/microblaze/microblaze.c b/gcc/config/microblaze/microblaze.c
index ebcf65a..9efa739 100644
--- a/gcc/config/microblaze/microblaze.c
+++ b/gcc/config/microblaze/microblaze.c
@@ -280,12 +280,12 @@  microblaze_const_double_ok (rtx op, machine_mode mode)
 
   if (mode == DFmode)
     {
-      if (REAL_VALUES_LESS (d, dfhigh) && REAL_VALUES_LESS (dflow, d))
+      if (real_less (&d, &dfhigh) && real_less (&dflow, &d))
 	return 1;
     }
   else
     {
-      if (REAL_VALUES_LESS (d, sfhigh) && REAL_VALUES_LESS (sflow, d))
+      if (real_less (&d, &sfhigh) && real_less (&sflow, &d))
 	return 1;
     }
 
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index fdd49d9..f6a0b5d 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -9708,10 +9708,6 @@  array of @code{HOST_WIDE_INT}, but all code should treat it as an opaque
 quantity.
 @end defmac
 
-@deftypefn Macro int REAL_VALUES_LESS (REAL_VALUE_TYPE @var{x}, REAL_VALUE_TYPE @var{y})
-Tests whether @var{x} is less than @var{y}.
-@end deftypefn
-
 @deftypefn Macro HOST_WIDE_INT REAL_VALUE_FIX (REAL_VALUE_TYPE @var{x})
 Truncates @var{x} to a signed integer, rounding toward zero.
 @end deftypefn
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index ab75ad9..7fae1ca 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -7131,10 +7131,6 @@  array of @code{HOST_WIDE_INT}, but all code should treat it as an opaque
 quantity.
 @end defmac
 
-@deftypefn Macro int REAL_VALUES_LESS (REAL_VALUE_TYPE @var{x}, REAL_VALUE_TYPE @var{y})
-Tests whether @var{x} is less than @var{y}.
-@end deftypefn
-
 @deftypefn Macro HOST_WIDE_INT REAL_VALUE_FIX (REAL_VALUE_TYPE @var{x})
 Truncates @var{x} to a signed integer, rounding toward zero.
 @end deftypefn
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 1c72af6..2851a29 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -1877,7 +1877,7 @@  fold_convert_const_int_from_real (enum tree_code code, tree type, const_tree arg
     {
       tree lt = TYPE_MIN_VALUE (type);
       REAL_VALUE_TYPE l = real_value_from_int_cst (NULL_TREE, lt);
-      if (REAL_VALUES_LESS (r, l))
+      if (real_less (&r, &l))
 	{
 	  overflow = true;
 	  val = lt;
@@ -1890,7 +1890,7 @@  fold_convert_const_int_from_real (enum tree_code code, tree type, const_tree arg
       if (ut)
 	{
 	  REAL_VALUE_TYPE u = real_value_from_int_cst (NULL_TREE, ut);
-	  if (REAL_VALUES_LESS (u, r))
+	  if (real_less (&u, &r))
 	    {
 	      overflow = true;
 	      val = ut;
diff --git a/gcc/real.c b/gcc/real.c
index d47f32a..49d6739 100644
--- a/gcc/real.c
+++ b/gcc/real.c
@@ -1086,6 +1086,14 @@  real_equal (const REAL_VALUE_TYPE *op0, const REAL_VALUE_TYPE *op1)
   return do_compare (op0, op1, -1) == 0;
 }
 
+/* Return whether OP0 < OP1.  */
+
+bool
+real_less (const REAL_VALUE_TYPE *op0, const REAL_VALUE_TYPE *op1)
+{
+  return do_compare (op0, op1, 1) < 0;
+}
+
 bool
 real_compare (int icode, const REAL_VALUE_TYPE *op0,
 	      const REAL_VALUE_TYPE *op1)
@@ -1095,7 +1103,7 @@  real_compare (int icode, const REAL_VALUE_TYPE *op0,
   switch (code)
     {
     case LT_EXPR:
-      return do_compare (op0, op1, 1) < 0;
+      return real_less (op0, op1);
     case LE_EXPR:
       return do_compare (op0, op1, 1) <= 0;
     case GT_EXPR:
diff --git a/gcc/real.h b/gcc/real.h
index 1be4104..dc55ab2 100644
--- a/gcc/real.h
+++ b/gcc/real.h
@@ -250,6 +250,7 @@  extern bool real_isnegzero (const REAL_VALUE_TYPE *);
 /* Test relationships between reals.  */
 extern bool real_identical (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
 extern bool real_equal (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
+extern bool real_less (const REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
 
 /* Extend or truncate to a new mode.  */
 extern void real_convert (REAL_VALUE_TYPE *, machine_mode,
@@ -333,8 +334,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_LESS(x, y)		real_compare (LT_EXPR, &(x), &(y))
-
 /* Determine whether a floating-point value X is infinite.  */
 #define REAL_VALUE_ISINF(x)		real_isinf (&(x))
 
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index b4d95a2..9f791a7 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -1862,13 +1862,13 @@  simplify_const_unary_operation (enum rtx_code code, machine_mode mode,
 	  /* Test against the signed upper bound.  */
 	  wmax = wi::max_value (width, SIGNED);
 	  real_from_integer (&t, VOIDmode, wmax, SIGNED);
-	  if (REAL_VALUES_LESS (t, x))
+	  if (real_less (&t, &x))
 	    return immed_wide_int_const (wmax, mode);
 
 	  /* Test against the signed lower bound.  */
 	  wmin = wi::min_value (width, SIGNED);
 	  real_from_integer (&t, VOIDmode, wmin, SIGNED);
-	  if (REAL_VALUES_LESS (x, t))
+	  if (real_less (&x, &t))
 	    return immed_wide_int_const (wmin, mode);
 
 	  return immed_wide_int_const (real_to_integer (&x, &fail, width), mode);
@@ -1881,7 +1881,7 @@  simplify_const_unary_operation (enum rtx_code code, machine_mode mode,
 	  /* Test against the unsigned upper bound.  */
 	  wmax = wi::max_value (width, UNSIGNED);
 	  real_from_integer (&t, VOIDmode, wmax, UNSIGNED);
-	  if (REAL_VALUES_LESS (t, x))
+	  if (real_less (&t, &x))
 	    return immed_wide_int_const (wmax, mode);
 
 	  return immed_wide_int_const (real_to_integer (&x, &fail, width),
@@ -4943,7 +4943,7 @@  simplify_const_relational_operation (enum rtx_code code,
 
       return comparison_result (code,
 				(real_equal (&d0, &d1) ? CMP_EQ :
-				 REAL_VALUES_LESS (d0, d1) ? CMP_LT : CMP_GT));
+				 real_less (&d0, &d1) ? CMP_LT : CMP_GT));
     }
 
   /* Otherwise, see if the operands are both integers.  */
diff --git a/gcc/tree-call-cdce.c b/gcc/tree-call-cdce.c
index 7a0275a..112a325 100644
--- a/gcc/tree-call-cdce.c
+++ b/gcc/tree-call-cdce.c
@@ -201,10 +201,10 @@  check_pow (gcall *pow_call)
       REAL_VALUE_TYPE bcv = TREE_REAL_CST (base);
       if (real_equal (&bcv, &dconst1))
         return false;
-      if (REAL_VALUES_LESS (bcv, dconst1))
+      if (real_less (&bcv, &dconst1))
         return false;
       real_from_integer (&mv, TYPE_MODE (TREE_TYPE (base)), 256, UNSIGNED);
-      if (REAL_VALUES_LESS (mv, bcv))
+      if (real_less (&mv, &bcv))
         return false;
       return true;
     }
@@ -421,9 +421,9 @@  gen_conditions_for_pow_cst_base (tree base, tree expn,
   REAL_VALUE_TYPE mv;
   REAL_VALUE_TYPE bcv = TREE_REAL_CST (base);
   gcc_assert (!real_equal (&bcv, &dconst1)
-              && !REAL_VALUES_LESS (bcv, dconst1));
+              && !real_less (&bcv, &dconst1));
   real_from_integer (&mv, TYPE_MODE (TREE_TYPE (base)), 256, UNSIGNED);
-  gcc_assert (!REAL_VALUES_LESS (mv, bcv));
+  gcc_assert (!real_less (&mv, &bcv));
 
   exp_domain = get_domain (0, false, false,
                            127, true, false);