Like MASK_LOAD_LANES/MASK_STORE_LANES, add MASK_LEN_ variant.
Bootstrap and Regression on X86 passed.
Ok for trunk?
gcc/ChangeLog:
* tree-ssa-alias.cc (ref_maybe_used_by_call_p_1): Add MASK_LEN_ variant.
(call_may_clobber_ref_p_1): Ditto.
* tree-ssa-loop-ivopts.cc (get_mem_type_for_internal_fn): Ditto.
(get_alias_ptr_type_for_ptr_address): Ditto.
case IFN_MASK_LEN_STORE:
return false;
case IFN_MASK_STORE_LANES:
+ case IFN_MASK_LEN_STORE_LANES:
goto process_args;
case IFN_MASK_LOAD:
case IFN_LEN_LOAD:
case IFN_MASK_LEN_LOAD:
case IFN_MASK_LOAD_LANES:
+ case IFN_MASK_LEN_LOAD_LANES:
{
ao_ref rhs_ref;
tree lhs = gimple_call_lhs (call);
case IFN_LEN_STORE:
case IFN_MASK_LEN_STORE:
case IFN_MASK_STORE_LANES:
+ case IFN_MASK_LEN_STORE_LANES:
{
tree rhs = gimple_call_arg (call,
internal_fn_stored_value_index (fn));
{
case IFN_MASK_LOAD:
case IFN_MASK_LOAD_LANES:
+ case IFN_MASK_LEN_LOAD_LANES:
case IFN_LEN_LOAD:
case IFN_MASK_LEN_LOAD:
if (op_p == gimple_call_arg_ptr (call, 0))
case IFN_MASK_STORE:
case IFN_MASK_STORE_LANES:
+ case IFN_MASK_LEN_STORE_LANES:
case IFN_LEN_STORE:
case IFN_MASK_LEN_STORE:
{
case IFN_MASK_STORE:
case IFN_MASK_LOAD_LANES:
case IFN_MASK_STORE_LANES:
+ case IFN_MASK_LEN_LOAD_LANES:
+ case IFN_MASK_LEN_STORE_LANES:
case IFN_LEN_LOAD:
case IFN_LEN_STORE:
case IFN_MASK_LEN_LOAD: