1 /* { dg-options "-fopenmp -O2" } */
2 /* { dg-additional-options "-fopenmp-target-simd-clone=any -fdump-ipa-simdclone-details" } */
4 /* Test that simd clones are not generated for functions with
5 "declare target" but that write memory in the body. */
9 #pragma omp declare target
10 __attribute__ ((__noinline__
)) int addit(int a
, int b
)
15 #pragma omp end declare target
17 void callit (int *a
, int *b
, int *c
)
21 for (i
= 0; i
< 16; i
++)
22 c
[i
] = addit (a
[i
], b
[i
]);
25 /* { dg-final { scan-ipa-dump "body includes memory write" "simdclone" { target x86_64-*-* } } } */
26 /* { dg-final { scan-ipa-dump-not "Generated .* clone" "simdclone" { target x86_64-*-* } } } */