[PATCH 1/2, x86] Add palignr support for AVX2.
Evgeny Stupachenko
evstupac@gmail.com
Tue Sep 16 13:15:00 GMT 2014
PING 2
On Mon, Sep 8, 2014 at 2:03 PM, Evgeny Stupachenko <evstupac@gmail.com> wrote:
> PING
>
> On Wed, Aug 27, 2014 at 7:50 PM, Evgeny Stupachenko <evstupac@gmail.com> wrote:
>> The rotate insn appeared right after expand.
>> I've done it similar to define_insn_and_split "*avx_vperm_broadcast_<mode>".
>> I don't see any potential losses on splitting that after reload.
>>
>> On Tue, Aug 26, 2014 at 8:29 PM, Richard Henderson <rth@redhat.com> wrote:
>>> On 08/26/2014 05:59 AM, Evgeny Stupachenko wrote:
>>>> +(define_insn_and_split "avx2_rotate<mode>_perm"
>>>> + [(set (match_operand:V_256 0 "register_operand" "=&x")
>>>> + (vec_select:V_256
>>>> + (match_operand:V_256 1 "register_operand" "x")
>>>> + (match_parallel 2 "palignr_operand"
>>>> + [(match_operand 3 "const_int_operand" "n")])))]
>>>> + "TARGET_AVX2"
>>>> + "#"
>>>> + "&& reload_completed"
>>>> + [(const_int 0)]
>>>
>>> Why are you waiting until after reload to expand this? It's only the
>>> vec_select parallel that determines which direction the palignr should be done.
>>>
>>> This seems like something you could do during permutation expansion.
>>>
>>>
>>> r~
>>>
>>>
More information about the Gcc-patches
mailing list