   0  getfield_gc_i_pure %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
  16  goto_if_not_int_eq %i3, %i2, L1
  21  int_copy %i0 -> %i4
  24  ref_copy %r0 -> %r3
  27  L2:
  27  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i3
  32  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r1
  37  strlen %r1 -> %i2
  40  -live- %i0, %i1, %i2, %i3, %i4, %r1, %r3
  43  goto_if_not_int_eq %i3, %i2, L3
  48  int_copy %i1 -> %i2
  51  ref_copy %r3 -> %r2
  54  L4:
  54  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r0
  59  strlen %r0 -> %i3
  62  -live- %i0, %i1, %i2, %i3, %i4, %r0
  65  goto_if_not_int_gt %i2, %i3, L5
  70  strlen %r0 -> %i2
  73  L6:
  73  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[%i4, %i2], R[%r0], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r0
  83  -live- %i0, %i1, %r0
  86  int_sub %i1, %i0 -> %i3
  90  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000056093389bf30> -> %r1
  94  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
  99  setfield_gc_i %r1, %i3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 104  setfield_gc_r %r1, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 109  ref_return %r1
 111  ---
 111  L5:
 111  goto L6
 114  ---
 114  L3:
 114  getfield_gc_r %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r0
 119  ref_copy %r3 -> %r2
 122  conditional_call_value_ir_r %r0, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r3], <CallDescr(r) EF=5> -> %r0
 131  -live- %i0, %i1, %i4, %r0, %r1, %r2
 134  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i1], R[%r1, %r0], <CallDescr(rri) EF=4> -> %i2
 144  -live- %i0, %i1, %i2, %i4, %r2
 147  goto L4
 150  ---
 150  L1:
 150  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r1
 155  ref_copy %r0 -> %r3
 158  conditional_call_value_ir_r %r1, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r0], <CallDescr(r) EF=5> -> %r0
 167  -live- %i0, %i1, %r0, %r2, %r3
 170  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i0], R[%r2, %r0], <CallDescr(rri) EF=4> -> %i4
 180  -live- %i0, %i1, %i4, %r3
 183  goto L2
