From 7095d6f2ebbc17713a5ce18c45455476b402d166 Mon Sep 17 00:00:00 2001 From: Kirill Yukhin Date: Tue, 22 Sep 2015 09:47:39 +0000 Subject: [PATCH] AVX-512. Fix patterns for kunpck insns. gcc/ * gcc/config/i386/i386.md (define_insn "kunpckhi"): Fix operand in pattern. (define_insn "kunpcksi"): Ditto. (define_insn "kunpckdi"): Ditto. From-SVN: r228005 --- gcc/ChangeLog | 7 +++++++ gcc/config/i386/i386.md | 10 +++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 62fcf3fd55d..13db1c93382 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2015-09-22 Kirill Yukhin + + * gcc/config/i386/i386.md (define_insn "kunpckhi"): Fix + operand in pattern. + (define_insn "kunpcksi"): Ditto. + (define_insn "kunpckdi"): Ditto. + 2015-09-22 Kirill Yukhin * gcc/config/i386/i386.md (define_split not/xor SWI1248x): Use diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index f7230f0593c..2f8cdb2c727 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -8603,7 +8603,7 @@ [(set (match_operand:HI 0 "register_operand" "=k") (ior:HI (ashift:HI - (match_operand:HI 1 "register_operand" "k") + (zero_extend:HI (match_operand:QI 1 "register_operand" "k")) (const_int 8)) (zero_extend:HI (match_operand:QI 2 "register_operand" "k"))))] "TARGET_AVX512F" @@ -8616,9 +8616,9 @@ [(set (match_operand:SI 0 "register_operand" "=k") (ior:SI (ashift:SI - (match_operand:SI 1 "register_operand" "k") + (zero_extend:SI (match_operand:HI 1 "register_operand" "k")) (const_int 16)) - (zero_extend:SI (subreg:HI (match_operand:SI 2 "register_operand" "k") 0))))] + (zero_extend:SI (match_operand:HI 2 "register_operand" "k"))))] "TARGET_AVX512BW" "kunpckwd\t{%2, %1, %0|%0, %1, %2}" [(set_attr "mode" "SI")]) @@ -8627,9 +8627,9 @@ [(set (match_operand:DI 0 "register_operand" "=k") (ior:DI (ashift:DI - (match_operand:DI 1 "register_operand" "k") + (zero_extend:DI (match_operand:SI 1 "register_operand" "k")) (const_int 32)) - (zero_extend:DI (subreg:SI (match_operand:DI 2 "register_operand" "k") 0))))] + (zero_extend:DI (match_operand:SI 2 "register_operand" "k"))))] "TARGET_AVX512BW" "kunpckdq\t{%2, %1, %0|%0, %1, %2}" [(set_attr "mode" "DI")]) -- 2.30.2