   0  ref_isvirtual %r1 -> %i0
   3  -live- %i0, %r0, %r1, %r2
   3  goto_if_not %i0, L1
   7  L2:
   7  inline_call_r_v <JitCode 'rev_update1_dict_dict__v909___simple_call__function_r'>, R[%r0, %r1, %r2]
  14  -live-
  14  void_return
  15  ---
  15  L1:
  15  ref_isconstant %r1 -> %i0
  18  -live- %i0, %r0, %r1, %r2
  18  goto_if_not %i0, L3
  22  -live- %r0, %r1, %r2
  22  guard_class %r1 -> %i0
  25  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  30  -live- %i0, %r0, %r1, %r2
  30  switch %i0, <SwitchDictDescr 0:L4, 1:L5, 2:L6>
  34  unreachable
  35  ---
  35  L4:
  35  -live- %r0, %r1, %r2
  35  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
  40  L7:
  40  -live- %r0, %r1, %r2, %r3
  40  guard_class %r3 -> %i0
  43  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
  48  -live- %i0, %r0, %r1, %r2, %r3
  48  int_guard_value %i0
  50  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r1], <CallDescr(rr) EF=2> -> %i0
  58  -live- %i0, %r0, %r1, %r2
  58  -live- %i0, %r0, %r1, %r2
  58  goto_if_not_int_le %i0, $5, L8
  63  goto L2
  66  ---
  66  L8:
  66  L9:
  66  residual_call_r_v $<* fn rev_update1_dict_dict_trampoline__v966___simple_call__function_r>, R[%r0, %r1, %r2], <CallDescr(rrr) EF=7>
  74  -live-
  74  void_return
  75  ---
  75  L5:
  75  -live-
  75  raise $<* struct object>
  77  ---
  77  L6:
  77  -live- %r0, %r1, %r2
  77  -live- %r0, %r1, %r2
  77  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  83  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
  88  goto L7
  91  ---
  91  L3:
  91  goto L9
