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

m68k gcc-3.3 __fixunsdfdi problem (Re: Bug#278135: gawk: FTBFS on m68k: clobber.awk test fails with "internal error")



clone 278135 -1
reassign -1 gcc-3.3
retitle -1 gcc-3.3: __fixunsdfdi problem on m68k
severity -1 critical
retitle 278135 gawk: FTBFS on m68k: clobber.awk test fails with "internal error" with gcc-3.3
thanks

I confirm RC Bug#278135 on crest.debian.org's dchroot unstable, so I
track down it with help of gotom and we suspect this is because of
__fixunsdfdi in libgcc.a of gcc-3.3 (1:3.3.5-1).

I confirm that gawk-3.1.4-1 (was succsessfully built on Aug 7 2004) is 
also failed to build from source on m68k with gcc-3.3 now and 
gawk-3.1.4-1.2 (was failed to build now with default gcc) can be built 
from source on m68k with gcc-3.2 now.

I think it is very critical bug, because all binaries that do casting
from double to unsigned int would include __fixunsdfdi code fragment
in it instead of just refering shared object, so that we need to
recompile such binaries after this bug is fixed. 
(and currently m68k's buildd uses gcc-3.3 as /usr/bin/gcc)

This is small example to reproduce this problem.

crest% vi test.c
#include <stdio.h>
#include <stdint.h>

int main()
{
        int x;
        double y = 831.0;
        x = (uintmax_t) y;
        return x;
}
crest% cc -g -o t test.c
crest% ./t
zsh: bus error  ./t
crest% gdb ./t
GNU gdb 6.1-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "m68k-linux"...Using host libthread_db library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /home/ukai/tmp/t

Program received signal SIGBUS, Bus error.
0xc003cebe in __libc_start_main () from /lib/libc.so.6
(gdb) bt
#0  0xc003cebe in __libc_start_main () from /lib/libc.so.6
#1  0x800004ce in __fixunsdfdi ()
#2  0x80000466 in main () at test.c:8

Regards,
Fumitoshi UKAI



Reply to: