c-c++-common/attr-simd-3.c fails to compile on arm-none-eabi targets due to -fcilkplus needing -pthread which is not available for those targets. This patch solves this issue by adding a condition to the cilkplus effective target that compiling with -fcilkplus succeeds and requires cilkplus as an effective target for attr-simd-3.c testcase.
ChangeLog entry is as follows: *** gcc/testsuite/ChangeLog *** 2015-12-08 Thomas Preud'homme <thomas.preudho...@arm.com> PR testsuite/68629 * lib/target-supports.exp (check_effective_target_cilkplus): Also check that compiling with -fcilkplus does not give an error. * c-c++-common/attr-simd-3.c: Require cilkplus effective target. diff --git a/gcc/testsuite/c-c++-common/attr-simd-3.c b/gcc/testsuite/c-c++-common/attr-simd-3.c index d61ba82..1970c67 100644 --- a/gcc/testsuite/c-c++-common/attr-simd-3.c +++ b/gcc/testsuite/c-c++-common/attr-simd-3.c @@ -1,4 +1,5 @@ /* { dg-do compile } */ +/* { dg-require-effective-target "cilkplus" } */ /* { dg-options "-fcilkplus" } */ /* { dg-prune-output "undeclared here \\(not in a function\\)|\[^\n\r\]* was not declared in this scope" } */ diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4e349e9..95b903c 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -1432,7 +1432,12 @@ proc check_effective_target_cilkplus { } { if { [istarget avr-*-*] } { return 0; } - return 1 + return [ check_no_compiler_messages_nocache fcilkplus_available executable { + #ifdef __cplusplus + extern "C" + #endif + int dummy; + } "-fcilkplus" ] } proc check_linker_plugin_available { } { Testsuite shows no regression when run with + an arm-none-eabi GCC cross-compiler targeting Cortex-M3 + a bootstrapped x86_64-linux-gnu GCC native compiler Is this ok for trunk? Best regards, Thomas