This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

target/6512: 3.1 segfault in copyprop_hardreg_forward_1 on sparc-sun-solaris2.8



>Number:         6512
>Category:       target
>Synopsis:       3.1 segfault in copyprop_hardreg_forward_1 on sparc-sun-solaris2.8
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 29 17:46:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     B. Lucier
>Release:        3.1 20020429 (prerelease)
>Organization:
>Environment:
sparc-sun-solaris2.8
Solaris as/ld/sh
>Description:
Compiling this file

http://www.math.purdue.edu/~lucier/GNATS/GNATS-5/nucleic.i.gz

inside gdb results in the following segfault

Starting program: /pkgs/gcc-3.1/lib/gcc-lib/sparc-sun-solaris2.8/3.1/cc1 -fomit-frame-pointer -O1 -fschedule-insns2 -fno-strict-aliasing -fno-math-errno -mcpu=ultrasparc -mtune=ultrasparc -m32 nucleic.i
 ___H__20_nucleic {GC 14760k -> 4922k} {GC 6533k -> 5160k} {GC 7382k -> 5143k} {GC 7652k -> 5440k}
Program received signal SIGSEGV, Segmentation fault.
copyprop_hardreg_forward_1 (bb=0x13bd468, vd=0x1df46bc)
    at ../../gcc/regrename.c:1564
1564                recog_op_alt[i][alt].class = recog_op_alt[matches][alt].class;
(gdb) p i
$1 = 0
(gdb) p alt
$2 = -1
(gdb) p matches
$3 = 16842752
(gdb) list
1559          predicated = GET_CODE (PATTERN (insn)) == COND_EXEC;
1560          for (i = 0; i < n_ops; ++i)
1561            {
1562              int matches = recog_op_alt[i][alt].matches;
1563              if (matches >= 0)
1564                recog_op_alt[i][alt].class = recog_op_alt[matches][alt].class;
1565              if (matches >= 0 || recog_op_alt[i][alt].matched >= 0
1566                  || (predicated && recog_data.operand_type[i] == OP_OUT))
1567                recog_data.operand_type[i] = OP_INOUT;
1568            }
(gdb) 

>How-To-Repeat:

>Fix:
???????
>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]