diff options
author | Jan Beulich <jbeulich@suse.com> | 2022-04-19 09:26:17 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2022-04-19 09:26:17 +0200 |
commit | 2aaee75f81a130011c96a0ab38475dba894114c3 (patch) | |
tree | aced5b0455f404a30127ca6f2db2a9e48e59543e /gas/testsuite | |
parent | bb80cf5b42aea267fe575f006a2a5f720825b77b (diff) | |
download | gdb-2aaee75f81a130011c96a0ab38475dba894114c3.zip gdb-2aaee75f81a130011c96a0ab38475dba894114c3.tar.gz gdb-2aaee75f81a130011c96a0ab38475dba894114c3.tar.bz2 |
x86: don't mistake ordinary immediates for SAE / rounding control
The way SAE templates are constructed was always puzzling me (including
the need for separate templates in the first place), and expressing the
extzra attribute via Imm8 actually has a bad effect: Ordinary immediates
would also be accepted, leading to an extra byte being added after the
instruction (i.e. generating bad code). Before re-working this (in
particular to accept proper Intel syntax there), fix the immediate issue
by adding the so far missing check.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/gas/i386/inval-avx512f.l | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/inval-avx512f.s | 4 |
2 files changed, 10 insertions, 3 deletions
diff --git a/gas/testsuite/gas/i386/inval-avx512f.l b/gas/testsuite/gas/i386/inval-avx512f.l index c47ac7d..d45ae25 100644 --- a/gas/testsuite/gas/i386/inval-avx512f.l +++ b/gas/testsuite/gas/i386/inval-avx512f.l @@ -218,6 +218,8 @@ .*:313: Error: .*unsupported broadcast for `vcvtneps2bf16' .*:316: Error: .*unsupported broadcast for `vcvtneps2bf16' .*:319: Error: .*unsupported broadcast for `vcvtneps2bf16' +.*:321: Error: .*vaddps.* +.*:322: Error: .*vcmpss.* GAS LISTING .* @@ -569,6 +571,7 @@ GAS LISTING .* [ ]*318 \?\?\?\? 62F27E38[ ]+vcvtneps2bf16 \(%eax\)\{1to8\}, %xmm1 [ ]*318[ ]+7208 [ ]*319[ ]+vcvtneps2bf16 \(%eax\)\{1to16\}, %xmm1 -[ ]*320[ ]+\?\?\?\? 8DB42600 \.p2align 4 -[ ]*320[ ]+0000008D -[ ]*320[ ]+7600 +[ ]*320[ ]* +[ ]*321[ ]+vaddps \$0xcc, %zmm0, %zmm0, %zmm0 +[ ]*322[ ]+vcmpss \$0, \$0xcc, %xmm0, %xmm0, %k0 +#pass diff --git a/gas/testsuite/gas/i386/inval-avx512f.s b/gas/testsuite/gas/i386/inval-avx512f.s index 7cca7ef..841992b 100644 --- a/gas/testsuite/gas/i386/inval-avx512f.s +++ b/gas/testsuite/gas/i386/inval-avx512f.s @@ -317,4 +317,8 @@ _start: vcvtneps2bf16 (%eax){1to4}, %xmm1 vcvtneps2bf16 (%eax){1to8}, %xmm1 vcvtneps2bf16 (%eax){1to16}, %xmm1 + + vaddps $0xcc, %zmm0, %zmm0, %zmm0 + vcmpss $0, $0xcc, %xmm0, %xmm0, %k0 + .p2align 4 |