aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2016-09-13 15:30:13 +0200
committerMartin Liska <marxin@gcc.gnu.org>2016-09-13 13:30:13 +0000
commitc8798f2ce103aaf7f1c903a8babbd815d7b9a9fc (patch)
treee5688eff6c3835b586e477282cbb879106f6b99d
parent9453eee910731ae8d0deded6952b6d085652bbfe (diff)
downloadgcc-c8798f2ce103aaf7f1c903a8babbd815d7b9a9fc.zip
gcc-c8798f2ce103aaf7f1c903a8babbd815d7b9a9fc.tar.gz
gcc-c8798f2ce103aaf7f1c903a8babbd815d7b9a9fc.tar.bz2
Add new effective target: profile_update_atomic
* g++.dg/gcov/gcov-threads-1.C: Use profile_update_atomic effective target. * gcc.dg/tree-prof/val-profiler-threads-1.c: Likewise. * lib/target-supports.exp: Define the new target. From-SVN: r240111
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/g++.dg/gcov/gcov-threads-1.C1
-rw-r--r--gcc/testsuite/gcc.dg/tree-prof/val-profiler-threads-1.c2
-rw-r--r--gcc/testsuite/lib/target-supports.exp7
4 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 9e59b03..d9d6825 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2016-09-13 Martin Liska <mliska@suse.cz>
+
+ * g++.dg/gcov/gcov-threads-1.C: Use profile_update_atomic
+ effective target.
+ * gcc.dg/tree-prof/val-profiler-threads-1.c: Likewise.
+ * lib/target-supports.exp: Define the new target.
+
2016-09-12 Andrew Pinski <apinski@cavium.com>
* gcc.target/aarch64/thunderxloadpair.c: New testcase.
diff --git a/gcc/testsuite/g++.dg/gcov/gcov-threads-1.C b/gcc/testsuite/g++.dg/gcov/gcov-threads-1.C
index a4a6f0a..cc9266a 100644
--- a/gcc/testsuite/g++.dg/gcov/gcov-threads-1.C
+++ b/gcc/testsuite/g++.dg/gcov/gcov-threads-1.C
@@ -1,5 +1,6 @@
/* { dg-options "-fprofile-arcs -ftest-coverage -pthread -fprofile-update=atomic" } */
/* { dg-do run { target native } } */
+/* { dg-require-effective-target profile_update_atomic } */
#include <stdint.h>
#include <pthread.h>
diff --git a/gcc/testsuite/gcc.dg/tree-prof/val-profiler-threads-1.c b/gcc/testsuite/gcc.dg/tree-prof/val-profiler-threads-1.c
index e9b04a0..95d6ee3 100644
--- a/gcc/testsuite/gcc.dg/tree-prof/val-profiler-threads-1.c
+++ b/gcc/testsuite/gcc.dg/tree-prof/val-profiler-threads-1.c
@@ -1,4 +1,6 @@
/* { dg-options "-O0 -pthread -fprofile-update=atomic" } */
+/* { dg-require-effective-target profile_update_atomic } */
+
#include <pthread.h>
#define NUM_THREADS 8
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 545b3dc..6724a7f 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -7699,3 +7699,10 @@ proc check_effective_target_offload_hsa { } {
int main () {return 0;}
} "-foffload=hsa" ]
}
+
+# Return 1 if the target support -fprofile-update=atomic
+proc check_effective_target_profile_update_atomic {} {
+ return [check_no_compiler_messages profile_update_atomic assembly {
+ int main (void) { return 0; }
+ } "-fprofile-update=atomic -fprofile-generate"]
+}