blob: b9576d9700f08ff436b39f27112171ece9e6028a [file] [log] [blame]
/* Test that we generate xorps when the result is used in FP math. */
/* { dg-do compile } */
/* { dg-options "-O -msse2 -mno-sse3" } */
/* { dg-final { scan-assembler "xorps\[ \t\]" } } */
/* { dg-final { scan-assembler-not "pxor" } } */
#define vector __attribute__ ((vector_size (16)))
vector float i(vector float f, vector float h)
{
vector int g = { 0x80000000, 0, 0x80000000, 0 };
vector int f_int = (vector int) f;
return ((vector float) (f_int ^ g)) + h;
}