   0  -live- %r0, %r1, %r2, %r3
   3  goto_if_not_ptr_nonzero %r0, L1
   7  ref_copy %r0 -> %r4
  10  -live- %r0, %r1, %r2, %r3, %r4
  13  guard_class %r4 -> %i0
  16  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  21  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  26  -live- %i0, %r0, %r1, %r2, %r3
  29  goto_if_not %i0, L2
  33  -live- %r0, %r1, %r2, %r3
  36  guard_class %r2 -> %i0
  39  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
  44  -live- %i0, %r0, %r1, %r2, %r3
  47  switch %i0, <SwitchDictDescr 0:L3, 1:L4, 2:L5>
  51  unreachable
  52  ---
  52  L3:
  52  -live- %r0, %r1, %r2, %r3
  55  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r2] -> %r4
  61  L6:
  61  -live- %r0, %r1, %r3, %r4
  64  inline_call_r_v <JitCode 'W_NDimArray.descr_sort'>, R[%r0, %r1, %r4, %r3]
  72  -live-
  75  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  77  ---
  77  L4:
  77  -live- %r0, %r1, %r2, %r3
  80  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r4
  85  goto L6
  88  ---
  88  L5:
  88  -live- %r2
  91  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>, %r2] -> %r4
 100  -live- %r4
 103  assert_not_none %r4
 105  -live- %r4
 108  guard_class %r4 -> %i0
 111  -live- %r4
 114  raise %r4
 116  ---
 116  L2:
 116  L7:
 116  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>, %r0] -> %r4
 125  -live- %r4
 128  assert_not_none %r4
 130  -live- %r4
 133  guard_class %r4 -> %i0
 136  -live- %r4
 139  raise %r4
 141  ---
 141  L1:
 141  goto L7
