aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libstdc++-v3/ChangeLog12
-rw-r--r--libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc1
-rw-r--r--libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc1
-rw-r--r--libstdc++-v3/testsuite/experimental/net/timer/waitable/cons.cc1
-rw-r--r--libstdc++-v3/testsuite/experimental/net/timer/waitable/dest.cc1
-rw-r--r--libstdc++-v3/testsuite/experimental/net/timer/waitable/ops.cc1
-rw-r--r--libstdc++-v3/testsuite/lib/dg-options.exp9
-rw-r--r--libstdc++-v3/testsuite/lib/libstdc++.exp11
8 files changed, 37 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 5c0e968..59f857d 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,15 @@
+2019-03-12 John David Anglin <dave.anglin@bell.net>
+
+ PR libstdc++/89461
+ * testsuite/lib/libstdc++.exp: Locate libatomic.
+ * testsuite/lib/dg-options.exp (add_options_for_libatomic): New.
+ * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
+ libatomic options.
+ * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
+ * testsuite/experimental/net/timer/waitable/cons.cc: Likewise.
+ * testsuite/experimental/net/timer/waitable/dest.cc: Likewise.
+ * testsuite/experimental/net/timer/waitable/ops.cc: Likewise.
+
2019-03-11 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/89460
diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc
index 0953416..251e937 100644
--- a/libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc
+++ b/libstdc++-v3/testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc
@@ -19,6 +19,7 @@
// { dg-do run }
// { dg-options "-pthread" }
+// { dg-add-options libatomic }
// { dg-require-effective-target c++11 }
// { dg-require-effective-target pthread }
// { dg-require-cstdint "" }
diff --git a/libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc b/libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc
index 10bcae3..b348569 100644
--- a/libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc
+++ b/libstdc++-v3/testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc
@@ -19,6 +19,7 @@
// { dg-do run }
// { dg-options "-pthread" }
+// { dg-add-options libatomic }
// { dg-require-effective-target c++11 }
// { dg-require-effective-target pthread }
// { dg-require-cstdint "" }
diff --git a/libstdc++-v3/testsuite/experimental/net/timer/waitable/cons.cc b/libstdc++-v3/testsuite/experimental/net/timer/waitable/cons.cc
index cd929b3..d1886e7 100644
--- a/libstdc++-v3/testsuite/experimental/net/timer/waitable/cons.cc
+++ b/libstdc++-v3/testsuite/experimental/net/timer/waitable/cons.cc
@@ -16,6 +16,7 @@
// <http://www.gnu.org/licenses/>.
// { dg-do run { target c++14 } }
+// { dg-add-options libatomic }
#include <experimental/timer>
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/experimental/net/timer/waitable/dest.cc b/libstdc++-v3/testsuite/experimental/net/timer/waitable/dest.cc
index dfc3590..cc3b6ee 100644
--- a/libstdc++-v3/testsuite/experimental/net/timer/waitable/dest.cc
+++ b/libstdc++-v3/testsuite/experimental/net/timer/waitable/dest.cc
@@ -16,6 +16,7 @@
// <http://www.gnu.org/licenses/>.
// { dg-do run { target c++14 } }
+// { dg-add-options libatomic }
#include <experimental/timer>
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/experimental/net/timer/waitable/ops.cc b/libstdc++-v3/testsuite/experimental/net/timer/waitable/ops.cc
index 23c4e34..0f89bec 100644
--- a/libstdc++-v3/testsuite/experimental/net/timer/waitable/ops.cc
+++ b/libstdc++-v3/testsuite/experimental/net/timer/waitable/ops.cc
@@ -16,6 +16,7 @@
// <http://www.gnu.org/licenses/>.
// { dg-do run { target c++14 } }
+// { dg-add-options libatomic }
#include <experimental/timer>
#include <testsuite_hooks.h>
diff --git a/libstdc++-v3/testsuite/lib/dg-options.exp b/libstdc++-v3/testsuite/lib/dg-options.exp
index 1d21d1c..aa4747e 100644
--- a/libstdc++-v3/testsuite/lib/dg-options.exp
+++ b/libstdc++-v3/testsuite/lib/dg-options.exp
@@ -257,6 +257,15 @@ proc add_options_for_net_ts { flags } {
return $flags
}
+# Add to FLAGS all the target-specific flags to link to libatomic, if required.
+
+proc add_options_for_libatomic { flags } {
+ if { [istarget hppa*-*-hpux*] || [istarget riscv*-*-*] } {
+ return "$flags -L../../libatomic/.libs -latomic"
+ }
+ return $flags
+}
+
# Like dg-options, but adds to the default options rather than replacing them.
proc dg-additional-options { args } {
diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp
index e84cb04..02952a4 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -161,6 +161,17 @@ proc libstdc++_init { testfile } {
}
v3track gccdir 3
+ # Locate libatomic.
+ set v3-libatomic 0
+ set libatomicdir [lookfor_file $blddir/../libatomic .libs/libatomic.$shlib_ext]
+ if {$libatomicdir != ""} {
+ set v3-libatomic 1
+ set libatomicdir [file dirname $libatomicdir]
+ append ld_library_path_tmp ":${libatomicdir}"
+ verbose -log "libatomic support detected"
+ }
+ v3track libatomicdir 3
+
# Locate libgomp. This is only required for parallel mode.
set v3-libgomp 0
set libgompdir [lookfor_file $blddir/../libgomp .libs/libgomp.$shlib_ext]