How to force GCC to pass 128bits/256bits struct as function param in xmm/ymm register? ie. if my struct is 256bits wide (UnsignedLongLongStruct below)
(I know if I use intrinsics to make a packed integer, gcc is smart enough to put it into %ymm register, but can I do it with struct ?)
typedef struct {
unsigned long long ull1;
unsigned long long ull2;
unsigned long long ull3;
unsigned long long ull4;
} UnsignedLongLongStruct;
void func1( UnsignedLongLongStruct unsignedLongLongStruct ) {
....
}