   0  inline_call_r_r <JitCode 'getarg_w__s_'>, R[$<* struct rpy_string>, %r1] -> %r1
   7  -live- %r0, %r1
   7  -live- %r0, %r1
   7  guard_class %r0 -> %i0
  10  getfield_raw_i %i0, FieldDescr<pypy.module.cStringIO.interp_stringio.W_InputOutputType_vtable.cls_is_closed> -> %i0
  15  -live- %i0, %r0, %r1
  15  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  19  unreachable
  20  ---
  20  L1:
  20  -live- %r0, %r1
  20  ref_copy %r0 -> %r2
  23  getfield_gc_i %r0, FieldDescr<pypy.module.cStringIO.interp_stringio.W_OutputType.inst__RStringIO__closed> -> %i0
  28  L4:
  28  -live- %i0, %r1, %r2
  28  goto_if_not %i0, L5
  32  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r0
  36  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  41  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  46  assert_not_none %r0
  48  -live- %r0
  48  guard_class %r0 -> %i0
  51  -live- %r0
  51  raise %r0
  53  ---
  53  L5:
  53  -live- %r1, %r2
  53  guard_class %r1 -> %i0
  56  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_as_str> -> %i0
  61  -live- %i0, %r1, %r2
  61  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  65  unreachable
  66  ---
  66  L6:
  66  -live- %r1, %r2
  66  getfield_gc_r_pure %r1, FieldDescr<rpython.rlib.buffer.StringBuffer.inst_value> -> %r0
  71  L9:
  71  getfield_gc_i %r2, FieldDescr<pypy.module.cStringIO.interp_stringio.W_OutputType.inst__RStringIO__pos> -> %i0
  76  -live- %i0, %r0, %r2
  76  goto_if_not_int_eq %i0, $-1, L10
  81  inline_call_r_v <JitCode 'W_OutputType.__fast_write'>, R[%r2, %r0]
  87  -live-
  87  void_return
  88  ---
  88  L10:
  88  residual_call_r_v $<* fn W_OutputType.__slow_write>, R[%r2, %r0], <CallDescr(rr) EF=5>
  95  -live-
  95  void_return
  96  ---
  96  L7:
  96  -live-
  96  raise $<* struct object>
  98  ---
  98  L8:
  98  -live- %r1, %r2
  98  -live- %r1, %r2
  98  guard_class %r1 -> %i0
 101  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
 106  -live- %i0, %r1, %r2
 106  int_guard_value %i0
 108  residual_call_r_i %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=5> -> %i0
 115  -live- %i0, %r1, %r2
 115  -live- %i0, %r1, %r2
 115  guard_class %r1 -> %i1
 118  getfield_raw_i %i1, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i1
 123  -live- %i0, %i1, %r1, %r2
 123  int_guard_value %i1
 125  residual_call_ir_r %i1, <IndirectCallTargets>, I[$0, $1, %i0], R[%r1], <CallDescr(riii) EF=7> -> %r0
 136  -live- %r0, %r2
 136  goto L9
 139  ---
 139  L2:
 139  -live- %r0, %r1
 139  ref_copy %r0 -> %r2
 142  getfield_gc_r %r0, FieldDescr<pypy.module.cStringIO.interp_stringio.W_InputType.inst_string> -> %r0
 147  ptr_iszero %r0 -> %i0
 150  goto L4
 153  ---
 153  L3:
 153  -live-
 153  raise $<* struct object>
