This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libffi/60073] New: [4.9 regression] 64-bit libffi.call/cls_double_va.c FAILs on Solaris/SPARC
- From: "ro at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 05 Feb 2014 12:33:34 +0000
- Subject: [Bug libffi/60073] New: [4.9 regression] 64-bit libffi.call/cls_double_va.c FAILs on Solaris/SPARC
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60073
Bug ID: 60073
Summary: [4.9 regression] 64-bit libffi.call/cls_double_va.c
FAILs on Solaris/SPARC
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libffi
Assignee: unassigned at gcc dot gnu.org
Reporter: ro at gcc dot gnu.org
CC: amodra at gcc dot gnu.org, ebotcazou at gcc dot gnu.org,
green at gcc dot gnu.org
Host: sparc*-sun-solaris2.*
Target: sparc*-sun-solaris2.*
Build: sparc*-sun-solaris2.*
Since ca. 20131121, the 64-bit libffi.call/cls_double_va.c test FAILs on
Solaris/SPARC:
FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0
FAIL: libffi.call/cls_double_va.c -O2 output pattern test, is 7.0
FAIL: libffi.call/cls_double_va.c -O3 output pattern test, is 7.0
FAIL: libffi.call/cls_double_va.c -Os output pattern test, is 7.0
FAIL: libffi.call/cls_double_va.c -O2 -fomit-frame-pointer output pattern test,
is 7.0
E.g.
FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0
res: 4
0.0
res: 4
, should match 7.0?
res: 4?
7.0?
res: 4
This is due to
2013-11-18 Alan Modra <amodra@gmail.com>
* src/powerpc/ppc_closure.S: Don't bl .Luint128.
* src/powerpc/ffitarget.h: Import from upstream.
* src/powerpc/ffi.c: Likewise.
* src/powerpc/linux64.S: Likewise.
* src/powerpc/linux64_closure.S: Likewise.
* doc/libffi.texi: Likewise.
* testsuite/libffi.call/cls_double_va.c: Likewise.
* testsuite/libffi.call/cls_longdouble_va.c: Likewise.
Reverting the cls_double.ca change lets the testcase pass. Strangely, the
cls_longdouble_va.c test still passes even with the patch, so this could
indicate
a bug in the libffi sparcv9 code.
Rainer