https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109274

--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
As I said on gcc-patches, both my above patch and your patch cause
FAIL: gcc.dg/tree-ssa/vrp-float-3a.c scan-tree-dump-not evrp "link_error"
FAIL: gcc.dg/tree-ssa/vrp-float-4a.c scan-tree-dump-not evrp "link_error"
regressions.

The following patch fixes the 2 new tests and doesn't regress the above ones,
but I haven't actually analyzed why the vrp-float-?a.c tests failed.

--- gcc/gimple-range-gori.cc.jj 2023-03-24 17:27:30.788929236 +0100
+++ gcc/gimple-range-gori.cc    2023-03-27 10:40:53.350453280 +0200
@@ -658,7 +658,7 @@ gori_compute::compute_operand_range (vra
   // the result.
   if (lhs.varying_p ())
     {
-      if (!vrel_ptr)
+      if (!vrel_ptr || vrel_ptr->kind () == VREL_VARYING)
        return false;
       // If there is a relation (ie: x != y) , it can only be relevant if
       // a) both elements are in the defchain

Reply via email to