Alexis Engelke
e2480e9f85
instrs: Fix VMOVD_G2X with W1 in 32-bit mode
2023-04-24 22:21:00 +02:00
Alexis Engelke
0297f66de6
decode-test: Add VPEXTRB sil case
2023-04-23 08:57:08 +02:00
Alexis Engelke
3de8490e0c
decode-test: Add more partial test cases
2023-04-23 08:57:08 +02:00
Alexis Engelke
0b881e21dc
format: Fix 64-bit immediate on 32-bit platforms
2023-03-12 17:10:01 +01:00
Alexis Engelke
49f5b7b338
decode: Implement 16-bit ModRM decoding
2023-02-16 09:14:34 +01:00
Alexis Engelke
955f139025
instrs: Add AVX512-FP16 instructions
2023-01-15 13:47:11 +01:00
Alexis Engelke
b1f7a5fe19
decode: Add UD for EVEX.z without EVEX.aaa
...
This was tested on hardware, where EVEX.z without EVEX.aaa reliably
causes #UD. The SDM is not too precise about this.
2023-01-15 13:47:11 +01:00
Alexis Engelke
e04aff73dc
decode: Add AVX-512 support
2023-01-15 13:47:11 +01:00
Alexis Engelke
4a552feabf
decode-test: Increase coverage
2023-01-15 13:38:40 +01:00
Alexis Engelke
1aec30cd0f
instrs: Various small fixes
2022-12-26 22:01:11 +01:00
Alexis Engelke
6a0db935f5
instrs: Remove non-existent VEX-encoded VPSRAVQ
2022-12-26 18:42:15 +01:00
Alexis Engelke
4efe60ffa8
instrs: Fix VMWRITE operand order
2022-12-26 18:42:15 +01:00
Alexis Engelke
e70118a0d7
instrs: Fix VPSRA/VPSRL/VPSLL r/m operand size
2022-12-03 15:06:54 +01:00
Alexis Engelke
003a11ff12
instrs: Fix VMASKMOVDQU encoding
2022-12-03 14:58:06 +01:00
Alexis Engelke
7237391783
tests: Test AVX FMA
2022-11-30 10:01:41 +01:00
Alexis Engelke
0da009862c
instrs: Correct PMOV[SZ]X operand size
...
Now that we can encode half/fourth/eighth vector size, use it.
2022-11-30 09:41:12 +01:00
Alexis Engelke
e72e288def
tests: Add BMI1 test cases
2022-11-30 09:32:02 +01:00
Alexis Engelke
f565f09f9d
instrs: Clearly separate vector and GP opsize
...
Now, an instruction cannot refer to the GP operand size and the vector
operand size at the same time. This isn't necessary, all necessary
distinguishing could also be achieved manually using W0/W1/66 selectors.
2022-11-27 18:07:44 +01:00
Alexis Engelke
64f0ae245e
instrs: Add AVX-IFMI (VPMADD52[LH]UQ)
2022-11-27 13:39:37 +01:00
Alexis Engelke
e411e1327b
instrs: Add AVX-NE-CONVERT instructions
2022-11-27 13:39:37 +01:00
Alexis Engelke
7db75f64d0
instrs: Add VNNI-INT8 and VNNI tests
2022-11-27 13:39:37 +01:00
Alexis Engelke
fe6fe0ffc1
instrs: Add CMPCCXADD
2022-11-27 13:39:37 +01:00
Alexis Engelke
1e0a58a421
instrs: Add RAO-INT (AADD/AAND/AXOR/AOR)
2022-11-27 13:39:37 +01:00
Alexis Engelke
29a62bd1c9
instrs: Add WRMSRNS
2022-11-27 13:39:37 +01:00
Alexis Engelke
769218bbc9
instrs: Add RDMSRLIST/WRMSRLIST
2022-11-27 13:39:37 +01:00
Alexis Engelke
99bea8a81e
instrs: Fix VPERMQ and VPERMPD encoding
2022-11-27 13:39:37 +01:00
Alexis Engelke
d150ccf1a5
instrs: Fix VMI encoding operands and add tests
2022-11-27 13:39:37 +01:00
Alexis Engelke
180cc059ed
instrs: Fix INVEPT/INVVPID memory operand size
2022-11-25 14:34:57 +01:00
Alexis Engelke
1291603246
decode-test: Add cases for far jmp/ret
2022-11-25 12:38:52 +01:00
Alexis Engelke
19b9d82630
instrs: Add VAES instructions
2022-11-07 08:58:11 +01:00
Alexis Engelke
c15600a1d1
decode-test: Add two more MOVSX cases
2022-11-05 13:56:56 +01:00
Alexis Engelke
204580f480
tests: Move to root directory
2021-09-22 13:16:58 +02:00