Back to index

lightning-sunbird  0.9+nobinonly
Defines
jslock.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define JS_ATOMIC_INCREMENT(p)   (++*(p))
#define JS_ATOMIC_DECREMENT(p)   (--*(p))
#define JS_ATOMIC_ADD(p, v)   (*(p) += (v))
#define JS_CurrentThreadId()   0
#define JS_NEW_LOCK()   NULL
#define JS_DESTROY_LOCK(l)   ((void)0)
#define JS_ACQUIRE_LOCK(l)   ((void)0)
#define JS_RELEASE_LOCK(l)   ((void)0)
#define JS_LOCK0(P, M)   ((void)0)
#define JS_UNLOCK0(P, M)   ((void)0)
#define JS_NEW_CONDVAR(l)   NULL
#define JS_DESTROY_CONDVAR(cv)   ((void)0)
#define JS_WAIT_CONDVAR(cv, to)   ((void)0)
#define JS_NOTIFY_CONDVAR(cv)   ((void)0)
#define JS_NOTIFY_ALL_CONDVAR(cv)   ((void)0)
#define JS_LOCK_RUNTIME(rt)   ((void)0)
#define JS_UNLOCK_RUNTIME(rt)   ((void)0)
#define JS_LOCK_OBJ(cx, obj)   ((void)0)
#define JS_UNLOCK_OBJ(cx, obj)   ((void)0)
#define JS_LOCK_OBJ_VOID(cx, obj, e)   (e)
#define JS_LOCK_SCOPE(cx, scope)   ((void)0)
#define JS_UNLOCK_SCOPE(cx, scope)   ((void)0)
#define JS_TRANSFER_SCOPE_LOCK(c, o, n)   ((void)0)
#define JS_IS_RUNTIME_LOCKED(rt)   1
#define JS_IS_OBJ_LOCKED(cx, obj)   1
#define JS_IS_SCOPE_LOCKED(cx, scope)   1
#define JS_LOCK_VOID(cx, e)   JS_LOCK_RUNTIME_VOID((cx)->runtime, e)
#define JS_LOCK_RUNTIME_VOID(rt, e)
#define JS_LOCK_GC(rt)   JS_ACQUIRE_LOCK((rt)->gcLock)
#define JS_UNLOCK_GC(rt)   JS_RELEASE_LOCK((rt)->gcLock)
#define JS_LOCK_GC_VOID(rt, e)   (JS_LOCK_GC(rt), (e), JS_UNLOCK_GC(rt))
#define JS_AWAIT_GC_DONE(rt)   JS_WAIT_CONDVAR((rt)->gcDone, JS_NO_TIMEOUT)
#define JS_NOTIFY_GC_DONE(rt)   JS_NOTIFY_ALL_CONDVAR((rt)->gcDone)
#define JS_AWAIT_REQUEST_DONE(rt)
#define JS_NOTIFY_REQUEST_DONE(rt)   JS_NOTIFY_CONDVAR((rt)->requestDone)
#define JS_LOCK(P, CX)   JS_LOCK0(P, CX_THINLOCK_ID(CX))
#define JS_UNLOCK(P, CX)   JS_UNLOCK0(P, CX_THINLOCK_ID(CX))

Define Documentation

#define JS_ACQUIRE_LOCK (   l)    ((void)0)

Definition at line 217 of file jslock.h.

#define JS_ATOMIC_ADD (   p,
  v 
)    (*(p) += (v))

Definition at line 212 of file jslock.h.

#define JS_ATOMIC_DECREMENT (   p)    (--*(p))

Definition at line 211 of file jslock.h.

#define JS_ATOMIC_INCREMENT (   p)    (++*(p))

Definition at line 210 of file jslock.h.

#define JS_AWAIT_GC_DONE (   rt)    JS_WAIT_CONDVAR((rt)->gcDone, JS_NO_TIMEOUT)

Definition at line 254 of file jslock.h.

Value:
JS_WAIT_CONDVAR((rt)->requestDone,        \
                                                    JS_NO_TIMEOUT)

Definition at line 256 of file jslock.h.

#define JS_CurrentThreadId ( )    0

Definition at line 214 of file jslock.h.

#define JS_DESTROY_CONDVAR (   cv)    ((void)0)

Definition at line 223 of file jslock.h.

#define JS_DESTROY_LOCK (   l)    ((void)0)

Definition at line 216 of file jslock.h.

#define JS_IS_OBJ_LOCKED (   cx,
  obj 
)    1

Definition at line 238 of file jslock.h.

#define JS_IS_RUNTIME_LOCKED (   rt)    1

Definition at line 237 of file jslock.h.

#define JS_IS_SCOPE_LOCKED (   cx,
  scope 
)    1

Definition at line 239 of file jslock.h.

#define JS_LOCK (   P,
  CX 
)    JS_LOCK0(P, CX_THINLOCK_ID(CX))

Definition at line 260 of file jslock.h.

#define JS_LOCK0 (   P,
  M 
)    ((void)0)

Definition at line 219 of file jslock.h.

#define JS_LOCK_GC (   rt)    JS_ACQUIRE_LOCK((rt)->gcLock)

Definition at line 251 of file jslock.h.

#define JS_LOCK_GC_VOID (   rt,
  e 
)    (JS_LOCK_GC(rt), (e), JS_UNLOCK_GC(rt))

Definition at line 253 of file jslock.h.

#define JS_LOCK_OBJ (   cx,
  obj 
)    ((void)0)

Definition at line 230 of file jslock.h.

#define JS_LOCK_OBJ_VOID (   cx,
  obj,
  e 
)    (e)

Definition at line 232 of file jslock.h.

#define JS_LOCK_RUNTIME (   rt)    ((void)0)

Definition at line 228 of file jslock.h.

#define JS_LOCK_RUNTIME_VOID (   rt,
  e 
)
Value:
JS_BEGIN_MACRO                                                            \
        JS_LOCK_RUNTIME(rt);                                                  \
        e;                                                                    \
        JS_UNLOCK_RUNTIME(rt);                                                \
    JS_END_MACRO

Definition at line 244 of file jslock.h.

#define JS_LOCK_SCOPE (   cx,
  scope 
)    ((void)0)

Definition at line 233 of file jslock.h.

#define JS_LOCK_VOID (   cx,
  e 
)    JS_LOCK_RUNTIME_VOID((cx)->runtime, e)

Definition at line 240 of file jslock.h.

#define JS_NEW_CONDVAR (   l)    NULL

Definition at line 222 of file jslock.h.

#define JS_NEW_LOCK ( )    NULL

Definition at line 215 of file jslock.h.

#define JS_NOTIFY_ALL_CONDVAR (   cv)    ((void)0)

Definition at line 226 of file jslock.h.

#define JS_NOTIFY_CONDVAR (   cv)    ((void)0)

Definition at line 225 of file jslock.h.

#define JS_NOTIFY_GC_DONE (   rt)    JS_NOTIFY_ALL_CONDVAR((rt)->gcDone)

Definition at line 255 of file jslock.h.

#define JS_NOTIFY_REQUEST_DONE (   rt)    JS_NOTIFY_CONDVAR((rt)->requestDone)

Definition at line 258 of file jslock.h.

#define JS_RELEASE_LOCK (   l)    ((void)0)

Definition at line 218 of file jslock.h.

#define JS_TRANSFER_SCOPE_LOCK (   c,
  o,
  n 
)    ((void)0)

Definition at line 235 of file jslock.h.

#define JS_UNLOCK (   P,
  CX 
)    JS_UNLOCK0(P, CX_THINLOCK_ID(CX))

Definition at line 261 of file jslock.h.

#define JS_UNLOCK0 (   P,
  M 
)    ((void)0)

Definition at line 220 of file jslock.h.

#define JS_UNLOCK_GC (   rt)    JS_RELEASE_LOCK((rt)->gcLock)

Definition at line 252 of file jslock.h.

#define JS_UNLOCK_OBJ (   cx,
  obj 
)    ((void)0)

Definition at line 231 of file jslock.h.

#define JS_UNLOCK_RUNTIME (   rt)    ((void)0)

Definition at line 229 of file jslock.h.

#define JS_UNLOCK_SCOPE (   cx,
  scope 
)    ((void)0)

Definition at line 234 of file jslock.h.

#define JS_WAIT_CONDVAR (   cv,
  to 
)    ((void)0)

Definition at line 224 of file jslock.h.