From d27c357a5b83773054e85ff3ea5dbfe18b9dd3c0 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Thu, 18 Jun 2020 09:13:49 +0200 Subject: [PATCH 1/1] x86: also test alternative VMGEXIT encoding gas/ * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case. * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust expectations. opcodes/ * i386-dis.c (prefix_table): Revert the last vmgexit change. --- gas/ChangeLog | 6 ++++++ gas/testsuite/gas/i386/arch-13.d | 3 ++- gas/testsuite/gas/i386/arch-13.s | 1 + opcodes/ChangeLog | 4 ++++ opcodes/i386-dis.c | 2 ++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 5b2b1065b6..3e16a19e1c 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2020-06-18 Jan Beulich + + * testsuite/gas/i386/arch-13.s: Add alternative VMGEXIT case. + * testsuite/gas/i386/arch-13.d: Extend -march=. Adjust + expectations. + 2020-06-16 Lili Cui * config/tc-i386.c (cpu_arch): Correct noavx512_vp2intersect diff --git a/gas/testsuite/gas/i386/arch-13.d b/gas/testsuite/gas/i386/arch-13.d index cbfc4a2268..7a1278f863 100644 --- a/gas/testsuite/gas/i386/arch-13.d +++ b/gas/testsuite/gas/i386/arch-13.d @@ -1,4 +1,4 @@ -#as: -march=i686+smap+adx+rdseed+clzero+xsavec+xsaves+clflushopt+mwaitx+rdpid+clwb+wbnoinvd+rdpru+mcommit+sev_es +#as: -march=i686+smap+adx+rdseed+clzero+xsavec+xsaves+clflushopt+mwaitx+rdpid+clwb+wbnoinvd+rdpru+mcommit+svme+sev_es #objdump: -dw #name: i386 arch 13 @@ -29,5 +29,6 @@ Disassembly of section .text: [ ]*[a-f0-9]+:[ ]*f3 0f c7 f8[ ]*rdpid %eax [ ]*[a-f0-9]+:[ ]*0f 01 fd[ ]*rdpru[ ]* [ ]*[a-f0-9]+:[ ]*f3 0f 01 d9[ ]*vmgexit[ ]* +[ ]*[a-f0-9]+:[ ]*f2 0f 01 d9[ ]*vmgexit[ ]* [ ]*[a-f0-9]+:[ ]*f3 0f 09[ ]*wbnoinvd[ ]* #pass diff --git a/gas/testsuite/gas/i386/arch-13.s b/gas/testsuite/gas/i386/arch-13.s index 5372d8555b..3a80741440 100644 --- a/gas/testsuite/gas/i386/arch-13.s +++ b/gas/testsuite/gas/i386/arch-13.s @@ -40,6 +40,7 @@ # vmgexit instruction vmgexit + repne; vmmcall # vmgexit alternative encoding # wbnoinvd instruction wbnoinvd diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index f604f6e3f7..542b2c1086 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2020-06-18 H.J. Lu + + * i386-dis.c (prefix_table): Revert the last vmgexit change. + 2020-06-17 Lili Cui * i386-dis.c (prefix_table): Delete the incorrect vmgexit. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index 6ac1d7416a..441866d6c9 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -3576,6 +3576,8 @@ static const struct dis386 prefix_table[][4] = { { { "vmmcall", { Skip_MODRM }, 0 }, { "vmgexit", { Skip_MODRM }, 0 }, + { Bad_Opcode }, + { "vmgexit", { Skip_MODRM }, 0 }, }, /* PREFIX_0F01_REG_5_MOD_0 */ -- 2.34.1