x86/Intel: allow MASM representation of embedded rounding / SAE
authorJan Beulich <jbeulich@suse.com>
Fri, 27 May 2022 06:48:58 +0000 (08:48 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 27 May 2022 06:48:58 +0000 (08:48 +0200)
commit7063667edb6a663163c2adba754b5abbbe67dc46
tree915694f647592bf8fe74d4b68b781efaf88f30dd
parentcf665fee1d6c9efa2e59af496cd132393732306d
x86/Intel: allow MASM representation of embedded rounding / SAE

MASM doesn't support the separate operand form; the modifier belongs
after the instruction instead. Accept this form alongside the original
(now legacy) one. Short of having access to a MASM version to actually
check in how far "after the instruction" is a precise statement in their
documentation, allow both that and the SDM mandated form where the
modifier is on the last register operand (with a possible immediate
operand following).

Sadly the split out function, at least for the time being, needs to cast
away constness at some point, as the two callers disagree in this
regard.

Adjust some, but not all of the testcases.
12 files changed:
gas/config/tc-i386-intel.c
gas/config/tc-i386.c
gas/testsuite/gas/i386/avx512_fp16.s
gas/testsuite/gas/i386/avx512dq.s
gas/testsuite/gas/i386/avx512er.s
gas/testsuite/gas/i386/avx512f.s
gas/testsuite/gas/i386/inval-avx512f.l
gas/testsuite/gas/i386/inval-avx512f.s
gas/testsuite/gas/i386/x86-64-avx512_fp16.s
gas/testsuite/gas/i386/x86-64-avx512dq.s
gas/testsuite/gas/i386/x86-64-avx512er.s
gas/testsuite/gas/i386/x86-64-avx512f.s