   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<object_vtable.subclassrange_min> -> %i0
  44  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  49  -live- %i0, %r0, %r1
  52  goto_if_not %i0, L5
  56  -live- %r0, %r1
  59  guard_class %r1 -> %i0
  62  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  67  -live- %i0, %r0, %r1
  70  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  74  unreachable
  75  ---
  75  L6:
  75  -live- %r0, %r1
  78  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  84  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r2
  89  L9:
  89  -live- %r0, %r1, %r2
  92  guard_class %r2 -> %i0
  95  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_copy> -> %i0
 100  -live- %i0, %r0, %r1, %r2
 103  int_guard_value %i0
 105  residual_call_r_r %i0, <IndirectCallTargets>, R[%r2, %r1], <CallDescr(rr) EF=7> -> %r1
 113  -live- %r0, %r1
 116  guard_class %r1 -> %i0
 119  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 124  -live- %i0, %r0, %r1
 127  switch %i0, <SwitchDictDescr 0:L10, 1:L11, 2:L12>
 131  unreachable
 132  ---
 132  L10:
 132  -live- %r0, %r1
 135  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 141  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r2
 146  L13:
 146  -live- %r0, %r1, %r2
 149  guard_class %r0 -> %i0
 152  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_set_strategy> -> %i0
 157  -live- %i0, %r0, %r1, %r2
 160  switch %i0, <SwitchDictDescr 0:L14, 1:L15, 2:L16>
 164  unreachable
 165  ---
 165  L14:
 165  -live- %r0, %r1, %r2
 168  jit_force_quasi_immutable %r0, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 172  setfield_gc_r %r0, %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>
 177  L17:
 177  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r1
 182  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage>
 187  void_return
 188  ---
 188  L15:
 188  -live- %r0, %r1, %r2
 191  setfield_gc_r %r0, %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy>
 196  goto L17
 199  ---
 199  L16:
 199  -live-
 202  raise $<* struct object>
 204  ---
 204  L11:
 204  -live- %r0, %r1
 207  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
 212  goto L13
 215  ---
 215  L12:
 215  -live-
 218  raise $<* struct object>
 220  ---
 220  L7:
 220  -live- %r0, %r1
 223  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
 228  goto L9
 231  ---
 231  L8:
 231  -live-
 234  raise $<* struct object>
 236  ---
 236  L5:
 236  -live- %r0, %r1
 239  guard_class %r1 -> %i0
 242  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 247  -live- %i0, %r0, %r1
 250  switch %i0, <SwitchDictDescr 0:L18, 1:L19, 2:L20>
 254  unreachable
 255  ---
 255  L18:
 255  -live- %r0, %r1
 258  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 264  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r2
 269  L21:
 269  -live- %r0, %r1, %r2
 272  guard_class %r2 -> %i0
 275  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_rev_update1_dict_dict> -> %i0
 280  -live- %i0, %r0, %r1, %r2
 283  int_guard_value %i0
 285  residual_call_r_v %i0, <IndirectCallTargets>, R[%r2, %r1, %r0], <CallDescr(rrr) EF=7>
 293  -live-
 296  void_return
 297  ---
 297  L19:
 297  -live- %r0, %r1
 300  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
 305  goto L21
 308  ---
 308  L20:
 308  -live-
 311  raise $<* struct object>
 313  ---
 313  L2:
 313  -live- %r0, %r1
 316  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r2
 321  goto L4
 324  ---
 324  L3:
 324  -live-
 327  raise $<* struct object>
