On 7 February 2013 11:38, Richard Biener <rguent...@suse.de> wrote:
>
> This rewrites fix_loop_structure to be equivalent to loop
> detection from scratch via flow_loops_find with re-using
> of existing loop tree entries.
>
> This addresses a few shortcomings of fix_loop_structure. First,
> as shown by the testcase in PR56181, fix_loop_structure does


Hi,

This patch appears to trigger the following regression on
arm-none-linux-gnueabi:

FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer  (internal
compiler error)
FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer  (test for
excess errors)
FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer
-funroll-loops  (internal compiler error)
FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer
-funroll-loops  (test for excess errors)
FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions  (internal compiler error)
FAIL: gcc.dg/torture/pr54458.c  -O3 -fomit-frame-pointer
-funroll-all-loops -finline-functions  (test for excess errors)
FAIL: gcc.dg/torture/pr54458.c  -O3 -g  (internal compiler error)
FAIL: gcc.dg/torture/pr54458.c  -O3 -g  (test for excess errors)


Where each of the failures looks like this:

output is:
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/testsuite/gcc.dg/torture/pr54458.c:
In function 'foo':
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/testsuite/gcc.dg/torture/pr54458.c:20:1:
error: loop with header 9 not in loop tree
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/testsuite/gcc.dg/torture/pr54458.c:20:1:
error: loop with header 33 not in loop tree
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/testsuite/gcc.dg/torture/pr54458.c:20:1:
error: loop with header 34 not in loop tree
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/testsuite/gcc.dg/torture/pr54458.c:20:1:
internal compiler error: in verify_loop_structure, at cfgloop.c:1614
0x5d83f3 verify_loop_structure()
        
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/cfgloop.c:1614
0x7cbfa4 unswitch_single_loop
        
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/loop-unswitch.c:368
0x7cc508 unswitch_loops()
        
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/loop-unswitch.c:147
0x7bdf17 rtl_unswitch
        
/projects/pd/pdsw-infrastructure/production-builds/bld-root/channels/fsf-trunk/builds/34/src/gcc/gcc/loop-init.c:441
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

FAIL: gcc.dg/torture/pr54458.c  -O3 -g  (internal compiler error)



The same regression also appears on aarch64-none-linux-gnu

Cheers
/Marcus

Reply via email to