   0  getfield_gc_i %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i3
   5  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  10  strlen %r2 -> %i2
  13  -live- %i0, %i1, %i2, %i3, %r0, %r2
  13  goto_if_not_int_eq %i3, %i2, L1
  18  int_copy %i0 -> %i4
  21  ref_copy %r0 -> %r3
  24  L2:
  24  getfield_gc_i %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i3
  29  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r1
  34  strlen %r1 -> %i2
  37  -live- %i0, %i1, %i2, %i3, %i4, %r1, %r3
  37  goto_if_not_int_eq %i3, %i2, L3
  42  int_copy %i1 -> %i2
  45  ref_copy %r3 -> %r2
  48  L4:
  48  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r0
  53  strlen %r0 -> %i3
  56  -live- %i0, %i1, %i2, %i3, %i4, %r0
  56  goto_if_not_int_gt %i2, %i3, L5
  61  strlen %r0 -> %i2
  64  L6:
  64  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i4, %i2], R[%r0], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r0
  74  -live- %i0, %i1, %r0
  74  int_sub %i1, %i0 -> %i3
  78  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac551d398> -> %r1
  82  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
  87  setfield_gc_i %r1, %i3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
  92  setfield_gc_r %r1, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
  97  ref_return %r1
  99  ---
  99  L5:
  99  goto L6
 102  ---
 102  L3:
 102  getfield_gc_r %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r0
 107  ref_copy %r3 -> %r2
 110  conditional_call_value_ir_r %r0, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r3], <CallDescr(r) EF=5> -> %r0
 119  -live- %i0, %i1, %i4, %r0, %r1, %r2
 119  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i1], R[%r1, %r0], <CallDescr(rri) EF=4> -> %i2
 129  -live- %i0, %i1, %i2, %i4, %r2
 129  goto L4
 132  ---
 132  L1:
 132  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r1
 137  ref_copy %r0 -> %r3
 140  conditional_call_value_ir_r %r1, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r0], <CallDescr(r) EF=5> -> %r0
 149  -live- %i0, %i1, %r0, %r2, %r3
 149  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i0], R[%r2, %r0], <CallDescr(rri) EF=4> -> %i4
 159  -live- %i0, %i1, %i4, %r3
 159  goto L2
