From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K2Avs-00026y-7h for qemu-devel@nongnu.org; Fri, 30 May 2008 16:10:36 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K2Avo-00024A-M1 for qemu-devel@nongnu.org; Fri, 30 May 2008 16:10:35 -0400 Received: from [199.232.76.173] (port=44357 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K2Avo-000247-Bd for qemu-devel@nongnu.org; Fri, 30 May 2008 16:10:32 -0400 Received: from nf-out-0910.google.com ([64.233.182.188]:61200) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1K2Avo-0002EL-0Y for qemu-devel@nongnu.org; Fri, 30 May 2008 16:10:32 -0400 Received: by nf-out-0910.google.com with SMTP id b2so79037nfb.12 for ; Fri, 30 May 2008 13:10:31 -0700 (PDT) Message-ID: Date: Fri, 30 May 2008 22:10:30 +0200 From: "andrzej zaborowski" Subject: Re: [Qemu-devel] ARM host compile fix In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: 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 On 30/05/2008, Blue Swirl wrote: > I needed this patch to get sparc-softmmu compile on ARM host. Thanks for the patch. I guess it applies to all glibcs below 2.3 or 2.4 so I'll make this check a "<= 3" - I've only built for glibc 2.5. I'll commit it tomorrow unless you do. > It looks > like the code generator is not finished, tcg_abort() is called > immediately on start. I think this is due to the recent change making code_gen_buffer dynamic and requiring an absolute jump on ARM, which I had #if 0'ed in tcg-target.c because I had not tested it. TCG is a bit of a moving target and I'll be trying to keep arm host support updated, but without putting an excessive effort in being quick. > > Also sparc-linux-user final link fails: > /src/qemu/cpu-exec.c:609: relocation truncated to fit: R_ARM_PC24 > against symbol `code_gen_prologue' defined in COMMON section in > libqemu.a(exec.o) > collect2: ld returned 1 exit status Yes, arm-linux-user fails with the same error because gcc doesn't manage to make the call to code_gen_prologue. One solution is to wrap the #define tcg_qemu_tb_exec in tcg/tcg.h in an #ifndef, and override it tcg/arm/tcg-target.h with the same kind of call as was used before introduction of prologue/epilogue which was possibly more optimal. Regards