[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] TCG
From: |
Johannes Schindelin |
Subject: |
Re: [Qemu-devel] TCG |
Date: |
Fri, 1 Feb 2008 17:04:18 +0000 (GMT) |
User-agent: |
Alpine 1.00 (LSU 882 2007-12-20) |
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 <address@hidden>
---
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