x86: Extract extended states from instruction template
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 10 Jul 2020 15:43:37 +0000 (08:43 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 10 Jul 2020 15:43:47 +0000 (08:43 -0700)
commit921eafeada862b1e019650d17d7c5e0d35bfaa5e
tree5e0805deb7c33fab9732e201432642723546b358
parentd249bf867073b98eb559ac4f9829a5ee5d29f2bf
x86: Extract extended states from instruction template

Extract extended states from operand types in instruction template.  Set
xstate_zmm for master register move.

* config/tc-i386.c (_i386_insn): Remove has_regmmx, has_regxmm,
has_regymm, has_regzmm and has_regtmm.  Add xstate.
(md_assemble): Set i.xstate from operand types in instruction
template.
(build_modrm_byte): Updated.
(output_insn): Check i.xstate.
* testsuite/gas/i386/i386.exp: Run property-6 and
x86-64-property-6.
* testsuite/gas/i386/property-6.d: New file.
* testsuite/gas/i386/property-6.s: Updated.
* testsuite/gas/i386/x86-64-property-6.d: Likewise.
gas/ChangeLog
gas/config/tc-i386.c
gas/testsuite/gas/i386/i386.exp
gas/testsuite/gas/i386/property-6.d [new file with mode: 0644]
gas/testsuite/gas/i386/property-6.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-property-6.d [new file with mode: 0644]