Commit Graph

  • 3f278bc6cc Store register type in decoded instruction Alexis Engelke 2019-05-05 12:53:10 +02:00
  • 899278600b Refactor encoding of bit field Alexis Engelke 2019-05-05 12:26:20 +02:00
  • dff78c5a86 Support VSIB encoding Alexis Engelke 2019-04-27 11:16:09 +02:00
  • 1b474a04ac Add support for missing AVX instructions Alexis Engelke 2019-04-27 11:10:22 +02:00
  • a7d4c7be9d Minor clean-up Alexis Engelke 2019-04-27 11:09:57 +02:00
  • db1ec271df Simplify macros for immediate loading Alexis Engelke 2019-04-27 08:19:33 +02:00
  • 1ff0e60ddc Remove unused macros Alexis Engelke 2019-04-27 08:19:03 +02:00
  • 000349b360 Update README Alexis Engelke 2019-02-24 17:14:41 +01:00
  • f4644430b8 Update README Alexis Engelke 2019-02-24 17:13:49 +01:00
  • b105c48903 Update README Alexis Engelke 2019-02-24 17:12:35 +01:00
  • 14c5590413 Set size of rare memory operands to zero Alexis Engelke 2019-02-24 17:11:32 +01:00
  • 53ca6a2f23 Drop export of VEX.L prefix Alexis Engelke 2019-02-24 15:48:08 +01:00
  • 2dd1c99a81 Fix operand size of some SSE instructions Alexis Engelke 2019-02-24 15:46:09 +01:00
  • d5d0009070 Distinguish VZEROALL and VZEROUPPER Alexis Engelke 2019-02-24 15:45:37 +01:00
  • f7f0b322c7 Enforce mandatory L0/L1 in VEX prefix Alexis Engelke 2019-02-24 15:45:00 +01:00
  • 83988828ec Add some test cases for ModRM decoding Alexis Engelke 2019-02-24 10:10:02 +01:00
  • dfd70eef39 Fix bug with VMOV[DQ] operand width in 32-bit mode Alexis Engelke 2019-02-24 10:09:18 +01:00
  • 9cdd35f82f Decode VEX compact escapes more precisely Alexis Engelke 2019-02-24 10:07:18 +01:00
  • b2b29239b1 Disallow LOCK prefix for non-lockable instructions Alexis Engelke 2019-02-24 09:26:23 +01:00
  • 89d6b5a5a7 Refactor ModRM decoding Alexis Engelke 2019-02-24 09:25:19 +01:00
  • 1670a52047 Fix decoding of CVTTS[SD]2SI Alexis Engelke 2019-02-23 16:33:32 +01:00
  • 67ae0f8de8 Store 32-bit and 64-bit data in a single table Alexis Engelke 2019-02-23 16:32:39 +01:00
  • 256806e4b6 Use argparse Alexis Engelke 2019-02-23 15:25:34 +01:00
  • da683d850a Simplify storing of opcode to description mapping Alexis Engelke 2019-02-23 12:10:30 +01:00
  • 10e7a41972 Simplify handling of 32-bit and 64-bit encodings Alexis Engelke 2019-02-23 12:06:04 +01:00
  • 50ba38627b Store instruction description as namedtuple Alexis Engelke 2019-02-23 11:53:25 +01:00
  • 3fbd0ff5b5 Deduplicate tables in addition to instructions Alexis Engelke 2019-02-23 11:09:24 +01:00
  • ffa28357ce Support tables with multiple roots Alexis Engelke 2019-02-23 11:04:57 +01:00
  • 81224d1748 Fix some FPU instruction operand sizes Alexis Engelke 2019-02-10 16:17:33 +01:00
  • b328067e60 Minor update of instruction definitions Alexis Engelke 2019-02-10 10:49:22 +01:00
  • dd86caa7f9 Fix RIP-relative address decoding Alexis Engelke 2019-02-03 20:31:49 +01:00
  • e9878785da Replace FD_OP with FD_OT to avoid macro collision Alexis Engelke 2019-02-03 20:31:27 +01:00
  • 3abf29d63e Major rework of API and improved documentation Alexis Engelke 2019-01-23 20:03:40 +01:00
  • a045588999 Remove some likeliness information Alexis Engelke 2019-01-22 13:47:37 +01:00
  • 20f6e8c073 Fix handling of 66h prefix on jumps Alexis Engelke 2019-01-14 19:53:46 +01:00
  • a799024066 Specify address via parameter Alexis Engelke 2019-01-14 19:52:03 +01:00
  • 55f6fda583 Add some test cases for prefix ordering Alexis Engelke 2019-01-13 20:39:57 +01:00
  • 8fdfe53822 Output more available information in formatter Alexis Engelke 2019-01-13 20:38:15 +01:00
  • 2d1a9582b8 Handle prefix ordering correctly Alexis Engelke 2019-01-13 20:36:02 +01:00
  • 3ed7cb4a96 No longer expose PrefixSet in header Alexis Engelke 2019-01-13 18:42:47 +01:00
  • 9d3f34bcc6 No longer store sizes as bitfields Alexis Engelke 2019-01-13 16:19:41 +01:00
  • 5bdafbbcf0 Fix VEX decoding with mandatory VEX.W bit Alexis Engelke 2019-01-13 15:56:39 +01:00
  • 5532602000 Refactor prefix decoder Alexis Engelke 2019-01-13 15:54:47 +01:00
  • 4f4b2050c8 Allow prefix table at end of opcode Alexis Engelke 2019-01-13 15:53:48 +01:00
  • d1110fae6a Handle address size overrides Alexis Engelke 2019-01-13 14:27:04 +01:00
  • 80458e3288 Reduce space required by instruction width Alexis Engelke 2019-01-13 14:26:26 +01:00
  • c05b555bb0 Remove non-existing function from header Alexis Engelke 2019-01-13 13:18:24 +01:00
  • fbc37b9514 Annotate generated table with comments Alexis Engelke 2019-01-13 13:15:09 +01:00
  • ed53b4a54d Support 32 bit and 64 bit decoding with one binary Alexis Engelke 2019-01-13 11:58:59 +01:00
  • 83ea2f0769 Unify mnemonic table for 32 and 64 bit Alexis Engelke 2019-01-13 09:47:24 +01:00
  • ec7d27302e Add some small benchmarks Alexis Engelke 2019-01-13 08:55:11 +01:00
  • 6b34f55855 Port test runner to python Alexis Engelke 2019-01-13 08:47:23 +01:00
  • 05493d4206 Refactor test driver to measure decoding time Alexis Engelke 2019-01-12 21:00:38 +01:00
  • 617ebe5c8a Decode additional CET instructions Alexis Engelke 2018-12-31 13:25:15 +01:00
  • 8063cb7401 Decode additional segment prefixes Alexis Engelke 2018-12-31 13:19:28 +01:00
  • ca54ca7422 Add compile-time option for architecture mode Alexis Engelke 2018-12-25 17:06:47 +01:00
  • a3f77dbf49 Initial commit Alexis Engelke 2018-04-08 13:16:49 +00:00