diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2014-09-23 11:12:23 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2014-09-23 11:14:27 -0700 |
commit | 9e5e52835bb205850fb0fa6f0393ecd64b02b22f (patch) | |
tree | ecb5c7769eef2148002068ad1e66d657d197edbe /gas/testsuite | |
parent | c4d9ceb6473237e614c66be97351109b9f260505 (diff) | |
download | gdb-9e5e52835bb205850fb0fa6f0393ecd64b02b22f.zip gdb-9e5e52835bb205850fb0fa6f0393ecd64b02b22f.tar.gz gdb-9e5e52835bb205850fb0fa6f0393ecd64b02b22f.tar.bz2 |
Disallow VEX/EVEX encoded instructions in 16-bit mode
gas/
PR gas/17421
* config/tc-i386.c (md_assemble): Disallow VEX/EVEX encoded
instructions in 16-bit mode.
gas/testsuite/
PR gas/17421
* gas/i386/i386.exp: Run inval-16.
* gas/i386/inval-16.l: New file.
* gas/i386/inval-16.s: Likewise.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/i386.exp | 1 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/inval-16.l | 20 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/inval-16.s | 9 |
4 files changed, 38 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index f8a85bc..e740c02 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2014-09-23 H.J. Lu <hongjiu.lu@intel.com> + + PR gas/17421 + * gas/i386/i386.exp: Run inval-16. + + * gas/i386/inval-16.l: New file. + * gas/i386/inval-16.s: Likewise. + 2014-09-22 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/cdr.d: New file. diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 7549a40..c55f3bf 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -42,6 +42,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_list_test "float" "-al -mmnemonic=att" run_list_test "general" "-al --listing-lhs-width=2 -mold-gcc" run_list_test "inval" "-al" + run_list_test "inval-16" "-al" run_list_test "segment" "-al" run_list_test "inval-seg" "-al" run_list_test "inval-reg" "-al" diff --git a/gas/testsuite/gas/i386/inval-16.l b/gas/testsuite/gas/i386/inval-16.l new file mode 100644 index 0000000..e1e6a43 --- /dev/null +++ b/gas/testsuite/gas/i386/inval-16.l @@ -0,0 +1,20 @@ +.*: Assembler messages: +.*:3: Error: .* +.*:4: Error: .* +.*:5: Error: .* +.*:6: Error: .* +.*:7: Error: .* +.*:8: Error: .* +.*:9: Error: .* +GAS LISTING .* + + +[ ]*1[ ]+\.text +[ ]*2[ ]+\.code16 +[ ]*3[ ]+vmovapd %xmm0,%xmm1 +[ ]*4[ ]+vaddsd %xmm4, %xmm5, %xmm6\{%k7\} +[ ]*5[ ]+vfrczpd %xmm7,%xmm7 +[ ]*6[ ]+andn \(%eax\), %ecx, %ecx +[ ]*7[ ]+bzhi %ecx, \(%eax\), %ecx +[ ]*8[ ]+llwpcb %ecx +[ ]*9[ ]+blcfill %ecx, %ecx diff --git a/gas/testsuite/gas/i386/inval-16.s b/gas/testsuite/gas/i386/inval-16.s new file mode 100644 index 0000000..fd0f971 --- /dev/null +++ b/gas/testsuite/gas/i386/inval-16.s @@ -0,0 +1,9 @@ + .text + .code16 + vmovapd %xmm0,%xmm1 + vaddsd %xmm4, %xmm5, %xmm6{%k7} + vfrczpd %xmm7,%xmm7 + andn (%eax), %ecx, %ecx + bzhi %ecx, (%eax), %ecx + llwpcb %ecx + blcfill %ecx, %ecx |