Revert previous patch:
authorAldy Hernandez <aldyh@redhat.com>
Sun, 17 May 2020 11:56:55 +0000 (13:56 +0200)
committerAldy Hernandez <aldyh@redhat.com>
Sun, 17 May 2020 11:56:55 +0000 (13:56 +0200)
2020-05-17  Aldy Hernandez  <aldyh@redhat.com>

* tree-vrp.c (operand_less_p): Move to...
* vr-values.c (operand_less_p): ...here.
* tree-vrp.h (operand_less_p): Remove.

gcc/ChangeLog
gcc/tree-vrp.c
gcc/tree-vrp.h
gcc/vr-values.c

index 5c90953edb1ff2dfac05a5090b8b9c2516895f6e..60ff1ffceef3ac66f3b7d3951269e44e626b2351 100644 (file)
@@ -1,3 +1,12 @@
+2020-05-17  Aldy Hernandez  <aldyh@redhat.com>
+
+       Revert:
+       2020-05-17  Aldy Hernandez  <aldyh@redhat.com>
+
+       * tree-vrp.c (operand_less_p): Move to...
+       * vr-values.c (operand_less_p): ...here.
+       * tree-vrp.h (operand_less_p): Remove.
+
 2020-05-17  Aldy Hernandez  <aldyh@redhat.com>
 
        * tree-vrp.c (operand_less_p): Move to...
index f8191facaf9c642023c9b78ced347c01572e1c0b..4b5df543c00ebaa845a3e0a864dc96c01eb026d1 100644 (file)
@@ -685,6 +685,32 @@ build_symbolic_expr (tree type, tree sym, bool neg, tree inv)
   return build2 (pointer_p ? POINTER_PLUS_EXPR : PLUS_EXPR, type, t, inv);
 }
 
+/* Return
+   1 if VAL < VAL2
+   0 if !(VAL < VAL2)
+   -2 if those are incomparable.  */
+int
+operand_less_p (tree val, tree val2)
+{
+  /* LT is folded faster than GE and others.  Inline the common case.  */
+  if (TREE_CODE (val) == INTEGER_CST && TREE_CODE (val2) == INTEGER_CST)
+    return tree_int_cst_lt (val, val2);
+  else if (TREE_CODE (val) == SSA_NAME && TREE_CODE (val2) == SSA_NAME)
+    return val == val2 ? 0 : -2;
+  else
+    {
+      int cmp = compare_values (val, val2);
+      if (cmp == -1)
+       return 1;
+      else if (cmp == 0 || cmp == 1)
+       return 0;
+      else
+       return -2;
+    }
+
+  return 0;
+}
+
 /* Compare two values VAL1 and VAL2.  Return
 
        -2 if VAL1 and VAL2 cannot be compared at compile-time,
index b74fe0059fcb3a863cf4ac355b42fee746219fc1..aa8201f73593b26880a3f70991c25b1bd862c058 100644 (file)
@@ -116,6 +116,7 @@ extern bool range_int_cst_p (const value_range *);
 
 extern int compare_values (tree, tree);
 extern int compare_values_warnv (tree, tree, bool *);
+extern int operand_less_p (tree, tree);
 
 void range_fold_unary_expr (value_range *, enum tree_code, tree type,
                            const value_range *, tree op0_type);
index f7cba16aa6340fbac5fb7586c66f404180b5f81a..2e3a0788710a049b5a58a4ce928212b37649d339 100644 (file)
@@ -1104,32 +1104,6 @@ vr_values::check_for_binary_op_overflow (enum tree_code subcode, tree type,
   return true;
 }
 
-/* Return
-   1 if VAL < VAL2
-   0 if !(VAL < VAL2)
-   -2 if those are incomparable.  */
-static int
-operand_less_p (tree val, tree val2)
-{
-  /* LT is folded faster than GE and others.  Inline the common case.  */
-  if (TREE_CODE (val) == INTEGER_CST && TREE_CODE (val2) == INTEGER_CST)
-    return tree_int_cst_lt (val, val2);
-  else if (TREE_CODE (val) == SSA_NAME && TREE_CODE (val2) == SSA_NAME)
-    return val == val2 ? 0 : -2;
-  else
-    {
-      int cmp = compare_values (val, val2);
-      if (cmp == -1)
-       return 1;
-      else if (cmp == 0 || cmp == 1)
-       return 0;
-      else
-       return -2;
-    }
-
-  return 0;
-}
-
 /* Try to derive a nonnegative or nonzero range out of STMT relying
    primarily on generic routines in fold in conjunction with range data.
    Store the result in *VR */