   0  -live- %i0, %i1, %r1
   3  guard_class %r1 -> %i2
   6  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_readbuf_w> -> %i2
  11  -live- %i0, %i1, %i2, %r1
  14  int_guard_value %i2
  16  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r2
  23  -live- %i0, %i1, %r2
  26  catch_exception L1
  29  -live- %i0, %i1, %r2
  32  goto_if_not_int_is_zero %i0, L2
  36  -live- %i0, %i1, %r2
  39  goto_if_not_int_eq %i1, $-1, L3
  44  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000019bc4b478> -> %r0
  48  setfield_gc_r %r0, %r2, FieldDescr<pypy.objspace.std.bufferobject.W_AbstractBuffer.inst_buf>
  53  ref_return %r0
  55  ---
  55  L3:
  55  L4:
  55  -live- %i0, %i1, %r2
  58  goto_if_not_int_lt %i0, $0, L5
  63  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000014c793520> -> %r0
  67  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  72  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  77  assert_not_none %r0
  79  -live- %r0
  82  raise %r0
  84  ---
  84  L5:
  84  -live- %i0, %i1, %r2
  87  goto_if_not_int_lt %i1, $-1, L6
  92  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000014c793520> -> %r0
  96  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 101  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 106  assert_not_none %r0
 108  -live- %r0
 111  raise %r0
 113  ---
 113  L6:
 113  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000015e9dfc58> -> %r1
 117  getfield_gc_i_pure %r2, FieldDescr<rpython.rlib.buffer.Buffer.inst_readonly> -> %i2
 122  setfield_gc_i %r1, %i2, FieldDescr<rpython.rlib.buffer.Buffer.inst_readonly>
 127  -live- %i0, %i1, %r1, %r2
 130  guard_class %r2 -> %i2
 133  -live- %i0, %i1, %i2, %r1, %r2
 136  goto_if_not_int_eq %i2, $<* struct object_vtable>, L7
 141  getfield_gc_r_pure %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_buffer> -> %r0
 146  -live- %i0, %i1, %r0, %r1, %r2
 149  guard_class %r0 -> %i2
 152  getfield_raw_i %i2, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i2
 157  -live- %i0, %i1, %i2, %r0, %r1, %r2
 160  int_guard_value %i2
 162  residual_call_r_i %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=5> -> %i2
 169  -live- %i0, %i1, %i2, %r1, %r2
 172  getfield_gc_i_pure %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_offset> -> %i3
 177  int_sub %i2, %i3 -> %i2
 181  getfield_gc_i_pure %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_size> -> %i3
 186  -live- %i0, %i1, %i2, %i3, %r1, %r2
 189  goto_if_not_int_ge %i3, $0, L8
 194  -live- %i0, %i1, %i2, %i3, %r1, %r2
 197  goto_if_not_int_le %i3, %i2, L9
 202  L10:
 202  int_sub %i3, %i0 -> %i2
 206  -live- %i0, %i1, %i2, %r1, %r2
 209  goto_if_not_int_gt %i1, %i2, L11
 214  int_copy %i2 -> %i1
 217  L12:
 217  -live- %i0, %i1, %r1, %r2
 220  goto_if_not_int_lt %i1, $0, L13
 225  int_copy $0 -> %i1
 228  L14:
 228  getfield_gc_i_pure %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_offset> -> %i2
 233  int_add %i0, %i2 -> %i0
 237  getfield_gc_r_pure %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_buffer> -> %r2
 242  L15:
 242  setfield_gc_r %r1, %r2, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_buffer>
 247  setfield_gc_i %r1, %i0, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_offset>
 252  setfield_gc_i %r1, %i1, FieldDescr<rpython.rlib.buffer.SubBuffer.inst_size>
 257  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000019bc4b478> -> %r0
 261  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bufferobject.W_AbstractBuffer.inst_buf>
 266  ref_return %r0
 268  ---
 268  L13:
 268  goto L14
 271  ---
 271  L11:
 271  -live- %i0, %i1, %i2, %r1, %r2
 274  goto_if_not_int_lt %i1, $0, L16
 279  int_copy %i2 -> %i1
 282  goto L12
 285  ---
 285  L16:
 285  goto L14
 288  ---
 288  L9:
 288  L17:
 288  -live- %i0, %i1, %i2, %r1, %r2
 291  goto_if_not_int_ge %i2, $0, L18
 296  int_copy %i2 -> %i3
 299  goto L10
 302  ---
 302  L18:
 302  int_copy $0 -> %i3
 305  goto L10
 308  ---
 308  L8:
 308  goto L17
 311  ---
 311  L7:
 311  goto L15
 314  ---
 314  L2:
 314  goto L4
 317  ---
 317  L1:
 317  goto_if_exception_mismatch $<* struct object_vtable>, L19
 321  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000014c793520> -> %r0
 325  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 330  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 335  assert_not_none %r0
 337  -live- %r0
 340  raise %r0
 342  ---
 342  L19:
 342  reraise
