[Bug tree-optimization/83104] [8 Regression] ICE: Segmentation fault

glisse at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Nov 22 08:00:00 GMT 2017


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

--- Comment #2 from Marc Glisse <glisse at gcc dot gnu.org> ---
two_valued_val_range_p doesn't work on pointers, it uses vrp_val_min on the
type of the arguments. Probably:

--- vr-values.c (revision 255021)
+++ vr-values.c (working copy)
@@ -4091,7 +4091,7 @@ vr_values::simplify_stmt_using_ranges (g
         LHS = VAR == VAL1 ? (VAL1 BINOP CST) : (VAL2 BINOP CST) */

       if (TREE_CODE_CLASS (rhs_code) == tcc_binary
-         && INTEGRAL_TYPE_P (TREE_TYPE (lhs))
+         && INTEGRAL_TYPE_P (TREE_TYPE (rhs1))
          && ((TREE_CODE (rhs1) == INTEGER_CST
               && TREE_CODE (rhs2) == SSA_NAME)
              || (TREE_CODE (rhs2) == INTEGER_CST

(or keep both tests)


More information about the Gcc-bugs mailing list