This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, i386, AVX-512] Update extract_even_odd w/ AVX-512BW insns.


On Tue, Oct 6, 2015 at 4:05 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Fri, Oct 2, 2015 at 7:37 AM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote:
>> On 01 Oct 14:11, Kirill Yukhin wrote:
>>> Bootstrapped. New tests pass (fail w/o the change). Regtesting is in progress.
>>>
>>> Is it ok for trunk?
>>>
>>> gcc/
>>>       * config/i386/i386.c (expand_vec_perm_even_odd_trunc): New.
>>>       (expand_vec_perm_even_odd_1): Handle V64QImode.
>>>       (ix86_expand_vec_perm_const_1): Try expansion with
>>>       expand_vec_perm_even_odd_trunc as well.
>>>       * config/i386/sse.md (VI124_AVX512F): Rename to ...
>>>       (define_mode_iterator VI124_AVX2_24_AVX512F_1_AVX512BW): This. Extend
>>>       to V54QI.
>>>       (define_mode_iterator VI248_AVX2_8_AVX512F): Rename to ...
>>>       (define_mode_iterator VI248_AVX2_8_AVX512F_24_AVX512BW): This. Extend
>>>       to V32HI and V16SI.
>>>       (define_insn "avx512bw_<code>v32hiv32qi2"): Unhide pattern name.
>>>       (define_expand "vec_pack_trunc_<mode>"): Update iterator name.
>>>       (define_expand "vec_unpacks_lo_<mode>"): Ditto.
>>>       (define_expand "vec_unpacks_hi_<mode>"): Ditto.
>>>       (define_expand "vec_unpacku_lo_<mode>"): Ditto.
>>>       (define_expand "vec_unpacku_hi_<mode>"): Ditto.
>>>
>>> gcc/testsuite/
>>>       * gcc.target/i386/vect-pack-trunc-1.c: New test.
>>>       * gcc.target/i386/vect-pack-trunc-2.c: Ditto.
>>>       * gcc.target/i386/vect-perm-even-1.c: Ditto.
>>>       * gcc.target/i386/vect-perm-odd-1.c: Ditto.
>>>       * gcc.target/i386/vect-unpack-1.c: Ditto.
>>>       * gcc.target/i386/vect-unpack-2.c: Ditto.
>> Checked into main trunk. I'll also check it into gcc-5-branch
>> if no objections from RMs next ww.
>>
>
> This caused:
>
> FAIL: gcc.target/i386/vect-perm-odd-1.c (test for excess errors)
>
> on gcc-5-branch.
>

vect-perm-odd-1.s: Assembler messages:
vect-perm-odd-1.s:233: Error: operand type mismatch for `vpor'
vect-perm-odd-1.s:240: Error: operand type mismatch for `vpor'

 vpor    %zmm1, %zmm2, %zmm1

It should be

 vporq    %zmm1, %zmm2, %zmm1

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]