   0  -live- %i0, %r0, %r1, %r2
   0  goto_if_not_ptr_iszero %r2, L1
   4  int_copy $<* None> -> %i2
   7  L2:
   7  -live- %i0, %i2, %r0, %r1, %r2
   7  goto_if_not_ptr_iszero %r2, L3
  11  int_copy %i2 -> %i1
  14  ref_copy $<* struct rpy_string> -> %r2
  17  L4:
  17  inline_call_ir_i <JitCode 'dlopen'>, I[%i1, %i0], R[] -> %i1
  25  -live- %i1, %i2, %r0, %r1, %r2
  25  catch_exception L5
  28  -live- %i1, %i2, %r0, %r1, %r2
  28  goto_if_not_int_is_true %i2, L6
  32  residual_call_ir_v $<* fn _ll_1_raw_free__arrayPtr>, I[%i2], R[], <CallDescr(i) EF=2 OS_RAW_FREE>
  39  L7:
  39  getfield_gc_i %r1, FieldDescr<pypy.module._cffi_backend.ffi_obj.W_FFIObject.inst_ctxobj> -> %i0
  44  setfield_gc_i %r0, %i0, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_ctx>
  49  setfield_gc_r %r0, %r1, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_ffi>
  54  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff458f1140> -> %r1
  58  setfield_gc_r %r1, $<* array [  ]>, FieldDescr<dicttable.entries>
  63  setfield_gc_i %r1, $0, FieldDescr<dicttable.num_live_items>
  68  setfield_gc_i %r1, $0, FieldDescr<dicttable.num_ever_used_items>
  73  setfield_gc_i %r1, $4, FieldDescr<dicttable.lookup_function_no>
  78  setfield_gc_r %r1, $<* None>, FieldDescr<dicttable.indexes>
  83  setfield_gc_r %r0, %r1, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_dict_w>
  88  setfield_gc_r %r0, %r2, FieldDescr<pypy.module._cffi_backend.lib_obj.W_LibObject.inst_libname>
  93  setfield_gc_i %r0, %i1, FieldDescr<pypy.module._cffi_backend.cdlopen.W_DlOpenLibObject.inst_libhandle>
  98  -live- %r0
  98  guard_class %r0 -> %i1
 101  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_user_overridden_class> -> %i1
 106  -live- %i1, %r0
 106  goto_if_not %i1, L8
 110  -live- %r0
 110  guard_class %r0 -> %i1
 113  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i1
 118  getfield_raw_i %i1, FieldDescr<specfunc.variant0> -> %i1
 123  -live- %i1, %r0
 123  int_guard_value %i1
 125  residual_call_r_r %i1, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 132  -live- %r0, %r1
 132  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.typeobject.W_TypeObject.inst_hasuserdel> -> %i1
 137  -live- %i1, %r0
 137  goto_if_not %i1, L9
 141  void_return
 142  ---
 142  L9:
 142  L10:
 142  residual_call_r_v $<* fn register_finalizer___pypy_interpreter_executioncon>, R[%r0], <CallDescr(r) EF=2>
 148  void_return
 149  ---
 149  L8:
 149  goto L10
 152  ---
 152  L6:
 152  goto L7
 155  ---
 155  L5:
 155  goto_if_exception_mismatch $<* struct object_vtable>, L11
 159  last_exc_value -> %r1
 161  inline_call_r_r <JitCode 'wrap_dlopenerror'>, R[%r1, %r2] -> %r1
 168  -live- %i2, %r1
 168  catch_exception L12
 171  assert_not_none %r1
 173  -live- %i2, %r1
 173  guard_class %r1 -> %i1
 176  L13:
 176  -live- %i2, %r1
 176  goto_if_not_int_is_true %i2, L14
 180  residual_call_ir_v $<* fn _ll_1_raw_free__arrayPtr>, I[%i2], R[], <CallDescr(i) EF=2 OS_RAW_FREE>
 187  L15:
 187  -live- %r1
 187  raise %r1
 189  ---
 189  L14:
 189  goto L15
 192  ---
 192  L12:
 192  last_exception -> %i1
 194  last_exc_value -> %r1
 196  -live- %i2, %r1
 196  goto_if_not_int_is_true %i2, L16
 200  residual_call_ir_v $<* fn _ll_1_raw_free__arrayPtr>, I[%i2], R[], <CallDescr(i) EF=2 OS_RAW_FREE>
 207  -live- %r1
 207  raise %r1
 209  ---
 209  L16:
 209  -live- %r1
 209  raise %r1
 211  ---
 211  L11:
 211  last_exception -> %i1
 213  last_exc_value -> %r1
 215  goto L13
 218  ---
 218  L3:
 218  int_copy %i2 -> %i1
 221  goto L4
 224  ---
 224  L1:
 224  strlen %r2 -> %i1
 227  int_add %i1, $1 -> %i1
 231  residual_call_ir_i $<* fn _ll_1_raw_malloc_varsize__Signed>, I[%i1], R[], <CallDescr(i) EF=5 OS_RAW_MALLOC_VARSIZE_CHAR> -> %i2
 239  -live- %i0, %i2, %r0, %r1, %r2
 239  strlen %r2 -> %i1
 242  residual_call_ir_v $<* fn copy_string_to_raw>, I[%i2, $0, %i1], R[%r2], <CallDescr(riii) EF=0 OS_STR_COPY_TO_RAW>
 252  setarrayitem_raw_i %i2, %i1, $'\x00', <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff9cc75640>
 258  goto L2
