   0  getfield_gc_i %r0, FieldDescr<pypy.module._cffi_backend.cdlopen.W_DlOpenLibObject.inst_libhandle> -> %i1
   5  setfield_gc_i %r0, $<* None>, FieldDescr<pypy.module._cffi_backend.cdlopen.W_DlOpenLibObject.inst_libhandle>
  10  -live- %i1, %r0
  10  goto_if_not_int_is_true %i1, L1
  14  -live- %i1, %r0
  14  guard_class %r0 -> %i0
  17  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  22  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
  27  -live- %i0, %i1, %r0
  27  int_guard_value %i0
  29  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
  36  -live- %i1, %r0, %r1
  36  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.typeobject.W_TypeObject.inst_hasuserdel> -> %i0
  41  -live- %i0, %i1, %r0
  41  goto_if_not %i0, L2
  45  ref_copy %r0 -> %r1
  48  L3:
  48  getfield_gc_r %r1, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_dict_w> -> %r0
  53  residual_call_r_v $<* fn ll_dict_clear__dicttablePtr>, R[%r0], <CallDescr(r) EF=5>
  59  -live- %i1, %r1
  59  residual_call_ir_i $<* fn dlclose>, I[%i1], R[], <CallDescr(i) EF=2> -> %i0
  67  -live- %i0, %r1
  67  goto_if_not_int_lt %i0, $0, L4
  72  getfield_gc_r %r1, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_ffi> -> %r0
  77  getfield_gc_r %r0, FieldDescr<pypy.module._cffi_backend.ffi_obj.W_FFIObject.inst_w_FFIError> -> %r0
  82  getfield_gc_r %r1, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_libname> -> %r1
  87  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabebdd5c8> -> %r2
  91  setfield_gc_r %r2, %r0, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  96  setfield_gc_r %r2, $<* struct tuple2>, FieldDescr<pypy.interpreter.error.OpErrFmt.inst_xstrings>
 101  setfield_gc_r %r2, %r1, FieldDescr<pypy.interpreter.error.OpErrFmt.inst_x0>
 106  assert_not_none %r2
 108  -live- %r2
 108  guard_class %r2 -> %i0
 111  -live- %r2
 111  raise %r2
 113  ---
 113  L4:
 113  void_return
 114  ---
 114  L2:
 114  ref_copy %r0 -> %r1
 117  residual_call_r_v $<* fn may_ignore_finalizer__pypy_interpreter_baseobjspace_W_Root>, R[%r0], <CallDescr(r) EF=2>
 123  goto L3
 126  ---
 126  L1:
 126  void_return
