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