From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DYAfY-0008Vk-0C for qemu-devel@nongnu.org; Tue, 17 May 2005 18:36:08 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DYAfX-0008VF-27 for qemu-devel@nongnu.org; Tue, 17 May 2005 18:36:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DYAfW-0008V1-Gd for qemu-devel@nongnu.org; Tue, 17 May 2005 18:36:06 -0400 Received: from [65.74.133.9] (helo=mail.codesourcery.com) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1DY95M-0001FM-R0 for qemu-devel@nongnu.org; Tue, 17 May 2005 16:54:41 -0400 From: Paul Brook Subject: Re: [Qemu-devel] [patch] gcc4 host support Date: Tue, 17 May 2005 21:46:30 +0100 References: <200505112204.10204.paul@codesourcery.com> <1116236492.25594.23.camel@localhost.localdomain> In-Reply-To: <1116236492.25594.23.camel@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200505172146.31089.paul@codesourcery.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 Cc: David Woodhouse On Monday 16 May 2005 10:41, David Woodhouse wrote: > On Wed, 2005-05-11 at 22:04 +0100, Paul Brook wrote: > > My solution is to search the function for the "ret" instruction and > > replace them with a jmp to the next block of code. On RISC targets this > > would be easy. > > About this easy, in fact... >... > + > + if (get32((uint32_t *)p) == 0x4e800020) { > + blr_addr = p; > + copy_size = p_end - p_start; > + break; > + } You probably want to scan the whole function to check there aren't multiple blr instructions, and throw an error if there are. Other than that it looks ok to me. Paul