On some targets (ia32 for an example), sizeof long double
is not a power of 2, this means you can't create a vector
of it. So let's disable this testcase for non power of 2
sizeof long double. This needs to be done via a preprocessor
macro as vector_size would cause an error otherwise.
Committed as obvious after a test on x86_64 with -m32.
gcc/testsuite/ChangeLog:
* c-c++-common/torture/pr124086-1.c: Only enable
for power of 2 long double.
/* { dg-options "" } */
/* PR tree-optimization/124086 */
+/* Disable for non power of 2 long double as a vector of that is not supported. */
+#if (__SIZEOF_LONG_DOUBLE__ & -__SIZEOF_LONG_DOUBLE__) == __SIZEOF_LONG_DOUBLE__
typedef __attribute__((__vector_size__(2*sizeof(long double)))) int V;
int j;
_Complex long double t = *(_Complex long double *)&v;
j = __real__ t;
}
+
+#endif