x86: Print {bad} on invalid broadcast in OP_E_memory
authorCui,Lili <lili.cui@intel.com>
Tue, 28 Sep 2021 03:13:33 +0000 (11:13 +0800)
committerCui,Lili <lili.cui@intel.com>
Tue, 28 Sep 2021 03:13:50 +0000 (11:13 +0800)
commit2c02075a8ec5223bc4cbcc9561eb91e28d46a9e5
treee256cbf3e6f20078a9ed58e2bac723e52b926382
parent901b98215e767bbffb1bfa869e02d7dc5ea786ec
x86: Print {bad} on invalid broadcast in OP_E_memory

Don't print broadcast for scalar_mode, and print {bad} for invalid broadcast.

gas/

PR binutils/28381
* testsuite/gas/i386/bad-bcast.s: Add a new testcase.
* testsuite/gas/i386/bad-bcast.d: Likewise.
* testsuite/gas/i386/bad-bcast-intel.d: New.

opcodes/

PR binutils/28381
* i386-dis.c (static struct): Add no_broadcast.
(OP_E_memory): Mark invalid broadcast with no_broadcast=1 and Print "{bad}"for it.
(intel_operand_size): mark invalid broadcast with no_broadcast=1.
(OP_XMM): Mark scalar_mode with no_broadcast=1.
gas/testsuite/gas/i386/bad-bcast-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/bad-bcast.d
gas/testsuite/gas/i386/bad-bcast.s
gas/testsuite/gas/i386/i386.exp
opcodes/i386-dis.c