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

             Bug #: 52372
           Summary: gcc.target/mips/mips16-attributes{,-4}.c SEGV in
                    dwf_regno
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: r...@gcc.gnu.org
                CC: rsand...@gcc.gnu.org
              Host: mips-sgi-irix6.5
            Target: mips-sgi-irix6.5
             Build: mips-sgi-irix6.5


The mips16-attributes{, -4}.c tests ICE on IRIX 6:

FAIL: gcc.target/mips/mips16-attributes-4.c (internal compiler error)
FAIL: gcc.target/mips/mips16-attributes-4.c (test for excess errors)
FAIL: gcc.target/mips/mips16-attributes.c (internal compiler error)
FAIL: gcc.target/mips/mips16-attributes.c (test for excess errors)

In the first case, I find:

/vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.target/mips/mips16-attributes-4.c:
In function 'bar':
/vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.target/mips/mips16-attributes-4.c:9:1:
internal compiler error: Segmentation fault

The failure boils down to

$ cc1 -fpreprocessed mips16-attributes-4.i -quiet -mabi=o64 -mlong32 -mno-synci
-o mips16-attributes-4.s

In gdb,I see

Program received signal SIGSEGV, Segmentation fault.
0x104b4048 in dwf_regno (reg=0x40280b8) at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:912
(gdb) p reg
$1 = (const_rtx) 0x40280b8
(gdb) pr
(pc)
(gdb) where
#0  0x104b4048 in dwf_regno (reg=0x40280b8) at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:912
#1  dwarf2out_flush_queued_reg_saves () at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:994
#2  0x104b56d4 in dwarf2out_frame_debug (insn=0x40f05e0) at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:2038
#3  scan_insn_after (insn=insn@entry=0x4033048) at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:2361
#4  0x104b6b74 in scan_trace (trace=<optimized out>) at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:2505
#5  0x104b7e0c in create_cfi_notes () at
/vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:2549
#6  execute_dwarf2_frame () at /vol/gcc/src/hg/trunk/local/gcc/dwarf2cfi.c:2907
#7  0x104f5bec in execute_one_pass (pass=pass@entry=0x10dc3708) at
/vol/gcc/src/hg/trunk/local/gcc/passes.c:2081
#8  0x104f6088 in execute_pass_list (pass=0x10dc3708) at
/vol/gcc/src/hg/trunk/local/gcc/passes.c:2136
#9  0x104f60a4 in execute_pass_list (pass=0x10dc3970) at
/vol/gcc/src/hg/trunk/local/gcc/passes.c:2137
#10 0x104f60a4 in execute_pass_list (pass=0x10dc39a8) at
/vol/gcc/src/hg/trunk/local/gcc/passes.c:2137
#11 0x1078c50c in tree_rest_of_compilation (fndecl=0x40b9100) at
/vol/gcc/src/hg/trunk/local/gcc/tree-optimize.c:422
#12 0x105d533c in cgraph_expand_function (node=0x40d80a8) at
/vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1837
#13 0x105d7564 in cgraph_output_in_order () at
/vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2002
#14 cgraph_optimize () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2213
#15 0x105d792c in cgraph_finalize_compilation_unit () at
/vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1344
#16 0x10187cf4 in c_write_global_declarations () at
/vol/gcc/src/hg/trunk/local/gcc/c-decl.c:10031
#17 0x10277148 in compile_file () at
/vol/gcc/src/hg/trunk/local/gcc/toplev.c:573
#18 do_compile () at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:1938
#19 toplev_main (argc=9, argv=0x7ffb7f04) at
/vol/gcc/src/hg/trunk/local/gcc/toplev.c:2014
#20 0x101723f0 in __start ()

I didn't easily see how to find the equivalent of REGNO(reg) in dwf_regno.

  Rainer

Reply via email to