Mark Charney ef83ba6cb1 improve EVEX & VEX handling of mask register specifier bits
* Outside of 64b mode, EVEX.R', EVEX.R, EVEX.X and EVEX.B are
    ignored.  (handled in ILD C code). If not set, those fields are
    zero.

  * MASK_B ignores REXB (EVEX.B and VEX.B). It is used in EVEX and VEX
    mask encodings. SDM(062) states EVEX.B is ignored but omits
    mention of VEX.B.

  * In 64b mode, VEX.vvvv[3] must be 1 for mask registers; EVEX.vvvv
    is not used for mask registers. In non-64b mode VEX.vvvv[3] is
    ignored for mask regs.

  * VEX.R must be 1 for mask registers.

Change-Id: I209a62c7e27778ca0981e342cb3143f367409abf
(cherry picked from commit c41fb5e8f6b77524b94ee2e5860dd6c91a45b628)
2017-07-06 09:06:26 -04:00
2017-06-12 14:41:25 -04:00
2017-06-29 22:17:54 -04:00
2017-06-12 14:41:25 -04:00
2016-12-16 16:09:38 -05:00
2016-12-23 11:38:57 -05:00
2017-06-12 14:41:22 -04:00

Intel X86 Encoder Decoder (Intel XED)

Doxygen API manual and source build manual:

https://intelxed.github.io

Bugs:

Intel internal employee users/developers:

http://mjc.intel.com

Everyone else:

https://github.com/intelxed/xed/issues/new

Abbreviated building instructions:

git clone https://github.com/intelxed/xed.git xed
git clone https://github.com/intelxed/mbuild.git mbuild
cd xed
./mfile.py

then get your libxed.a from the obj directory. Add " --shared" if you want a shared object build. Add " install" if you want the headers & libraries put in to a kit in the "kits" directory. Add "C:/python27/python " before "./mfile.py" if on windows.

How to build the examples:

There are two options:

  1. When building libxed you can also build the examples, from the main directory (above examples):

    ./mfile.py examples

and the compiled examples will be in obj/examples.

  1. Build a compiled "kit" and the build the examples from within the kit:

    ./mfile.py install cd kits cd cd examples ./mfile.py

See source build documentation for more information.

Binary size?

Concerned about large libraries or binaries? There are several options:

  1. Consider building with "--limit-strings"
  2. Strip the binaries
  3. Consider doing an encoder-only or decoder-only build if you only need one or the other.
Description
⚠️ ARCHIVED: Original GitHub repository no longer exists. Preserved as backup on 2026-01-31T05:30:08.753Z
Readme 1.5 MiB
Languages
Python 66.7%
C 33.3%