   0  residual_call_ir_i $<* fn ll_contains__rpy_stringPtr_Char>, I[$'.'], R[%r0], <CallDescr(ri) EF=0> -> %i1
   9  -live- %i0, %i1, %r0, %r1
  12  goto_if_not %i1, L1
  16  int_copy $0 -> %i2
  19  int_copy $1 -> %i3
  22  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
  25  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r4
  28  L2:
  28  strlen %r0 -> %i1
  31  residual_call_ir_i $<* fn ll_find_char__rpy_stringPtr_Char_Signed_Signed>, I[$'.', %i3, %i1], R[%r0], <CallDescr(riii) EF=0> -> %i3
  42  -live- %i0, %i2, %i3, %r0, %r1, %r3, %r4
  45  goto_if_not_int_lt %i3, $0, L3
  50  int_copy %i3 -> %i1
  53  inline_call_r_r <JitCode 'MixedModule.get'>, R[$<* struct pypy.interpreter.mixedmodule.MixedModule>, $<* struct rpy_string>] -> %r2
  60  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
  63  inline_call_r_r <JitCode 'finditem_str'>, R[%r2, %r0] -> %r2
  70  L4:
  70  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
  73  goto_if_not_ptr_iszero %r2, L5
  77  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  79  ---
  79  L5:
  79  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r2] -> %i3
  86  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
  89  goto_if_not %i3, L6
  93  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  95  ---
  95  L6:
  95  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
  98  goto_if_not_int_eq %i2, %i0, L7
 103  ref_copy %r2 -> %r4
 106  L8:
 106  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 109  goto_if_not_ptr_iszero %r1, L9
 113  L10:
 113  int_add %i2, $1 -> %i2
 117  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 120  goto_if_not_int_ge %i1, $0, L11
 125  int_add %i1, $1 -> %i3
 129  goto L2
 132  ---
 132  L11:
 132  L12:
 132  -live- %r1, %r2, %r3, %r4
 135  goto_if_not_ptr_iszero %r1, L13
 139  ref_return %r4
 141  ---
 141  L13:
 141  inline_call_r_i <JitCode 'len_w'>, R[%r1] -> %i2
 147  -live- %i2, %r1, %r2, %r3
 150  goto_if_not_ptr_iszero %r3, L14
 154  ref_return %r2
 156  ---
 156  L14:
 156  -live- %i2, %r1, %r2
 159  goto_if_not_int_eq %i2, $1, L15
 164  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa74983ec0> -> %r0
 168  setfield_gc_i %r0, $0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 173  -live- %i2, %r0, %r1, %r2
 176  guard_class %r1 -> %i1
 179  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_shortcut___getitem__> -> %i1
 184  -live- %i1, %i2, %r0, %r1, %r2
 187  int_guard_value %i1
 189  residual_call_r_r %i1, <IndirectCallTargets>, R[%r1, %r0], <CallDescr(rr) EF=7> -> %r0
 197  -live- %i2, %r0, %r1, %r2
 200  inline_call_r_i <JitCode 'eq_w'>, R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %i1
 207  -live- %i1, %i2, %r1, %r2
 210  goto_if_not %i1, L16
 214  inline_call_r_r <JitCode 'getattr'>, R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r1
 221  -live- %r1, %r2
 224  catch_exception L17
 227  -live- %r1, %r2
 230  goto_if_not_ptr_iszero %r1, L18
 234  ref_return %r2
 236  ---
 236  L18:
 236  inline_call_r_i <JitCode 'len_w'>, R[%r1] -> %i2
 242  -live- %i2, %r1, %r2
 245  int_copy $0 -> %i0
 248  L19:
 248  -live- %i0, %i2, %r1, %r2
 251  goto_if_not_int_ge %i0, %i2, L20
 256  ref_return %r2
 258  ---
 258  L20:
 258  int_copy %i0 -> %i1
 261  int_add %i1, $1 -> %i0
 265  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa74983ec0> -> %r0
 269  setfield_gc_i %r0, %i1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 274  -live- %i0, %i2, %r0, %r1, %r2
 277  guard_class %r1 -> %i1
 280  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_shortcut___getitem__> -> %i1
 285  -live- %i0, %i1, %i2, %r0, %r1, %r2
 288  int_guard_value %i1
 290  residual_call_r_r %i1, <IndirectCallTargets>, R[%r1, %r0], <CallDescr(rr) EF=7> -> %r3
 298  -live- %i0, %i2, %r1, %r2, %r3
 301  guard_class %r3 -> %i1
 304  getfield_raw_i %i1, FieldDescr<object_vtable.subclassrange_min> -> %i3
 309  int_between $TotalOrderSymbolic('compute_fn'), %i3, $TotalOrderSymbolic('compute_fn') -> %i3
 314  -live- %i0, %i1, %i2, %i3, %r1, %r2, %r3
 317  goto_if_not %i3, L21
 321  L22:
 321  inline_call_r_r <JitCode 'getattr'>, R[%r2, %r3] -> %r0
 328  -live- %i0, %i2, %r0, %r1, %r2
 331  catch_exception L23
 334  -live- %i0, %i2, %r0, %r1, %r2
 337  goto_if_not_ptr_iszero %r0, L24
 341  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 343  ---
 343  L24:
 343  goto L19
 346  ---
 346  L23:
 346  goto_if_exception_mismatch $<* struct object_vtable>, L25
 350  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 352  ---
 352  L25:
 352  reraise
 353  ---
 353  L21:
 353  ref_copy %r3 -> %r0
 356  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
 359  int_guard_value %i1
 361  -live- %i0, %i2, %r0, %r1, %r2, %r3
 364  guard_class %r0 -> %i1
 367  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i1
 372  -live- %i0, %i1, %i2, %r1, %r2, %r3
 375  switch %i1, <SwitchDictDescr 0:L26, 1:L27, 2:L28, 3:L29>
 379  unreachable
 380  ---
 380  L26:
 380  -live- %i0, %i2, %r1, %r2, %r3
 383  guard_class %r3 -> %i1
 386  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i1
 391  -live- %i0, %i1, %i2, %r1, %r2, %r3
 394  int_guard_value %i1
 396  residual_call_r_r %i1, <IndirectCallTargets>, R[%r3], <CallDescr(r) EF=2> -> %r0
 403  -live- %i0, %i2, %r0, %r1, %r2, %r3
 406  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
 411  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r0
 416  L30:
 416  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r0, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i1
 423  -live- %i0, %i1, %i2, %r1, %r2, %r3
 426  goto_if_not %i1, L31
 430  goto L22
 433  ---
 433  L31:
 433  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa52d49948> -> %r2
 437  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 442  setfield_gc_r %r2, $<* struct tuple2>, FieldDescr<pypy.interpreter.error.OpErrFmt.inst_xstrings>
 447  setfield_gc_r %r2, %r3, FieldDescr<pypy.interpreter.error.OpErrFmt.inst_x0>
 452  assert_not_none %r2
 454  -live- %r2
 457  raise %r2
 459  ---
 459  L27:
 459  -live- %i0, %i2, %r1, %r2, %r3
 462  getfield_gc_r %r3, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r0
 467  -live- %i0, %i2, %r0, %r1, %r2, %r3
 470  ref_guard_value %r0
 472  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
 477  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r0
 482  goto L30
 485  ---
 485  L28:
 485  -live- %i0, %i2, %r1, %r2, %r3
 488  getfield_gc_r %r3, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r0
 493  goto L30
 496  ---
 496  L29:
 496  -live- %i0, %i2, %r1, %r2, %r3
 499  guard_class %r3 -> %i1
 502  getfield_raw_r %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r0
 507  goto L30
 510  ---
 510  L17:
 510  goto_if_exception_mismatch $<* struct object_vtable>, L32
 514  ref_return %r2
 516  ---
 516  L32:
 516  reraise
 517  ---
 517  L16:
 517  int_copy $0 -> %i0
 520  goto L19
 523  ---
 523  L15:
 523  int_copy $0 -> %i0
 526  goto L19
 529  ---
 529  L9:
 529  inline_call_r_r <JitCode 'getattr'>, R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r3
 536  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 539  catch_exception L33
 542  goto L10
 545  ---
 545  L33:
 545  goto_if_exception_mismatch $<* struct object_vtable>, L34
 549  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 552  goto L10
 555  ---
 555  L34:
 555  reraise
 556  ---
 556  L7:
 556  goto L8
 559  ---
 559  L3:
 559  strlen %r0 -> %i1
 562  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r3, %r4
 565  goto_if_not_int_gt %i3, %i1, L35
 570  int_copy %i3 -> %i1
 573  strlen %r0 -> %i3
 576  L36:
 576  residual_call_ir_r $<* fn _ll_stringslice__rpy_stringPtr_Signed_Signed>, I[$0, %i3], R[%r0], <CallDescr(rii) EF=3 OS_STR_SLICE> -> %r2
 586  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 589  inline_call_r_r <JitCode 'MixedModule.get'>, R[$<* struct pypy.interpreter.mixedmodule.MixedModule>, $<* struct rpy_string>] -> %r5
 596  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 599  inline_call_r_r <JitCode 'finditem_str'>, R[%r5, %r2] -> %r2
 606  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
 609  goto L4
 612  ---
 612  L35:
 612  int_copy %i3 -> %i1
 615  goto L36
 618  ---
 618  L1:
 618  inline_call_r_r <JitCode 'MixedModule.get'>, R[$<* struct pypy.interpreter.mixedmodule.MixedModule>, $<* struct rpy_string>] -> %r2
 625  -live- %r0, %r1, %r2
 628  inline_call_r_r <JitCode 'finditem_str'>, R[%r2, %r0] -> %r2
 635  -live- %r1, %r2
 638  goto_if_not_ptr_iszero %r1, L37
 642  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 645  ref_copy %r2 -> %r4
 648  goto L12
 651  ---
 651  L37:
 651  -live- %r1, %r2
 654  goto_if_not_ptr_iszero %r2, L38
 658  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 661  ref_copy %r2 -> %r4
 664  goto L12
 667  ---
 667  L38:
 667  inline_call_r_r <JitCode 'getattr'>, R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r3
 674  -live- %r1, %r2, %r3
 677  catch_exception L39
 680  ref_copy %r2 -> %r4
 683  goto L12
 686  ---
 686  L39:
 686  goto_if_exception_mismatch $<* struct object_vtable>, L40
 690  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r3
 693  ref_copy %r2 -> %r4
 696  goto L12
 699  ---
 699  L40:
 699  reraise
