   0  -live- %i0, %r0, %r1, %r2
   0  goto_if_not_ptr_nonzero %r2, L1
   4  ref_copy %r2 -> %r3
   7  -live- %i0, %r0, %r1, %r2, %r3
   7  guard_class %r3 -> %i1
  10  -live- %i0, %i1, %r0, %r1, %r2
  10  goto_if_not_int_eq %i1, $<* struct object_vtable>, L2
  15  getfield_gc_i_pure %r2, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
  20  int_is_true %i1 -> %i1
  23  L3:
  23  -live- %i0, %i1, %r0, %r1
  23  switch %i0, <SwitchDictDescr -1:L4, 0:L5>
  27  ref_copy $<* struct rpy_string> -> %r3
  30  L6:
  30  -live- %i1, %r0, %r1, %r3
  30  goto_if_not %i1, L7
  34  int_copy $True -> %i0
  37  L8:
  37  strlen %r0 -> %i1
  40  residual_call_ir_r $<* fn str_decode_utf_32_helper>, I[%i1, %i0, $<* fn call_errorhandler>], R[%r0, %r1, %r3], <CallDescr(ririir) EF=7> -> %r3
  53  -live- %r3
  53  getfield_gc_r_pure %r3, FieldDescr<tuple3.item0> -> %r0
  58  getfield_gc_i_pure %r3, FieldDescr<tuple3.item1> -> %i0
  63  getfield_gc_i_pure %r3, FieldDescr<tuple3.item2> -> %i1
  68  -live- %i0, %i1, %r0
  68  goto_if_not_ptr_iszero %r0, L9
  72  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
  75  L10:
  75  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x100951d1e10> -> %r0
  79  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
  84  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x100951d1e10> -> %r1
  88  setfield_gc_i %r1, %i1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
  93  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r2
  98  setarrayitem_gc_r %r2, $0, %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 104  setarrayitem_gc_r %r2, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 110  setarrayitem_gc_r %r2, $2, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 116  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r2] -> %r3
 122  -live- %r2, %r3
 122  catch_exception L11
 125  ref_return %r3
 127  ---
 127  L11:
 127  goto_if_exception_mismatch $<* struct object_vtable>, L12
 131  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10097e0b390> -> %r3
 135  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 140  ref_return %r3
 142  ---
 142  L12:
 142  reraise
 143  ---
 143  L9:
 143  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10097d34a10> -> %r3
 147  setfield_gc_r %r3, %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__value>
 152  goto L10
 155  ---
 155  L7:
 155  int_copy $False -> %i0
 158  goto L8
 161  ---
 161  L4:
 161  -live- %i1, %r0, %r1
 161  ref_copy $<* struct rpy_string> -> %r3
 164  goto L6
 167  ---
 167  L5:
 167  -live- %i1, %r0, %r1
 167  ref_copy $<* struct rpy_string> -> %r3
 170  goto L6
 173  ---
 173  L2:
 173  L13:
 173  inline_call_r_i <JitCode 'is_true'>, R[%r2] -> %i1
 179  -live- %i0, %i1, %r0, %r1
 179  goto L3
 182  ---
 182  L1:
 182  goto L13
