On 02/04/21 10:29, Ziqiao Kong wrote:

According to git blame, this bug is introduced about 13 years ago:
https://github.com/qemu/qemu/blame/633decd71119a4293e5e53e6059026c517a8bef0/target-i386/fpu_helper.c#L997.

We also had a patch for this bug:
https://github.com/unicorn-engine/unicorn/commit/59b09a71bfc6fd8b95357944f6be9aa54f424421
which you may refer to. I can also help draft a patch if necessary.

Hi!

Unfortunately the patch is incorrect, because fpu_update_ip is called only at translation time and not at run-time. If more than one x87 instruction is present in the same translation block, or if a translation block has been compiled after the one that is executing, env->fpip will be incorrect.

Thanks,

Paolo


Reply via email to