[pkg-wine-party] [SCM] Debian Wine packaging branch, wheezy, updated. wine-1.4-7-302-gb61b690
Alexandre Julliard
julliard at winehq.org
Sun Jun 17 20:01:44 UTC 2012
The following commit has been merged in the wheezy branch:
commit 9c95dcdb1465167148eddcb13b5fce0dd922493f
Author: Alexandre Julliard <julliard at winehq.org>
Date: Mon Mar 12 18:59:45 2012 +0100
ntdll: Add support for rep;ret instruction in function epilogs.
(cherry picked from commit 34c875bf8bd3861f69dedbd7faada1a5c7748d56)
diff --git a/dlls/ntdll/signal_x86_64.c b/dlls/ntdll/signal_x86_64.c
index 12acf94..19d91a0 100644
--- a/dlls/ntdll/signal_x86_64.c
+++ b/dlls/ntdll/signal_x86_64.c
@@ -2648,6 +2648,8 @@ static BOOL is_inside_epilog( BYTE *pc )
case 0xc2: /* ret $nn */
case 0xc3: /* ret */
return TRUE;
+ case 0xf3: /* rep; ret (for amd64 prediction bug) */
+ return pc[1] == 0xc3;
/* FIXME: add various jump instructions */
}
return FALSE;
@@ -2702,6 +2704,7 @@ static void interpret_epilog( BYTE *pc, CONTEXT *context, KNONVOLATILE_CONTEXT_P
context->Rsp += sizeof(ULONG64) + *(WORD *)(pc + 1);
return;
case 0xc3: /* ret */
+ case 0xf3: /* rep; ret */
context->Rip = *(ULONG64 *)context->Rsp;
context->Rsp += sizeof(ULONG64);
return;
--
Debian Wine packaging
More information about the pkg-wine-party
mailing list