apple-altivec-2.C   [plain text]


/* APPLE LOCAL file */
/* { dg-do run { target powerpc*-*-* } } */
/* { dg-options "-maltivec -faltivec" } */

extern "C" void abort (void);

int main()
{
        vector float tiny = (vector float) ((vector unsigned int) (0x00800000, 0xBF800000, 0x3E800000, 0));
        unsigned int af[4] = {
		       (unsigned int)(unsigned int)0x00800000,
                       (unsigned int)(unsigned int)0xBF800000,
                       (unsigned int)(unsigned int)0x3E800000,
                       (unsigned int)(unsigned int)0};

	union u {
	  vector float vf;
	  unsigned int   ai[4];
	}vu;
	int i;

	vu.vf = tiny;

	for (i=0; i < 4; i++)
	   if (af[i] != vu.ai[i])
	     abort();

	return 0;
}