   0  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r3
   5  inline_call_r_r <JitCode 'convert_arg_to_w_unicode'>, R[%r1, $<* struct rpy_string>] -> %r4
  12  -live- %r0, %r1, %r3, %r4
  12  getfield_gc_i %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i1
  17  -live- %i1, %r0, %r1, %r3, %r4
  17  goto_if_not_int_is_zero %i1, L1
  21  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r2
  25  setfield_gc_r %r2, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  30  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  35  assert_not_none %r2
  37  -live- %r2
  37  guard_class %r2 -> %i0
  40  -live- %r2
  40  raise %r2
  42  ---
  42  L1:
  42  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  47  strlen %r3 -> %i0
  50  inline_call_ir_i <JitCode 'll_find__rpy_stringPtr_rpy_stringPtr_Signed_Signed'>, I[$0, %i0], R[%r3, %r2] -> %i3
  60  -live- %i1, %i3, %r0, %r1, %r3, %r4
  60  -live- %i1, %i3, %r0, %r1, %r3, %r4
  60  goto_if_not_int_lt %i3, $0, L2
  65  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %r2
  70  setarrayitem_gc_r %r2, $0, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
  76  setarrayitem_gc_r %r2, $1, $<* struct object>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
  82  setarrayitem_gc_r %r2, $2, $<* struct object>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
  88  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r2] -> %r3
  94  -live- %r2, %r3
  94  catch_exception L3
  97  L4:
  97  ref_return %r3
  99  ---
  99  L3:
  99  goto_if_exception_mismatch $<* struct object_vtable>, L5
 103  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac58e10c0> -> %r3
 107  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 112  goto L4
 115  ---
 115  L5:
 115  reraise
 116  ---
 116  L2:
 116  residual_call_ir_i $<* fn _check_utf8>, I[$True, $0, %i3], R[%r3], <CallDescr(riii) EF=4> -> %i2
 127  -live- %i1, %i2, %i3, %r0, %r1, %r3, %r4
 127  -live- %i1, %i2, %i3, %r0, %r1, %r3, %r4
 127  goto_if_not_int_ge %i2, $0, L6
 132  strlen %r3 -> %i0
 135  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r3, %r4
 135  goto_if_not_int_gt %i3, %i0, L7
 140  int_copy %i3 -> %i0
 143  strlen %r3 -> %i3
 146  L8:
 146  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[$0, %i3], R[%r3], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r2
 156  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 156  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac551d398> -> %r5
 160  setfield_gc_r %r5, %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 165  setfield_gc_i %r5, %i2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 170  setfield_gc_r %r5, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 175  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
 180  strlen %r2 -> %i3
 183  int_add %i0, %i3 -> %i3
 187  strlen %r3 -> %i4
 190  strlen %r3 -> %i0
 193  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r3, %r5
 193  goto_if_not_int_gt %i4, %i0, L9
 198  strlen %r3 -> %i4
 201  L10:
 201  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i3, %i4], R[%r3], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r2
 211  -live- %i1, %i2, %r0, %r1, %r2, %r5
 211  getfield_gc_i %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 216  int_sub %i0, %i2 -> %i0
 220  int_sub %i0, %i1 -> %i0
 224  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac551d398> -> %r3
 228  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 233  setfield_gc_i %r3, %i0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 238  setfield_gc_r %r3, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 243  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %r2
 248  setarrayitem_gc_r %r2, $0, %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
 254  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
 260  setarrayitem_gc_r %r2, $2, %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
 266  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r2] -> %r3
 272  -live- %r2, %r3
 272  catch_exception L11
 275  L12:
 275  ref_return %r3
 277  ---
 277  L11:
 277  goto_if_exception_mismatch $<* struct object_vtable>, L13
 281  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac58e10c0> -> %r3
 285  setfield_gc_r %r3, %r2, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 290  goto L12
 293  ---
 293  L13:
 293  reraise
 294  ---
 294  L9:
 294  goto L10
 297  ---
 297  L7:
 297  int_copy %i3 -> %i0
 300  goto L8
 303  ---
 303  L6:
 303  int_invert %i2 -> %i0
 306  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabf99ac28> -> %r2
 310  setfield_gc_i %r2, %i0, FieldDescr<rpython.rlib.rutf8.CheckError.inst_pos>
 315  assert_not_none %r2
 317  -live- %r2
 317  guard_class %r2 -> %i0
 320  -live- %r2
 320  raise %r2
