Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/c-c++-common/gomp/pr60823-3.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 1830386684a0 |
children |
line wrap: on
line source
/* PR tree-optimization/60823 */ /* { dg-do compile } */ /* { dg-options "-O2 -fopenmp-simd -fno-strict-aliasing" } */ void bar (char *, double *); #if __SIZEOF_DOUBLE__ >= 4 struct S { char c[sizeof (double)]; }; void baz (struct S, struct S); union U { struct S s; double d; }; #pragma omp declare simd simdlen(4) notinbranch __attribute__((noinline)) int foo (double c1, double c2) { double *a = &c1; char *b = (char *) &c1 + 2; b[-2]++; b[1]--; *a++; c2++; bar ((char *) &c2 + 1, &c2); c2 *= 3.0; bar (b, a); baz (((union U) { .d = c1 }).s, ((union U) { .d = c2 }).s); baz (*(struct S *)&c1, *(struct S *)&c2); return c1 + c2 + ((struct S *)&c1)->c[1]; } /* { dg-warning "GCC does not currently support mixed size types for 'simd' functions" "" { target aarch64*-*-* } .-16 } */ #endif