diff options
| author | Mike Pall <mike> | 2018-02-27 23:22:40 +0100 |
|---|---|---|
| committer | Mike Pall <mike> | 2018-02-27 23:22:40 +0100 |
| commit | fe651bf6e2b4d02b624be3c289378c08bab2fa9b (patch) | |
| tree | 7529b04961112bd1fb91816bd8413d27c9066bab | |
| parent | 66c1614828d0041baece3ab2002763f2a2fd83b3 (diff) | |
| download | luajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.tar.gz luajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.tar.bz2 luajit-fe651bf6e2b4d02b624be3c289378c08bab2fa9b.zip | |
DynASM/x86: Add BMI1 and BMI2 instructions.
Thanks to Peter Cawley.
| -rw-r--r-- | dynasm/dasm_x86.lua | 19 |
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 | ------------------------------------------------------------------------------ |
