   0  -live- %r0, %r1
   3  goto_if_not_ptr_nonzero %r1, L1
   7  ref_copy %r1 -> %r2
  10  -live- %r0, %r1, %r2
  13  guard_class %r1 -> %i0
  16  -live- %i0, %r0, %r2
  19  goto_if_not_int_eq %i0, $<* struct object_vtable>, L2
  24  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.bufferobject.W_AbstractBuffer.inst_buf> -> %r1
  29  -live- %r1, %r2
  32  guard_class %r1 -> %i0
  35  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_as_str> -> %i1
  40  -live- %i0, %i1, %r1, %r2
  43  switch %i1, <SwitchDictDescr 0:L3, 1:L4, 2:L5>
  47  unreachable
  48  ---
  48  L3:
  48  -live- %r1, %r2
  51  getfield_gc_r_pure %r1, FieldDescr<rpython.rlib.buffer.StringBuffer.inst_value> -> %r1
  56  L6:
  56  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.bufferobject.W_AbstractBuffer.inst_buf> -> %r0
  61  -live- %r0, %r1
  64  guard_class %r0 -> %i0
  67  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_as_str> -> %i1
  72  -live- %i0, %i1, %r0, %r1
  75  switch %i1, <SwitchDictDescr 0:L7, 1:L8, 2:L9>
  79  unreachable
  80  ---
  80  L7:
  80  -live- %r0, %r1
  83  getfield_gc_r_pure %r0, FieldDescr<rpython.rlib.buffer.StringBuffer.inst_value> -> %r0
  88  L10:
  88  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r1, %r0], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i0
  96  -live- %i0
  99  goto_if_not %i0, L11
 103  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 105  ---
 105  L11:
 105  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 107  ---
 107  L8:
 107  -live-
 110  raise $<* struct object>
 112  ---
 112  L9:
 112  -live- %i0, %r0, %r1
 115  ref_copy %r0 -> %r2
 118  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
 123  -live- %i0, %r0, %r1, %r2
 126  int_guard_value %i0
 128  residual_call_r_i %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=5> -> %i0
 135  -live- %i0, %r0, %r1, %r2
 138  guard_class %r2 -> %i1
 141  getfield_raw_i %i1, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i1
 146  -live- %i0, %i1, %r0, %r1
 149  int_guard_value %i1
 151  residual_call_ir_r %i1, <IndirectCallTargets>, I[$0, $1, %i0], R[%r0], <CallDescr(riii) EF=7> -> %r0
 162  -live- %r0, %r1
 165  goto L10
 168  ---
 168  L4:
 168  -live-
 171  raise $<* struct object>
 173  ---
 173  L5:
 173  -live- %i0, %r1, %r2
 176  ref_copy %r1 -> %r0
 179  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
 184  -live- %i0, %r0, %r1, %r2
 187  int_guard_value %i0
 189  residual_call_r_i %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=5> -> %i0
 196  -live- %i0, %r0, %r1, %r2
 199  guard_class %r0 -> %i1
 202  getfield_raw_i %i1, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i1
 207  -live- %i0, %i1, %r1, %r2
 210  int_guard_value %i1
 212  residual_call_ir_r %i1, <IndirectCallTargets>, I[$0, $1, %i0], R[%r1], <CallDescr(riii) EF=7> -> %r1
 223  -live- %r1, %r2
 226  goto L6
 229  ---
 229  L2:
 229  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 231  ---
 231  L1:
 231  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
