   0  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.bufferobject.W_AbstractBuffer.inst_buf> -> %r0
   5  -live- %r0
   8  guard_class %r0 -> %i0
  11  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_as_str> -> %i1
  16  -live- %i0, %i1, %r0
  19  switch %i1, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %r0
  27  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.buffer.StringBuffer.inst_value> -> %r0
  32  L4:
  32  -live- %r0
  35  goto_if_not_ptr_nonzero %r0, L5
  39  strhash %r0 -> %i0
  42  conditional_call_value_ir_i %i0, $<* fn _ll_strhash__rpy_stringPtr>, I[], R[%r0], <CallDescr(r) EF=2> -> %i0
  51  int_eq %i0, $-1 -> %i1
  55  int_sub %i0, %i1 -> %i0
  59  L6:
  59  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab3c0185d0> -> %r0
  63  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
  68  ref_return %r0
  70  ---
  70  L5:
  70  int_copy $0 -> %i0
  73  goto L6
  76  ---
  76  L2:
  76  -live-
  79  raise $<* struct object>
  81  ---
  81  L3:
  81  -live- %i0, %r0
  84  ref_copy %r0 -> %r1
  87  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
  92  -live- %i0, %r0, %r1
  95  int_guard_value %i0
  97  residual_call_r_i %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=5> -> %i0
 104  -live- %i0, %r0, %r1
 107  guard_class %r1 -> %i1
 110  getfield_raw_i %i1, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i1
 115  -live- %i0, %i1, %r0
 118  int_guard_value %i1
 120  residual_call_ir_r %i1, <IndirectCallTargets>, I[$0, $1, %i0], R[%r0], <CallDescr(riii) EF=7> -> %r0
 131  -live- %r0
 134  goto L4
