I don't think packing the enum into 16-bit is advantageous in any way, also it doesn't happen on MSVC, for which the macro is defined to be empty. The ud struct's size shouldn't change (at least it doesn't on Clang/GCC for 64-bit), only the offset of the mnemonic member would be aligned to 4 bytes.
Hit this on Arch, which uses Python 3 as default interpreter. The scripts should either call `/usr/bin/python2` instead of just `/usr/bin/python` or this script must be updated. The proposed change(s) in particular:
* `dict.iteritems()` has been replaced by `dict.items()`, which returns a lazy view instead. `itemslist()` resolves this.
udint.h needs to include types.h in order to get the __UD_STANDALONE__
macro. Otherwise it will think we're in non-standalone mode and fail to
compile in standalone mode.
On Ubuntu, /bin/sh is a symlink to /bin/dash, however difftest.sh uses
bash-specific constructs and fails when run using dash. Therefore, run
this script explicitly using bash.
(Issue #62) In __UD_STANDALONE__ mode, the onus is now on the client to
make sure that the right set of files are included prior to including
udis86.h in their environment. types.h no longer assumes the
availability of header files. I haven't tried this myself in a kernel
build environment, but I'm hoping someone will, and get back with
problems if any.