Blame valgrind-3.9.0-xabort.patch
|
Mark Wielaard |
745bd7 |
From ae58d7305de27aa96abf715456a07045018cda98 Mon Sep 17 00:00:00 2001
|
|
Mark Wielaard |
745bd7 |
From: Mark Wielaard <mjw@redhat.com>
|
|
Mark Wielaard |
745bd7 |
Date: Tue, 26 Nov 2013 22:49:55 +0100
|
|
Mark Wielaard |
745bd7 |
Subject: [PATCH] Bug 328100 XABORT not implemented.
|
|
Mark Wielaard |
745bd7 |
|
|
Mark Wielaard |
745bd7 |
XABORT can be called even when there is no current transaction.
|
|
Mark Wielaard |
745bd7 |
In such a case XABORT acts as a NOP. Implement xabort as nop.
|
|
Mark Wielaard |
745bd7 |
---
|
|
Mark Wielaard |
745bd7 |
priv/guest_amd64_toIR.c | 10 ++++++++++
|
|
Mark Wielaard |
745bd7 |
1 file changed, 10 insertions(+)
|
|
Mark Wielaard |
745bd7 |
|
|
Mark Wielaard |
745bd7 |
diff --git a/VEX/priv/guest_amd64_toIR.c b/VEX/priv/guest_amd64_toIR.c
|
|
Mark Wielaard |
745bd7 |
index a17c8f4..7ea5748 100644
|
|
Mark Wielaard |
745bd7 |
--- a/VEX/priv/guest_amd64_toIR.c
|
|
Mark Wielaard |
745bd7 |
+++ b/VEX/priv/guest_amd64_toIR.c
|
|
Mark Wielaard |
745bd7 |
@@ -20270,6 +20270,16 @@ Long dis_ESC_NONE (
|
|
Mark Wielaard |
745bd7 |
return delta;
|
|
Mark Wielaard |
745bd7 |
}
|
|
Mark Wielaard |
745bd7 |
/* END HACKY SUPPORT FOR xbegin */
|
|
Mark Wielaard |
745bd7 |
+ /* BEGIN HACKY SUPPORT FOR xabort */
|
|
Mark Wielaard |
745bd7 |
+ if (modrm == 0xF8 && !have66orF2orF3(pfx) && sz == 1
|
|
Mark Wielaard |
745bd7 |
+ && (archinfo->hwcaps & VEX_HWCAPS_AMD64_AVX)) {
|
|
Mark Wielaard |
745bd7 |
+ delta++; /* mod/rm byte */
|
|
Mark Wielaard |
745bd7 |
+ abyte = getUChar(delta); delta++;
|
|
Mark Wielaard |
745bd7 |
+ /* There is never a real transaction in progress, so do nothing. */
|
|
Mark Wielaard |
745bd7 |
+ DIP("xabort $%d", (Int)abyte);
|
|
Mark Wielaard |
745bd7 |
+ return delta;
|
|
Mark Wielaard |
745bd7 |
+ }
|
|
Mark Wielaard |
745bd7 |
+ /* END HACKY SUPPORT FOR xabort */
|
|
Mark Wielaard |
745bd7 |
goto decode_failure;
|
|
Mark Wielaard |
745bd7 |
|
|
Mark Wielaard |
745bd7 |
case 0xC8: /* ENTER */
|
|
Mark Wielaard |
745bd7 |
--
|
|
Mark Wielaard |
745bd7 |
1.8.3.1
|
|
Mark Wielaard |
745bd7 |
|