   0  getarrayitem_gc_r %r1, $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80> -> %r2
   6  -live- %r1, %r2
   9  goto_if_not_ptr_nonzero %r2, L1
  13  ref_copy %r2 -> %r0
  16  -live- %r0, %r1, %r2
  19  guard_class %r0 -> %i0
  22  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  27  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  32  -live- %i0, %r1, %r2
  35  goto_if_not %i0, L2
  39  getarrayitem_gc_r %r1, $1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80> -> %r0
  45  -live- %r0, %r2
  48  guard_class %r0 -> %i0
  51  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
  56  -live- %i0, %r0, %r2
  59  switch %i0, <SwitchDictDescr 0:L3, 1:L4, 2:L5>
  63  unreachable
  64  ---
  64  L3:
  64  -live- %r0, %r2
  67  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r0] -> %r0
  73  L6:
  73  -live- %r0, %r2
  76  residual_call_r_r $<* fn W_CPPOverload.mp_overload>, R[%r2, %r0], <CallDescr(rr) EF=7> -> %r0
  84  -live- %r0
  87  ref_return %r0
  89  ---
  89  L4:
  89  -live- %r0, %r2
  92  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r0
  97  goto L6
 100  ---
 100  L5:
 100  -live- %r0
 103  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r0] -> %r0
 112  -live- %r0
 115  assert_not_none %r0
 117  -live- %r0
 120  guard_class %r0 -> %i0
 123  -live- %r0
 126  raise %r0
 128  ---
 128  L2:
 128  L7:
 128  inline_call_r_r <JitCode 'oefmt____s__object_expected__got___T__instead_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r2] -> %r0
 137  -live- %r0
 140  assert_not_none %r0
 142  -live- %r0
 145  guard_class %r0 -> %i0
 148  -live- %r0
 151  raise %r0
 153  ---
 153  L1:
 153  goto L7
