[Bug tree-optimization/71824] [6 Regression] ICE when compiling libiberty with Graphite loop optimizations
rguenther at suse dot de
gcc-bugzilla@gcc.gnu.org
Mon Feb 6 11:27:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71824
--- Comment #14 from rguenther at suse dot de <rguenther at suse dot de> ---
On Sun, 5 Feb 2017, drfiemost at email dot it wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71824
>
> --- Comment #13 from Leandro Nini <drfiemost at email dot it> ---
> I've applied the patch to the 6.3.1 20170202 snapshot and the former test
> compiles but this one triggers the same error:
>
> typedef struct { float x1; } bx;
> typedef struct {
> int w;
> short o;
> } T2P;
> T2P a;
> int b;
> void fn2();
> void fn3(bx*,short);
> void fn1() {
> unsigned i = 0;
> int c;
> bx *d;
> bx **h;
> if (b == 0) {
> fn2();
> return;
> }
> for (; c; c++)
> for (; i < 100; i++) {
> d = h[i];
> d->x1 = a.w;
> }
> for (; i < 100; i++) {
> d = h[i];
> d->x1 = a.w;
> }
> if (a.o)
> for (; b;)
> fn3(d, a.o);
> }
>
>
> /opt/gcc/bin/gcc -O2 -floop-interchange bug71824_v2.c
> bug71824_v2.c: In function ‘fn1’:
> bug71824_v2.c:10:6: internal compiler error: in add_loop_constraints, at
> graphite-sese-to-poly.c:931
> void fn1() {
> ^~~
> 0x17540ea add_loop_constraints
> ../../gcc/graphite-sese-to-poly.c:931
> 0x1754538 build_iteration_domains
> ../../gcc/graphite-sese-to-poly.c:1001
> 0x17546b5 build_iteration_domains
> ../../gcc/graphite-sese-to-poly.c:1040
> 0x17553ae build_poly_scop(scop*)
> ../../gcc/graphite-sese-to-poly.c:1364
> 0x1739ee5 graphite_transform_loops()
> ../../gcc/graphite.c:319
> 0x1739f87 graphite_transforms
> ../../gcc/graphite.c:356
> 0x173a0ad execute
> ../../gcc/graphite.c:433
Confirmed (the testcase works on trunk), it's slightly different in that
it ICEs on the first assert. I'll investigate.
More information about the Gcc-bugs
mailing list