> Currently, we have to use intrinsics to support such shift. Isn't syntax of
> vector
> shift intuitive enough to be supported natively? Someone may argue it breaks
> the
> C language. But vector is a GCC extension anyway. Support for vector
> add/sub/etc
> already break C syntax. Any thought? Sorry if this issue had been raised in
> past.
I see no reason why this could not be added provided that it is 1)
adequately documented 2) implemented when not supported in hardware too
(tree-ssa-vect-generic.c) 3) possibly implemented for both C and C++.
Regarding 2, note that this
> V4H tst(V4H a, V4H b){
> return a << b;
> }
would have to be emulated on all x86 targets prior to SSE5.
Another much desired feature would be OpenCL C-style masking and swizzling.
Paolo