- Discuss on the Valgrind mailing list how to make it possible to call
POSIX thread synchronization primitives from client code (drd_intercepts.c)
without triggering Valgrind's redirection mechanism.
+- Make sure -v works again with exp-drd.
- Continue the discussion on the Valgrind mailing list about docbook and
'make dist'.
- Continue the discussion on the Valgrind mailing list about -Wformat.
- Enable format string checking for DRD during compilation.
+- Propose to modify tl_assert() / vg_assert() such that it uses
+ __builtin_expect.
- Explain on the Valgrind mailing list the difference between a bus lock
and acquire / release labels.
+- Add configure tests for the name of the 'kind' member in pthread_mutex_t.
- Find out why a race is reported on std::string::string(std::string const&)
(stc test case 16).
+- Find out why no races are reported on matinv_openmp.c when "private(k)" is
+ removed.
- Add support for objects that are shared over threads and that use reference
counting, e.g. std::string -- no races should be reported on the reference
count.
-- Add a regression test for pthread_mutex_timedlock().
- Add test programs for destroying a condition variable / semaphore / barrier
being waited upon.
- Add OpenMP examples to the regression tests.
- testing on PPC and AIX (current implementation is only tested on X86 and
AMD64).
- Convert the array in drd_thread.c with thread information into an OSet.
-
+- Optimize run time of the following test case:
+ ./vg-in-place --tool=exp-drd exp-drd/tests/matinv 100
Testing
~~~~~~~
- testing with more complex multithreaded test programs.
- test exp-drd's performance with the SPLASH-2 software, e.g. fft
- (http://www-flash.stanford.edu/apps/SPLASH/).
+ (http://www-flash.stanford.edu/apps/SPLASH/) or the PARSEC benchmark
+ (http://parsec.cs.princeton.edu/license.htm).
- test with Synfig Studio (see also http://bugs.kde.org/show_bug.cgi?id=158555)
- test with some OpenMP examples. See also http://en.wikipedia.org/wiki/OpenMP.