[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH] s390x-linux-user
From: |
Paul Brook |
Subject: |
Re: [Qemu-devel] [RFC PATCH] s390x-linux-user |
Date: |
Fri, 26 Jun 2009 19:18:12 +0100 |
User-agent: |
KMail/1.11.4 (Linux/2.6.29-2-amd64; KDE/4.2.4; x86_64; ; ) |
> No. You need the whole instruction. Which is fetched from memory, so is not
> easily available when you're checking TB flags.
> To do it this way, I think you'd need to split the instruction in two. The
> first part would load the whole instruciton from memory, or with r0, then
> store the result in an internal CPU pseudo-register to the whole
> instruction, and cuse annother TB lookup. The second would generate code
> that cleared the pseudo-register then executed the code that was stored in
> it.
>You'd have to include the whole of the pseudo-register in TB_FLAGS, and I
>doubt you've got enough bits for that.
On second reading I've spotted a way around this. Start with the two-phase
generation as described above, but make sure the TB is invalidated before the
next EXECUTE instruction is run. This means that instead of the whole
instruction in the TB flags you just need a "half way through EXECUTE" bit.
Reliably invalidating the TB may get a bit hairy, but I'm pretty sure it's
doable.
Paul
Re: [Qemu-devel] [RFC PATCH] s390x-linux-user, Stuart Brady, 2009/06/26