   0  residual_call_r_r $<* fn W_WeakrefBase.dereference>, R[%r0], <CallDescr(r) EF=2> -> %r2
   7  -live- %r0, %r2
  10  goto_if_not_ptr_iszero %r2, L1
  14  ref_copy $<* struct rpy_string> -> %r2
  17  L2:
  17  -live- %r0, %r2
  20  guard_class %r0 -> %i0
  23  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typedef> -> %i0
  28  getfield_raw_r %i0, FieldDescr<pbc.pbc_name> -> %r1
  33  inline_call_r_r <JitCode 'W_Root.getrepr'>, R[%r0, %r1, %r2] -> %r1
  41  -live- %r1
  44  ref_return %r1
  46  ---
  46  L1:
  46  -live- %r0, %r2
  49  guard_class %r2 -> %i0
  52  -live- %i0, %r0, %r2
  55  int_guard_value %i0
  57  -live- %r0, %r2
  60  guard_class %r2 -> %i0
  63  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  68  -live- %i0, %r0, %r2
  71  switch %i0, <SwitchDictDescr 0:L3, 1:L4, 2:L5, 3:L6>
  75  unreachable
  76  ---
  76  L3:
  76  -live- %r0, %r2
  79  guard_class %r2 -> %i0
  82  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i0
  87  -live- %i0, %r0, %r2
  90  int_guard_value %i0
  92  residual_call_r_r %i0, <IndirectCallTargets>, R[%r2], <CallDescr(r) EF=2> -> %r1
  99  -live- %r0, %r1, %r2
 102  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
 107  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
 112  L7:
 112  inline_call_r_r <JitCode 'W_TypeObject.getname'>, R[%r1] -> %r1
 118  -live- %r0, %r1, %r2
 121  guard_class %r2 -> %i0
 124  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getname> -> %i0
 129  -live- %i0, %r0, %r1, %r2
 132  int_guard_value %i0
 134  residual_call_r_r %i0, <IndirectCallTargets>, R[%r2], <CallDescr(r) EF=7> -> %r2
 141  -live- %r0, %r1, %r2
 144  strlen %r2 -> %i0
 147  -live- %i0, %r0, %r1, %r2
 150  goto_if_not_int_is_true %i0, L8
 154  residual_call_r_i $<* fn ll_streq__rpy_stringPtr_rpy_stringPtr>, R[%r2, $<* struct rpy_string>], <CallDescr(rr) EF=0 OS_STR_EQUAL> -> %i0
 162  -live- %i0, %r0, %r1, %r2
 165  goto_if_not_int_is_zero %i0, L9
 169  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8> -> %r3
 174  setarrayitem_gc_r %r3, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 180  -live- %r0, %r1, %r2, %r3
 183  goto_if_not_ptr_nonzero %r1, L10
 187  L11:
 187  setarrayitem_gc_r %r3, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 193  setarrayitem_gc_r %r3, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 199  -live- %r0, %r2, %r3
 202  goto_if_not_ptr_nonzero %r2, L12
 206  L13:
 206  setarrayitem_gc_r %r3, $3, %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 212  setarrayitem_gc_r %r3, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 218  int_isconstant $5 -> %i0
 221  -live- %i0, %r0, %r3
 224  goto_if_not %i0, L14
 228  ref_isvirtual %r3 -> %i0
 231  -live- %i0, %r0, %r3
 234  goto_if_not %i0, L15
 238  inline_call_ir_r <JitCode 'll_join_strs__v1135___simple_call__function_'>, I[$5], R[%r3] -> %r2
 246  -live- %r0, %r2
 249  goto L2
 252  ---
 252  L15:
 252  L16:
 252  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1137___simple_call__function_>, I[$5], R[%r3], <CallDescr(ir) EF=5> -> %r2
 261  -live- %r0, %r2
 264  goto L2
 267  ---
 267  L14:
 267  goto L16
 270  ---
 270  L12:
 270  ref_copy $<* struct rpy_string> -> %r2
 273  goto L13
 276  ---
 276  L10:
 276  ref_copy $<* struct rpy_string> -> %r1
 279  goto L11
 282  ---
 282  L9:
 282  L17:
 282  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8> -> %r2
 287  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 293  -live- %r0, %r1, %r2
 296  goto_if_not_ptr_nonzero %r1, L18
 300  L19:
 300  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 306  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2e924e2f8>
 312  int_isconstant $3 -> %i0
 315  -live- %i0, %r0, %r2
 318  goto_if_not %i0, L20
 322  ref_isvirtual %r2 -> %i0
 325  -live- %i0, %r0, %r2
 328  goto_if_not %i0, L21
 332  inline_call_ir_r <JitCode 'll_join_strs__v1135___simple_call__function_'>, I[$3], R[%r2] -> %r2
 340  -live- %r0, %r2
 343  goto L2
 346  ---
 346  L21:
 346  L22:
 346  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1137___simple_call__function_>, I[$3], R[%r2], <CallDescr(ir) EF=5> -> %r2
 355  -live- %r0, %r2
 358  goto L2
 361  ---
 361  L20:
 361  goto L22
 364  ---
 364  L18:
 364  ref_copy $<* struct rpy_string> -> %r1
 367  goto L19
 370  ---
 370  L8:
 370  goto L17
 373  ---
 373  L4:
 373  -live- %r0, %r2
 376  getfield_gc_r %r2, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r1
 381  -live- %r0, %r1, %r2
 384  ref_guard_value %r1
 386  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
 391  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
 396  goto L7
 399  ---
 399  L5:
 399  -live- %r0, %r2
 402  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r1
 407  goto L7
 410  ---
 410  L6:
 410  -live- %r0, %r2
 413  guard_class %r2 -> %i0
 416  getfield_raw_r %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r1
 421  goto L7
