This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH 1/3] Enable Intel WAITPKG instructions.
- From: "Jan Beulich" <jbeulich at suse dot com>
- To: <igor dot v dot tsimbalist at intel dot com>
- Cc: <hongjiu dot lu at intel dot com>,<binutils at sourceware dot org>
- Date: Sun, 15 Apr 2018 05:30:43 -0600
- Subject: Re: [PATCH 1/3] Enable Intel WAITPKG instructions.
- References: <D511F25789BA7F4EBA64C8A63891A002AFB067DE@IRSMSX102.ger.corp.intel.com>
>>> "Tsimbalist, Igor V" <igor.v.tsimbalist@intel.com> 04/09/18 3:41 PM >>>
>opcodes/
>* i386-dis.c (enum): Add PREFIX_MOD_0_0FAE_REG_6,
>PREFIX_MOD_1_0FAE_REG_6.
>* i386-dis-evex.h (prefix_table):
>New instructions (see prefixes above).
>* i386-gen.c (cpu_flag_init): Add WAITPKG.
>(cpu_flags): Likewise.
>* i386-opc.h (enum): Likewise.
>(i386_cpu_flags): Likewise.
>* i386-opc.tbl: Add umonitor, umwait, tpause.
After having read the instruction pages in full I disagree with the tpause and
umwait templates you've introduced: Arguably the instruction pages are slightly
ambiguous, but especially the fault conditions suggest that in 64-bit mode both
32- and 64-bit registers can be specified as input operands. Hence both insns
should have just a single template with no Cpu64 or CpuNo64, and with
Reg32|Reg64 as permitted operands.
Also, while H.J. may not like that, I think both should permit for l and q suffixes.
Jan