   0  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.dictmultiobject.BaseIteratorImplementation.inst_strategy>
   5  setfield_gc_r %r0, %r2, FieldDescr<pypy.objspace.std.dictmultiobject.BaseIteratorImplementation.inst_w_dict>
  10  -live- %r0, %r1, %r2
  13  guard_class %r2 -> %i0
  16  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  21  -live- %i0, %r0, %r1, %r2
  24  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  28  unreachable
  29  ---
  29  L1:
  29  -live- %r0, %r1, %r2
  32  ref_copy %r0 -> %r3
  35  -live- %r0, %r1, %r2, %r3
  38  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  44  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
  49  L4:
  49  -live- %r0, %r1, %r2, %r3, %r4
  52  guard_class %r4 -> %i0
  55  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
  60  -live- %i0, %r0, %r1, %r2, %r3, %r4
  63  int_guard_value %i0
  65  residual_call_r_i %i0, <IndirectCallTargets>, R[%r4, %r2], <CallDescr(rr) EF=5> -> %i0
  73  -live- %i0, %r0, %r1, %r2, %r3
  76  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.dictmultiobject.BaseIteratorImplementation.inst_len>
  81  setfield_gc_i %r0, $0, FieldDescr<pypy.objspace.std.dictmultiobject.BaseIteratorImplementation.inst_pos>
  86  residual_call_r_v $<* fn MapDictIteratorKeys._init>, R[%r3, %r1, %r2], <CallDescr(rrr) EF=5>
  94  -live-
  97  void_return
  98  ---
  98  L2:
  98  -live- %r0, %r1, %r2
 101  ref_copy %r0 -> %r3
 104  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 109  goto L4
 112  ---
 112  L3:
 112  -live-
 115  raise $<* struct object>
