This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/14915] New: Testsuite failure on mips-sgi-irix6.5 in gcc.dg/builtins-32.c
- From: "ghazi at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 Apr 2004 22:40:52 -0000
- Subject: [Bug target/14915] New: Testsuite failure on mips-sgi-irix6.5 in gcc.dg/builtins-32.c
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
I'm getting a testsuite failure on mips-sgi-irix6.5 in gcc.dg/builtins-32.c. Th
e test passes the "float" sized checks, but fails for the "double" size. Specif
ically, I get an abort for test(-2.0) which incorrectly returns zero. We're
exercising the extract_bit_field() path in expand_builtin_signbit() in
the "double" case but not in the "float" case.
The failure runs from here:
http://gcc.gnu.org/ml/gcc-testresults/2004-02/msg00173.html
through to a current report:
http://gcc.gnu.org/ml/gcc-testresults/2004-04/msg00359.html
Mips sets BITS_BIG_ENDIAN to zero, so it doesn't reverse the bitpos. But if I
force it to do so, the testcase passes. Like so:
--- ../../orig/gcc-CVS20040409/gcc/builtins.c Fri Apr 9 17:03:58 2004
+++ builtins.c Sat Apr 10 11:26:17 2004
@@ -5036,7 +5036,7 @@ expand_builtin_signbit (tree exp, rtx ta
if (GET_MODE_BITSIZE (imode) > GET_MODE_BITSIZE (rmode))
{
- if (BITS_BIG_ENDIAN)
+ if (BITS_BIG_ENDIAN || 1)
bitpos = GET_MODE_BITSIZE (imode) - 1 - bitpos;
temp = copy_to_mode_reg (imode, temp);
temp = extract_bit_field (temp, 1, bitpos, 1,
Perhaps the logic to enter this path isn't completely correct?
E.g. do we need to test some other macro in addition to BITS_BIG_ENDIAN?
--
Summary: Testsuite failure on mips-sgi-irix6.5 in
gcc.dg/builtins-32.c
Product: gcc
Version: 3.5.0
Status: UNCONFIRMED
Keywords: wrong-code
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ghazi at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,roger at eyesopen dot
com
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=14915