Bug 19268 - GCC 3.3/Irix 6.5 union as vararg not passed correctly
GCC 3.3/Irix 6.5 union as vararg not passed correctly
Status: RESOLVED FIXED
Product: gcc
Classification: Unclassified
Component: target
3.3
: P3 normal
: 3.4.0
Assigned To: Not yet assigned to anyone
: ABI, wrong-code
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-01-05 16:01 UTC by chli002@rz.uni-saarland.de
Modified: 2005-07-23 22:49 UTC (History)
1 user (show)

See Also:
Host: mips-sgi-irix6.5
Target: mips-sgi-irix6.5
Build: mips-sgi-irix6.5
Known to work: 3.4.0 4.0.0
Known to fail: 3.3.5
Last reconfirmed:


Attachments
The test case that I forgot in the bug report (2.02 KB, text/plain)
2005-01-05 16:35 UTC, chli002@rz.uni-saarland.de
Details

Note You need to log in before you can comment on or make changes to this bug.
Description chli002@rz.uni-saarland.de 2005-01-05 16:01:32 UTC
	The code below passes a union (type ct1) as a var arg. The callee checks 
	that the union is indeed received correctly by checking each field. This 
	fails in line 38:

	    assert (hv1.bv1 ==  nv1.bv1);

Environment:
System: IRIX64 mars 6.5 07080049 IP27


	
host: mips-sgi-irix6.5
build: mips-sgi-irix6.5
target: mips-sgi-irix6.5
configured with: ../configure --prefix=/usr/freeware --enable-version-specific-runtime-libs --disable-shared --enable-threads --enable-haifa --enable-libgcj --disable-c-mbchar

How-To-Repeat:
	Compile and run the following code. The bug manifests itself with
	the following message:

	Assertion failed: EX, file foo.c, line 38
Comment 1 chli002@rz.uni-saarland.de 2005-01-05 16:01:32 UTC
Fix:
	No Fix.
Comment 2 chli002@rz.uni-saarland.de 2005-01-05 16:35:59 UTC
Created attachment 7877 [details]
The test case that I forgot in the bug report

The code below belongs to the bug report; I just had forgotten to include it
when I sent the report. Compile and run this code to check validate the bug.
Comment 3 Andrew Pinski 2005-01-05 18:07:12 UTC
Can you test 3.4.x as there were changes to the MIPS back-end which might have fixed this.
Comment 4 Christian Lindig 2005-01-06 07:41:19 UTC
Subject: Re:  GCC 3.3/Irix 6.5 union as vararg not passed correctly


On Jan 5, 2005, at 7:07 PM, pinskia at gcc dot gnu dot org wrote:
> Can you test 3.4.x as there were changes to the MIPS back-end which 
> might have fixed this.

If this question was addressed to me, the reporter of the bug: I tried 
to build the recent GCC from CVS on the Irix but failed. There is no 
more recent GCC than 3.3 installed on the machine and therefore I can't 
easily run the test.

This machine is part of our computing center and I don't know much 
about it. Building GCC is also a challenge because it exceeds my quotas 
and I have to ask for special permissions first (even when building in 
/tmp).

-- Christian

Comment 5 rsandifo@gcc.gnu.org 2005-01-08 14:02:33 UTC
Just to confirm that the testcase fails with 3.3.x but works with
3.4.x and current CVS.  We can't really make ABI changes to a
stable branch so I'm closing this as fixed.
Comment 6 Gabriel Dos Reis 2005-01-08 16:53:29 UTC
Subject: Re:  GCC 3.3/Irix 6.5 union as vararg not passed correctly

"rsandifo at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> writes:

| Just to confirm that the testcase fails with 3.3.x but works with
| 3.4.x and current CVS.  We can't really make ABI changes to a
| stable branch so I'm closing this as fixed.

Indeed.  Thanks!

-- Gaby