> Hmm, I think VEC_EXTRACT and VEC_SET should be ECF_CONST.  Maybe the 
> GIMPLE ISEL
> comments do not match the implementation, but then that should be fixed?
> 
> /* Expand all ARRAY_REF(VIEW_CONVERT_EXPR) gimple assignments into calls 
> to
>    internal function based on vector type of selected expansion.
> 
>    For vec_set:
> 
>      VIEW_CONVERT_EXPR<int[4]>(u)[_1] = i_4(D);
>    =>
>      _7 = u;
>      _8 = .VEC_SET (_7, i_4(D), _1);
>      u = _8;
>   
>    For vec_extract:
> 
>       _3 = VIEW_CONVERT_EXPR<intD.1[4]>(vD.2208)[idx_2(D)];
>    =>
>       _4 = vD.2208;
>       _3 = .VEC_EXTRACT (_4, idx_2(D));  */
> 

I probably just forgot to set ECF_CONST in the recent isel patch
for vec_extract.

Regards
 Robin

Reply via email to