public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/11226] New: ICE passing struct arg with two floats
@ 2003-06-17 22:39 janis187 at us dot ibm dot com
  2003-07-21 19:59 ` [Bug target/11226] [3.3/3.4 regression] [ia64] " pinskia at physics dot uc dot edu
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: janis187 at us dot ibm dot com @ 2003-06-17 22:39 UTC (permalink / raw)
  To: gcc-bugs

PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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

           Summary: ICE passing struct arg with two floats
           Product: gcc
           Version: 3.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: janis187@us.ibm.com
                CC: gcc-bugs@gcc.gnu.org
 GCC build triplet: ia64-unknown-linux-gnu
  GCC host triplet: ia64-unknown-linux-gnu
GCC target triplet: ia64-unknown-linux-gnu

GCC for ia64-linux gets an ICE compiling this test case, which is
extracted from gcc.dg/compat/struct-by-value-5_x.c:

-----------
typedef struct { float a; float b; } Sf2;

Sf2 g1, g2, g3, g4, g5, g6;

extern void testSf2 (Sf2, Sf2, Sf2, Sf2, Sf2, Sf2,
                     Sf2, Sf2, Sf2, Sf2, Sf2, Sf2);

void test2_Sf2 (Sf2 s1, Sf2 s2, Sf2 s3, Sf2 s4, Sf2 s5, Sf2 s6)
{
  testSf2 (s1, g1, s2, g2, s3, g3, s4, g4, s5, g5, s6, g6);
}
-----------

Output from gcc version 3.4 20030617 (experimental):

bug1.c: In function `test2_Sf2':
bug1.c:10: internal compiler error: in emit_block_move, at expr.c:1793
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

The test case passes with 3.0.4 and 3.2 and fails with 3.3 and mainline.
It started failing with the following patch, which probably exposes some
latent target bug since the same test passes on several other platforms:

--- gcc/gcc/ChangeLog ---

2002-08-20  Richard Henderson  <rth@redhat.com>

        * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
        (emit_block_move): Split out subroutines.
        (emit_block_move_via_movstr): New.
        (emit_block_move_via_libcall): New.  Emit bcopy via normal call also.
        (emit_block_move_libcall_fn): New.  Construct function prototype for
        bcopy as well.
        (clear_storage): Split out subroutines.
        (clear_storage_via_clrstr): New.
        (clear_storage_via_libcall): New. Emit bzero as a normal call also.
        (clear_storage_libcall_fn): New.  Construct function prototype for
        bzero as well.
        (emit_push_insn): Use emit_block_move.
        (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
        (store_constructor): Likewise.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
@ 2003-07-21 19:59 ` pinskia at physics dot uc dot edu
  2003-10-16 19:06 ` mmitchel at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at physics dot uc dot edu @ 2003-07-21 19:59 UTC (permalink / raw)
  To: gcc-bugs

PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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


pinskia at physics dot uc dot edu changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|3.4                         |3.3.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
  2003-07-21 19:59 ` [Bug target/11226] [3.3/3.4 regression] [ia64] " pinskia at physics dot uc dot edu
@ 2003-10-16 19:06 ` mmitchel at gcc dot gnu dot org
  2003-12-26 19:38 ` pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2003-10-16 19:06 UTC (permalink / raw)
  To: gcc-bugs

PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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


mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|3.3.2                       |3.3.3


------- Additional Comments From mmitchel at gcc dot gnu dot org  2003-10-16 19:06 -------
Postponed until GCC 3.3.3.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
  2003-07-21 19:59 ` [Bug target/11226] [3.3/3.4 regression] [ia64] " pinskia at physics dot uc dot edu
  2003-10-16 19:06 ` mmitchel at gcc dot gnu dot org
@ 2003-12-26 19:38 ` pinskia at gcc dot gnu dot org
  2003-12-29 19:15 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-26 19:38 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2003-12-26 19:11 -------
This no longer ICEs on the mainline but still does on the tree-ssa, so maybe something 
changed between the last time the tree-ssa was merged in or this is still a latent bug in 
3.4.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rth at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
                   ` (2 preceding siblings ...)
  2003-12-26 19:38 ` pinskia at gcc dot gnu dot org
@ 2003-12-29 19:15 ` pinskia at gcc dot gnu dot org
  2004-01-14  0:23 ` sje at cup dot hp dot com
  2004-01-14  0:43 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2003-12-29 19:15 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |critical


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
                   ` (3 preceding siblings ...)
  2003-12-29 19:15 ` pinskia at gcc dot gnu dot org
@ 2004-01-14  0:23 ` sje at cup dot hp dot com
  2004-01-14  0:43 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: sje at cup dot hp dot com @ 2004-01-14  0:23 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From sje at cup dot hp dot com  2004-01-14 00:23 -------
I believe this bug should be closed out.  I reproduced it on IA64 HP-UX with GCC
3.3.2 and then applied Jim Wilson's patch from 
http://gcc.gnu.org/ml/gcc-patches/2003-12/msg00145.html which is already on the
mainline and the 3.3 branch and it fixed the problem.  I didn't test the
tree-ssa branch but I think it has been merged onto that branch as well.  I
verified that it does not happen on ToT but I did not test Top-of-3.3 branch
(just official 3.3 with Jim's patch).

-- 


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/11226] [3.3/3.4 regression] [ia64] ICE passing struct arg with two floats
  2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
                   ` (4 preceding siblings ...)
  2004-01-14  0:23 ` sje at cup dot hp dot com
@ 2004-01-14  0:43 ` pinskia at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-01-14  0:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-01-14 00:43 -------
Fixed for 3.3.3.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


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


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2004-01-14  0:43 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-17 22:39 [Bug target/11226] New: ICE passing struct arg with two floats janis187 at us dot ibm dot com
2003-07-21 19:59 ` [Bug target/11226] [3.3/3.4 regression] [ia64] " pinskia at physics dot uc dot edu
2003-10-16 19:06 ` mmitchel at gcc dot gnu dot org
2003-12-26 19:38 ` pinskia at gcc dot gnu dot org
2003-12-29 19:15 ` pinskia at gcc dot gnu dot org
2004-01-14  0:23 ` sje at cup dot hp dot com
2004-01-14  0:43 ` pinskia 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).