Added detection of more types of runtime errors. Cleaned up tracing output. Added test for tracing output (tc20_verifywrap2).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7511 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/exp-drd/drd_error.h b/exp-drd/drd_error.h
index e9a54c4..9dfdd61 100644
--- a/exp-drd/drd_error.h
+++ b/exp-drd/drd_error.h
@@ -39,9 +39,12 @@
typedef enum {
DataRaceErr = 1,
MutexErr = 2,
- CondRaceErr = 3,
- CondErr = 4,
- GenericErr = 5,
+ CondErr = 3,
+ CondRaceErr = 4,
+ CondDestrErr = 5,
+ SemaphoreErr = 6,
+ BarrierErr = 7,
+ GenericErr = 8,
} DrdErrorKind;
/* The classification of a faulting address. */
@@ -88,12 +91,26 @@
typedef struct {
Addr cond;
+} CondErrInfo;
+
+typedef struct {
+ Addr cond;
Addr mutex;
} CondRaceErrInfo;
typedef struct {
- Addr cond;
-} CondErrInfo;
+ Addr cond;
+ Addr mutex;
+ DrdThreadId tid;
+} CondDestrErrInfo;
+
+typedef struct {
+ Addr semaphore;
+} SemaphoreErrInfo;
+
+typedef struct {
+ Addr barrier;
+} BarrierErrInfo;
typedef struct {
} GenericErrInfo;