   0  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
   5  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x100966eff50> -> %r4
   9  setfield_gc_r %r4, %r3, FieldDescr<dictiter.dict>
  14  getfield_gc_i %r3, FieldDescr<dicttable.lookup_function_no> -> %i0
  19  int_rshift %i0, $2 -> %i0
  23  setfield_gc_i %r4, %i0, FieldDescr<dictiter.index>
  28  -live- %r0, %r1, %r2, %r4
  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, %r4
  36  switch %i0, <SwitchDictDescr 0:L1, 1:L2, 2:L3>
  40  unreachable
  41  ---
  41  L1:
  41  -live- %r0, %r1, %r2, %r4
  41  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
  46  L4:
  46  instance_ptr_eq %r3, %r0 -> %i0
  50  -live- %i0, %r0, %r1, %r2, %r4
  50  goto_if_not %i0, L5
  54  -live- %r1, %r2, %r4
  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, %r4
  62  switch %i0, <SwitchDictDescr 0:L6, 1:L7, 2:L8>
  66  unreachable
  67  ---
  67  L6:
  67  -live- %r1, %r2, %r4
  67  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
  72  L9:
  72  -live- %r1, %r2, %r3, %r4
  72  guard_class %r3 -> %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[%r3, %r1], <CallDescr(rr) EF=2> -> %i0
  90  -live- %i0, %r2, %r4
  90  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
  95  inline_call_ir_v <JitCode 'll_prepare_dict_update__dicttablePtr_Signed'>, I[%i0], R[%r3]
 102  -live- %r2, %r4
 102  L10:
 102  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage> -> %r3
 107  L11:
 107  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
 113  -live- %i0, %r3, %r4
 113  catch_exception L12
 116  ref_copy %r3 -> %r2
 119  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 124  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 129  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x100825279d0> -> %r0
 135  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x10082860190> -> %r1
 141  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x100825279d0> -> %r3
 147  getfield_gc_i %r3, FieldDescr<rpy_string.hash> -> %i1
 152  ref_copy %r2 -> %r3
 155  ref_isvirtual %r2 -> %i0
 158  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 158  goto_if_not %i0, L13
 162  inline_call_ir_i <JitCode 'll_call_lookup_function__v1151___simple_call__function_'>, I[%i1, $1], R[%r2, %r0] -> %i0
 172  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 172  L14:
 172  inline_call_ir_v <JitCode '_ll_dict_setitem_lookup_done_look_inside_iff__dicttablePtr_rpy_stringPtr_objectPtr_Signed_Signed'>, I[%i1, %i0], R[%r2, %r0, %r1]
 182  -live- %r3, %r4
 182  goto L11
 185  ---
 185  L13:
 185  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v1165___simple_call__function_>, I[%i1, $1], R[%r2, %r0], <CallDescr(rrii) EF=5 OS_DICT_LOOKUP> -> %i0
 196  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 196  goto L14
 199  ---
 199  L12:
 199  goto_if_exception_mismatch $<* struct object_vtable>, L15
 203  void_return
 204  ---
 204  L15:
 204  reraise
 205  ---
 205  L7:
 205  -live-
 205  raise $<* struct object>
 207  ---
 207  L8:
 207  -live- %r1, %r2, %r4
 207  -live- %r1, %r2, %r4
 207  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 213  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 218  goto L9
 221  ---
 221  L5:
 221  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
 227  -live- %i0, %r0, %r1, %r2, %r4
 227  catch_exception L16
 230  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 235  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 240  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x100825279d0> -> %r5
 246  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x10082860190> -> %r3
 252  -live- %r0, %r1, %r2, %r3, %r4, %r5
 252  goto_if_not_ptr_iszero %r5, L17
 256  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r6
 259  L18:
 259  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r6, %r3]
 266  -live- %r0, %r1, %r2, %r4
 266  -live- %r0, %r1, %r2, %r4
 266  guard_class %r1 -> %i0
 269  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 274  -live- %i0, %r0, %r1, %r2, %r4
 274  switch %i0, <SwitchDictDescr 0:L19, 1:L20, 2:L21>
 278  unreachable
 279  ---
 279  L19:
 279  -live- %r0, %r1, %r2, %r4
 279  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 284  L22:
 284  -live- %r0, %r1, %r2, %r3, %r4
 284  guard_class %r3 -> %i0
 287  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_length> -> %i0
 292  -live- %i0, %r0, %r1, %r2, %r3, %r4
 292  int_guard_value %i0
 294  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r1], <CallDescr(rr) EF=2> -> %i0
 302  -live- %i0, %r0, %r2, %r4
 302  int_sub %i0, $1 -> %i1
 306  -live- %i1, %r0, %r2, %r4
 306  guard_class %r2 -> %i0
 309  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 314  -live- %i0, %i1, %r0, %r2, %r4
 314  switch %i0, <SwitchDictDescr 0:L23, 1:L24, 2:L25>
 318  unreachable
 319  ---
 319  L23:
 319  -live- %i1, %r0, %r2, %r4
 319  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 324  L26:
 324  -live- %i1, %r0, %r2, %r3, %r4
 324  guard_class %r3 -> %i0
 327  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.DictStrategy_vtable.cls_prepare_update> -> %i0
 332  -live- %i0, %i1, %r0, %r2, %r3, %r4
 332  int_guard_value %i0
 334  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1], R[%r3, %r2], <CallDescr(rri) EF=5>
 343  -live- %r0, %r2, %r4
 343  -live- %r0, %r2, %r4
 343  guard_class %r2 -> %i0
 346  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictMultiObject_vtable.cls_get_strategy> -> %i0
 351  -live- %i0, %r0, %r2, %r4
 351  switch %i0, <SwitchDictDescr 0:L27, 1:L28, 2:L29>
 355  unreachable
 356  ---
 356  L27:
 356  -live- %r0, %r2, %r4
 356  getfield_gc_r %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_DictObject.inst_dstrategy> -> %r3
 361  L30:
 361  instance_ptr_eq %r3, %r0 -> %i0
 365  -live- %i0, %r2, %r4
 365  goto_if_not %i0, L31
 369  goto L10
 372  ---
 372  L31:
 372  L32:
 372  inline_call_r_i <JitCode '_ll_dictnext_look_inside_iff__dictiterPtr'>, R[%r4] -> %i0
 378  -live- %i0, %r2, %r4
 378  catch_exception L33
 381  getfield_gc_r %r4, FieldDescr<dictiter.dict> -> %r3
 386  getfield_gc_r %r3, FieldDescr<dicttable.entries> -> %r3
 391  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x100825279d0> -> %r0
 397  getinteriorfield_gc_r %r3, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x10082860190> -> %r3
 403  -live- %r0, %r2, %r3, %r4
 403  goto_if_not_ptr_iszero %r0, L34
 407  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r1
 410  L35:
 410  inline_call_r_v <JitCode 'setitem__star_2'>, R[%r2, %r1, %r3]
 417  -live- %r2, %r4
 417  goto L32
 420  ---
 420  L34:
 420  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x1002aba8990> -> %r1
 424  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 429  goto L35
 432  ---
 432  L33:
 432  goto_if_exception_mismatch $<* struct object_vtable>, L36
 436  void_return
 437  ---
 437  L36:
 437  reraise
 438  ---
 438  L28:
 438  -live-
 438  raise $<* struct object>
 440  ---
 440  L29:
 440  -live- %r0, %r2, %r4
 440  -live- %r0, %r2, %r4
 440  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 446  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 451  goto L30
 454  ---
 454  L24:
 454  -live-
 454  raise $<* struct object>
 456  ---
 456  L25:
 456  -live- %i1, %r0, %r2, %r4
 456  -live- %i1, %r0, %r2, %r4
 456  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 462  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 467  goto L26
 470  ---
 470  L20:
 470  -live-
 470  raise $<* struct object>
 472  ---
 472  L21:
 472  -live- %r0, %r1, %r2, %r4
 472  -live- %r0, %r1, %r2, %r4
 472  record_quasiimmut_field %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 478  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 483  goto L22
 486  ---
 486  L17:
 486  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x1002aba8990> -> %r6
 490  setfield_gc_r %r6, %r5, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 495  goto L18
 498  ---
 498  L16:
 498  goto_if_exception_mismatch $<* struct object_vtable>, L37
 502  void_return
 503  ---
 503  L37:
 503  reraise
 504  ---
 504  L2:
 504  -live-
 504  raise $<* struct object>
 506  ---
 506  L3:
 506  -live- %r0, %r1, %r2, %r4
 506  -live- %r0, %r1, %r2, %r4
 506  record_quasiimmut_field %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy>, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.mutate_mstrategy>
 512  getfield_gc_r_pure %r2, FieldDescr<pypy.objspace.std.dictmultiobject.W_ModuleDictObject.inst_mstrategy> -> %r3
 517  goto L4
