public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/34042] New: Segfault in mips_cannot_change_mode_class
@ 2007-11-09 13:51 fxcoudert at gcc dot gnu dot org
2007-11-09 18:55 ` [Bug target/34042] " rsandifo at gcc dot gnu dot org
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2007-11-09 13:51 UTC (permalink / raw)
To: gcc-bugs
$ cat foo.i
typedef long double Tal2ldouble __attribute__((aligned (2)));
struct S2015 { Tal2ldouble a; };
extern struct S2015 check2015 ();
extern void checkx2015 (struct S2015);
void test2015 (void) { checkx2015 (check2015 ()); }
boltzmann ~/devel/irun $ cat foo.i
typedef long double Tal2ldouble __attribute__((aligned (2)));
struct S2015 { Tal2ldouble a; };
extern struct S2015 check2015 ();
extern void checkx2015 (struct S2015);
void test2015 (void) { checkx2015 (check2015 ()); }
boltzmann ~/devel/irun $ ./bin/gcc foo.i
gcc: Internal error: Segmentation fault (program cc1)
$ ./bin/gcc foo.i
gcc: Internal error: Segmentation fault (program cc1)
The backtrace for the segfault is:
Program received signal SIGSEGV, Segmentation fault.
0x1014a75c in mips_cannot_change_mode_class (from=TImode, to=DImode,
class=FP_REGS) at ../../trunk/gcc/config/mips/mips.c:8732
8732 {
(gdb) bt
#0 0x1014a75c in mips_cannot_change_mode_class (from=TImode, to=DImode,
class=FP_REGS) at ../../trunk/gcc/config/mips/mips.c:8732
#1 0x104b7ef4 in simplify_subreg (outermode=DImode, op=0x40bb280,
innermode=TImode, byte=0) at ../../trunk/gcc/simplify-rtx.c:5021
#2 0x104b8bec in simplify_gen_subreg (outermode=TImode, op=0xa,
innermode=SImode, byte=0) at ../../trunk/gcc/simplify-rtx.c:5218
#3 0x1020d0a0 in emit_move_multi_word (mode=TImode, x=0x50e1660, y=0x40bb280)
at ../../trunk/gcc/expr.c:3265
#4 0x10209e50 in emit_move_insn (x=0x50e1660, y=0x40bb280)
at ../../trunk/gcc/expr.c:3408
#5 0x101aaef4 in copy_to_reg (x=0x40bb280) at ../../trunk/gcc/explow.c:617
#6 0x1018fc6c in operand_subword_force (op=0x40bb280, offset=0, mode=TImode)
at ../../trunk/gcc/emit-rtl.c:1448
#7 0x1020d2b0 in emit_move_multi_word (mode=TImode, x=0x50e1640, y=0x40bb280)
at ../../trunk/gcc/expr.c:3276
#8 0x10209e50 in emit_move_insn (x=0x50e1640, y=0x40bb280)
at ../../trunk/gcc/expr.c:3408
#9 0x101aaef4 in copy_to_reg (x=0x40bb280) at ../../trunk/gcc/explow.c:617
#10 0x1018fc6c in operand_subword_force (op=0x40bb280, offset=0, mode=TImode)
at ../../trunk/gcc/emit-rtl.c:1448
--
Summary: Segfault in mips_cannot_change_mode_class
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fxcoudert at gcc dot gnu dot org
GCC build triplet: mips-sgi-irix6.5
GCC host triplet: mips-sgi-irix6.5
GCC target triplet: mips-sgi-irix6.5
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
@ 2007-11-09 18:55 ` rsandifo at gcc dot gnu dot org
2007-11-11 13:54 ` rsandifo at gcc dot gnu dot org
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2007-11-09 18:55 UTC (permalink / raw)
To: gcc-bugs
--
rsandifo at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rsandifo at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2007-11-09 18:55:04
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
2007-11-09 18:55 ` [Bug target/34042] " rsandifo at gcc dot gnu dot org
@ 2007-11-11 13:54 ` rsandifo at gcc dot gnu dot org
2007-11-11 14:34 ` fxcoudert at gcc dot gnu dot org
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2007-11-11 13:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from rsandifo at gcc dot gnu dot org 2007-11-11 13:54 -------
Created an attachment (id=14530)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14530&action=view)
Proposed patch
Sorry, this is a long-latent bug exposed by the __divdc3 fix:
http://gcc.gnu.org/ml/gcc-patches/2007-09/msg02112.html
Could you try the attached patch? I'll test it on some targets
as well, but I don't have access to targets with 128-bit long doubles
at the moment (hoping this will change soon).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
2007-11-09 18:55 ` [Bug target/34042] " rsandifo at gcc dot gnu dot org
2007-11-11 13:54 ` rsandifo at gcc dot gnu dot org
@ 2007-11-11 14:34 ` fxcoudert at gcc dot gnu dot org
2007-11-11 16:56 ` fxcoudert at gcc dot gnu dot org
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2007-11-11 14:34 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from fxcoudert at gcc dot gnu dot org 2007-11-11 14:34 -------
(In reply to comment #1)
> Could you try the attached patch?
I am rebulding and will test it, but it takes quite some time...
By the way, I have posted the test results of mainline on mips-sgi-irix6.5 at
http://gcc.gnu.org/ml/gcc-testresults/2007-11/msg00486.html. I intend to open
individual PRs for each distinct failure when I get time to trim them down to
simple testcases. Do you want me to CC you on these when they look like target
issues? (ie not front-end)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
` (2 preceding siblings ...)
2007-11-11 14:34 ` fxcoudert at gcc dot gnu dot org
@ 2007-11-11 16:56 ` fxcoudert at gcc dot gnu dot org
2007-11-11 23:00 ` rsandifo at nildram dot co dot uk
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2007-11-11 16:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from fxcoudert at gcc dot gnu dot org 2007-11-11 16:56 -------
(In reply to comment #2)
> I am rebulding and will test it, but it takes quite some time...
Less than I thought! It fixes it, and no other regression has appeared.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
` (3 preceding siblings ...)
2007-11-11 16:56 ` fxcoudert at gcc dot gnu dot org
@ 2007-11-11 23:00 ` rsandifo at nildram dot co dot uk
2007-11-12 20:05 ` rsandifo at gcc dot gnu dot org
2007-11-12 20:10 ` rsandifo at gcc dot gnu dot org
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at nildram dot co dot uk @ 2007-11-11 23:00 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from rsandifo at nildram dot co dot uk 2007-11-11 22:59 -------
Subject: Re: Segfault in mips_cannot_change_mode_class
"fxcoudert at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes:
>> Could you try the attached patch?
>
> I am rebulding and will test it, but it takes quite some time...
Thanks. Glad to hear from the later message that it went OK.
I'll commit tomorrow if my testing goes the same way.
> By the way, I have posted the test results of mainline on mips-sgi-irix6.5 at
> http://gcc.gnu.org/ml/gcc-testresults/2007-11/msg00486.html. I intend to open
> individual PRs for each distinct failure when I get time to trim them down to
> simple testcases. Do you want me to CC you on these when they look like target
> issues? (ie not front-end)
Sure, please do. In fact, please CC me on them whatever they are.
I try to look out for MIPS bugs, but it's always possible I'll miss some.
Richard
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
` (4 preceding siblings ...)
2007-11-11 23:00 ` rsandifo at nildram dot co dot uk
@ 2007-11-12 20:05 ` rsandifo at gcc dot gnu dot org
2007-11-12 20:10 ` rsandifo at gcc dot gnu dot org
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2007-11-12 20:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from rsandifo at gcc dot gnu dot org 2007-11-12 20:05 -------
Subject: Bug 34042
Author: rsandifo
Date: Mon Nov 12 20:05:46 2007
New Revision: 130119
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130119
Log:
gcc/
PR target/34042
* config/mips/mips.c (mips_return_fpr_single): New function.
(mips_function_value): Use it when returning single-field
aggregates in FPRs.
(mips_expand_call): Handle the PARALLELs created by
mips_return_fpr_single.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/mips/mips.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/34042] Segfault in mips_cannot_change_mode_class
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
` (5 preceding siblings ...)
2007-11-12 20:05 ` rsandifo at gcc dot gnu dot org
@ 2007-11-12 20:10 ` rsandifo at gcc dot gnu dot org
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu dot org @ 2007-11-12 20:10 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from rsandifo at gcc dot gnu dot org 2007-11-12 20:10 -------
Thanks for the testing. Now fixed on mainline.
--
rsandifo at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34042
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2007-11-12 20:10 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-11-09 13:51 [Bug target/34042] New: Segfault in mips_cannot_change_mode_class fxcoudert at gcc dot gnu dot org
2007-11-09 18:55 ` [Bug target/34042] " rsandifo at gcc dot gnu dot org
2007-11-11 13:54 ` rsandifo at gcc dot gnu dot org
2007-11-11 14:34 ` fxcoudert at gcc dot gnu dot org
2007-11-11 16:56 ` fxcoudert at gcc dot gnu dot org
2007-11-11 23:00 ` rsandifo at nildram dot co dot uk
2007-11-12 20:05 ` rsandifo at gcc dot gnu dot org
2007-11-12 20:10 ` rsandifo at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).