This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH 1/9] x86: refine TPAUSE and UMWAIT
On Wed, Mar 4, 2020 at 1:37 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> Allowing 64-bit registers is misleading here: Elsewhere these get allowed
> when there's no difference between either variant, because of 32-bit
> destination registers having their upper halves zeroed in 64-bit mode.
> Here, however, they're source registers, and hence specifying 64-bit
> registers would lead to the ambiguity of whether the upper 32 bits
> actually matter.
>
> Additionally, for proper code generation in 16-bit mode, IgnoreSize is
> needed on both.
Are there testcases to show IgnoreSize is needed on them?
> And finally, just like for e.g. MONITOR/MWAIT, add variants with all
> input registers explicitly specified.
>
> gas/
> 2020-03-XX Jan Beulich <jbeulich@suse.com>
>
> * config/tc-i386.c (md_assemble): Also exclude tpause and umwait
> from having their operands swapped.
> * testsuite/gas/i386/waitpkg.s,
> testsuite/gas/i386/x86-64-waitpkg.s: Add tpause and umwait
> 3-operand cases.
> * testsuite/gas/i386/waitpkg.d,
> testsuite/gas/i386/waitpkg-intel.d,
> testsuite/gas/i386/x86-64-waitpkg.d,
> testsuite/gas/i386/x86-64-waitpkg-intel.d: Adjust expectations.
>
> opcodes/
> 2020-03-XX Jan Beulich <jbeulich@suse.com>
>
> * i386-opc.tbl (tpause, umwait): Add IgnoreSize. Add 3-operand
> template.
> * i386-tbl.h: Re-generate.
--
H.J.