Hi, I still have problems (Pentium M, gcc (GCC) 4.1.2 20061115 (prerelease) (SUSE Linux)):
make -C i386-linux-user all make[1]: Entering directory `/home/gitte/qemu/i386-linux-user' gcc -Wall -O2 -g -fno-strict-aliasing -fno-reorder-blocks -fno-gcse -fno-tree-ch -fno-optimize-sibling-calls -fno-crossjumping -fno-align-labels -fno-align-jumps -fno-align-functions -mpreferred-stack-boundary=2 -fomit-frame-pointer -DCONFIG_HAS_LINUX_COMPILER_H=1 -m32 -I. -I.. -I/home/gitte/qemu/target-i386 -I/home/gitte/qemu -MMD -MP -DNEED_CPU_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/gitte/qemu/tcg -I/home/gitte/qemu/tcg/i386 -I/home/gitte/qemu/fpu -I/home/gitte/qemu/linux-user -I/home/gitte/qemu/linux-user/i386 -c -o op.o /home/gitte/qemu/target-i386/op.c /home/gitte/qemu/target-i386/ops_sse.h: In function ‘op_pshufw_mmx’: /home/gitte/qemu/target-i386/ops_sse.h:593: error: unable to find a register to spill in class ‘GENERAL_REGS’ /home/gitte/qemu/target-i386/ops_sse.h:593: error: this is the insn: (insn:HI 17 16 18 0 /home/gitte/qemu/target-i386/ops_sse.h:588 (set (strict_low_part (subreg:HI (reg/v:DI 63 [ r ]) 0)) (mem/s/j:HI (plus:SI (mult:SI (reg:SI 64) (const_int 2 [0x2])) (reg/v/f:SI 59 [ s ])) [0 <variable>._w S2 A16])) 40 {*movstricthi_1} (insn_list:REG_DEP_TRUE 51 (insn_list:REG_DEP_TRUE 12 (insn_list:REG_DEP_TRUE 16 (nil)))) (expr_list:REG_DEAD (reg:SI 64) (nil))) /home/gitte/qemu/target-i386/ops_sse.h:593: confused by earlier errors, bailing out make[1]: *** [op.o] Fehler 1 make[1]: Leaving directory `/home/gitte/qemu/i386-linux-user' make: *** [subdir-i386-linux-user] Fehler 2 This is current CVS + patch to detect linux/compiler.h for SuSE. FWIW, line 588 in my current target-i386/ops_sse.h is r.W(0) = s->W(order & 3); in the function void OPPROTO glue(op_pshufw, SUFFIX) (void) Can anybody provide me with enough clues to fix it? Thanks, Dscho