   0  inline_call_r_r <JitCode 'W_UnicodeObject._unwrap_and_compute_idx_params'>, R[%r0, %r2, %r3] -> %r2
   8  -live- %r0, %r1, %r2
  11  getfield_gc_i_pure %r2, FieldDescr<tuple2.item0> -> %i2
  16  getfield_gc_i_pure %r2, FieldDescr<tuple2.item1> -> %i1
  21  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r3
  26  -live- %i1, %i2, %r0, %r1, %r3
  29  guard_class %r1 -> %i0
  32  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  37  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  42  -live- %i0, %i1, %i2, %r0, %r1, %r3
  45  goto_if_not %i0, L1
  49  L2:
  49  residual_call_ir_r $<* fn W_UnicodeObject._endswith_tuple>, I[%i2, %i1], R[%r0, %r3, %r1], <CallDescr(rrrii) EF=7> -> %r2
  61  -live- %r2
  64  ref_return %r2
  66  ---
  66  L1:
  66  -live- %i1, %i2, %r0, %r1, %r3
  69  guard_class %r1 -> %i0
  72  -live- %i0, %i1, %i2, %r0, %r1, %r3
  75  int_guard_value %i0
  77  -live- %i1, %i2, %r0, %r1, %r3
  80  guard_class %r1 -> %i0
  83  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  88  -live- %i0, %i1, %i2, %r0, %r1, %r3
  91  switch %i0, <SwitchDictDescr 0:L3, 1:L4, 2:L5, 3:L6>
  95  unreachable
  96  ---
  96  L3:
  96  -live- %i1, %i2, %r0, %r1, %r3
  99  guard_class %r1 -> %i0
 102  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i0
 107  -live- %i0, %i1, %i2, %r0, %r1, %r3
 110  int_guard_value %i0
 112  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=2> -> %r2
 119  -live- %i1, %i2, %r0, %r1, %r2, %r3
 122  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r2
 127  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r2
 132  L7:
 132  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r2, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 139  -live- %i0, %i1, %i2, %r0, %r1, %r3
 142  goto_if_not %i0, L8
 146  goto L2
 149  ---
 149  L8:
 149  inline_call_r_r <JitCode 'convert_arg_to_w_unicode'>, R[%r1, $<* struct rpy_string>] -> %r2
 156  -live- %i1, %i2, %r2, %r3
 159  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r2
 164  strlen %r2 -> %i0
 167  -live- %i0, %i1, %i2, %r2, %r3
 170  goto_if_not_int_is_zero %i0, L9
 174  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 176  ---
 176  L9:
 176  residual_call_ir_i $<* fn endswith__str_str>, I[%i2, %i1], R[%r3, %r2], <CallDescr(rrii) EF=4> -> %i0
 187  -live- %i0
 190  goto_if_not %i0, L10
 194  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 196  ---
 196  L10:
 196  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 198  ---
 198  L4:
 198  -live- %i1, %i2, %r0, %r1, %r3
 201  getfield_gc_r %r1, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r2
 206  -live- %i1, %i2, %r0, %r1, %r2, %r3
 209  ref_guard_value %r2
 211  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r2
 216  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r2
 221  goto L7
 224  ---
 224  L5:
 224  -live- %i1, %i2, %r0, %r1, %r3
 227  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r2
 232  goto L7
 235  ---
 235  L6:
 235  -live- %i1, %i2, %r0, %r1, %r3
 238  guard_class %r1 -> %i0
 241  getfield_raw_r %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r2
 246  goto L7
