   0  -live- %r0, %r1
   3  guard_class %r0 -> %i0
   6  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  11  -live- %i0, %r0, %r1
  14  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  18  unreachable
  19  ---
  19  L1:
  19  -live- %r0, %r1
  22  record_quasiimmut_field %r0, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  28  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r2
  33  L4:
  33  -live- %r0, %r1, %r2
  36  guard_class %r2 -> %i0
  39  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_getitem> -> %i0
  44  -live- %i0, %r0, %r1, %r2
  47  int_guard_value %i0
  49  residual_call_r_r %i0, <IndirectCallTargets>, R[%r2, %r0, %r1], <CallDescr(rrr) EF=7> -> %r0
  58  -live- %r0
  61  goto_if_not_ptr_iszero %r0, L5
  65  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  67  ---
  67  L5:
  67  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  69  ---
  69  L2:
  69  -live- %r0, %r1
  72  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
  77  goto L4
  80  ---
  80  L3:
  80  -live-
  83  raise $<* struct object>
