   0  -live- %i0, %i1, %r1
   0  goto_if_not_int_lt %i0, $0, L1
   5  int_copy $0 -> %i0
   8  L2:
   8  -live- %i0, %i1, %r1
   8  goto_if_not_int_lt %i1, %i0, L3
  13  int_copy %i0 -> %i1
  16  L4:
  16  -live- %i0, %i1, %r1
  16  guard_class %r1 -> %i2
  19  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
  24  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
  29  -live- %i0, %i1, %i2, %r1
  29  goto_if_not %i2, L5
  33  L6:
  33  inline_call_r_r <JitCode 'convert_arg_to_w_unicode'>, R[%r1, $<* struct rpy_string>] -> %r2
  40  -live- %i0, %i1, %r2
  40  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r4
  45  getfield_gc_i %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i3
  50  -live- %i0, %i1, %i3, %r2, %r4
  50  goto_if_not_int_le %i0, $0, L7
  55  int_copy $0 -> %i0
  58  ref_copy %r4 -> %r0
  61  ref_copy %r2 -> %r1
  64  L8:
  64  -live- %i0, %i1, %i3, %r0, %r1
  64  goto_if_not_int_ge %i1, %i3, L9
  69  ref_copy %r1 -> %r2
  72  strlen %r0 -> %i1
  75  L10:
  75  getfield_gc_i %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i2
  80  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r1
  85  strlen %r1 -> %i3
  88  -live- %i0, %i1, %i2, %i3, %r0, %r2
  88  goto_if_not_int_eq %i2, %i3, L11
  93  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aab2fc9670> -> %r1
  97  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end>
 102  setfield_gc_i %r1, $'\x00', FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_mode>
 107  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 112  setfield_gc_i %r1, %i0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 117  setfield_gc_i %r1, %i1, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end>
 122  setfield_gc_r %r1, %r0, FieldDescr<rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string>
 127  ref_return %r1
 129  ---
 129  L11:
 129  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aab2f832b8> -> %r1
 133  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end>
 138  setfield_gc_i %r1, $'\x00', FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_mode>
 143  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 148  setfield_gc_i %r1, %i0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 153  setfield_gc_i %r1, %i1, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end>
 158  setfield_gc_r %r1, %r0, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst__utf8>
 163  setfield_gc_r %r1, %r2, FieldDescr<rpython.rlib.rsre.rsre_utf8.Utf8MatchContext.inst_w_unicode_obj>
 168  ref_return %r1
 170  ---
 170  L9:
 170  getfield_gc_i %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__length> -> %i2
 175  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__utf8> -> %r4
 180  strlen %r4 -> %i3
 183  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r4
 183  goto_if_not_int_eq %i2, %i3, L12
 188  ref_copy %r1 -> %r2
 191  goto L10
 194  ---
 194  L12:
 194  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r3
 199  ref_copy %r1 -> %r2
 202  conditional_call_value_ir_r %r3, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r1], <CallDescr(r) EF=5> -> %r1
 211  -live- %i0, %i1, %r0, %r1, %r2, %r4
 211  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i1], R[%r4, %r1], <CallDescr(rri) EF=4> -> %i1
 221  -live- %i0, %i1, %r0, %r2
 221  goto L10
 224  ---
 224  L7:
 224  -live- %i0, %i1, %i3, %r2, %r4
 224  goto_if_not_int_ge %i0, %i3, L13
 229  ref_copy %r4 -> %r0
 232  ref_copy %r2 -> %r1
 235  strlen %r0 -> %i0
 238  goto L8
 241  ---
 241  L13:
 241  strlen %r4 -> %i2
 244  -live- %i0, %i1, %i2, %i3, %r2, %r4
 244  goto_if_not_int_eq %i3, %i2, L14
 249  ref_copy %r4 -> %r0
 252  ref_copy %r2 -> %r1
 255  goto L8
 258  ---
 258  L14:
 258  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.unicodeobject.W_UnicodeObject.inst__index_storage> -> %r3
 263  ref_copy %r4 -> %r0
 266  ref_copy %r2 -> %r1
 269  conditional_call_value_ir_r %r3, $<* fn W_UnicodeObject._compute_index_storage>, I[], R[%r2], <CallDescr(r) EF=5> -> %r2
 278  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r4
 278  residual_call_ir_i $<* fn codepoint_position_at_index>, I[%i0], R[%r4, %r2], <CallDescr(rri) EF=4> -> %i0
 288  -live- %i0, %i1, %i3, %r0, %r1
 288  goto L8
 291  ---
 291  L5:
 291  -live- %i0, %i1, %r1
 291  guard_class %r1 -> %i2
 294  -live- %i0, %i1, %i2, %r1
 294  int_guard_value %i2
 296  -live- %i0, %i1, %r1
 296  guard_class %r1 -> %i2
 299  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
 304  getfield_raw_i %i2, FieldDescr<specfunc.variant0> -> %i2
 309  -live- %i0, %i1, %i2, %r1
 309  int_guard_value %i2
 311  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=2> -> %r0
 318  -live- %i0, %i1, %r0, %r1
 318  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r0, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
 325  -live- %i0, %i1, %i2, %r1
 325  -live- %i0, %i1, %i2, %r1
 325  goto_if_not %i2, L15
 329  goto L6
 332  ---
 332  L15:
 332  -live- %i0, %i1, %r1
 332  guard_class %r1 -> %i2
 335  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 340  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 345  -live- %i0, %i1, %i2, %r1
 345  goto_if_not %i2, L16
 349  L17:
 349  -live- %i0, %i1, %r1
 349  guard_class %r1 -> %i2
 352  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i2
 357  -live- %i0, %i1, %i2, %r1
 357  switch %i2, <SwitchDictDescr 0:L18, 1:L19, 2:L20>
 361  unreachable
 362  ---
 362  L18:
 362  -live- %i0, %i1, %r1
 362  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r0
 368  -live- %i0, %i1, %r0
 368  L21:
 368  strlen %r0 -> %i2
 371  -live- %i0, %i1, %i2, %r0
 371  goto_if_not_int_gt %i0, %i2, L22
 376  strlen %r0 -> %i0
 379  L23:
 379  strlen %r0 -> %i2
 382  -live- %i0, %i1, %i2, %r0
 382  goto_if_not_int_gt %i1, %i2, L24
 387  strlen %r0 -> %i1
 390  L25:
 390  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aab2fc94b0> -> %r1
 394  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end>
 399  setfield_gc_i %r1, $'\x00', FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_mode>
 404  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 409  setfield_gc_i %r1, %i0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 414  setfield_gc_i %r1, %i1, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end>
 419  setfield_gc_r %r1, %r0, FieldDescr<rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string>
 424  ref_return %r1
 426  ---
 426  L24:
 426  goto L25
 429  ---
 429  L22:
 429  goto L23
 432  ---
 432  L19:
 432  -live- %i0, %i1, %r1
 432  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r0
 437  goto L21
 440  ---
 440  L20:
 440  -live- %r1
 440  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>, %r1] -> %r0
 449  -live- %r0
 449  assert_not_none %r0
 451  -live- %r0
 451  guard_class %r0 -> %i2
 454  -live- %r0
 454  raise %r0
 456  ---
 456  L16:
 456  -live- %i0, %i1, %r1
 456  guard_class %r1 -> %i2
 459  -live- %i0, %i1, %i2, %r1
 459  int_guard_value %i2
 461  -live- %i0, %i1, %r1
 461  guard_class %r1 -> %i2
 464  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
 469  getfield_raw_i %i2, FieldDescr<specfunc.variant0> -> %i2
 474  -live- %i0, %i1, %i2, %r1
 474  int_guard_value %i2
 476  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=2> -> %r0
 483  -live- %i0, %i1, %r0, %r1
 483  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r0, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
 490  -live- %i0, %i1, %i2, %r1
 490  -live- %i0, %i1, %i2, %r1
 490  goto_if_not %i2, L26
 494  goto L17
 497  ---
 497  L26:
 497  inline_call_r_r <JitCode 'ObjSpace.readbuf_w'>, R[%r1] -> %r0
 503  -live- %i0, %i1, %r0
 503  -live- %i0, %i1, %r0
 503  guard_class %r0 -> %i2
 506  getfield_raw_i %i2, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i2
 511  -live- %i0, %i1, %i2, %r0
 511  int_guard_value %i2
 513  residual_call_r_i %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=5> -> %i2
 520  -live- %i0, %i1, %i2, %r0
 520  -live- %i0, %i1, %i2, %r0
 520  goto_if_not_int_gt %i0, %i2, L27
 525  int_copy %i2 -> %i0
 528  L28:
 528  -live- %i0, %i1, %i2, %r0
 528  goto_if_not_int_gt %i1, %i2, L29
 533  int_copy %i2 -> %i1
 536  L30:
 536  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aab2f73910> -> %r1
 540  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end>
 545  setfield_gc_i %r1, $'\x00', FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_mode>
 550  setfield_gc_i %r1, $0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 555  setfield_gc_i %r1, %i0, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start>
 560  setfield_gc_i %r1, %i1, FieldDescr<rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end>
 565  setfield_gc_r %r1, %r0, FieldDescr<rpython.rlib.rsre.rsre_core.BufMatchContext.inst__buffer>
 570  ref_return %r1
 572  ---
 572  L29:
 572  goto L30
 575  ---
 575  L27:
 575  goto L28
 578  ---
 578  L3:
 578  goto L4
 581  ---
 581  L1:
 581  goto L2
