https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63271
--- Comment #3 from Andrew Pinski ---
So the two functions are not the same (because __m128i is Vector of 2 long long
[at least now]).
Here is a better testcase:
#define vector __attribute__((vector_size(16)))
typedef vector char __m128i ;
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63271
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63271
Richard Biener rguenth at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63271
--- Comment #1 from Marc Glisse glisse at gcc dot gnu.org ---
The closest we currently handle (with -O3) is:
typedef int vec __attribute__((vector_size(4*sizeof(int;
void f(vec*r, int i){
(*r)[0]=3*i;
(*r)[1]=4*i;
(*r)[2]=7*i;