This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/70525] New: generating 'vpandn' without the mode suffix, gnu as fails to assemble (-mavx512bw)
- From: "zsojka at seznam dot cz" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 04 Apr 2016 10:50:00 +0000
- Subject: [Bug target/70525] New: generating 'vpandn' without the mode suffix, gnu as fails to assemble (-mavx512bw)
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70525
Bug ID: 70525
Summary: generating 'vpandn' without the mode suffix, gnu as
fails to assemble (-mavx512bw)
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Keywords: assemble-failure
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: zsojka at seznam dot cz
Target Milestone: ---
Target: x86_64-pc-linux-gnu
Created attachment 38174
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38174&action=edit
reduced testcase
Output:
$ gcc -O -mavx512bw testcase.c
/tmp/ccuJjUxJ.s: Assembler messages:
/tmp/ccuJjUxJ.s:8: Error: operand type mismatch for `vpandn'
@@ -5,7 +5,7 @@
foo:
.LFB0:
.cfi_startproc
- vpandn %zmm0, %zmm1, %zmm0
+ vpandnq %zmm0, %zmm1, %zmm0
ret
.cfi_endproc
.LFE0:
Fixes the assembly (similar fix applies for the intel syntax). (vpandnd can be
used as well)
Both the "vpandnq" and "vpandnd" instructions should be available in the
"foundation" instruction set with -mavx512f, but -mavx512bw is needed to force
generation of the instruction. I will create a missed-optimization for this,
unless I am wrong.