This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH, i386, AVX-512] Fix assembler for broadcast pattern.
- From: Kirill Yukhin <kirill dot yukhin at gmail dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: Uros Bizjak <ubizjak at gmail dot com>
- Date: Tue, 8 Dec 2015 17:10:14 +0300
- Subject: [PATCH, i386, AVX-512] Fix assembler for broadcast pattern.
- Authentication-results: sourceware.org; auth=none
Hello,
Patch in the bottom fixes assembler strings for broadcast patterns.
Fixes spec2k6/464.h264ref compilation fail with -march=skylake-avx512.
Bootsatrapped, regtested & committed to main trunk.
gcc/
* config/i386/sse.md (define_insn "<avx512>_vec_dup<mode>_1"): Fix
assembler to make source always 128bit.
--
Thanks, K
commit 87b314a103f47f21b342d1c0c751088f2562a481
Author: Kirill Yukhin <kirill.yukhin@intel.com>
Date: Tue Dec 8 15:27:44 2015 +0300
AVX-512. Fix assembler section for broadcast pattern.
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index eb49c41..6740edf 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -17223,8 +17223,9 @@
(match_operand:VI_AVX512BW 1 "nonimmediate_operand" "v,m")
(parallel [(const_int 0)]))))]
"TARGET_AVX512F"
- "vpbroadcast<ssemodesuffix>\t{%1, %0|%0, %<iptr>1}
- vpbroadcast<ssemodesuffix>\t{%x1, %0|%0, %x1}"
+ "@
+ vpbroadcast<ssemodesuffix>\t{%x1, %0|%0, %x1}
+ vpbroadcast<ssemodesuffix>\t{%x1, %0|%0, %<iptr>1}"
[(set_attr "type" "ssemov")
(set_attr "prefix" "evex")
(set_attr "mode" "<sseinsnmode>")])