bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

isnanl failure on MirBSD


From: Eric Blake
Subject: isnanl failure on MirBSD
Date: Mon, 13 Sep 2010 14:08:52 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100907 Fedora/3.1.3-1.fc13 Mnenhy/0.8.3 Thunderbird/3.1.3

Bruno, what else do you need to help debug this? It's crashing on an i686 installation of the most recent MirBSD (version 10, 20100815), using mgcc 3.4.6 (propolice; gpc; MirOS 0AAB). I don't yet know whether to suspect a compiler error, a buggy <float.h>, or faulty configure results; but this failure in turn means that vasprintf-posix fails.

$ grep '^#.#EXPBIT' config.log
#define FLT_EXPBIT0_WORD 0
#define FLT_EXPBIT0_BIT 23
#define LDBL_EXPBIT0_WORD 2
#define LDBL_EXPBIT0_BIT 0
$ gdb gltests/test-isnanl-nolibm
...
Breakpoint 1, main () at test-isnanl.h:50
50        ASSERT (!isnanl (3.141L));
(gdb) s
rpl_isnanl (x=3.1410000000000000142108547152020037) at isnan.c:98
98        m.value = x;
(gdb) n
99        exponent = (m.word[EXPBIT0_WORD] >> EXPBIT0_BIT) & EXP_MASK;
(gdb) p m
$1 = {value = 3.1410000000000000142108547152020037, word = {790273982,
    3372623069, 16384}}
(gdb) p/x m
$2 = {value = 0x3, word = {0x2f1a9fbe, 0xc90624dd, 0x4000}}
(gdb) n
110       if (exponent == 0)
(gdb) n
111         return (m.word[1] >> 31);
(gdb) fin
Run till exit from #0  rpl_isnanl (x=3.1410000000000000142108547152020037)
    at isnan.c:111
0x1c000732 in main () at test-isnanl.h:50
50        ASSERT (!isnanl (3.141L));
Value returned is $3 = 1
(gdb) p sizeof (long double)
12


--
Eric Blake   address@hidden    +1-801-349-2682
Libvirt virtualization library http://libvirt.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]