   0  -live- %r0, %r1
   3  goto_if_not_ptr_iszero %r1, L1
   7  ref_copy $<* struct rpy_string> -> %r1
  10  L2:
  10  -live- %r0, %r1
  13  guard_class %r0 -> %i0
  16  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i1
  21  int_between $TotalOrderSymbolic('compute_fn'), %i1, $TotalOrderSymbolic('compute_fn') -> %i1
  26  -live- %i0, %i1, %r0, %r1
  29  goto_if_not %i1, L3
  33  L4:
  33  inline_call_r_r <JitCode 'len'>, R[%r0] -> %r2
  39  -live- %r0, %r2
  42  inline_call_r_r <JitCode 'wraptuple2'>, R[%r0, %r2] -> %r2
  49  -live- %r2
  52  ref_return %r2
  54  ---
  54  L3:
  54  ref_copy %r0 -> %r2
  57  -live- %i0, %r0, %r1, %r2
  60  int_guard_value %i0
  62  -live- %r0, %r1, %r2
  65  guard_class %r2 -> %i0
  68  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  73  -live- %i0, %r0, %r1
  76  switch %i0, <SwitchDictDescr 0:L5, 1:L6, 2:L7, 3:L8>
  80  unreachable
  81  ---
  81  L5:
  81  -live- %r0, %r1
  84  guard_class %r0 -> %i0
  87  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i0
  92  -live- %i0, %r0, %r1
  95  int_guard_value %i0
  97  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r2
 104  -live- %r0, %r1, %r2
 107  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r2
 112  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r2
 117  L9:
 117  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r2, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 124  -live- %i0, %r0, %r1
 127  goto_if_not %i0, L10
 131  goto L4
 134  ---
 134  L10:
 134  inline_call_r_r <JitCode 'ObjSpace.readbuf_w'>, R[%r0] -> %r2
 140  -live- %r1, %r2
 143  guard_class %r2 -> %i0
 146  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_as_str> -> %i1
 151  -live- %i0, %i1, %r1, %r2
 154  switch %i1, <SwitchDictDescr 0:L11, 1:L12, 2:L13>
 158  unreachable
 159  ---
 159  L11:
 159  -live- %r1, %r2
 162  getfield_gc_r_pure %r2, FieldDescr<rpython.rlib.buffer.StringBuffer.inst_value> -> %r2
 167  L14:
 167  strlen %r2 -> %i0
 170  -live- %i0, %r1, %r2
 173  goto_if_not_int_is_zero %i0, L15
 177  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa8ea3a330> -> %r2
 181  setfield_gc_r %r2, $<* struct rpy_string>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 186  setfield_gc_i %r2, $0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 191  setfield_gc_r %r2, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 196  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa74983ec0> -> %r1
 200  setfield_gc_i %r1, $0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 205  inline_call_r_r <JitCode 'wraptuple2'>, R[%r2, %r1] -> %r2
 212  -live- %r2
 215  ref_return %r2
 217  ---
 217  L15:
 217  residual_call_ir_r $<* fn str_decode_unicode_internal>, I[$True], R[%r2, %r1], <CallDescr(rri) EF=7> -> %r2
 227  -live- %r2
 230  getfield_gc_r_pure %r2, FieldDescr<tuple3.item0> -> %r1
 235  getfield_gc_i_pure %r2, FieldDescr<tuple3.item1> -> %i0
 240  getfield_gc_i_pure %r2, FieldDescr<tuple3.item2> -> %i1
 245  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa8ea3a330> -> %r2
 249  setfield_gc_r %r2, %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8>
 254  setfield_gc_i %r2, %i1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length>
 259  setfield_gc_r %r2, $<* None>, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage>
 264  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa74983ec0> -> %r1
 268  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 273  inline_call_r_r <JitCode 'wraptuple2'>, R[%r2, %r1] -> %r2
 280  -live- %r2
 283  ref_return %r2
 285  ---
 285  L12:
 285  -live-
 288  raise $<* struct object>
 290  ---
 290  L13:
 290  -live- %i0, %r1, %r2
 293  ref_copy %r2 -> %r0
 296  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
 301  -live- %i0, %r0, %r1, %r2
 304  int_guard_value %i0
 306  residual_call_r_i %i0, <IndirectCallTargets>, R[%r2], <CallDescr(r) EF=5> -> %i0
 313  -live- %i0, %r0, %r1, %r2
 316  guard_class %r0 -> %i1
 319  getfield_raw_i %i1, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getslice> -> %i1
 324  -live- %i0, %i1, %r1, %r2
 327  int_guard_value %i1
 329  residual_call_ir_r %i1, <IndirectCallTargets>, I[$0, $1, %i0], R[%r2], <CallDescr(riii) EF=7> -> %r2
 340  -live- %r1, %r2
 343  goto L14
 346  ---
 346  L6:
 346  -live- %r0, %r1
 349  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r2
 354  -live- %r0, %r1, %r2
 357  ref_guard_value %r2
 359  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r2
 364  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r2
 369  goto L9
 372  ---
 372  L7:
 372  -live- %r0, %r1
 375  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r2
 380  goto L9
 383  ---
 383  L8:
 383  -live- %r0, %r1
 386  guard_class %r0 -> %i0
 389  getfield_raw_r %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r2
 394  goto L9
 397  ---
 397  L1:
 397  goto L2
