diff options
author | Jan Beulich <jbeulich@novell.com> | 2015-04-23 16:41:21 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2015-04-23 16:41:21 +0200 |
commit | af508cb92f8fa7eed6c7f2bd3a49d42701db5900 (patch) | |
tree | 6cecc6c53fc0a92458972ce380e53922163f2d6d /gas/config/tc-i386.c | |
parent | 8900d71e388043726fece2695b9b0ffc9a0d7afb (diff) | |
download | fsf-binutils-gdb-af508cb92f8fa7eed6c7f2bd3a49d42701db5900.zip fsf-binutils-gdb-af508cb92f8fa7eed6c7f2bd3a49d42701db5900.tar.gz fsf-binutils-gdb-af508cb92f8fa7eed6c7f2bd3a49d42701db5900.tar.bz2 |
x86: don't require operand size specification for AVX512 broadcasts
Certain conversion operations as well as vfpclassp{d,s} are ambiguous
when the input operand is in memory. That ambiguity, however, doesn't
apply when using broadcasts (the destination operand size can be
induced from the broadcast specifier).
gas/
2015-04-23 Jan Beulich <jbeulich@suse.com>
* config/tc-i386.c (match_mem_size): Also allow no size
specification when broadcasting.
gas/testsuite/
2015-04-23 Jan Beulich <jbeulich@suse.com>
* gas/i386/avx512dq.s: Drop 'z' suffix from vfpclassp{d,s} in
some AT&T and all Intel cases.
* gas/i386/x86-64-avx512dq.s: Likewise.
* gas/i386/avx512dq_vl.s: Drop 'x' and 'y' suffixes from
vcvt{,u}qq2ps and vfpclassp{d,s} in some AT&T and all Intel
cases.
* gas/i386/x86-64-avx512dq_vl.s: Likewise.
* gas/i386/avx512f_vl.s: Drop 'x' and 'y' suffixes from
vcvt{,t}pd2{,u}dq and vcvtpd2ps in some AT&T and all Intel
cases.
* gas/i386/x86-64-avx512f_vl.s: Likewise.
Diffstat (limited to 'gas/config/tc-i386.c')
-rw-r--r-- | gas/config/tc-i386.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 1ab1252..82abaef 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1686,6 +1686,7 @@ match_mem_size (const insn_template *t, unsigned int j) { return (match_reg_size (t, j) && !((i.types[j].bitfield.unspecified + && !i.broadcast && !t->operand_types[j].bitfield.unspecified) || (i.types[j].bitfield.fword && !t->operand_types[j].bitfield.fword) |