   0  getfield_gc_r %r0, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__s> -> %r2
   5  ref_isvirtual %r2 -> %i0
   8  -live- %i0, %r0, %r2
  11  goto_if_not %i0, L1
  15  getfield_gc_r %r2, FieldDescr<stringbuilder.extra_pieces> -> %r1
  20  -live- %r0, %r1, %r2
  23  goto_if_not_ptr_nonzero %r1, L2
  27  residual_call_r_v $<* fn ll_fold_pieces__stringbuilderPtr>, R[%r2], <CallDescr(r) EF=5>
  33  L3:
  33  -live- %r0, %r2
  36  getfield_gc_r %r2, FieldDescr<stringbuilder.current_buf> -> %r1
  41  L4:
  41  getfield_gc_i %r0, FieldDescr<rpython.rlib.rutf8.Utf8StringBuilder.inst__lgt> -> %i0
  46  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab01d47018> -> %r0
  50  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
  55  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
  60  setfield_gc_r %r0, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
  65  ref_return %r0
  67  ---
  67  L2:
  67  getfield_gc_i %r2, FieldDescr<stringbuilder.current_pos> -> %i0
  72  getfield_gc_i %r2, FieldDescr<stringbuilder.total_size> -> %i1
  77  -live- %i0, %i1, %r0, %r2
  80  goto_if_not_int_ne %i0, %i1, L5
  85  getfield_gc_r %r2, FieldDescr<stringbuilder.current_buf> -> %r1
  90  residual_call_ir_r $<* fn ll_shrink_array__rpy_stringPtr_Signed>, I[%i0], R[%r1], <CallDescr(ri) EF=5 OS_SHRINK_ARRAY> -> %r1
  99  -live- %i0, %r0, %r1, %r2
 102  setfield_gc_r %r2, %r1, FieldDescr<stringbuilder.current_buf>
 107  setfield_gc_i %r2, %i0, FieldDescr<stringbuilder.current_end>
 112  setfield_gc_i %r2, %i0, FieldDescr<stringbuilder.total_size>
 117  goto L3
 120  ---
 120  L5:
 120  goto L3
 123  ---
 123  L1:
 123  residual_call_r_r $<* fn ll_build_trampoline__v1201___simple_call__function_>, R[%r2], <CallDescr(r) EF=5> -> %r1
 130  -live- %r0, %r1
 133  goto L4
