#include <xmmintrin.h>
void f_Ym(__m64 m)
{
__asm__ volatile ("movq %0, %%mm1\n\t"
:"=Ym" (m));
}
void f_Yi(__m128 x, __m128 y, __m128 z)
{
__asm__ volatile ("vpaddq %0, %1, %2\n\t"
:"=Yi" (x)
:"Yi" (y),"Yi"(z));
}
void f_Yt(__m128 x, __m128 y, __m128 z)
{
__asm__ volatile ("vpaddq %0, %1, %2\n\t"
:"=Yt" (x)
:"Yt" (y),"Yt"(z));
}
void f_Y2(__m128 x, __m128 y, __m128 z)
{
__asm__ volatile ("vpaddq %0, %1, %2\n\t"
:"=Y2" (x)
:"Y2" (y),"Y2"(z));
}
void f_Yz(__m128 x, __m128 y, __m128 z)
{
__asm__ volatile ("vpaddq %0,%2,%1\n\t"
"vpaddq %1,%0,%2\n\t"
:"+Yi"(z),"=Yz" (x)
:"Yi" (y) );
}