Internal Error
Alan Carvalho de Assis
acassis@gmail.com
Sun May 27 14:07:00 GMT 2007
Hi guys,
I am compiling uClibc-0.9.28 and get a gcc internal error:
gcc -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-march=i686 -fno-stack-protector -fno-builtin -nostdinc -D_LIBC
-I../../../../include -I. -mpreferred-stack-boundary=2
-falign-jumps=0 -falign-loops=0 -Os -funit-at-a-time -isystem
/usr/lib/gcc/i486-linux-gnu/4.1.2/include -DNDEBUG -fPIC -c setjmp.S
-o setjmp.o
setjmp.S: Assembler messages:
setjmp.S:54: Internal error!
Assertion failure in operand at ../../gas/expr.c line 1310.
Please report this bug.
make[6]: *** [setjmp.o] Error 1
make[6]: Leaving directory
This error is happening at line 54:
45 #ifdef __PIC__
46 /* We cannot use the PLT, because it requires that
%ebx be set, but
47 we can't save and restore our caller's value.
Instead, we do an
48 indirect jump through the GOT, using for the
temporary register
49 %ecx, which is call-clobbered. */
50 call .Lhere
51 .Lhere:
52 popl %ecx
53 addl $_GLOBAL_OFFSET_TABLE_+[.- .Lhere ], %ecx
54 movl __sigjmp_save @GOT (%ecx), %ecx
55 jmp *%ecx
56 #else
57 jmp __sigjmp_save
58 #endif
I tested gcc 4.1, 3.4 and 3.3 and this error happen for all.
I'm compiling it on debian unstable.
I searched at google and gcc mailing list archive and don't found
anything about it.
Can you please me help to solve it?
Cheers,
Alan
More information about the Gcc-help
mailing list