aboutsummaryrefslogtreecommitdiff
path: root/dynasm
diff options
context:
space:
mode:
authorMike Pall <mike>2018-02-27 23:22:40 +0100
committerMike Pall <mike>2018-02-27 23:22:40 +0100
commitfe651bf6e2b4d02b624be3c289378c08bab2fa9b (patch)
tree7529b04961112bd1fb91816bd8413d27c9066bab /dynasm
parent66c1614828d0041baece3ab2002763f2a2fd83b3 (diff)
downloadluajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.tar.gz
luajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.tar.bz2
luajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.zip
DynASM/x86: Add BMI1 and BMI2 instructions.
Thanks to Peter Cawley.
Diffstat (limited to 'dynasm')
-rw-r--r--dynasm/dasm_x86.lua19
1 files changed, 19 insertions, 0 deletions
diff --git a/dynasm/dasm_x86.lua b/dynasm/dasm_x86.lua
index 4c031e2c..c1d267a5 100644
--- a/dynasm/dasm_x86.lua
+++ b/dynasm/dasm_x86.lua
@@ -955,6 +955,7 @@ end
955-- "u" Use VEX encoding, vvvv unused. 955-- "u" Use VEX encoding, vvvv unused.
956-- "v"/"V" Use VEX encoding, vvvv from 1st/2nd operand (the operand is 956-- "v"/"V" Use VEX encoding, vvvv from 1st/2nd operand (the operand is
957-- removed from the list used by future characters). 957-- removed from the list used by future characters).
958-- "w" Use VEX encoding, vvvv from 3rd operand.
958-- "L" Force VEX.L 959-- "L" Force VEX.L
959-- 960--
960-- All of the following characters force a flush of the opcode: 961-- All of the following characters force a flush of the opcode:
@@ -1677,6 +1678,24 @@ local map_op = {
1677 -- Intel ADX 1678 -- Intel ADX
1678 adcx_2 = "rmqd:660F38F6rM", 1679 adcx_2 = "rmqd:660F38F6rM",
1679 adox_2 = "rmqd:F30F38F6rM", 1680 adox_2 = "rmqd:F30F38F6rM",
1681
1682 -- BMI1
1683 andn_3 = "rrmqd:0F38VF2rM",
1684 bextr_3 = "rmrqd:0F38wF7rM",
1685 blsi_2 = "rmqd:0F38vF33m",
1686 blsmsk_2 = "rmqd:0F38vF32m",
1687 blsr_2 = "rmqd:0F38vF31m",
1688 tzcnt_2 = "rmqdw:F30FBCrM",
1689
1690 -- BMI2
1691 bzhi_3 = "rmrqd:0F38wF5rM",
1692 mulx_3 = "rrmqd:F20F38VF6rM",
1693 pdep_3 = "rrmqd:F20F38VF5rM",
1694 pext_3 = "rrmqd:F30F38VF5rM",
1695 rorx_3 = "rmSqd:F20F3AuF0rMS",
1696 sarx_3 = "rmrqd:F30F38wF7rM",
1697 shrx_3 = "rmrqd:F20F38wF7rM",
1698 shlx_3 = "rmrqd:660F38wF7rM",
1680} 1699}
1681 1700
1682------------------------------------------------------------------------------ 1701------------------------------------------------------------------------------