   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 0x804b8310> -> %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-
  41  raise $<* struct object>
  43  ---
  43  L2:
  43  -live- %r0, %r1, %r2, %r3
  43  -live- %r0, %r1, %r2, %r3
  43  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
  49  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
  54  L4:
  54  instance_ptr_eq %r4, %r0 -> %i0
  58  -live- %i0, %r0, %r1, %r2, %r3
  58  goto_if_not %i0, L5
  62  -live- %r1, %r2, %r3
  62  guard_class %r1 -> %i0
  65  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
  70  -live- %i0, %r1, %r2, %r3
  70  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  74  unreachable
  75  ---
  75  L6:
  75  -live-
  75  raise $<* struct object>
  77  ---
  77  L7:
  77  -live- %r1, %r2, %r3
  77  -live- %r1, %r2, %r3
  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> -> %r4
  88  L9:
  88  -live- %r1, %r2, %r3, %r4
  88  guard_class %r4 -> %i0
  91  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
  96  -live- %i0, %r1, %r2, %r3, %r4
  96  int_guard_value %i0
  98  residual_call_r_i %i0, <IndirectCallTargets>, R[%r4, %r1], <CallDescr(rr) EF=2> -> %i0
 106  -live- %i0, %r2, %r3
 106  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r4
 111  inline_call_ir_v <JitCode 'll_prepare_dict_update__dicttablePtr_Signed'>, I[%i0], R[%r4]
 118  -live- %r2, %r3
 118  L10:
 118  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r4
 123  L11:
 123  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 129  -live- %i0, %r3, %r4
 129  catch_exception L12
 132  ref_copy %r4 -> %r0
 135  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 140  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 145  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d8d0> -> %r1
 151  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d750> -> %r2
 157  getinteriorfield_gc_i %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d5d0> -> %i1
 163  ref_copy %r0 -> %r4
 166  ref_isvirtual %r0 -> %i0
 169  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 169  goto_if_not %i0, L13
 173  inline_call_ir_i <JitCode 'll_call_lookup_function__v2246___simple_call__function_'>, I[%i1, $1], R[%r0, %r1] -> %i0
 183  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 183  L14:
 183  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]
 193  -live- %r3, %r4
 193  goto L11
 196  ---
 196  L13:
 196  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v2260___simple_call__function_>, I[%i1, $1], R[%r0, %r1], <CallDescr(rrii) EF=7 OS_DICT_LOOKUP> -> %i0
 207  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 207  goto L14
 210  ---
 210  L12:
 210  goto_if_exception_mismatch $<* struct object_vtable>, L15
 214  void_return
 215  ---
 215  L15:
 215  reraise
 216  ---
 216  L8:
 216  -live- %r1, %r2, %r3
 216  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 221  goto L9
 224  ---
 224  L5:
 224  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 230  -live- %i0, %r0, %r1, %r2, %r3
 230  catch_exception L16
 233  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 238  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 243  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d8d0> -> %r5
 249  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d750> -> %r4
 255  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r5, %r4]
 262  -live- %r0, %r1, %r2, %r3
 262  -live- %r0, %r1, %r2, %r3
 262  guard_class %r1 -> %i0
 265  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 270  -live- %i0, %r0, %r1, %r2, %r3
 270  switch %i0, <SwitchDictDescr 0:L17, 1:L18, 2:L19>
 274  unreachable
 275  ---
 275  L17:
 275  -live-
 275  raise $<* struct object>
 277  ---
 277  L18:
 277  -live- %r0, %r1, %r2, %r3
 277  -live- %r0, %r1, %r2, %r3
 277  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 283  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 288  L20:
 288  -live- %r0, %r1, %r2, %r3, %r4
 288  guard_class %r4 -> %i0
 291  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
 296  -live- %i0, %r0, %r1, %r2, %r3, %r4
 296  int_guard_value %i0
 298  residual_call_r_i %i0, <IndirectCallTargets>, R[%r4, %r1], <CallDescr(rr) EF=2> -> %i0
 306  -live- %i0, %r0, %r2, %r3
 306  int_sub %i0, $1 -> %i1
 310  -live- %i1, %r0, %r2, %r3
 310  guard_class %r2 -> %i0
 313  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 318  -live- %i0, %i1, %r0, %r2, %r3
 318  switch %i0, <SwitchDictDescr 0:L21, 1:L22, 2:L23>
 322  unreachable
 323  ---
 323  L21:
 323  -live-
 323  raise $<* struct object>
 325  ---
 325  L22:
 325  -live- %i1, %r0, %r2, %r3
 325  -live- %i1, %r0, %r2, %r3
 325  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 331  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 336  L24:
 336  -live- %i1, %r0, %r2, %r3, %r4
 336  guard_class %r4 -> %i0
 339  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_prepare_update> -> %i0
 344  -live- %i0, %i1, %r0, %r2, %r3, %r4
 344  int_guard_value %i0
 346  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1], R[%r4, %r2], <CallDescr(rri) EF=5>
 355  -live- %r0, %r2, %r3
 355  -live- %r0, %r2, %r3
 355  guard_class %r2 -> %i0
 358  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 363  -live- %i0, %r0, %r2, %r3
 363  switch %i0, <SwitchDictDescr 0:L25, 1:L26, 2:L27>
 367  unreachable
 368  ---
 368  L25:
 368  -live-
 368  raise $<* struct object>
 370  ---
 370  L26:
 370  -live- %r0, %r2, %r3
 370  -live- %r0, %r2, %r3
 370  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 376  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r4
 381  L28:
 381  instance_ptr_eq %r4, %r0 -> %i0
 385  -live- %i0, %r2, %r3
 385  goto_if_not %i0, L29
 389  goto L10
 392  ---
 392  L29:
 392  L30:
 392  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r3] -> %i0
 398  -live- %i0, %r2, %r3
 398  catch_exception L31
 401  getfield_gc_r %r3, FieldDescr<dictiter.dict> -> %r4
 406  getfield_gc_r %r4, FieldDescr<dicttable.entries> -> %r4
 411  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d8d0> -> %r0
 417  getinteriorfield_gc_r %r4, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x76a6d750> -> %r4
 423  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r0, %r4]
 430  -live- %r2, %r3
 430  goto L30
 433  ---
 433  L31:
 433  goto_if_exception_mismatch $<* struct object_vtable>, L32
 437  void_return
 438  ---
 438  L32:
 438  reraise
 439  ---
 439  L27:
 439  -live- %r0, %r2, %r3
 439  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 444  goto L28
 447  ---
 447  L23:
 447  -live- %i1, %r0, %r2, %r3
 447  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 452  goto L24
 455  ---
 455  L19:
 455  -live- %r0, %r1, %r2, %r3
 455  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 460  goto L20
 463  ---
 463  L16:
 463  goto_if_exception_mismatch $<* struct object_vtable>, L33
 467  void_return
 468  ---
 468  L33:
 468  reraise
 469  ---
 469  L3:
 469  -live- %r0, %r1, %r2, %r3
 469  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r4
 474  goto L4
