Hello,
On 22 Sep 18:14, Kirill Yukhin wrote:
> Hello,
> Patch in the bottom fixes iterator for k<logic> insns
> since QI mode is only available for AVX-512DQ.
> 
> It also adds support for kshift[rl][bwdq]. This patterns
> will be used for mask load/store autogeneration on which
> Ilya Enkovich is working on.
> 
> gcc/
>       * config/i386/i386.md (define_code_attr mshift): New.
>       (define_mode_iterator SWI1248_AVX512BW): Rename ...
>       (SWI1248_AVX512BW): ... to this. Make QI enabled for TARGET_AVX512DQ
>       only.
>       (define_insn "*k<logic><mode>"): Use new iterator name.
>       (define_insn "*<mshift><mode>3"): New.
> 
> Bootstrapped and regtest in progress
> 
> Is it ok for trunk (if regtest pass)?
Emit pattern was wrong (caught by Spec2k6 autogeneration).

Comitted to main trunk as obvious.

gcc/
        * config/i386/i386.md (define_insn "*<mshift><mode>3"): Fix
        insn emit.

--
Thanks, K

commit 254e3b944ac96441544d36c438e92a9a09b963b1
Author: Kirill Yukhin <kirill.yuk...@intel.com>
Date:   Wed Sep 23 16:24:50 2015 +0300

    AVX-512. Fix emit in '*<mshift><mode>3' pattern.

diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index c0911d4..ba5ab32 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -9366,7 +9366,7 @@
        (any_lshift:SWI1248_AVX512BWDQ (match_operand:SWI1248_AVX512BWDQ 1 
"register_operand" "k")
                                       (match_operand:QI 2 "immediate_operand" 
"i")))]
   "TARGET_AVX512F"
-  "k<mshift><mskmodesuffix> %2, %1, %0|%0, %1, %2"
+  "k<mshift><mskmodesuffix>\t{%2, %1, %0|%0, %1, %2}"
   [(set_attr "type" "msklog")
    (set_attr "prefix" "vex")])
 

Reply via email to