diff options
author | Jan Beulich <jbeulich@novell.com> | 2018-11-06 11:44:31 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2018-11-06 11:44:31 +0100 |
commit | 58a211d2602df0a39779c84a344b1b4d12deb2d0 (patch) | |
tree | 03e169e34b28bf06b8152e3364fcc21fc74a22f4 /gas | |
parent | b50c9f31661be05bcd73fb1158e02f606e696948 (diff) | |
download | gdb-58a211d2602df0a39779c84a344b1b4d12deb2d0.zip gdb-58a211d2602df0a39779c84a344b1b4d12deb2d0.tar.gz gdb-58a211d2602df0a39779c84a344b1b4d12deb2d0.tar.bz2 |
x86: correctly handle KMOVD with VEX.W set outside of 64-bit mode
For the flavors having a GPR operand VEX.W is ignored outside of 64-bit
mode. The mnemonic should therefore not be KMOVQ.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/avx-wig.d | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/avx-wig.s | 2 |
3 files changed, 9 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index d1170e6..967f6bc 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,10 @@ 2018-11-06 Jan Beulich <jbeulich@suse.com> + * testsuite/gas/i386/avx-wig.s: Add kmovd cases. + * testsuite/gas/i386/avx-wig.d: Adjust expectations. + +2018-11-06 Jan Beulich <jbeulich@suse.com> + * testsuite/gas/i386/avx-wig.s, testsuite/gas/i386/x86-64-avx-wig.s: Add vpextrb, vpextrw, vpinsrb, and vpinsrw cases. diff --git a/gas/testsuite/gas/i386/avx-wig.d b/gas/testsuite/gas/i386/avx-wig.d index c724d09..7a8f947 100644 --- a/gas/testsuite/gas/i386/avx-wig.d +++ b/gas/testsuite/gas/i386/avx-wig.d @@ -22,6 +22,8 @@ Disassembly of section .text: +[a-f0-9]+: c4 e2 f8 f3 10 blsmsk \(%eax\),%eax +[a-f0-9]+: c4 e2 f8 f3 08 blsr \(%eax\),%eax +[a-f0-9]+: c4 e2 f8 f5 00 bzhi %eax,\(%eax\),%eax + +[a-f0-9]+: c4 e1 fb 92 c0 kmovd %eax,%k0 + +[a-f0-9]+: c4 e1 fb 93 c0 kmovd %k0,%eax +[a-f0-9]+: 8f e9 f8 12 c0 llwpcb %eax +[a-f0-9]+: 8f ea f8 12 00 00 00 00 00 lwpins \$0x0,\(%eax\),%eax +[a-f0-9]+: 8f ea f8 12 08 00 00 00 00 lwpval \$0x0,\(%eax\),%eax diff --git a/gas/testsuite/gas/i386/avx-wig.s b/gas/testsuite/gas/i386/avx-wig.s index 3f16ede..4d17ab4 100644 --- a/gas/testsuite/gas/i386/avx-wig.s +++ b/gas/testsuite/gas/i386/avx-wig.s @@ -17,6 +17,8 @@ _start: blsmsk (%eax), %eax blsr (%eax), %eax bzhi %eax, (%eax), %eax + kmovd %eax, %k0 + kmovd %k0, %eax llwpcb %eax lwpins $0, (%eax), %eax lwpval $0, (%eax), %eax |