   0  inline_call_r_r <JitCode 'iter'>, R[%r0] -> %r2
   6  -live- %r1, %r2
   6  -live- %r1, %r2
   6  guard_class %r2 -> %i0
   9  -live- %i0, %r1, %r2
   9  int_guard_value %i0
  11  -live- %r1, %r2
  11  guard_class %r2 -> %i0
  14  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
  19  -live- %i0, %r1, %r2
  19  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3, 3:L4>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %r1, %r2
  24  -live- %r1, %r2
  24  guard_class %r2 -> %i0
  27  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i0
  32  -live- %i0, %r1, %r2
  32  int_guard_value %i0
  34  residual_call_r_r %i0, <IndirectCallTargets>, R[%r2], <CallDescr(r) EF=2> -> %r0
  41  -live- %r0, %r1, %r2
  41  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
  46  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r0
  51  L5:
  51  -live- %r0, %r1, %r2
  51  ref_guard_value %r0
  53  recursive_call_r $6, I[], R[%r0], F[], I[], R[%r2, %r1], F[] -> %r0
  65  -live- %r0
  65  ref_return %r0
  67  ---
  67  L2:
  67  -live- %r1, %r2
  67  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.mapdict.Object.inst_map> -> %r0
  72  -live- %r0, %r1, %r2
  72  ref_guard_value %r0
  74  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
  79  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r0
  84  goto L5
  87  ---
  87  L3:
  87  -live- %r1, %r2
  87  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r0
  92  goto L5
  95  ---
  95  L4:
  95  -live- %r1, %r2
  95  -live- %r1, %r2
  95  guard_class %r2 -> %i0
  98  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typedef> -> %i0
 103  getfield_raw_r %i0, FieldDescr<pbc.pbcinternal_memofield_getorbuild_0> -> %r0
 108  goto L5
