   0  -live- %i0, %i1, %r0
   0  guard_class %r0 -> %i2
   3  getfield_raw_i %i2, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i2
   8  -live- %i0, %i1, %i2, %r0
   8  int_guard_value %i2
  10  residual_call_r_i %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=5> -> %i2
  17  -live- %i0, %i1, %i2, %r0
  17  -live- %i0, %i1, %i2, %r0
  17  goto_if_not_int_lt %i1, %i2, L1
  22  int_copy %i1 -> %i2
  25  ref_copy %r0 -> %r1
  28  L2:
  28  int_sub %i2, %i0 -> %i1
  32  -live- %i0, %i1, %r0, %r1
  32  guard_class %r0 -> %i2
  35  getfield_raw_i %i2, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i2
  40  -live- %i0, %i1, %i2, %r1
  40  int_guard_value %i2
  42  residual_call_ir_r %i2, <IndirectCallTargets>, I[%i0, $1, %i1], R[%r1], <CallDescr(riii) EF=7> -> %r0
  53  -live- %r0
  53  ref_return %r0
  55  ---
  55  L1:
  55  ref_copy %r0 -> %r1
  58  goto L2
