]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
x86: VCVTNEPS2BF16{X,Y} should permit broadcasting
authorJan Beulich <jbeulich@suse.com>
Tue, 21 Jan 2020 07:25:31 +0000 (08:25 +0100)
committerJan Beulich <jbeulich@suse.com>
Tue, 21 Jan 2020 16:39:01 +0000 (17:39 +0100)
commitccb86ffd237e903ef423d820a1d90c8edb0163c0
treea784adc9d3c9fa31bccf1e7c202ef1736e18024b
parent951445cf6db10e9a165436dd450e7840c6c7871d
x86: VCVTNEPS2BF16{X,Y} should permit broadcasting

Just like other VCVT*{X,Y} templates do, and to allow the programmer
flexibility (might be relevant in particular when heavily macro-izing
code), the two templates should also have Broadcast set, just like their
X/Y-suffix-less counterparts. This in turn requires them to also have
* Dword set on their memory operands, to cover the logic added to
  i386gen by 4a1b91eabbe7 ("x86: Expand Broadcast to 3 bits"),
* RegXMM/RegYMM set on their source operands, to satisfy broadcast
  sizing logic in gas itself.
Otherwise ATTSyntax templates wouldn't need such operand size attributes.

While extending the test cases, also add Intel syntax broadcast forms
without explicit size specifiers.
gas/ChangeLog
gas/testsuite/gas/i386/avx512_bf16_vl.d
gas/testsuite/gas/i386/avx512_bf16_vl.s
gas/testsuite/gas/i386/x86-64-avx512_bf16_vl.d
gas/testsuite/gas/i386/x86-64-avx512_bf16_vl.s
opcodes/ChangeLog
opcodes/i386-opc.tbl
opcodes/i386-tbl.h