------- Additional Comments From uweigand at gcc dot gnu dot org 2004-11-24 13:27 ------- The inline assembly statement is impossible to reload under the given circumstances. Note that the statement requires 12 general purpose registers at the same time (6 inputs and 6 clobbers), but using the options you give, GCC 3.2 has only 11 general purpose registers available for general use (namely %r0 .. %r10; %r11 is the frame pointer, %r12 the GOT pointer, %r13 the literal pool pointer, %r14 the return address register and %r15 the stack pointer).
You could either - rewrite the assembly to require one fewer register - build with -O (or -fomit-frame-pointer) to free up %r11 - build without -fPIC to free up %r12 (probably impossible) - use GCC 3.4 (as this makes %r14 available for general use) I'd recommend to simply use -O2. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18630