   0  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r4
   5  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x100966f1250> -> %r3
   9  setfield_gc_r %r3, %r4, FieldDescr<dictiter.dict>
  14  getfield_gc_i %r4, FieldDescr<dicttable.lookup_function_no> -> %i0
  19  int_rshift %i0, $2 -> %i0
  23  setfield_gc_i %r3, %i0, FieldDescr<dictiter.index>
  28  -live- %r0, %r1, %r2, %r3
  28  guard_class %r2 -> %i0
  31  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  36  -live- %i0, %r0, %r1, %r2, %r3
  36  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  40  unreachable
  41  ---
  41  L1:
  41  -live- %r0, %r1, %r2, %r3
  41  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
  46  L4:
  46  instance_ptr_eq %r4, %r0 -> %i0
  50  -live- %i0, %r0, %r1, %r2, %r3
  50  goto_if_not %i0, L5
  54  -live- %r1, %r2, %r3
  54  guard_class %r1 -> %i0
  57  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  62  -live- %i0, %r1, %r2, %r3
  62  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  66  unreachable
  67  ---
  67  L6:
  67  -live- %r1, %r2, %r3
  67  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
  72  L9:
  72  -live- %r1, %r2, %r3, %r4
  72  guard_class %r4 -> %i0
  75  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
  80  -live- %i0, %r1, %r2, %r3, %r4
  80  int_guard_value %i0
  82  residual_call_r_i %i0, <IndirectCallTargets>, R[%r4, %r1], <CallDescr(rr) EF=2> -> %i0
  90  -live- %i0, %r2, %r3
  90  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r4
  95  inline_call_ir_v <JitCode 'll_prepare_dict_update__dicttablePtr_Signed'>, I[%i0], R[%r4]
 102  -live- %r2, %r3
 102  L10:
 102  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r4
 107  L11:
 107  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 113  -live- %i0, %r3, %r4
 113  catch_exception L12
 116  ref_copy %r4 -> %r0
 119  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 124  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 129  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1001a26f4d0> -> %r1
 135  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1002ed3e850> -> %r2
 141  getinteriorfield_gc_i %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1002ed3e1d0> -> %i1
 147  ref_copy %r0 -> %r4
 150  ref_isvirtual %r0 -> %i0
 153  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 153  goto_if_not %i0, L13
 157  inline_call_ir_i <JitCode 'll_call_lookup_function__v1545___simple_call__function_'>, I[%i1, $1], R[%r0, %r1] -> %i0
 167  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 167  L14:
 167  inline_call_ir_v <JitCode '_ll_dict_setitem_lookup_done_look_inside_iff__dicttablePtr_pypy_interpreter_baseobjspace_W_RootPtr_pypy_interpreter_baseobjspace_W_RootPtr_Signed_Signed'>, I[%i1, %i0], R[%r0, %r1, %r2]
 177  -live- %r3, %r4
 177  goto L11
 180  ---
 180  L13:
 180  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v1550___simple_call__function_>, I[%i1, $1], R[%r0, %r1], <CallDescr(rrii) EF=7 OS_DICT_LOOKUP> -> %i0
 191  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 191  goto L14
 194  ---
 194  L12:
 194  goto_if_exception_mismatch $<* struct object_vtable>, L15
 198  void_return
 199  ---
 199  L15:
 199  reraise
 200  ---
 200  L7:
 200  -live-
 200  raise $<* struct object>
 202  ---
 202  L8:
 202  -live- %r1, %r2, %r3
 202  -live- %r1, %r2, %r3
 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> -> %r4
 213  goto L9
 216  ---
 216  L5:
 216  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 222  -live- %i0, %r0, %r1, %r2, %r3
 222  catch_exception L16
 225  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 230  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 235  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1001a26f4d0> -> %r5
 241  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1002ed3e850> -> %r4
 247  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r5, %r4]
 254  -live- %r0, %r1, %r2, %r3
 254  -live- %r0, %r1, %r2, %r3
 254  guard_class %r1 -> %i0
 257  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 262  -live- %i0, %r0, %r1, %r2, %r3
 262  switch %i0, <SwitchDictDescr 0:L17, 1:L18, 2:L19>
 266  unreachable
 267  ---
 267  L17:
 267  -live- %r0, %r1, %r2, %r3
 267  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 272  L20:
 272  -live- %r0, %r1, %r2, %r3, %r4
 272  guard_class %r4 -> %i0
 275  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
 280  -live- %i0, %r0, %r1, %r2, %r3, %r4
 280  int_guard_value %i0
 282  residual_call_r_i %i0, <IndirectCallTargets>, R[%r4, %r1], <CallDescr(rr) EF=2> -> %i0
 290  -live- %i0, %r0, %r2, %r3
 290  int_sub %i0, $1 -> %i1
 294  -live- %i1, %r0, %r2, %r3
 294  guard_class %r2 -> %i0
 297  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 302  -live- %i0, %i1, %r0, %r2, %r3
 302  switch %i0, <SwitchDictDescr 0:L21, 1:L22, 2:L23>
 306  unreachable
 307  ---
 307  L21:
 307  -live- %i1, %r0, %r2, %r3
 307  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 312  L24:
 312  -live- %i1, %r0, %r2, %r3, %r4
 312  guard_class %r4 -> %i0
 315  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_prepare_update> -> %i0
 320  -live- %i0, %i1, %r0, %r2, %r3, %r4
 320  int_guard_value %i0
 322  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1], R[%r4, %r2], <CallDescr(rri) EF=5>
 331  -live- %r0, %r2, %r3
 331  -live- %r0, %r2, %r3
 331  guard_class %r2 -> %i0
 334  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 339  -live- %i0, %r0, %r2, %r3
 339  switch %i0, <SwitchDictDescr 0:L25, 1:L26, 2:L27>
 343  unreachable
 344  ---
 344  L25:
 344  -live- %r0, %r2, %r3
 344  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 349  L28:
 349  instance_ptr_eq %r4, %r0 -> %i0
 353  -live- %i0, %r2, %r3
 353  goto_if_not %i0, L29
 357  goto L10
 360  ---
 360  L29:
 360  L30:
 360  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 366  -live- %i0, %r2, %r3
 366  catch_exception L31
 369  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 374  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 379  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1001a26f4d0> -> %r0
 385  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x1002ed3e850> -> %r4
 391  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r0, %r4]
 398  -live- %r2, %r3
 398  goto L30
 401  ---
 401  L31:
 401  goto_if_exception_mismatch $<* struct object_vtable>, L32
 405  void_return
 406  ---
 406  L32:
 406  reraise
 407  ---
 407  L26:
 407  -live-
 407  raise $<* struct object>
 409  ---
 409  L27:
 409  -live- %r0, %r2, %r3
 409  -live- %r0, %r2, %r3
 409  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 415  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 420  goto L28
 423  ---
 423  L22:
 423  -live-
 423  raise $<* struct object>
 425  ---
 425  L23:
 425  -live- %i1, %r0, %r2, %r3
 425  -live- %i1, %r0, %r2, %r3
 425  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 431  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 436  goto L24
 439  ---
 439  L18:
 439  -live-
 439  raise $<* struct object>
 441  ---
 441  L19:
 441  -live- %r0, %r1, %r2, %r3
 441  -live- %r0, %r1, %r2, %r3
 441  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 447  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 452  goto L20
 455  ---
 455  L16:
 455  goto_if_exception_mismatch $<* struct object_vtable>, L33
 459  void_return
 460  ---
 460  L33:
 460  reraise
 461  ---
 461  L2:
 461  -live-
 461  raise $<* struct object>
 463  ---
 463  L3:
 463  -live- %r0, %r1, %r2, %r3
 463  -live- %r0, %r1, %r2, %r3
 463  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 469  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 474  goto L4
