   0  -live- %r0, %r1
   3  guard_class %r1 -> %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 %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  28  getfield_gc_r_pure %r1, 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__unrolling_heuristic> -> %i0
  44  -live- %i0, %r0, %r1, %r2
  47  int_guard_value %i0
  49  residual_call_r_i %i0, <IndirectCallTargets>, R[%r2, %r1], <CallDescr(rr) EF=5> -> %i0
  57  -live- %i0, %r0, %r1
  60  goto_if_not %i0, L5
  64  inline_call_r_r <JitCode 'w_keys__v139___simple_call__function_w'>, R[%r0, %r1] -> %r1
  71  -live- %r1
  74  ref_return %r1
  76  ---
  76  L5:
  76  residual_call_r_r $<* fn w_keys_trampoline__v284___simple_call__function_w>, R[%r0, %r1], <CallDescr(rr) EF=7> -> %r1
  84  -live- %r1
  87  ref_return %r1
  89  ---
  89  L2:
  89  -live- %r0, %r1
  92  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
  97  goto L4
 100  ---
 100  L3:
 100  -live-
 103  raise $<* struct object>
