"Kewen.Lin via Gcc-patches" <[email protected]> writes:
> gcc/ChangeLog
>
> 2020-MM-DD Kewen Lin <[email protected]>
>
> * tree-ssa-loop-ivopts.c (get_mem_type_for_internal_fn): Handle
> IFN_LEN_LOAD and IFN_LEN_STORE.
> (get_alias_ptr_type_for_ptr_address): Likewise.
OK, thanks.
(Sorry, hadn't realised that this was still awaiting review.)
Richard
>
>
> ---
> gcc/tree-ssa-loop-ivopts.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c
> index 1d2697ae1ba..45b31640e75 100644
> --- a/gcc/tree-ssa-loop-ivopts.c
> +++ b/gcc/tree-ssa-loop-ivopts.c
> @@ -2436,12 +2436,14 @@ get_mem_type_for_internal_fn (gcall *call, tree *op_p)
> {
> case IFN_MASK_LOAD:
> case IFN_MASK_LOAD_LANES:
> + case IFN_LEN_LOAD:
> if (op_p == gimple_call_arg_ptr (call, 0))
> return TREE_TYPE (gimple_call_lhs (call));
> return NULL_TREE;
>
> case IFN_MASK_STORE:
> case IFN_MASK_STORE_LANES:
> + case IFN_LEN_STORE:
> if (op_p == gimple_call_arg_ptr (call, 0))
> return TREE_TYPE (gimple_call_arg (call, 3));
> return NULL_TREE;
> @@ -7415,6 +7417,8 @@ get_alias_ptr_type_for_ptr_address (iv_use *use)
> case IFN_MASK_STORE:
> case IFN_MASK_LOAD_LANES:
> case IFN_MASK_STORE_LANES:
> + case IFN_LEN_LOAD:
> + case IFN_LEN_STORE:
> /* The second argument contains the correct alias type. */
> gcc_assert (use->op_p = gimple_call_arg_ptr (call, 0));
> return TREE_TYPE (gimple_call_arg (call, 1));