Now that we require use of the {evex} pseudo-prefix, we can also use
the q-suffixed encoding of VPCMPESTRI, which is available as of 2.29
just like {evex} is.Signed-off-by: Jan Beulich <[email protected]> --- a/tools/tests/x86_emulator/test_x86_emulator.c +++ b/tools/tests/x86_emulator/test_x86_emulator.c @@ -3322,22 +3322,15 @@ int main(int argc, char **argv) { decl_insn(vpcmpestri); -#ifdef __x86_64__ - /* - * gas up to at least 2.27 doesn't honor explict "rex.w" for - * VEX/EVEX encoded instructions, and also doesn't provide any - * other means to control VEX.W. - */ asm volatile ( "movq %0, %%xmm2\n" +#ifdef __x86_64__ put_insn(vpcmpestri, - ".byte 0xC4, 0xE3, 0xF9, 0x61, 0x16, 0x7A") - :: "m" (res[0]) ); + "vpcmpestriq $0b01111010, (%1), %%xmm2") #else - asm volatile ( "movq %0, %%xmm2\n" put_insn(vpcmpestri, "vpcmpestri $0b01111010, (%1), %%xmm2") - :: "m" (res[0]), "S" (NULL) ); #endif + :: "m" (res[0]), "S" (NULL) ); set_insn(vpcmpestri); #ifdef __x86_64__ _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
