Hi, here it bails out:
-- snip -- 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/qemu/target-i386 -I/home/qemu -MMD -MP -DNEED_CPU_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/qemu/tcg -I/home/qemu/tcg/i386 -I/home/qemu/fpu -I/home/qemu/linux-user -I/home/qemu/linux-user/i386 -c -o op.o /home/qemu/target-i386/op.c /home/qemu/target-i386/ops_sse.h: In function ‘op_pshufw_mmx’: /home/qemu/target-i386/ops_sse.h:593: error: unable to find a register to spill in class ‘GENERAL_REGS’ /home/qemu/target-i386/ops_sse.h:593: error: this is the insn: (insn:HI 17 16 18 0 /home/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/qemu/target-i386/ops_sse.h:593: confused by earlier errors, bailing out -- snap -- and in i386-softmmu it is similar: -- snip -- 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/qemu/target-i386 -I/home/qemu -MMD -MP -DNEED_CPU_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/qemu/tcg -I/home/qemu/tcg/i386 -I/home/qemu/fpu -DHAS_AUDIO -DHAS_AUDIO_CHOICE -I/home/qemu/slirp -c -o op.o /home/qemu/target-i386/op.c /home/qemu/target-i386/ops_template_mem.h: In function ‘op_cmpxchgb_kernel_T0_T1_EAX_cc’: ../softmmu_header.h:170: error: can't find a register in class ‘Q_REGS’ while reloading ‘asm’ -- snap -- This is on OpenSUSE 10.2, gcc (GCC) 4.1.2 20061115 (prerelease) (SUSE Linux), with "./configure --disable-gcc-check", and this patch on top of "<bellard>: typos, Fri Feb 1 13:01:47 2008 +0000": -- snip -- [PATCH] Some Linux setups need linux/compiler.h; if it exists, include it Signed-off-by: Johannes Schindelin <[EMAIL PROTECTED]> --- configure | 3 +++ usb-linux.c | 3 +++ 2 files changed, 6 insertions(+), 0 deletions(-) diff --git a/configure b/configure index bcb958d..330020d 100755 --- a/configure +++ b/configure @@ -194,6 +194,9 @@ linux_user="yes" if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then kqemu="yes" fi +if [ -f /usr/include/linux/compiler.h ] ; then + OS_CFLAGS="-DCONFIG_HAS_LINUX_COMPILER_H=1" +fi ;; esac diff --git a/usb-linux.c b/usb-linux.c index d3e4e2e..68fdbd2 100644 --- a/usb-linux.c +++ b/usb-linux.c @@ -28,6 +28,9 @@ #if defined(__linux__) #include <dirent.h> #include <sys/ioctl.h> +#ifdef CONFIG_HAS_LINUX_COMPILER_H +#include <linux/compiler.h> +#endif #include <linux/usbdevice_fs.h> #include <linux/version.h> #include <signal.h> -- 1.5.4.rc5.32.gc7b9 -- snap -- Ciao, Dscho