   0  inline_call_r_r <JitCode 'W_StringIO._decode_string'>, R[%r0, %r1] -> %r4
   7  -live- %r0, %r1, %r4
  10  guard_class %r4 -> %i0
  13  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_utf8_w> -> %i0
  18  -live- %i0, %r0, %r1, %r4
  21  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  25  unreachable
  26  ---
  26  L1:
  26  -live- %r0, %r1, %r4
  29  ref_copy %r4 -> %r3
  32  getfield_gc_i %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
  37  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  42  record_known_result_i_ir_v %i0, $<* fn _check_utf8>, I[$True, $0, $-1], R[%r2], <CallDescr(riii) EF=4>
  53  -live- %r0, %r1, %r3, %r4
  56  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
  61  L4:
  61  inline_call_r_i <JitCode 'len_w'>, R[%r1] -> %i1
  67  -live- %i1, %r0, %r2, %r3
  70  strlen %r2 -> %i0
  73  -live- %i0, %i1, %r0, %r2, %r3
  76  goto_if_not_int_is_true %i0, L5
  80  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
  85  -live- %i0, %i1, %r0, %r2, %r3
  88  switch %i0, <SwitchDictDescr 0:L6, 1:L7>
  92  L8:
  92  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state> -> %i0
  97  -live- %i0, %i1, %r0, %r2, %r3
 100  goto_if_not_int_eq %i0, $1, L9
 105  getfield_gc_i %r3, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i2
 110  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder> -> %r3
 115  getfield_gc_r %r3, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__s> -> %r4
 120  inline_call_r_v <JitCode 'll_jit_append__stringbuilderPtr_rpy_stringPtr'>, R[%r4, %r2]
 126  -live- %i1, %i2, %r0, %r3
 129  getfield_gc_i %r3, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i0
 134  int_add %i0, %i2 -> %i0
 138  setfield_gc_i %r3, %i0, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt>
 143  L10:
 143  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i0
 148  int_add %i0, %i2 -> %i0
 152  setfield_gc_i %r0, %i0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos>
 157  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba4460640> -> %r2
 161  setfield_gc_i %r2, %i1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 166  ref_return %r2
 168  ---
 168  L9:
 168  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf> -> %r4
 173  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i0
 178  residual_call_ir_i $<* fn UnicodeIO.write>, I[%i0], R[%r4, %r2], <CallDescr(rri) EF=5> -> %i2
 188  -live- %i1, %i2, %r0
 191  goto L10
 194  ---
 194  L6:
 194  -live- %i0, %i1, %r0, %r2, %r3
 197  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i2
 202  -live- %i0, %i1, %i2, %r0, %r2, %r3
 205  switch %i0, <SwitchDictDescr 0:L11, 1:L12>
 209  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf> -> %r4
 214  getfield_gc_r %r4, FieldDescr<pypy.module._io.interp_stringio.UnicodeIO.inst_data> -> %r4
 219  getfield_gc_i %r4, FieldDescr<list.length> -> %i0
 224  L13:
 224  -live- %i0, %i1, %i2, %r0, %r2, %r3
 227  goto_if_not_int_eq %i2, %i0, L14
 232  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba42832f0> -> %r5
 236  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba427f1d8> -> %r4
 240  newstr $0 -> %r1
 243  setfield_gc_r %r4, %r1, FieldDescr<stringbuilder.current_buf>
 248  setfield_gc_i %r4, $0, FieldDescr<stringbuilder.current_pos>
 253  setfield_gc_i %r4, $0, FieldDescr<stringbuilder.current_end>
 258  setfield_gc_i %r4, $0, FieldDescr<stringbuilder.total_size>
 263  setfield_gc_r %r5, %r4, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__s>
 268  setfield_gc_i %r5, $0, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt>
 273  setfield_gc_r %r0, %r5, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder>
 278  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r4
 283  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r1
 288  getfield_gc_i %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 293  getfield_gc_r %r5, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__s> -> %r4
 298  inline_call_r_v <JitCode 'll_jit_append__stringbuilderPtr_rpy_stringPtr'>, R[%r4, %r1]
 304  -live- %i0, %i1, %r0, %r2, %r3, %r5
 307  getfield_gc_i %r5, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i2
 312  int_add %i2, %i0 -> %i0
 316  setfield_gc_i %r5, %i0, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt>
 321  setfield_gc_r %r0, $<* struct pypy.objspace.std.unicodeobject.W_UnicodeObject>, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value>
 326  setfield_gc_i %r0, $1, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state>
 331  goto L8
 334  ---
 334  L14:
 334  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r1
 339  -live- %i1, %r0, %r1, %r2, %r3
 342  guard_class %r1 -> %i0
 345  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_utf8_w> -> %i0
 350  -live- %i0, %i1, %r0, %r1, %r2, %r3
 353  switch %i0, <SwitchDictDescr 0:L15, 1:L16, 2:L17>
 357  unreachable
 358  ---
 358  L15:
 358  -live- %i1, %r0, %r1, %r2, %r3
 361  getfield_gc_i %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 366  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r4
 371  record_known_result_i_ir_v %i0, $<* fn _check_utf8>, I[$True, $0, $-1], R[%r4], <CallDescr(riii) EF=4>
 382  -live- %i1, %r0, %r1, %r2, %r3
 385  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r5
 390  L18:
 390  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab3c1e9f30> -> %r4
 394  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba20c90c0>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000aaaba20c8640> -> %r1
 405  setfield_gc_r %r4, %r1, FieldDescr<pypy.module._io.interp_stringio.UnicodeIO.inst_data>
 410  residual_call_ir_i $<* fn UnicodeIO.write>, I[$0], R[%r4, %r5], <CallDescr(rri) EF=5> -> %i0
 420  -live- %i1, %r0, %r2, %r3, %r4
 423  setfield_gc_r %r0, %r4, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf>
 428  setfield_gc_r %r0, $<* struct pypy.objspace.std.unicodeobject.W_UnicodeObject>, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value>
 433  setfield_gc_i %r0, $2, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state>
 438  goto L8
 441  ---
 441  L16:
 441  -live- %i1, %r0, %r1, %r2, %r3
 444  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r5
 449  goto L18
 452  ---
 452  L17:
 452  -live- %r1
 455  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r1] -> %r2
 464  -live- %r2
 467  assert_not_none %r2
 469  -live- %r2
 472  guard_class %r2 -> %i0
 475  -live- %r2
 478  raise %r2
 480  ---
 480  L11:
 480  -live- %i1, %i2, %r0, %r2, %r3
 483  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r4
 488  getfield_gc_i %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 493  goto L13
 496  ---
 496  L12:
 496  -live- %i1, %i2, %r0, %r2, %r3
 499  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder> -> %r4
 504  getfield_gc_i %r4, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i0
 509  goto L13
 512  ---
 512  L7:
 512  -live- %i0, %i1, %r0, %r2, %r3
 515  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_pos> -> %i2
 520  -live- %i0, %i1, %i2, %r0, %r2, %r3
 523  switch %i0, <SwitchDictDescr 0:L19, 1:L20>
 527  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf> -> %r4
 532  getfield_gc_r %r4, FieldDescr<pypy.module._io.interp_stringio.UnicodeIO.inst_data> -> %r4
 537  getfield_gc_i %r4, FieldDescr<list.length> -> %i0
 542  L21:
 542  -live- %i0, %i1, %i2, %r0, %r2, %r3
 545  goto_if_not_int_ne %i2, %i0, L22
 550  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder> -> %r4
 555  getfield_gc_r %r4, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__s> -> %r1
 560  ref_isvirtual %r1 -> %i0
 563  -live- %i0, %i1, %r0, %r1, %r2, %r3
 566  goto_if_not %i0, L23
 570  getfield_gc_r %r1, FieldDescr<stringbuilder.extra_pieces> -> %r4
 575  -live- %i1, %r0, %r1, %r2, %r3, %r4
 578  goto_if_not_ptr_nonzero %r4, L24
 582  residual_call_r_v $<* fn ll_fold_pieces__stringbuilderPtr>, R[%r1], <CallDescr(r) EF=5>
 588  L25:
 588  -live- %i1, %r0, %r1, %r2, %r3
 591  getfield_gc_r %r1, FieldDescr<stringbuilder.current_buf> -> %r5
 596  L26:
 596  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab3c1e9f30> -> %r4
 600  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba20c90c0>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000aaaba20c8640> -> %r1
 611  setfield_gc_r %r4, %r1, FieldDescr<pypy.module._io.interp_stringio.UnicodeIO.inst_data>
 616  residual_call_ir_i $<* fn UnicodeIO.write>, I[$0], R[%r4, %r5], <CallDescr(rri) EF=5> -> %i0
 626  -live- %i1, %r0, %r2, %r3, %r4
 629  setfield_gc_r %r0, %r4, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_buf>
 634  setfield_gc_r %r0, $<* struct rpython.rlib.rutf8.Utf8StringBuilder>, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder>
 639  setfield_gc_i %r0, $2, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_state>
 644  goto L8
 647  ---
 647  L24:
 647  getfield_gc_i %r1, FieldDescr<stringbuilder.current_pos> -> %i0
 652  getfield_gc_i %r1, FieldDescr<stringbuilder.total_size> -> %i2
 657  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
 660  goto_if_not_int_ne %i0, %i2, L27
 665  getfield_gc_r %r1, FieldDescr<stringbuilder.current_buf> -> %r4
 670  residual_call_ir_r $<* fn ll_shrink_array__rpy_stringPtr_Signed>, I[%i0], R[%r4], <CallDescr(ri) EF=5 OS_SHRINK_ARRAY> -> %r4
 679  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 682  setfield_gc_r %r1, %r4, FieldDescr<stringbuilder.current_buf>
 687  setfield_gc_i %r1, %i0, FieldDescr<stringbuilder.current_end>
 692  setfield_gc_i %r1, %i0, FieldDescr<stringbuilder.total_size>
 697  goto L25
 700  ---
 700  L27:
 700  goto L25
 703  ---
 703  L23:
 703  residual_call_r_r $<* fn ll_build_trampoline__v1192___simple_call__function_>, R[%r1], <CallDescr(r) EF=5> -> %r5
 710  -live- %i1, %r0, %r2, %r3, %r5
 713  goto L26
 716  ---
 716  L22:
 716  goto L8
 719  ---
 719  L19:
 719  -live- %i1, %i2, %r0, %r2, %r3
 722  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_w_value> -> %r4
 727  getfield_gc_i %r4, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i0
 732  goto L21
 735  ---
 735  L20:
 735  -live- %i1, %i2, %r0, %r2, %r3
 738  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_stringio.W_StringIO.inst_builder> -> %r4
 743  getfield_gc_i %r4, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i0
 748  goto L21
 751  ---
 751  L5:
 751  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaaba4460640> -> %r2
 755  setfield_gc_i %r2, %i1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 760  ref_return %r2
 762  ---
 762  L2:
 762  -live- %r0, %r1, %r4
 765  ref_copy %r4 -> %r3
 768  getfield_gc_r_pure %r4, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r2
 773  goto L4
 776  ---
 776  L3:
 776  -live- %r4
 779  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r4] -> %r2
 788  -live- %r2
 791  assert_not_none %r2
 793  -live- %r2
 796  guard_class %r2 -> %i0
 799  -live- %r2
 802  raise %r2
