http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46755

           Summary: ICE: in calc_dfs_tree, at dominance.c:395 with -O
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: zso...@seznam.cz
              Host: x86_64-pc-linux-gnu
            Target: x86_64-pc-linux-gnu


Created attachment 22591
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22591
auto-reduced testcase

Compiler output:
$ gcc -O pr46755.f
pr46755.f:3.72:

      ASSIGN 801 TO I800 ! { dg-warning "Deleted feature: ASSIGN" "Delet
                                                                        1
Warning: Deleted feature: ASSIGN statement at (1)
pr46755.f:6.72:

      ASSIGN 761 TO I760 ! { dg-warning "Deleted feature: ASSIGN" "Delet
                                                                        1
Warning: Deleted feature: ASSIGN statement at (1)
pr46755.f:16.72:

            ASSIGN 641 to I640 ! { dg-warning "Deleted feature: ASSIGN" 
                                                                        1
Warning: Deleted feature: ASSIGN statement at (1)
pr46755.f:25.16:

      GOTO I760 ! { dg-warning "Deleted feature: Assigned" "Assigned GO 
                1
Warning: Deleted feature: Assigned GOTO statement at (1)
pr46755.f:27.16:

      GOTO I800 ! { dg-warning "Deleted feature: Assigned" "Assigned GO 
                1
Warning: Deleted feature: Assigned GOTO statement at (1)
pr46755.f: In function 'MAIN__':
pr46755.f:28:0: internal compiler error: in calc_dfs_tree, at dominance.c:395
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

Backtrace:
(gdb) bt
#0  fancy_abort (file=0x11415e8 "/mnt/svn/gcc-trunk/gcc/dominance.c", line=395,
function=0x11416a5 "calc_dfs_tree")
    at /mnt/svn/gcc-trunk/gcc/diagnostic.c:892
#1  0x0000000000698483 in calc_dfs_tree (di=0x7fffffffd770, reverse=0 '\000')
at /mnt/svn/gcc-trunk/gcc/dominance.c:395
#2  0x0000000000699d60 in calculate_dominance_info (dir=CDI_DOMINATORS) at
/mnt/svn/gcc-trunk/gcc/dominance.c:656
#3  0x0000000000650e9d in flow_loops_find (loops=0x16c36c0) at
/mnt/svn/gcc-trunk/gcc/cfgloop.c:386
#4  0x00000000007e0934 in ira (f=<value optimized out>) at
/mnt/svn/gcc-trunk/gcc/ira.c:3168
#5  0x00000000007e2840 in rest_of_handle_ira () at
/mnt/svn/gcc-trunk/gcc/ira.c:3346
#6  0x0000000000849fef in execute_one_pass (pass=0x1676ea0) at
/mnt/svn/gcc-trunk/gcc/passes.c:1553
#7  0x000000000084a2b5 in execute_pass_list (pass=0x1676ea0) at
/mnt/svn/gcc-trunk/gcc/passes.c:1608
#8  0x000000000084a2c7 in execute_pass_list (pass=0x16773c0) at
/mnt/svn/gcc-trunk/gcc/passes.c:1609
#9  0x000000000098a416 in tree_rest_of_compilation (fndecl=0x7ffff7fc0f00) at
/mnt/svn/gcc-trunk/gcc/tree-optimize.c:422
#10 0x0000000000b4fea2 in cgraph_expand_function (node=0x7ffff5cbb000) at
/mnt/svn/gcc-trunk/gcc/cgraphunit.c:1508
#11 0x0000000000b5247a in cgraph_expand_all_functions () at
/mnt/svn/gcc-trunk/gcc/cgraphunit.c:1567
#12 cgraph_optimize () at /mnt/svn/gcc-trunk/gcc/cgraphunit.c:1827
#13 0x0000000000b529fa in cgraph_finalize_compilation_unit () at
/mnt/svn/gcc-trunk/gcc/cgraphunit.c:1031
#14 0x000000000080313d in write_global_declarations () at
/mnt/svn/gcc-trunk/gcc/langhooks.c:303
#15 0x0000000000933ed0 in compile_file (argc=15, argv=0x7fffffffdbf8) at
/mnt/svn/gcc-trunk/gcc/toplev.c:591
#16 do_compile (argc=15, argv=0x7fffffffdbf8) at
/mnt/svn/gcc-trunk/gcc/toplev.c:1874
#17 toplev_main (argc=15, argv=0x7fffffffdbf8) at
/mnt/svn/gcc-trunk/gcc/toplev.c:1937
#18 0x00007ffff6586bbd in __libc_start_main () from /lib/libc.so.6
#19 0x00000000004fe129 in _start ()

Tested revisions:
r167331 - crash
4.5 r166509 - crash
4.4 r166509 - crash

Testcase is auto-reduced from 20010519-1.f, I hit this ICE when reducing for
different problem. I don't know if this code should be considered valid or
invalid.

Reply via email to