   0  getfield_gc_i %r0, FieldDescr<pypy.module._multiprocessing.interp_semaphore.W_SemLock.inst_kind> -> %i1
   5  -live- %i0, %i1, %r0, %r1
   8  goto_if_not_int_is_zero %i1, L1
  12  getfield_gc_i %r0, FieldDescr<pypy.module._multiprocessing.interp_semaphore.W_SemLock.inst_count> -> %i1
  17  -live- %i0, %i1, %r0, %r1
  20  goto_if_not_int_gt %i1, $0, L2
  25  residual_call_ir_i $<* fn _ll_1_threadlocalref_get__SignedLlT_Signed>, I[$CDefinedIntSymbolic('RPY_TLOFS_thread_ident')], R[], <CallDescr(i) EF=1 OS_THREADLOCALREF_GET> -> %i2
  33  getfield_gc_i %r0, FieldDescr<pypy.module._multiprocessing.interp_semaphore.W_SemLock.inst_last_tid> -> %i3
  38  -live- %i0, %i1, %i2, %i3, %r0, %r1
  41  goto_if_not_int_eq %i2, %i3, L3
  46  int_add %i1, $1 -> %i1
  50  setfield_gc_i %r0, %i1, FieldDescr<pypy.module._multiprocessing.interp_semaphore.W_SemLock.inst_count>
  55  ref_return $<* struct pypy.objspace.std.boolobject.W_BoolObject>
  57  ---
  57  L3:
  57  L4:
  57  residual_call_ir_i $<* fn semlock_acquire>, I[%i0], R[%r0, %r1], <CallDescr(rir) EF=7> -> %i1
  67  -live- %i1
  70  catch_exception L5
  73  -live- %i1
  76  goto_if_not %i1, L6
  80  ref_return $<* struct pypy.objspace.std.boolobject.W_BoolObject>
  82  ---
  82  L6:
  82  ref_return $<* struct pypy.objspace.std.boolobject.W_BoolObject>
  84  ---
  84  L5:
  84  goto_if_exception_mismatch $<* struct object_vtable>, L7
  88  last_exc_value -> %r0
  90  inline_call_r_r <JitCode 'wrap_oserror2__None'>, R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r0
  97  -live- %r0
 100  assert_not_none %r0
 102  -live- %r0
 105  guard_class %r0 -> %i1
 108  -live- %r0
 111  raise %r0
 113  ---
 113  L7:
 113  reraise
 114  ---
 114  L2:
 114  goto L4
 117  ---
 117  L1:
 117  goto L4
