This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH 00/13] x86: further insn template compaction
- From: Jan Beulich <jbeulich at suse dot com>
- To: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Cc: "H.J. Lu" <hjl dot tools at gmail dot com>
- Date: Wed, 30 Oct 2019 09:20:07 +0100
- Subject: [PATCH 00/13] x86: further insn template compaction
There continues to be quite a bit of unnecessary waste of space,
which is especially noticeable with operand types, as there are
(currently) 5 instances of it per insn template. By the end of
this series, less than 32 bits will remain in use there,
shrinking the overall table size noticeably while still providing
some headroom until it would have to grow again with future
additions.
01: x86: re-arrange process_operands()
02: x86: drop ShortForm attribute
03: x86: introduce operand type "class"
04: x86: convert SReg from bitfield to enumerator
05: x86: convert Control/Debug/Test from bitfield to enumerator
06: x86: convert RegSIMD and RegMMX from bitfield to enumerator
07: x86: convert RegMask and RegBND from bitfield to enumerator
08: x86: introduce operand type "instance"
09: x86: eliminate ImmExt abuse
10: x86: fold EsSeg into IsString
11: x86: make AnySize an insn attribute
12: x86: make JumpAbsolute an insn attribute
13: x86: fold individual Jump* attributes into a single Jump one
Note that some of this depends, at least mechanically due to the
generated files, but perhaps in a few cases also contextually or
even logically on some of the not yet applied parts of
https://sourceware.org/ml/binutils/2019-10/msg00197.html.
Jan