|
 |
006bc1 |
From fe651bf6e2b4d02b624be3c289378c08bab2fa9b Mon Sep 17 00:00:00 2001
|
|
 |
006bc1 |
From: Mike Pall <mike>
|
|
 |
006bc1 |
Date: Tue, 27 Feb 2018 23:22:40 +0100
|
|
 |
006bc1 |
Subject: [PATCH 35/72] DynASM/x86: Add BMI1 and BMI2 instructions.
|
|
 |
006bc1 |
|
|
 |
006bc1 |
Thanks to Peter Cawley.
|
|
 |
006bc1 |
---
|
|
 |
006bc1 |
dynasm/dasm_x86.lua | 19 +++++++++++++++++++
|
|
 |
006bc1 |
1 file changed, 19 insertions(+)
|
|
 |
006bc1 |
|
|
 |
006bc1 |
diff --git a/dynasm/dasm_x86.lua b/dynasm/dasm_x86.lua
|
|
 |
006bc1 |
index 4c031e2..c1d267a 100644
|
|
 |
006bc1 |
--- a/dynasm/dasm_x86.lua
|
|
 |
006bc1 |
+++ b/dynasm/dasm_x86.lua
|
|
 |
006bc1 |
@@ -955,6 +955,7 @@ end
|
|
 |
006bc1 |
-- "u" Use VEX encoding, vvvv unused.
|
|
 |
006bc1 |
-- "v"/"V" Use VEX encoding, vvvv from 1st/2nd operand (the operand is
|
|
 |
006bc1 |
-- removed from the list used by future characters).
|
|
 |
006bc1 |
+-- "w" Use VEX encoding, vvvv from 3rd operand.
|
|
 |
006bc1 |
-- "L" Force VEX.L
|
|
 |
006bc1 |
--
|
|
 |
006bc1 |
-- All of the following characters force a flush of the opcode:
|
|
 |
006bc1 |
@@ -1677,6 +1678,24 @@ local map_op = {
|
|
 |
006bc1 |
-- Intel ADX
|
|
 |
006bc1 |
adcx_2 = "rmqd:660F38F6rM",
|
|
 |
006bc1 |
adox_2 = "rmqd:F30F38F6rM",
|
|
 |
006bc1 |
+
|
|
 |
006bc1 |
+ -- BMI1
|
|
 |
006bc1 |
+ andn_3 = "rrmqd:0F38VF2rM",
|
|
 |
006bc1 |
+ bextr_3 = "rmrqd:0F38wF7rM",
|
|
 |
006bc1 |
+ blsi_2 = "rmqd:0F38vF33m",
|
|
 |
006bc1 |
+ blsmsk_2 = "rmqd:0F38vF32m",
|
|
 |
006bc1 |
+ blsr_2 = "rmqd:0F38vF31m",
|
|
 |
006bc1 |
+ tzcnt_2 = "rmqdw:F30FBCrM",
|
|
 |
006bc1 |
+
|
|
 |
006bc1 |
+ -- BMI2
|
|
 |
006bc1 |
+ bzhi_3 = "rmrqd:0F38wF5rM",
|
|
 |
006bc1 |
+ mulx_3 = "rrmqd:F20F38VF6rM",
|
|
 |
006bc1 |
+ pdep_3 = "rrmqd:F20F38VF5rM",
|
|
 |
006bc1 |
+ pext_3 = "rrmqd:F30F38VF5rM",
|
|
 |
006bc1 |
+ rorx_3 = "rmSqd:F20F3AuF0rMS",
|
|
 |
006bc1 |
+ sarx_3 = "rmrqd:F30F38wF7rM",
|
|
 |
006bc1 |
+ shrx_3 = "rmrqd:F20F38wF7rM",
|
|
 |
006bc1 |
+ shlx_3 = "rmrqd:660F38wF7rM",
|
|
 |
006bc1 |
}
|
|
 |
006bc1 |
|
|
 |
006bc1 |
------------------------------------------------------------------------------
|
|
 |
006bc1 |
--
|
|
 |
006bc1 |
2.20.1
|
|
 |
006bc1 |
|