-#else
-
-extern int _mutex_lock_debug(mutex_t *lock, const char *name);
-extern int _mutex_try_lock_debug(mutex_t *lock, const char *name);
-extern int _mutex_unlock_debug(mutex_t *lock, const char *name);
-extern void _mutex_assert_locked_debug(mutex_t *lock, const char *name);
-extern void _mutex_assert_unlocked_debug(mutex_t *lock, const char *name);
-
-extern int _recursive_mutex_lock_debug(recursive_mutex_t *lock, const char *name);
-extern int _recursive_mutex_try_lock_debug(recursive_mutex_t *lock, const char *name);
-extern int _recursive_mutex_unlock_debug(recursive_mutex_t *lock, const char *name);
-extern void _recursive_mutex_assert_locked_debug(recursive_mutex_t *lock, const char *name);
-extern void _recursive_mutex_assert_unlocked_debug(recursive_mutex_t *lock, const char *name);
-
-extern int _monitor_enter_debug(monitor_t *lock, const char *name);
-extern int _monitor_exit_debug(monitor_t *lock, const char *name);
-extern int _monitor_wait_debug(monitor_t *lock, const char *name);
-extern void _monitor_assert_locked_debug(monitor_t *lock, const char *name);
-extern void _monitor_assert_unlocked_debug(monitor_t *lock, const char *name);
-
-extern void _rwlock_read_debug(rwlock_t *l, const char *name);
-extern void _rwlock_write_debug(rwlock_t *l, const char *name);
-extern int _rwlock_try_read_debug(rwlock_t *l, const char *name);
-extern int _rwlock_try_write_debug(rwlock_t *l, const char *name);
-extern void _rwlock_unlock_read_debug(rwlock_t *l, const char *name);
-extern void _rwlock_unlock_write_debug(rwlock_t *l, const char *name);
-extern void _rwlock_assert_reading_debug(rwlock_t *l, const char *name);
-extern void _rwlock_assert_writing_debug(rwlock_t *l, const char *name);
-extern void _rwlock_assert_locked_debug(rwlock_t *l, const char *name);
-extern void _rwlock_assert_unlocked_debug(rwlock_t *l, const char *name);
-
-#define mutex_lock(m) _mutex_lock_debug (m, #m)
-#define mutex_try_lock(m) _mutex_try_lock_debug (m, #m)
-#define mutex_unlock(m) _mutex_unlock_debug (m, #m)
-#define mutex_assert_locked(m) _mutex_assert_locked_debug (m, #m)
-#define mutex_assert_unlocked(m) _mutex_assert_unlocked_debug (m, #m)
-
-#define recursive_mutex_lock(m) _recursive_mutex_lock_debug (m, #m)
-#define recursive_mutex_try_lock(m) _recursive_mutex_try_lock_debug (m, #m)
-#define recursive_mutex_unlock(m) _recursive_mutex_unlock_debug (m, #m)
-#define recursive_mutex_assert_locked(m) _recursive_mutex_assert_locked_debug (m, #m)
-#define recursive_mutex_assert_unlocked(m) _recursive_mutex_assert_unlocked_debug (m, #m)
-
-#define monitor_enter(m) _monitor_enter_debug(m, #m)
-#define monitor_exit(m) _monitor_exit_debug(m, #m)
-#define monitor_wait(m) _monitor_wait_debug(m, #m)
-#define monitor_assert_locked(m) _monitor_assert_locked_debug(m, #m)
-#define monitor_assert_unlocked(m) _monitor_assert_unlocked_debug(m, #m)
-
-#define rwlock_read(m) _rwlock_read_debug(m, #m)
-#define rwlock_write(m) _rwlock_write_debug(m, #m)
-#define rwlock_try_read(m) _rwlock_try_read_debug(m, #m)
-#define rwlock_try_write(m) _rwlock_try_write_debug(m, #m)
-#define rwlock_unlock_read(m) _rwlock_unlock_read_debug(m, #m)
-#define rwlock_unlock_write(m) _rwlock_unlock_write_debug(m, #m)
-#define rwlock_assert_reading(m) _rwlock_assert_reading_debug(m, #m)
-#define rwlock_assert_writing(m) _rwlock_assert_writing_debug(m, #m)
-#define rwlock_assert_locked(m) _rwlock_assert_locked_debug(m, #m)
-#define rwlock_assert_unlocked(m) _rwlock_assert_unlocked_debug(m, #m)
-
-#endif
-
-#define rwlock_unlock(m, s) \
- do { \
- if ((s) == RDONLY) rwlock_unlock_read(m); \
- else if ((s) == RDWR) rwlock_unlock_write(m); \
- } while (0)
-
-
-/* ignored selector support */
-
-/* Non-GC: no ignored selectors
- GC (i386 Mac): some selectors ignored, remapped to kIgnore
- GC (others): some selectors ignored, but not remapped
-*/
-
-static inline int ignoreSelector(SEL sel)
-{
-#if !SUPPORT_GC
- return NO;
-#elif SUPPORT_IGNORED_SELECTOR_CONSTANT
- return UseGC && sel == (SEL)kIgnore;
-#else
- return UseGC &&
- (sel == @selector(retain) ||
- sel == @selector(release) ||
- sel == @selector(autorelease) ||
- sel == @selector(retainCount) ||
- sel == @selector(dealloc));
-#endif
-}