This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/15290] New: __float128 failed to pass to function properly
- From: "hjl at lucon dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 May 2004 07:04:30 -0000
- Subject: [Bug target/15290] New: __float128 failed to pass to function properly
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
[hjl@gnu-20 float128]$ cat q.c
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <endian.h>
void
foo (__float128 x)
{
union quad { unsigned char c[16]; __float128 qd; } q;
q.qd = x;
unsigned char two [16];
memset (two, 0, sizeof two);
#if __BYTE_ORDER == __BIG_ENDIAN
two [0] = 0x40;
#endif
#if __BYTE_ORDER == __LITTLE_ENDIAN
two [15] = 0x40;
#endif
if (memcmp (two, q.c, sizeof two) != 0)
abort ();
}
int
main ()
{
foo (2);
return 0;
}
[hjl@gnu-20 float128]$ /usr/gcc-3.4/bin/gcc q.c
[hjl@gnu-20 float128]$ ./a.out
Aborted
[hjl@gnu-20 float128]$
--
Summary: __float128 failed to pass to function properly
Product: gcc
Version: 3.4.1
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl at lucon dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: x86_64-pc-linux-gnu
GCC host triplet: x86_64-pc-linux-gnu
GCC target triplet: x86_64-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15290