This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/84933] New: [8 Regression] ICE in set_value_range, at tree-vrp.c:288 since r257852


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

            Bug ID: 84933
           Summary: [8 Regression] ICE in set_value_range, at
                    tree-vrp.c:288 since r257852
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: law at gcc dot gnu.org, msebor at gcc dot gnu.org
  Target Milestone: ---

Following ICEs:

$ cat /tmp/ice.ii
enum a {};
int *d;
int b, e, f;
a c, g;
class h {
  virtual unsigned i();
};
class j : h {
  unsigned i() {
    for (;;) {
      b = c <= 0;
      if (b)
        e = *d;
      b = g && c;
      if (b)
        f = *d;
    }
  }
};
void k() { new j; }

$ gcc -fstrict-enums -O3 -fno-inline /tmp/ice.ii -c
during GIMPLE pass: printf-return-value
/tmp/ice.ii: In member function ‘virtual unsigned int j::i()’:
/tmp/ice.ii:9:12: internal compiler error: in set_value_range, at
tree-vrp.c:288
   unsigned i() {
            ^
c0x108f87f set_value_range(value_range*, value_range_type, tree_node*,
tree_node*, bitmap_head*)
        ../../gcc/tree-vrp.c:288
0x108f966 set_and_canonicalize_value_range(value_range*, value_range_type,
tree_node*, tree_node*, bitmap_head*)
        ../../gcc/tree-vrp.c:433
0x108fffc vrp_intersect_ranges_1
        ../../gcc/tree-vrp.c:6297
0x108fffc vrp_intersect_ranges(value_range*, value_range*)
        ../../gcc/tree-vrp.c:6334
0x1112b45 vr_values::extract_range_for_var_from_comparison_expr(tree_node*,
tree_code, tree_node*, tree_node*, value_range*)
        ../../gcc/vr-values.c:682
0x15b8bf5 evrp_range_analyzer::try_find_new_range(tree_node*, tree_node*,
tree_code, tree_node*)
        ../../gcc/gimple-ssa-evrp-analyze.c:89
0x15b9a62
evrp_range_analyzer::record_ranges_from_incoming_edge(basic_block_def*)
        ../../gcc/gimple-ssa-evrp-analyze.c:198
0x15ba06c evrp_range_analyzer::enter(basic_block_def*)
        ../../gcc/gimple-ssa-evrp-analyze.c:75
0x15dc8eb before_dom_children
        ../../gcc/gimple-ssa-sprintf.c:4018
0x159a0d7 dom_walker::walk(basic_block_def*)
        ../../gcc/domwalk.c:353
0x15d567a execute
        ../../gcc/gimple-ssa-sprintf.c:4053

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]