   0  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
   5  -live- %i0, %r0, %r1
   5  goto_if_not_int_eq %i0, $3, L1
  10  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000000186204d08> -> %r1
  14  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  19  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  24  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
  29  assert_not_none %r1
  31  -live- %r1
  31  guard_class %r1 -> %i0
  34  -live- %r1
  34  raise %r1
  36  ---
  36  L1:
  36  inline_call_r_i <JitCode 'convert_size'>, R[%r1] -> %i1
  42  -live- %i1, %r0
  42  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i2
  47  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
  52  -live- %i0, %i1, %i2, %r0
  52  switch %i0, <SwitchDictDescr 0:L2, 1:L3>
  56  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf> -> %r1
  61  getfield_gc_r %r1, FieldDescr<pypy.module._io.interp_stringio.UnicodeIO.inst_data> -> %r1
  66  getfield_gc_i %r1, FieldDescr<list.length> -> %i0
  71  L4:
  71  -live- %i0, %i1, %i2, %r0
  71  goto_if_not_int_ge %i2, %i0, L5
  76  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  78  ---
  78  L5:
  78  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
  83  -live- %i0, %i1, %r0
  83  goto_if_not_int_eq %i0, $1, L6
  88  inline_call_r_v <JitCode 'W_StringIO._realize'>, R[%r0]
  93  -live- %i1, %r0
  93  L7:
  93  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
  98  -live- %i0, %i1, %r0
  98  goto_if_not_int_is_zero %i0, L8
 102  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r1
 107  getfield_gc_i %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i3
 112  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i2
 117  int_sub %i3, %i2 -> %i0
 121  -live- %i0, %i1, %i2, %i3, %r0
 121  goto_if_not_int_ge %i1, $0, L9
 126  -live- %i0, %i1, %i2, %i3, %r0
 126  goto_if_not_int_le %i1, %i0, L10
 131  int_add %i2, %i1 -> %i3
 135  L11:
 135  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i0
 140  -live- %i0, %i3, %r0
 140  goto_if_not_int_gt %i0, %i3, L12
 145  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000017400aaa0> -> %r1
 149  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 154  setfield_gc_i %r1, $0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 159  setfield_gc_r %r1, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 164  ref_return %r1
 166  ---
 166  L12:
 166  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r1
 171  inline_call_ir_r <JitCode 'W_UnicodeObject._unicode_sliced'>, I[%i0, %i3], R[%r1] -> %r1
 180  -live- %i3, %r0, %r1
 180  setfield_gc_i %r0, %i3, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos>
 185  ref_return %r1
 187  ---
 187  L10:
 187  goto L11
 190  ---
 190  L9:
 190  goto L11
 193  ---
 193  L8:
 193  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf> -> %r1
 198  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i0
 203  inline_call_ir_r <JitCode 'UnicodeIO.read'>, I[%i0, %i1], R[%r1] -> %r1
 212  -live- %r0, %r1
 212  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i0
 217  unicodelen %r1 -> %i1
 220  int_add %i0, %i1 -> %i0
 224  setfield_gc_i %r0, %i0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos>
 229  residual_call_r_r $<* fn ll_encode_utf8__UnicodeR_Ptr_GcStruct_rpy_unic_rpy_unicodePtr>, R[%r1], <CallDescr(r) EF=4> -> %r0
 236  -live- %r0, %r1
 236  unicodelen %r1 -> %i0
 239  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000017400aaa0> -> %r1
 243  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 248  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 253  setfield_gc_r %r1, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 258  ref_return %r1
 260  ---
 260  L6:
 260  goto L7
 263  ---
 263  L2:
 263  -live- %i1, %i2, %r0
 263  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r1
 268  getfield_gc_i %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 273  goto L4
 276  ---
 276  L3:
 276  -live- %i1, %i2, %r0
 276  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder> -> %r1
 281  getfield_gc_i %r1, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i0
 286  goto L4
