weak_alias(pthread_rwlock_unlock, __pthread_rwlock_unlock)
+int
+pthread_rwlock_wrlock (void* /* pthread_rwlock_t* */ rwlock)
+{
+ static int moans = N_MOANS;
+ if (moans-- > 0)
+ kludged("pthread_rwlock_wrlock");
+ return 0;
+}
+
+weak_alias(pthread_rwlock_wrlock, __pthread_wrlock_unlock)
+
+
/* I've no idea what these are, but they get called quite a lot.
Anybody know? */
void pthread_rwlock_tryrdlock ( void ) { unimp("pthread_rwlock_tryrdlock"); }
void pthread_rwlock_trywrlock ( void ) { unimp("pthread_rwlock_trywrlock"); }
//void pthread_rwlock_unlock ( void ) { unimp("pthread_rwlock_unlock"); }
-void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
+//void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
void pthread_rwlockattr_destroy ( void ) { unimp("pthread_rwlockattr_destroy"); }
void pthread_rwlockattr_getkind_np ( void ) { unimp("pthread_rwlockattr_getkind_np"); }
void pthread_rwlockattr_getpshared ( void ) { unimp("pthread_rwlockattr_getpshared"); }
weak_alias(pthread_rwlock_init, __pthread_rwlock_init)
weak_alias(pthread_rwlock_tryrdlock, __pthread_rwlock_tryrdlock)
weak_alias(pthread_rwlock_trywrlock, __pthread_rwlock_trywrlock)
-weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
+//weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
weak_alias(_IO_ftrylockfile, ftrylockfile)
__attribute__((weak)) void pread ( void ) { vgPlain_unimp("pread"); }
weak_alias(pthread_rwlock_unlock, __pthread_rwlock_unlock)
+int
+pthread_rwlock_wrlock (void* /* pthread_rwlock_t* */ rwlock)
+{
+ static int moans = N_MOANS;
+ if (moans-- > 0)
+ kludged("pthread_rwlock_wrlock");
+ return 0;
+}
+
+weak_alias(pthread_rwlock_wrlock, __pthread_wrlock_unlock)
+
+
/* I've no idea what these are, but they get called quite a lot.
Anybody know? */
void pthread_rwlock_tryrdlock ( void ) { unimp("pthread_rwlock_tryrdlock"); }
void pthread_rwlock_trywrlock ( void ) { unimp("pthread_rwlock_trywrlock"); }
//void pthread_rwlock_unlock ( void ) { unimp("pthread_rwlock_unlock"); }
-void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
+//void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
void pthread_rwlockattr_destroy ( void ) { unimp("pthread_rwlockattr_destroy"); }
void pthread_rwlockattr_getkind_np ( void ) { unimp("pthread_rwlockattr_getkind_np"); }
void pthread_rwlockattr_getpshared ( void ) { unimp("pthread_rwlockattr_getpshared"); }
weak_alias(pthread_rwlock_init, __pthread_rwlock_init)
weak_alias(pthread_rwlock_tryrdlock, __pthread_rwlock_tryrdlock)
weak_alias(pthread_rwlock_trywrlock, __pthread_rwlock_trywrlock)
-weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
+//weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
weak_alias(_IO_ftrylockfile, ftrylockfile)
__attribute__((weak)) void pread ( void ) { vgPlain_unimp("pread"); }
weak_alias(pthread_rwlock_unlock, __pthread_rwlock_unlock)
+int
+pthread_rwlock_wrlock (void* /* pthread_rwlock_t* */ rwlock)
+{
+ static int moans = N_MOANS;
+ if (moans-- > 0)
+ kludged("pthread_rwlock_wrlock");
+ return 0;
+}
+
+weak_alias(pthread_rwlock_wrlock, __pthread_wrlock_unlock)
+
+
/* I've no idea what these are, but they get called quite a lot.
Anybody know? */
void pthread_rwlock_tryrdlock ( void ) { unimp("pthread_rwlock_tryrdlock"); }
void pthread_rwlock_trywrlock ( void ) { unimp("pthread_rwlock_trywrlock"); }
//void pthread_rwlock_unlock ( void ) { unimp("pthread_rwlock_unlock"); }
-void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
+//void pthread_rwlock_wrlock ( void ) { unimp("pthread_rwlock_wrlock"); }
void pthread_rwlockattr_destroy ( void ) { unimp("pthread_rwlockattr_destroy"); }
void pthread_rwlockattr_getkind_np ( void ) { unimp("pthread_rwlockattr_getkind_np"); }
void pthread_rwlockattr_getpshared ( void ) { unimp("pthread_rwlockattr_getpshared"); }
weak_alias(pthread_rwlock_init, __pthread_rwlock_init)
weak_alias(pthread_rwlock_tryrdlock, __pthread_rwlock_tryrdlock)
weak_alias(pthread_rwlock_trywrlock, __pthread_rwlock_trywrlock)
-weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
+//weak_alias(pthread_rwlock_wrlock, __pthread_rwlock_wrlock)
weak_alias(_IO_ftrylockfile, ftrylockfile)
__attribute__((weak)) void pread ( void ) { vgPlain_unimp("pread"); }