mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-04 10:21:20 +00:00
Added regression test for Boost.Threads.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8763
This commit is contained in:
parent
0fc6d04d97
commit
a4ddba81ca
@ -20,6 +20,8 @@ EXTRA_DIST = \
|
||||
atomic_var.stderr.exp-with-atomic-builtins \
|
||||
atomic_var.stderr.exp-without-atomic-builtins \
|
||||
atomic_var.vgtest \
|
||||
boost_threads.stderr.exp \
|
||||
boost_threads.vgtest \
|
||||
drd_bitmap_test.stderr.exp \
|
||||
drd_bitmap_test.stdout.exp \
|
||||
drd_bitmap_test.vgtest \
|
||||
@ -247,14 +249,18 @@ check_PROGRAMS = \
|
||||
tc24_nonzero_sem \
|
||||
trylock
|
||||
|
||||
if HAVE_QTCORE
|
||||
check_PROGRAMS += qt4_mutex qt4_rwlock qt4_semaphore
|
||||
if HAVE_BOOST_1_35
|
||||
check_PROGRAMS += boost_threads
|
||||
endif
|
||||
|
||||
if HAVE_OPENMP
|
||||
check_PROGRAMS += omp_matinv omp_prime omp_printf
|
||||
endif
|
||||
|
||||
if HAVE_QTCORE
|
||||
check_PROGRAMS += qt4_mutex qt4_rwlock qt4_semaphore
|
||||
endif
|
||||
|
||||
|
||||
atomic_var_SOURCES = atomic_var.c
|
||||
atomic_var_LDADD = -lpthread
|
||||
@ -331,20 +337,6 @@ pth_inconsistent_cond_wait_LDADD = -lpthread
|
||||
pth_spinlock_SOURCES = pth_spinlock.c
|
||||
pth_spinlock_LDADD = -lpthread
|
||||
|
||||
if HAVE_QTCORE
|
||||
qt4_mutex_SOURCES = qt4_mutex.cpp
|
||||
qt4_mutex_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_mutex_LDADD = $(QTCORE_LIBS)
|
||||
|
||||
qt4_rwlock_SOURCES = qt4_rwlock.cpp
|
||||
qt4_rwlock_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_rwlock_LDADD = $(QTCORE_LIBS)
|
||||
|
||||
qt4_semaphore_SOURCES = qt4_semaphore.cpp
|
||||
qt4_semaphore_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_semaphore_LDADD = $(QTCORE_LIBS)
|
||||
endif
|
||||
|
||||
recursive_mutex_SOURCES = recursive_mutex.c
|
||||
recursive_mutex_LDADD = -lpthread
|
||||
|
||||
@ -432,6 +424,12 @@ tc24_nonzero_sem_LDADD = -lpthread
|
||||
trylock_SOURCES = trylock.c
|
||||
trylock_LDADD = -lpthread -lrt
|
||||
|
||||
if HAVE_BOOST_1_35
|
||||
boost_threads_SOURCES = boost_threads.cpp
|
||||
boost_threads_CXXFLAGS = $(AM_CXXFLAGS) $(BOOST_CFLAGS)
|
||||
boost_threads_LDADD = $(BOOST_LIBS)
|
||||
endif
|
||||
|
||||
if HAVE_OPENMP
|
||||
omp_matinv_SOURCES = omp_matinv.c
|
||||
omp_matinv_CFLAGS = $(AM_CFLAGS) -fopenmp
|
||||
@ -448,3 +446,17 @@ omp_printf_CFLAGS = $(AM_CFLAGS) -fopenmp
|
||||
omp_printf_LDFLAGS = -fopenmp
|
||||
omp_printf_LDADD = -lm
|
||||
endif
|
||||
|
||||
if HAVE_QTCORE
|
||||
qt4_mutex_SOURCES = qt4_mutex.cpp
|
||||
qt4_mutex_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_mutex_LDADD = $(QTCORE_LIBS)
|
||||
|
||||
qt4_rwlock_SOURCES = qt4_rwlock.cpp
|
||||
qt4_rwlock_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_rwlock_LDADD = $(QTCORE_LIBS)
|
||||
|
||||
qt4_semaphore_SOURCES = qt4_semaphore.cpp
|
||||
qt4_semaphore_CXXFLAGS = $(AM_CXXFLAGS) $(QTCORE_CFLAGS)
|
||||
qt4_semaphore_LDADD = $(QTCORE_LIBS)
|
||||
endif
|
||||
|
||||
30
drd/tests/boost_threads.cpp
Normal file
30
drd/tests/boost_threads.cpp
Normal file
@ -0,0 +1,30 @@
|
||||
#include <boost/thread/condition.hpp>
|
||||
#include <boost/thread/mutex.hpp>
|
||||
#include <boost/thread/thread.hpp>
|
||||
#include <iostream>
|
||||
|
||||
|
||||
static boost::condition s_cva;
|
||||
static boost::mutex s_m;
|
||||
|
||||
|
||||
static void thread_func(void)
|
||||
{
|
||||
std::cerr << "Thread 2.\n";
|
||||
boost::mutex::scoped_lock sl(s_m);
|
||||
s_cva.notify_all();
|
||||
s_cva.wait(sl);
|
||||
}
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
std::cerr << "Thread 1.\n";
|
||||
boost::mutex::scoped_lock sl(s_m);
|
||||
boost::thread t(thread_func);
|
||||
s_cva.wait(sl);
|
||||
s_cva.notify_all();
|
||||
sl.unlock();
|
||||
t.join();
|
||||
std::cerr << "Finished.\n";
|
||||
return 0;
|
||||
}
|
||||
6
drd/tests/boost_threads.stderr.exp
Normal file
6
drd/tests/boost_threads.stderr.exp
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
Thread 1.
|
||||
Thread 2.
|
||||
Finished.
|
||||
|
||||
ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
|
||||
3
drd/tests/boost_threads.vgtest
Normal file
3
drd/tests/boost_threads.vgtest
Normal file
@ -0,0 +1,3 @@
|
||||
prereq: test -e boost_threads
|
||||
vgopts: --var-info=yes
|
||||
prog: boost_threads
|
||||
Loading…
x
Reference in New Issue
Block a user