   0  -live- %i0, %r0, %r1, %r2
   3  goto_if_not_ptr_nonzero %r2, L1
   7  ref_copy %r2 -> %r3
  10  -live- %i0, %r0, %r1, %r2, %r3
  13  guard_class %r3 -> %i1
  16  -live- %i0, %i1, %r0, %r1, %r2
  19  goto_if_not_int_eq %i1, $<* struct object_vtable>, L2
  24  getfield_gc_i_pure %r2, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
  29  int_is_true %i1 -> %i1
  32  L3:
  32  -live- %i0, %i1, %r0, %r1
  35  switch %i0, <SwitchDictDescr -1:L4, 0:L5>
  39  ref_copy $<* struct rpy_string> -> %r3
  42  L6:
  42  -live- %i1, %r0, %r1, %r3
  45  goto_if_not %i1, L7
  49  int_copy $True -> %i0
  52  L8:
  52  residual_call_ir_r $<* fn str_decode_utf_32_helper>, I[%i0, $True], R[%r0, %r1, %r3, $<* struct rpy_string>], <CallDescr(rrirri) EF=7> -> %r3
  65  -live- %r3
  68  getfield_gc_r_pure %r3, FieldDescr<tuple4.item0> -> %r1
  73  getfield_gc_i_pure %r3, FieldDescr<tuple4.item1> -> %i0
  78  getfield_gc_i_pure %r3, FieldDescr<tuple4.item2> -> %i1
  83  getfield_gc_i_pure %r3, FieldDescr<tuple4.item3> -> %i2
  88  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555aaf9d4100> -> %r3
  92  setfield_gc_r %r3, %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
  97  setfield_gc_i %r3, %i1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 102  setfield_gc_r %r3, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 107  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555aadb8aa68> -> %r1
 111  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 116  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555aadb8aa68> -> %r0
 120  setfield_gc_i %r0, %i2, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 125  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8> -> %r2
 130  setarrayitem_gc_r %r2, $0, %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8>
 136  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8>
 142  setarrayitem_gc_r %r2, $2, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8>
 148  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r2] -> %r3
 154  -live- %r2, %r3
 157  catch_exception L9
 160  ref_return %r3
 162  ---
 162  L9:
 162  goto_if_exception_mismatch $<* struct object_vtable>, L10
 166  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555aaf7a3440> -> %r3
 170  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 175  ref_return %r3
 177  ---
 177  L10:
 177  reraise
 178  ---
 178  L7:
 178  int_copy $False -> %i0
 181  goto L8
 184  ---
 184  L4:
 184  -live- %i1, %r0, %r1
 187  ref_copy $<* struct rpy_string> -> %r3
 190  goto L6
 193  ---
 193  L5:
 193  -live- %i1, %r0, %r1
 196  ref_copy $<* struct rpy_string> -> %r3
 199  goto L6
 202  ---
 202  L2:
 202  L11:
 202  inline_call_r_i <JitCode 'is_true'>, R[%r2] -> %i1
 208  -live- %i0, %i1, %r0, %r1
 211  goto L3
 214  ---
 214  L1:
 214  goto L11
