   0  -live- %r0
   3  guard_class %r0 -> %i0
   6  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  11  -live- %i0, %r0
  14  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3, 3:L4>
  18  unreachable
  19  ---
  19  L1:
  19  -live- %r0
  22  guard_class %r0 -> %i0
  25  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i0
  30  -live- %i0, %r0
  33  int_guard_value %i0
  35  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
  42  -live- %r0, %r1
  45  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
  50  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
  55  L5:
  55  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.typeobject.W_TypeObject.inst_hasuserdel> -> %i0
  60  -live- %i0, %r0
  63  goto_if_not %i0, L6
  67  void_return
  68  ---
  68  L6:
  68  residual_call_r_v $<* fn may_ignore_finalizer__pypy_interpreter_baseobjspace_W_Root>, R[%r0], <CallDescr(r) EF=2>
  74  void_return
  75  ---
  75  L2:
  75  -live- %r0
  78  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r1
  83  -live- %r0, %r1
  86  ref_guard_value %r1
  88  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
  93  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
  98  goto L5
 101  ---
 101  L3:
 101  -live- %r0
 104  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r1
 109  goto L5
 112  ---
 112  L4:
 112  -live- %r0
 115  guard_class %r0 -> %i0
 118  getfield_raw_r %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r1
 123  goto L5
