   0  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
   5  inline_call_r_r <JitCode 'iteritems_with_hash__v729___simple_call__function_i'>, R[%r3] -> %r4
  11  -live- %r0, %r1, %r2, %r4
  11  -live- %r0, %r1, %r2, %r4
  11  guard_class %r2 -> %i0
  14  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  19  -live- %i0, %r0, %r1, %r2, %r4
  19  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %r0, %r1, %r2, %r4
  24  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
  29  L4:
  29  instance_ptr_eq %r3, %r0 -> %i0
  33  -live- %i0, %r0, %r1, %r2, %r4
  33  goto_if_not %i0, L5
  37  -live- %r1, %r2, %r4
  37  guard_class %r1 -> %i0
  40  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  45  -live- %i0, %r1, %r2, %r4
  45  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  49  unreachable
  50  ---
  50  L6:
  50  -live- %r1, %r2, %r4
  50  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
  55  L9:
  55  -live- %r1, %r2, %r3, %r4
  55  guard_class %r3 -> %i0
  58  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
  63  -live- %i0, %r1, %r2, %r3, %r4
  63  int_guard_value %i0
  65  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r1], <CallDescr(rr) EF=2> -> %i0
  73  -live- %i0, %r2, %r4
  73  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
  78  inline_call_ir_v <JitCode 'll_prepare_dict_update__dicttablePtr_Signed'>, I[%i0], R[%r3]
  85  -live- %r2, %r4
  85  L10:
  85  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
  90  L11:
  90  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
  96  -live- %i0, %r3, %r4
  96  catch_exception L12
  99  ref_copy %r3 -> %r2
 102  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 107  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 112  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r0
 118  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd690> -> %r1
 124  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r3
 130  -live- %r0, %r1, %r2, %r3, %r4
 130  goto_if_not_ptr_nonzero %r3, L13
 134  residual_call_r_i $<* fn _ll_1_gc_identityhash__objectPtr>, R[%r3], <CallDescr(r) EF=3> -> %i1
 141  -live- %i1, %r0, %r1, %r2, %r4
 141  L14:
 141  ref_copy %r2 -> %r3
 144  ref_isvirtual %r2 -> %i0
 147  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 147  goto_if_not %i0, L15
 151  inline_call_ir_i <JitCode 'll_call_lookup_function__v1816___simple_call__function_'>, I[%i1, $1], R[%r2, %r0] -> %i0
 161  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 161  L16:
 161  inline_call_ir_v <JitCode '_ll_dict_setitem_lookup_done_look_inside_iff__dicttablePtr_objectPtr_objectPtr_Signed_Signed'>, I[%i1, %i0], R[%r2, %r0, %r1]
 171  -live- %r3, %r4
 171  goto L11
 174  ---
 174  L15:
 174  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v1838___simple_call__function_>, I[%i1, $1], R[%r2, %r0], <CallDescr(rrii) EF=5 OS_DICT_LOOKUP> -> %i0
 185  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 185  goto L16
 188  ---
 188  L13:
 188  int_copy $0 -> %i1
 191  goto L14
 194  ---
 194  L12:
 194  goto_if_exception_mismatch $<* struct object_vtable>, L17
 198  void_return
 199  ---
 199  L17:
 199  reraise
 200  ---
 200  L7:
 200  -live-
 200  raise $<* struct object>
 202  ---
 202  L8:
 202  -live- %r1, %r2, %r4
 202  -live- %r1, %r2, %r4
 202  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 208  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 213  goto L9
 216  ---
 216  L5:
 216  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
 222  -live- %i0, %r0, %r1, %r2, %r4
 222  catch_exception L18
 225  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 230  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 235  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r5
 241  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd690> -> %r6
 247  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r3
 253  -live- %r0, %r1, %r2, %r3, %r4, %r5, %r6
 253  goto_if_not_ptr_nonzero %r3, L19
 257  residual_call_r_i $<* fn _ll_1_gc_identityhash__objectPtr>, R[%r3], <CallDescr(r) EF=3> -> %i0
 264  -live- %r0, %r1, %r2, %r4, %r5, %r6
 264  L20:
 264  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r5, %r6]
 271  -live- %r0, %r1, %r2, %r4
 271  -live- %r0, %r1, %r2, %r4
 271  guard_class %r1 -> %i0
 274  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 279  -live- %i0, %r0, %r1, %r2, %r4
 279  switch %i0, <SwitchDictDescr 0:L21, 1:L22, 2:L23>
 283  unreachable
 284  ---
 284  L21:
 284  -live- %r0, %r1, %r2, %r4
 284  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 289  L24:
 289  -live- %r0, %r1, %r2, %r3, %r4
 289  guard_class %r3 -> %i0
 292  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
 297  -live- %i0, %r0, %r1, %r2, %r3, %r4
 297  int_guard_value %i0
 299  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r1], <CallDescr(rr) EF=2> -> %i0
 307  -live- %i0, %r0, %r2, %r4
 307  int_sub %i0, $1 -> %i1
 311  -live- %i1, %r0, %r2, %r4
 311  guard_class %r2 -> %i0
 314  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 319  -live- %i0, %i1, %r0, %r2, %r4
 319  switch %i0, <SwitchDictDescr 0:L25, 1:L26, 2:L27>
 323  unreachable
 324  ---
 324  L25:
 324  -live- %i1, %r0, %r2, %r4
 324  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 329  L28:
 329  -live- %i1, %r0, %r2, %r3, %r4
 329  guard_class %r3 -> %i0
 332  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_prepare_update> -> %i0
 337  -live- %i0, %i1, %r0, %r2, %r3, %r4
 337  int_guard_value %i0
 339  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1], R[%r3, %r2], <CallDescr(rri) EF=7>
 348  -live- %r0, %r2, %r4
 348  -live- %r0, %r2, %r4
 348  guard_class %r2 -> %i0
 351  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 356  -live- %i0, %r0, %r2, %r4
 356  switch %i0, <SwitchDictDescr 0:L29, 1:L30, 2:L31>
 360  unreachable
 361  ---
 361  L29:
 361  -live- %r0, %r2, %r4
 361  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 366  L32:
 366  instance_ptr_eq %r3, %r0 -> %i0
 370  -live- %i0, %r2, %r4
 370  goto_if_not %i0, L33
 374  goto L10
 377  ---
 377  L33:
 377  L34:
 377  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
 383  -live- %i0, %r2, %r4
 383  catch_exception L35
 386  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 391  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 396  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r0
 402  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd690> -> %r1
 408  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x7fff4c3bd820> -> %r3
 414  -live- %r0, %r1, %r2, %r3, %r4
 414  goto_if_not_ptr_nonzero %r3, L36
 418  residual_call_r_i $<* fn _ll_1_gc_identityhash__objectPtr>, R[%r3], <CallDescr(r) EF=3> -> %i0
 425  -live- %r0, %r1, %r2, %r4
 425  L37:
 425  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r0, %r1]
 432  -live- %r2, %r4
 432  goto L34
 435  ---
 435  L36:
 435  goto L37
 438  ---
 438  L35:
 438  goto_if_exception_mismatch $<* struct object_vtable>, L38
 442  void_return
 443  ---
 443  L38:
 443  reraise
 444  ---
 444  L30:
 444  -live-
 444  raise $<* struct object>
 446  ---
 446  L31:
 446  -live- %r0, %r2, %r4
 446  -live- %r0, %r2, %r4
 446  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 452  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 457  goto L32
 460  ---
 460  L26:
 460  -live-
 460  raise $<* struct object>
 462  ---
 462  L27:
 462  -live- %i1, %r0, %r2, %r4
 462  -live- %i1, %r0, %r2, %r4
 462  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 468  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 473  goto L28
 476  ---
 476  L22:
 476  -live-
 476  raise $<* struct object>
 478  ---
 478  L23:
 478  -live- %r0, %r1, %r2, %r4
 478  -live- %r0, %r1, %r2, %r4
 478  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 484  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 489  goto L24
 492  ---
 492  L19:
 492  goto L20
 495  ---
 495  L18:
 495  goto_if_exception_mismatch $<* struct object_vtable>, L39
 499  void_return
 500  ---
 500  L39:
 500  reraise
 501  ---
 501  L2:
 501  -live-
 501  raise $<* struct object>
 503  ---
 503  L3:
 503  -live- %r0, %r1, %r2, %r4
 503  -live- %r0, %r1, %r2, %r4
 503  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 509  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 514  goto L4
