This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH 11/14] Remove VEC_LSHIFT_EXPR and vec_shl_optab
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Alan Lawrence <alan dot lawrence at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 27 Oct 2014 21:13:37 +0100
- Subject: Re: [PATCH 11/14] Remove VEC_LSHIFT_EXPR and vec_shl_optab
- Authentication-results: sourceware.org; auth=none
- References: <541AC4D2 dot 9040901 at arm dot com> <541AD198 dot 4060504 at arm dot com> <CAFiYyc2GW-H9quewpPMzkAMV_-yXkN0Fj7RYrJHg1efoXfTAwg at mail dot gmail dot com> <544E9239 dot 5040303 at arm dot com>
On October 27, 2014 7:43:05 PM CET, Alan Lawrence <alan.lawrence@arm.com> wrote:
>Ok, I've now pushed the previously-approved first half of this, and am
>now
>looking at replacing VEC_RSHIFT_EXPR with a VEC_PERM_EXPR. However:
>does it seem
>reasonable to push this patch 11 (removing VEC_LSHIFT_EXPR and
>vec_shl_optab)
>out-of-sequence? The patch applies almost-cleanly, there is just a
>one-line
>conflict with a change to a comment from the previous patch (which I'm
>skipping)...
Sure - please go ahead!
Thanks,
Richard.
>Cheers, Alan
>
>Richard Biener wrote:
>> On Thu, Sep 18, 2014 at 2:35 PM, Alan Lawrence
><alan.lawrence@arm.com> wrote:
>>> The VEC_LSHIFT_EXPR tree code, and the corresponding vec_shl_optab,
>seem to
>>> have been added for completeness, providing a counterpart to
>VEC_RSHIFT_EXPR
>>> and vec_shr_optab. However, whereas VEC_RSHIFT_EXPRs are generated
>(only) by
>>> the vectorizer, VEC_LSHIFT_EXPR expressions are not generated at
>all, so
>>> there seems little point in maintaining it.
>>>
>>> Bootstrapped on x86_64-unknown-linux-gnu.
>>> aarch64.exp+vect.exp on aarch64-none-elf and aarch64_be-none-elf.
>>
>> Ah, there it is ;)
>>
>> Ok.
>>
>> Thanks,
>> Richard.
>>
>>> gcc/ChangeLog:
>>>
>>> * expr.c (expand_expr_real_2): Remove code handling
>VEC_LSHIFT_EXPR.
>>> * fold-const.c (const_binop): Likewise.
>>> * cfgexpand.c (expand_debug_expr): Likewise.
>>> * tree-inline.c (estimate_operator_cost, dump_generic_node,
>>> op_code_prio, op_symbol_code): Likewise.
>>> * tree-vect-generic.c (expand_vector_operations_1):
>Likewise.
>>> * optabs.c (optab_for_tree_code): Likewise.
>>> (expand_vec_shift_expr): Likewise, update comment.
>>> * tree.def: Delete VEC_LSHIFT_EXPR, remove comment.
>>> * optabs.h (expand_vec_shift_expr): Remove comment re.
>>> VEC_LSHIFT_EXPR.
>>> * optabs.def: Remove vec_shl_optab.
>>> * doc/md.texi: Remove references to vec_shr_m.
>>