this test case fails on the 4.8 and 4.9 branches, but succeeds with trunk 20140815.
$ cat tst.c
int a, b;
fn1() {
for (; a; a++)
b |= 1;
}
$ gcc -c -Ofast -floop-parallelize-all tst.c tst.c: In function 'fn1':
tst.c:2:1: internal compiler error: Segmentation fault
fn1() {
^
Please submit a full bug report,
with preprocessed source if appropriate.
(gdb) bt
#0 0x0000000000cdf3ea in compute_deps(scop*, vec<poly_bb*, va_heap, vl_ptr>, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**) ()
#1 0x0000000000cdf913 in loop_is_parallel_p(loop*, hash_table<bb_pbb_hasher, xcallocator>, int)
()
#2 0x0000000000cdd9fd in ?? ()
#3 0x0000000000cddd72 in gloog(scop*, hash_table<bb_pbb_hasher, xcallocator>) ()
#4 0x0000000000cdac09 in graphite_transform_loops() ()
#5 0x0000000000cdb0f7 in ?? ()
#6 0x0000000000818b3b in execute_one_pass(opt_pass*) ()
#7 0x0000000000818dd6 in execute_pass_list(opt_pass*) ()
#8 0x0000000000818de8 in execute_pass_list(opt_pass*) ()
#9 0x0000000000818de8 in execute_pass_list(opt_pass*) ()
#10 0x0000000000818de8 in execute_pass_list(opt_pass*) ()
#11 0x000000000063f656 in ?? ()
#12 0x0000000000640f4d in compile() ()
#13 0x00000000006413a5 in finalize_compilation_unit() ()
#14 0x00000000005648ec in c_write_global_declarations() ()
#15 0x00000000008b353d in ?? ()
#16 0x00000000008b50d0 in toplev_main(int, char**) ()
#17 0x00007ffff66e7b45 in __libc_start_main (main=0x552750 <main>, argc=18,
argv=0x7fffffffe588, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffe578) at libc-start.c:287
#18 0x000000000055297f in _start ()
this test case fails on the 4.8 and 4.9 branches, but succeeds with trunk 20140815.
$ cat tst.c
int a, b;
fn1() {
for (; a; a++)
b |= 1;
}
$ gcc -c -Ofast -floop- parallelize- all tst.c tst.c: In function 'fn1':
tst.c:2:1: internal compiler error: Segmentation fault
fn1() {
^
Please submit a full bug report,
with preprocessed source if appropriate.
(gdb) bt parallel_ p(loop* , hash_table< bb_pbb_ hasher, xcallocator>, int) bb_pbb_ hasher, xcallocator>) () transform_ loops() () one_pass( opt_pass* ) () pass_list( opt_pass* ) () pass_list( opt_pass* ) () pass_list( opt_pass* ) () pass_list( opt_pass* ) () compilation_ unit() () global_ declarations( ) () 0x7fffffffe588, init=<optimized out>, fini=<optimized out>, rtld_fini= <optimized out>, end=0x7fffffffe 578) at libc-start.c:287
#0 0x0000000000cdf3ea in compute_deps(scop*, vec<poly_bb*, va_heap, vl_ptr>, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**, isl_union_map**) ()
#1 0x0000000000cdf913 in loop_is_
()
#2 0x0000000000cdd9fd in ?? ()
#3 0x0000000000cddd72 in gloog(scop*, hash_table<
#4 0x0000000000cdac09 in graphite_
#5 0x0000000000cdb0f7 in ?? ()
#6 0x0000000000818b3b in execute_
#7 0x0000000000818dd6 in execute_
#8 0x0000000000818de8 in execute_
#9 0x0000000000818de8 in execute_
#10 0x0000000000818de8 in execute_
#11 0x000000000063f656 in ?? ()
#12 0x0000000000640f4d in compile() ()
#13 0x00000000006413a5 in finalize_
#14 0x00000000005648ec in c_write_
#15 0x00000000008b353d in ?? ()
#16 0x00000000008b50d0 in toplev_main(int, char**) ()
#17 0x00007ffff66e7b45 in __libc_start_main (main=0x552750 <main>, argc=18,
argv=
stack_
#18 0x000000000055297f in _start ()