---Thread-Announcement------------------------------------------

Thread #x was created
   ...
   by 0x........: pthread_create@* (hg_intercepts.c:...)
   by 0x........: main (annotate_rwlock.c:164)

---Thread-Announcement------------------------------------------

Thread #x was created
   ...
   by 0x........: pthread_create@* (hg_intercepts.c:...)
   by 0x........: main (annotate_rwlock.c:164)

----------------------------------------------------------------

Possible data race during read of size 4 at 0x........ by thread #x
Locks held: none
   at 0x........: rwlock_rdlock (annotate_rwlock.c:71)
   by 0x........: thread_func (annotate_rwlock.c:144)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_wrlock (annotate_rwlock.c:106)
   by 0x........: thread_func (annotate_rwlock.c:147)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 4 bytes inside data symbol "s_rwlock"

----------------------------------------------------------------

Possible data race during read of size 4 at 0x........ by thread #x
Locks held: none
   at 0x........: rwlock_rdlock (annotate_rwlock.c:81)
   by 0x........: thread_func (annotate_rwlock.c:144)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_rdlock (annotate_rwlock.c:81)
   by 0x........: thread_func (annotate_rwlock.c:144)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 8 bytes inside data symbol "s_rwlock"

----------------------------------------------------------------

Possible data race during write of size 4 at 0x........ by thread #x
Locks held: none
   at 0x........: rwlock_rdlock (annotate_rwlock.c:81)
   by 0x........: thread_func (annotate_rwlock.c:144)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous read of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_unlock (annotate_rwlock.c:131)
   by 0x........: thread_func (annotate_rwlock.c:149)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 8 bytes inside data symbol "s_rwlock"

----------------------------------------------------------------

Possible data race during write of size 4 at 0x........ by thread #x
Locks held: none
   at 0x........: rwlock_unlock (annotate_rwlock.c:121)
   by 0x........: thread_func (annotate_rwlock.c:146)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous read of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_unlock (annotate_rwlock.c:131)
   by 0x........: thread_func (annotate_rwlock.c:149)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 8 bytes inside data symbol "s_rwlock"

----------------------------------------------------------------

Possible data race during write of size 4 at 0x........ by thread #x
Locks held: none
   at 0x........: rwlock_wrlock (annotate_rwlock.c:106)
   by 0x........: thread_func (annotate_rwlock.c:147)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous read of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_unlock (annotate_rwlock.c:132)
   by 0x........: thread_func (annotate_rwlock.c:149)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 4 bytes inside data symbol "s_rwlock"

----------------------------------------------------------------

 Lock at 0x........ was first observed
   at 0x........: rwlock_init (annotate_rwlock.c:54)
   by 0x........: main (annotate_rwlock.c:161)
 Address 0x........ is 0 bytes inside data symbol "s_rwlock"

Possible data race during write of size 4 at 0x........ by thread #x
Locks held: 1, at address 0x........
   at 0x........: rwlock_unlock (annotate_rwlock.c:127)
   by 0x........: thread_func (annotate_rwlock.c:149)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous read of size 4 by thread #x
Locks held: none
   at 0x........: rwlock_unlock (annotate_rwlock.c:132)
   by 0x........: thread_func (annotate_rwlock.c:149)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 4 bytes inside data symbol "s_rwlock"

Finished.
