https://sourceware.org/bugzilla/show_bug.cgi?id=24352

            Bug ID: 24352
           Summary: Incorrect EVEX optimization
           Product: binutils
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: hjl.tools at gmail dot com
  Target Milestone: ---
            Target: i386

[hjl@gnu-gram-1 testsuite]$ cat x.s
        vandnpd %zmm1, %zmm1, %zmm16
        vandnpd %zmm17, %zmm17, %zmm1
[hjl@gnu-gram-1 testsuite]$ as -O2 -o x.o x.s
[hjl@gnu-gram-1 testsuite]$  objdump -dw x.o

x.o:     file format elf64-x86-64


Disassembly of section .text:

0000000000000000 <.text>:
   0:   62 e1 f5 48 55 c1       vandnpd %zmm1,%zmm1,%zmm16
   6:   62 b1 f5 40 55 c9       vandnpd %zmm17,%zmm17,%zmm1
[hjl@gnu-gram-1 testsuite]$ 

They should be encoded with 128-bit EVEX.

[hjl@gnu-gram-1 testsuite]$ cat > y.s
vandnpd %ymm1, %ymm1, %ymm15
[hjl@gnu-gram-1 testsuite]$ as -O2 -march=+noavx -o y.o y.s
[hjl@gnu-gram-1 testsuite]$ objdump -dw y.o

y.o:     file format elf64-x86-64


Disassembly of section .text:

0000000000000000 <.text>:
   0:   c5 71 55 f9             vandnpd %xmm1,%xmm1,%xmm15
[hjl@gnu-gram-1 testsuite]$ 

AVX shouldn't be used when AVX isn't available.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to