   0  -live- %i0, %r0, %r1, %r2
   3  goto_if_not_ptr_iszero %r1, L1
   7  ref_copy $<* struct rpy_string> -> %r1
  10  L2:
  10  -live- %i0, %r0, %r1, %r2
  13  goto_if_not_ptr_nonzero %r2, L3
  17  ref_copy %r2 -> %r3
  20  -live- %i0, %r0, %r1, %r2, %r3
  23  guard_class %r3 -> %i1
  26  -live- %i0, %i1, %r0, %r1, %r2
  29  goto_if_not_int_eq %i1, $<* struct object_vtable>, L4
  34  getfield_gc_i_pure %r2, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
  39  int_is_true %i1 -> %i1
  42  L5:
  42  -live- %i0, %i1, %r0, %r1
  45  switch %i0, <SwitchDictDescr -1:L6, 0:L7>
  49  ref_copy $<* struct rpy_string> -> %r3
  52  L8:
  52  -live- %i1, %r0, %r1, %r3
  55  goto_if_not %i1, L9
  59  int_copy $True -> %i0
  62  L10:
  62  residual_call_ir_r $<* fn str_decode_utf_16_helper>, I[%i0, $<* fn call_errorhandler>], R[%r0, %r1, %r3, $<* struct rpy_string>], <CallDescr(rriirr) EF=7> -> %r3
  75  -live- %r3
  78  getfield_gc_r_pure %r3, FieldDescr<tuple4.item0> -> %r1
  83  getfield_gc_i_pure %r3, FieldDescr<tuple4.item1> -> %i0
  88  getfield_gc_i_pure %r3, FieldDescr<tuple4.item2> -> %i1
  93  getfield_gc_i_pure %r3, FieldDescr<tuple4.item3> -> %i2
  98  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a710fb980> -> %r3
 102  setfield_gc_r %r3, %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 107  setfield_gc_i %r3, %i1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 112  setfield_gc_r %r3, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 117  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a76e65440> -> %r1
 121  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 126  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a76e65440> -> %r0
 130  setfield_gc_i %r0, %i2, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 135  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a58f50a30> -> %r2
 140  setarrayitem_gc_r %r2, $0, %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a58f50a30>
 146  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a58f50a30>
 152  setarrayitem_gc_r %r2, $2, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a58f50a30>
 158  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r2] -> %r3
 164  -live- %r2, %r3
 167  catch_exception L11
 170  ref_return %r3
 172  ---
 172  L11:
 172  goto_if_exception_mismatch $<* struct object_vtable>, L12
 176  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a7739e090> -> %r3
 180  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 185  ref_return %r3
 187  ---
 187  L12:
 187  reraise
 188  ---
 188  L9:
 188  int_copy $False -> %i0
 191  goto L10
 194  ---
 194  L6:
 194  -live- %i1, %r0, %r1
 197  ref_copy $<* struct rpy_string> -> %r3
 200  goto L8
 203  ---
 203  L7:
 203  -live- %i1, %r0, %r1
 206  ref_copy $<* struct rpy_string> -> %r3
 209  goto L8
 212  ---
 212  L4:
 212  L13:
 212  inline_call_r_i <JitCode 'is_true'>, R[%r2] -> %i1
 218  -live- %i0, %i1, %r0, %r1
 221  goto L5
 224  ---
 224  L3:
 224  goto L13
 227  ---
 227  L1:
 227  goto L2
