   0  -live- %r0, %r1
   3  ref_guard_value %r0
   5  getfield_gc_i %r1, FieldDescr<rpython.rlib.libffi.ArgChain.inst_numargs> -> %i0
  10  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.clibffi.AbstractFuncPtr.inst_argtypes> -> %r2
  15  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x19472070> -> %i1
  20  -live- %i0, %i1, %r0, %r1
  23  goto_if_not_int_ne %i0, %i1, L1
  28  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.clibffi.AbstractFuncPtr.inst_argtypes> -> %r2
  33  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x19472070> -> %i0
  38  getfield_gc_i %r1, FieldDescr<rpython.rlib.libffi.ArgChain.inst_numargs> -> %i1
  43  new_array_clear $4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4e02ef50> -> %r2
  48  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4e02ef50>
  54  residual_call_ir_r $<* fn ll_int2dec__Signed>, I[%i0], R[], <CallDescr(i) EF=3> -> %r1
  62  -live- %i1, %r1, %r2
  65  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4e02ef50>
  71  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4e02ef50>
  77  residual_call_ir_r $<* fn ll_int2dec__Signed>, I[%i1], R[], <CallDescr(i) EF=3> -> %r1
  85  -live- %r1, %r2
  88  setarrayitem_gc_r %r2, $3, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4e02ef50>
  94  int_isconstant $4 -> %i0
  97  -live- %i0, %r2
 100  goto_if_not %i0, L2
 104  ref_isvirtual %r2 -> %i0
 107  -live- %i0, %r2
 110  goto_if_not %i0, L3
 114  inline_call_ir_r <JitCode 'll_join_strs__v1129___simple_call__function_'>, I[$4], R[%r2] -> %r1
 122  L4:
 122  -live-
 125  raise $<* struct object>
 127  ---
 127  L3:
 127  L5:
 127  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1131___simple_call__function_>, I[$4], R[%r2], <CallDescr(ir) EF=5> -> %r1
 136  -live-
 139  goto L4
 142  ---
 142  L2:
 142  goto L5
 145  ---
 145  L1:
 145  residual_call_r_i $<* fn Func._prepare>, R[%r0], <CallDescr(r) EF=5> -> %i1
 152  -live- %i1, %r0, %r1
 155  getfield_gc_r %r1, FieldDescr<rpython.rlib.libffi.ArgChain.inst_first> -> %r1
 160  int_copy $0 -> %i2
 163  L6:
 163  -live- %i1, %i2, %r0, %r1
 166  goto_if_not_ptr_nonzero %r1, L7
 170  -live- %i1, %i2, %r0, %r1
 173  guard_class %r1 -> %i0
 176  getfield_raw_i %i0, FieldDescr<rpython.rlib.libffi.AbstractArg_vtable.cls_push> -> %i0
 181  -live- %i0, %i1, %i2, %r0, %r1
 184  int_guard_value %i0
 186  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1, %i2], R[%r1, %r0], <CallDescr(rrii) EF=5>
 196  -live- %i1, %i2, %r0, %r1
 199  int_add %i2, $1 -> %i2
 203  getfield_gc_r %r1, FieldDescr<rpython.rlib.libffi.AbstractArg.inst_next> -> %r1
 208  goto L6
 211  ---
 211  L7:
 211  getfield_gc_i_pure %r0, FieldDescr<rpython.rlib.libffi.Func.inst_funcsym> -> %i0
 216  residual_call_ir_i $<* fn _do_call_int__SHORT>, I[%i0, %i1], R[%r0], <CallDescr(rii) EF=7> -> %i0
 226  -live- %i0
 229  int_signext %i0, $2 -> %i0
 233  int_return %i0
