x86: fold various non-memory operand AVX512VL templates
authorJan Beulich <jbeulich@novell.com>
Thu, 26 Apr 2018 06:55:02 +0000 (08:55 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 26 Apr 2018 06:55:02 +0000 (08:55 +0200)
commite2195274d4a0752459ea89ffbf50b2704fb0c0b4
tree5220d4b7d06406fe4278798d5d149fd08a253a78
parent7a69eac330adff3913a8698eac450cc7968ba8b0
x86: fold various non-memory operand AVX512VL templates

There's little point carrying up to three templates per insn flavor
when the sole difference is operand size and the dependency on AVX512VL
being enabled. Instead the need for AVX512VL can be derived from an
operand allowing for ZMMword as well as one or both or XMMword and
YMMword (irrespective of whether this is a register or memory operand).
Without further abstraction to deal with the different Disp8MemShift
values between the templates, only a limited set (mostly ones only
allowing for non-memory operands) can be folded, which is being done
here.

Also drop IgnoreSize wherever possible from anything that's being
touched anyway.
gas/ChangeLog
gas/config/tc-i386.c
opcodes/ChangeLog
opcodes/i386-opc.tbl
opcodes/i386-tbl.h