+2013-07-19 Georg-Johann Lay <avr@gjlay.de>
+
+ * lib/target-supports.exp (check_effective_target_cilkplus): New proc.
+ * gcc.dg/cilk-plus/cilk-plus.exp: only run if
+ check_effective_target_cilkplus.
+ * g++.dg/cilk-plus/cilk-plus.exp: Same.
+
2013-07-18 Pat Haugen <pthaugen@us.ibm.com>
* gcc.target/powerpc/pr57744.c: Fix typo.
load_lib g++-dg.exp
+if { ![check_effective_target_cilkplus] } {
+ return;
+}
+
dg-init
dg-runtest [lsort [glob -nocomplain $srcdir/c-c++-common/cilk-plus/AN/*.c]] " -fcilkplus" " "
dg-runtest [lsort [glob -nocomplain $srcdir/c-c++-common/cilk-plus/AN/*.c]] " -O0 -fcilkplus" " "
load_lib gcc-dg.exp
+if { ![check_effective_target_cilkplus] } {
+ return;
+}
+
dg-init
dg-runtest [lsort [glob -nocomplain $srcdir/c-c++-common/cilk-plus/AN/*.c]] " -fcilkplus" " "
dg-runtest [lsort [glob -nocomplain $srcdir/c-c++-common/cilk-plus/AN/*.c]] " -O0 -fcilkplus" " "
} "-static"]
}
+# Return 1 if cilk-plus is supported by the target, 0 otherwise.
+
+proc check_effective_target_cilkplus { } {
+ # Skip cilk-plus tests on int16 and size16 targets for now.
+ # The cilk-plus tests are not generic enough to cover these
+ # cases and would throw hundreds of FAILs.
+ if { [check_effective_target_int16]
+ || ![check_effective_target_size32plus] } {
+ return 0;
+ }
+
+ # Skip AVR, its RAM is too small and too many tests would fail.
+ if { [istarget avr-*-*] } {
+ return 0;
+ }
+ return 1
+}
+
proc check_linker_plugin_available { } {
return [check_no_compiler_messages_nocache linker_plugin executable {
int main() { return 0; }