diff options
author | Jan Beulich <jbeulich@novell.com> | 2018-03-08 08:58:55 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2018-03-08 08:58:55 +0100 |
commit | e771e7c9fb79487d7b192769bc2d91fbe4118ba6 (patch) | |
tree | addce0a609429ab9cdff970cae03b35ce2b4c4d9 /gas/ChangeLog | |
parent | ed438a93f18024da926eb4f56a0f96f597254a55 (diff) | |
download | gdb-e771e7c9fb79487d7b192769bc2d91fbe4118ba6.zip gdb-e771e7c9fb79487d7b192769bc2d91fbe4118ba6.tar.gz gdb-e771e7c9fb79487d7b192769bc2d91fbe4118ba6.tar.bz2 |
x86: fold several AVX512VL templates
The differences between some of the register and memory forms of the
same insn often don't really require the templates to be separate. For
example, Disp8MemShift is simply irrelevant to register forms. Fold
these as far as possible, and also fold register-only forms. Further
folding is possible, but needs other prereq work done first.
A note regarding EVEXDYN: This is intended to be used only when no other
properties of the template would make is_evex_encoding() return true. In
all "normal" cases I think it is preferable to omit this indicator, to
keep the table half way readable.
Diffstat (limited to 'gas/ChangeLog')
-rw-r--r-- | gas/ChangeLog | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index d0c4112..5a8efd4 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,13 @@ 2018-03-08 Jan Beulich <jbeulich@suse.com> + * config/tc-i386.c (is_evex_encoding): New. + (optimize_encoding, md_assemble, md_assemble, + VEX_check_operands, build_modrm_byte): Use is_evex_encoding. + (build_evex_prefix): Derive EVEX length field from actual + operands if the template allows multiple ones. + +2018-03-08 Jan Beulich <jbeulich@suse.com> + * config/tc-i386.c (build_modrm_byte): Make VexNDD handling cope with 3rd (immediate) operand. |