ref: 86d3b0d585564466b1069033019a1f80749c6685
parent: 3a4a395d1f59f5f809a35311afff1efbd7ae4170
author: cinap_lenrek <cinap_lenrek@localhost>
date: Wed Apr 20 15:30:44 EDT 2011
realemu: bittest ops for 0F prefix
--- a/sys/src/cmd/aux/realemu/dat.h
+++ b/sys/src/cmd/aux/realemu/dat.h
@@ -292,6 +292,7 @@
OGP3v,
OGP4,
OGP5,
+ OGP8,
OGP10,
OGP12,
OHLT,
--- a/sys/src/cmd/aux/realemu/decode.c
+++ b/sys/src/cmd/aux/realemu/decode.c
@@ -151,7 +151,7 @@
//B0 - mostly arcana
{OBAD, }, {OBAD, }, {OLFP,ASS,AGv,AMp},{OBTR,AEv,AGv }, {OLFP,AFS,AGv,AMp},{OLFP,AGS,AGv,AMp},{OMOVZX,AGv,AEb }, {OMOVZX,AGv,AEw },- {OBAD, }, {OBAD, }, {OBAD, }, {OBAD, },+ {OBAD, }, {OBAD, }, {OGP8, }, {OBAD, }, {OBSF,AGv,AEv }, {OBSR,AGv,AEv }, {OMOVSX,AGv,AEb }, {OMOVSX,AGv,AEw },//C0 - more arcana
{OBAD, }, {OBAD, }, {OBAD, }, {OBAD, },@@ -208,6 +208,11 @@
{OJUMP, AEv, }, {OJUMP, AMp, }, {OPUSH, AEv, }, {OBAD, },};
+static Optab optabgp8[8] = {+ {OMOV, }, {OBAD, }, {OBAD, }, {OBAD, },+ {OBT, AEv, AIb }, {OBTS, AEv, AIb }, {OBTR, AEv, AIb }, {OBTC, AEv, AIb },+};
+
static Optab optabgp10[8] = { {OPOP, AEv, }, {OBAD, }, {OBAD, }, {OBAD, }, {OBAD, }, {OBAD, }, {OBAD, }, {OBAD, },@@ -235,6 +240,7 @@
[OGP3v] optabgp3v,
[OGP4] optabgp4,
[OGP5] optabgp5,
+ [OGP8] optabgp8,
[OGP10] optabgp10,
[OGP12] optabgp12,
};
--
⑨