From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Jsh67-00037w-Qi for qemu-devel@nongnu.org; Sun, 04 May 2008 12:29:59 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Jsh65-00035r-Fi for qemu-devel@nongnu.org; Sun, 04 May 2008 12:29:58 -0400 Received: from [199.232.76.173] (port=56654 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jsh65-00035U-55 for qemu-devel@nongnu.org; Sun, 04 May 2008 12:29:57 -0400 Received: from wa-out-1112.google.com ([209.85.146.178]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Jsh65-0001Kc-3E for qemu-devel@nongnu.org; Sun, 04 May 2008 12:29:57 -0400 Received: by wa-out-1112.google.com with SMTP id j5so251096wah.18 for ; Sun, 04 May 2008 09:29:51 -0700 (PDT) Message-ID: Date: Sun, 4 May 2008 12:29:51 -0400 From: "Ben Taylor" Subject: Re: [Qemu-devel] Compilation broken in SVN version and a debug register question In-Reply-To: <527518.23522.qm@web57011.mail.re3.yahoo.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_20816_31500187.1209918591881" References: <527518.23522.qm@web57011.mail.re3.yahoo.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ------=_Part_20816_31500187.1209918591881 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On Wed, Apr 23, 2008 at 8:34 AM, Balazs Attila-Mihaly (Cd-MaN) wrote: > Hello all. > > I fail to compile the version 4242 from the SVN (which I checked out ~1 hour ago). On an Ubuntu 7.10 host with gcc-3.4 and ./configure --target-list=i386-softmmu, I get the following error: > > make -C i386-softmmu all > make[1]: Entering directory `/home/cdman/qemu/trunk/i386-softmmu' > gcc-3.4 -Wall -O2 -g -fno-strict-aliasing -fno-reorder-blocks -fno-gcse -fno-optimize-sibling-calls -fno-crossjumping -fno-align-labels -fno-align-jumps -fno-align-functions -mpreferred-stack-boundary=2 -fomit-frame-pointer -m32 -I. -I.. -I/home/cdman/qemu/trunk/target-i386 -I/home/cdman/qemu/trunk -MMD -MP -DNEED_CPU_H -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/cdman/qemu/trunk/tcg -I/home/cdman/qemu/trunk/tcg/i386 -I/home/cdman/qemu/trunk/fpu -DHAS_AUDIO -DHAS_AUDIO_CHOICE -I/home/cdman/qemu/trunk/slirp -c -o op.o /home/cdman/qemu/trunk/target-i386/op.c > /home/cdman/qemu/trunk/target-i386/ops_sse.h: In function `op_pshufw_mmx': > /home/cdman/qemu/trunk/target-i386/ops_sse.h:597: error: unable to find a register to spill in class `GENERAL_REGS' > /home/cdman/qemu/trunk/target-i386/ops_sse.h:597: error: this is the insn: > (insn:HI 18 17 19 0 /home/cdman/qemu/trunk/target-i386/ops_sse.h:592 (set (strict_low_part (subreg:HI (reg/v:DI 58 [ r ]) 0)) > (mem/s/j:HI (plus:SI (mult:SI (reg:SI 62) > (const_int 2 [0x2])) > (reg/v/f:SI 60 [ s ])) [0 ._w S2 A16])) 54 {*movstricthi_1} (insn_list 16 (insn_list 12 (insn_list 50 (nil)))) > (expr_list:REG_DEAD (reg:SI 62) > (nil))) > /home/cdman/qemu/trunk/target-i386/ops_sse.h:597: confused by earlier errors, bailing out > make[1]: *** [op.o] Error 1 > make[1]: Leaving directory `/home/cdman/qemu/trunk/i386-softmmu' > make: *** [subdir-i386-softmmu] Error 2 > > Is this related to the recent discussion about MMX/SSE instructions? > > Also, I have a weird behaviour with qemu-0.9.0 (I will test it against the SVN snapshot as soon as I can get it to compile :)). The behavior is related to hardware breakpoints. I use a Linux host and Windows XP guest and in the guest I use a user-mode debugger (Olly - http://ollydbg.de/) to debug a program. Software breakpoints work ok, but hardware breakpoints only work when I run __with__ kqemu (which is really weird, since the usual response for all the problems is "try it without kqemu" :)). Is this a known limitation or a bug? Should the code which sets the debug registers be augmented to flush the TB cache and the dyngen code changed to take into account the value of the debug registers (and raise an exception there)? But if this is the case, why does it work with kqemu enabled? > > Thank you in advance for your time spent answering my questions. > > Best regards. The following patch should fix the compilation of op.c and helper.c. This been tested on solaris x86 (32/64 bit) and Ubuntu 7.10 (32-bit). When configuring on the 32-bit systems, I used --extra-cflags="-march=i686 -mtune=i686" and both spill errors in op.c and helper.c are gone, and the binaries will boot Milax (a Solaris based DamnSmallLinux clone) Once the sse ops are converted to TCG, I imagine these hacks to the Makefile.target file can be removed. ------=_Part_20816_31500187.1209918591881 Content-Type: text/x-patch; name=Makefile.target.diff Content-Transfer-Encoding: base64 X-Attachment-Id: f_fftuab3x0 Content-Disposition: attachment; filename=Makefile.target.diff ZGlmZiAtcnVOIHFlbXUuT1JJRy9NYWtlZmlsZS50YXJnZXQgcWVtdS9NYWtlZmlsZS50YXJnZXQK LS0tIHFlbXUuT1JJRy9NYWtlZmlsZS50YXJnZXQJMjAwOC0wNS0wNCAxMDo0Mjo1Ni4wMDAwMDAw MDAgLTA0MDAKKysrIHFlbXUvTWFrZWZpbGUudGFyZ2V0CTIwMDgtMDUtMDQgMTI6MDI6NTYuMDY4 Mzc0MDAwIC0wNDAwCkBAIC05Niw2ICs5Niw3IEBACiBpZmVxICgkKEFSQ0gpLGkzODYpCiBIRUxQ RVJfQ0ZMQUdTKz0tZm9taXQtZnJhbWUtcG9pbnRlcgogT1BfQ0ZMQUdTKz0tbXByZWZlcnJlZC1z dGFjay1ib3VuZGFyeT0yIC1mb21pdC1mcmFtZS1wb2ludGVyCitNVFVORV9DRkxBR1M9LW1hcmNo PWk0ODYgLW10dW5lPWk2ODYKIGVuZGlmCiAKIGlmZXEgKCQoQVJDSCkscHBjKQpAQCAtMjc5LDYg KzI4MCwxMiBAQAogTElCT0JKUys9czM5MC1kaXMubwogZW5kaWYKIAoraWZlcSAoJChBUkNIKSwg aTM4NikKKwlIQ0ZMQUdTPWBlY2hvICQoQ0ZMQUdTKSB8IHNlZCAncywtbWFyY2g9aTY4NiwsJ2AK K2Vsc2UKKwlIQ0ZMQUdTPSQoQ0ZMQUdTKQorZW5kaWYKKwogIyBsaWJxZW11CiAKIGlmbmRlZiBD T05GSUdfTk9fRFlOR0VOX09QCkBAIC0zMDksNyArMzE2LDcgQEAKIAkkKERZTkdFTikgLWcgLW8g JEAgJDwKIAogb3Aubzogb3AuYwotCSQoQ0MpICQoT1BfQ0ZMQUdTKSAkKENQUEZMQUdTKSAtYyAt byAkQCAkPAorCSQoQ0MpICQoT1BfQ0ZMQUdTKSAkKENQUEZMQUdTKSAkKE1UVU5FX0NGTEFHUykg LWMgLW8gJEAgJDwKIAogbWFjaGluZS5vOiBtYWNoaW5lLmMKIAkkKENDKSAkKE9QX0NGTEFHUykg JChDUFBGTEFHUykgLWMgLW8gJEAgJDwKQEAgLTMxOSw3ICszMjYsNyBAQAogaWZlcSAoJChUQVJH RVRfQkFTRV9BUkNIKSwgaTM4NikKICMgWFhYOiByZW5hbWUgaGVscGVyLmMgdG8gb3BfaGVscGVy LmMKIGhlbHBlci5vOiBoZWxwZXIuYwotCSQoQ0MpICQoSEVMUEVSX0NGTEFHUykgJChDUFBGTEFH UykgJChDRkxBR1MpIC1jIC1vICRAICQ8CisJJChDQykgJChIRUxQRVJfQ0ZMQUdTKSAkKENQUEZM QUdTKSAkKE1UVU5FX0NGTEFHUykgJChIQ0ZMQUdTKSAtYyAtbyAkQCAkPAogZWxzZQogb3BfaGVs cGVyLm86IG9wX2hlbHBlci5jCiAJJChDQykgJChIRUxQRVJfQ0ZMQUdTKSAkKENQUEZMQUdTKSAk KENGTEFHUykgLWMgLW8gJEAgJDwK ------=_Part_20816_31500187.1209918591881--