[Qemu-devel] [PATCH] fix exception precision for cmpxchg8b

2007-04-24 Thread Nickolai Zeldovich
In qemu-0.9.0, an exception in cmpxchg8b (e.g. page fault due to a missing TLB entry) causes the wrong eip value to be pushed onto the exception stack -- it seems to be the eip of the last exception or the start of the translation block, whichever happened last. This makes it impossible to

Re: [Qemu-devel] [PATCH] fix exception precision for cmpxchg8b

2007-04-24 Thread Ben Taylor
a patch like this was posted about 6 weeks ago. the only difference I can see between this and the previous patch is the location of the inserted function. take a look at http://lists.gnu.org/archive/html/qemu-devel/2007-03/msg00123.html for hints. This patch fixed the Solaris/express

Re: [Qemu-devel] [PATCH] fix exception precision for cmpxchg8b

2007-04-24 Thread Nickolai Zeldovich
Thanks. Looks like inline-generated instructions use cpu_restore_state() to invert the translated PC into the simulated PC. Nickolai.