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 c/71506] ICE with libvpx with -floop-interchange: isl_constraint.c:627: expecting integer value


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

Martin LiÅka <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-06-13
                 CC|                            |marxin at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Martin LiÅka <marxin at gcc dot gnu.org> ---
Confirmed on 5.3.1 with following back-trace:

#0  0x00007ffff6aa2908 in raise () from /lib64/libc.so.6
#1  0x00007ffff6aa3d5a in abort () from /lib64/libc.so.6
#2  0x00007ffff7add04b in isl_handle_error () from /usr/lib64/libisl.so.15
#3  0x00007ffff7ad62ba in isl_constraint_set_coefficient_val () from
/usr/lib64/libisl.so.15
#4  0x0000000000ec1bf2 in build_linearized_memory_access (pdr=0x19fe790,
map=0x1a0d2c0) at ../../gcc/graphite-interchange.c:129
#5  pdr_stride_in_loop (pdr=0x19fe790, depth=0, stride=0x7fffffffd560) at
../../gcc/graphite-interchange.c:215
#6  memory_strides_in_loop_1 (loop=0x1a0fc10, depth=0, strides=0x7fffffffd670)
at ../../gcc/graphite-interchange.c:301
#7  0x0000000000ec6caa in lst_interchange_profitable_p (depth2=<optimized out>,
depth1=<optimized out>, nest=0x1a0fc10) at ../../gcc/graphite-interchange.c:418
#8  lst_try_interchange_loops (loop2=<optimized out>, loop1=<optimized out>,
scop=<optimized out>) at ../../gcc/graphite-interchange.c:555
#9  lst_interchange_select_inner (scop=scop@entry=0x19fe550,
outer_father=outer_father@entry=0x1a0fc70, outer=outer@entry=0,
inner_father=inner_father@entry=0x1a0fc40) at
../../gcc/graphite-interchange.c:618
#10 0x0000000000ec9941 in lst_interchange_select_outer
(scop=scop@entry=0x19fe550, loop=0x1a0fc40, outer=outer@entry=0) at
../../gcc/graphite-interchange.c:644
#11 0x0000000000ec998e in lst_interchange_select_outer
(scop=scop@entry=0x19fe550, loop=0x1a0fc70, outer=outer@entry=0) at
../../gcc/graphite-interchange.c:654
#12 0x0000000000ec99dc in scop_do_interchange (scop=scop@entry=0x19fe550) at
../../gcc/graphite-interchange.c:666
#13 0x0000000000e228ab in apply_poly_transforms (scop=scop@entry=0x19fe550) at
../../gcc/graphite-poly.c:280
#14 0x0000000000e1e0e9 in graphite_transform_loops () at
../../gcc/graphite.c:310
#15 0x0000000000e1e561 in graphite_transforms (fun=<optimized out>) at
../../gcc/graphite.c:339
#16 (anonymous namespace)::pass_graphite_transforms::execute (this=<optimized
out>, fun=<optimized out>) at ../../gcc/graphite.c:420
#17 0x0000000000879216 in execute_one_pass (pass=pass@entry=0x19932e0) at
../../gcc/passes.c:2330
#18 0x0000000000879646 in execute_pass_list_1 (pass=0x19932e0) at
../../gcc/passes.c:2383
#19 0x0000000000879658 in execute_pass_list_1 (pass=0x1993280) at
../../gcc/passes.c:2384
#20 0x0000000000879658 in execute_pass_list_1 (pass=0x1992e60) at
../../gcc/passes.c:2384
#21 0x0000000000879658 in execute_pass_list_1 (pass=0x1991d20,
pass@entry=0x1991c60) at ../../gcc/passes.c:2384
#22 0x0000000000879699 in execute_pass_list (fn=0x7ffff69f1690, pass=0x1991c60)
at ../../gcc/passes.c:2394
#23 0x000000000062dc8b in cgraph_node::expand (this=this@entry=0x7ffff6880498)
at ../../gcc/cgraphunit.c:1896
#24 0x000000000062ef74 in expand_all_functions () at
../../gcc/cgraphunit.c:2032
#25 symbol_table::compile (this=this@entry=0x7ffff6873000) at
../../gcc/cgraphunit.c:2385
#26 0x0000000000630410 in symbol_table::compile (this=0x7ffff6873000) at
../../gcc/timevar.h:110
#27 symbol_table::finalize_compilation_unit (this=0x7ffff6873000) at
../../gcc/cgraphunit.c:2462
#28 0x00000000004ce4d3 in cp_write_global_declarations () at
../../gcc/cp/decl2.c:4849
#29 0x000000000091d763 in compile_file () at ../../gcc/toplev.c:613
#30 0x000000000045f095 in do_compile () at ../../gcc/toplev.c:2067
#31 toplev::main (this=this@entry=0x7fffffffdad0, argc=argc@entry=17,
argv=argv@entry=0x7fffffffdbd8) at ../../gcc/toplev.c:2165
#32 0x000000000045fd8a in main (argc=17, argv=0x7fffffffdbd8) at
../../gcc/main.c:39

Reduced test-case 
$ cat tc.cc
enum enums { PLANE_TYPES };

typedef enums vp9_coeff_count[2][6][6][2];
typedef struct { vp9_coeff_count coef_counts[][PLANE_TYPES]; } RD_COUNTS;
struct A {
  RD_COUNTS rd_counts;
};
int accumulate_rd_opt_j, accumulate_rd_opt_k, accumulate_rd_opt_l,
    accumulate_rd_opt_n, fn1_m;
A *fn1_td;
void fn1() {
  for (; fn1_m; fn1_m++) {
    accumulate_rd_opt_n = 0;
    for (; accumulate_rd_opt_n < 2; accumulate_rd_opt_n++)
      fn1_td->rd_counts
          .coef_counts[0][accumulate_rd_opt_j][accumulate_rd_opt_k]
                      [accumulate_rd_opt_l][fn1_m][accumulate_rd_opt_n] =
PLANE_TYPES;
  }
}

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