[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Stupid (probably) idea wrt dyngen & gcc 3.4 & 4.0
From: |
Paul Brook |
Subject: |
Re: [Qemu-devel] Stupid (probably) idea wrt dyngen & gcc 3.4 & 4.0 |
Date: |
Mon, 9 May 2005 03:33:34 +0100 |
User-agent: |
KMail/1.7.2 |
On Monday 09 May 2005 02:55, Sebastian Kaliszewski wrote:
> So the idea was indeed stupid :)
>
> On Monday 09 May 2005 02:40, Paul Brook wrote:
> > No. The main problem with gcc3.4 was that we weren't using FORCE_RET
> > everywhere that we should. This has mostly been fixed now.
>
> I see...
>
> [snip]
>
> > I've got a solution for x86/x86-64 that's 95% complete, using the method
> > I suggested in a previous email.
>
> So, since ret is too small to be replaced with jump, you relocate the block
> following ret few bytes further, and retarget all relevant jumps?
Almost. I relocate the instructins immediately preceeding the ret. I define
FORCE_RET() as "nop; nop; nop; nop" to make sure we always have some code
that can be moved without having to relocate any jumps. In most cases dyngen
can then recognise these nop blocks, and remove them from the output.
Paul