   0  residual_call_ir_r $<* fn AbstractAttribute.find_map_attr>, I[%i0], R[%r0, %r2], <CallDescr(rri) EF=0> -> %r3
  10  -live- %i0, %r0, %r1, %r2, %r3
  10  goto_if_not_ptr_iszero %r3, L1
  14  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
  19  -live- %i0, %r0, %r1, %r2
  19  guard_class %r0 -> %i1
  22  getfield_raw_i %i1, FieldDescr<pypy.objspace.std.mapdict.Terminator_vtable.cls__read_terminator> -> %i1
  27  -live- %i0, %i1, %r1, %r2
  27  switch %i1, <SwitchDictDescr 0:L2, 1:L3>
  31  unreachable
  32  ---
  32  L2:
  32  -live- %i0, %r1, %r2
  32  -live- %i0, %r1, %r2
  32  goto_if_not_int_is_zero %i0, L4
  36  -live- %r1, %r2
  36  guard_class %r1 -> %i0
  39  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getdict> -> %i0
  44  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
  49  -live- %i0, %r1, %r2
  49  int_guard_value %i0
  51  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r0
  58  -live- %r0, %r2
  58  inline_call_r_r <JitCode 'finditem_str'>, R[%r0, %r2] -> %r2
  65  -live- %r2
  65  ref_return %r2
  67  ---
  67  L4:
  67  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  69  ---
  69  L3:
  69  -live-
  69  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  71  ---
  71  L1:
  71  ref_isconstant %r3 -> %i0
  74  -live- %i0, %r1, %r3
  74  goto_if_not %i0, L5
  78  ref_isconstant %r1 -> %i0
  81  -live- %i0, %r1, %r3
  81  goto_if_not %i0, L6
  85  -live- %r1, %r3
  85  record_quasiimmut_field %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated>, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.mutate_ever_mutated>
  91  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated> -> %i0
  96  -live- %i0, %r1, %r3
  96  goto_if_not %i0, L7
 100  L8:
 100  -live- %r1, %r3
 100  guard_class %r3 -> %i0
 103  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute_vtable.cls__direct_read> -> %i0
 108  -live- %i0, %r1, %r3
 108  switch %i0, <SwitchDictDescr 0:L9, 1:L10>
 112  unreachable
 113  ---
 113  L9:
 113  -live- %r1, %r3
 113  inline_call_r_r <JitCode 'UnboxedPlainAttribute._prim_direct_read'>, R[%r3, %r1] -> %r2
 120  -live- %r1, %r2, %r3
 120  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
 125  -live- %r0, %r1, %r2, %r3
 125  record_quasiimmut_field %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_allow_unboxing>, FieldDescr<pypy.objspace.std.mapdict.Terminator.mutate_allow_unboxing>
 131  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_allow_unboxing> -> %i0
 136  -live- %i0, %r1, %r2, %r3
 136  goto_if_not_int_is_zero %i0, L11
 140  inline_call_r_r <JitCode 'UnboxedPlainAttribute._convert_to_boxed'>, R[%r3, %r1] -> %r0
 147  -live- %r2
 147  ref_return %r2
 149  ---
 149  L11:
 149  ref_return %r2
 151  ---
 151  L10:
 151  -live- %r1, %r3
 151  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_storageindex> -> %i0
 156  -live- %i0, %r1
 156  guard_class %r1 -> %i1
 159  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__mapdict_read_storage> -> %i1
 164  -live- %i0, %i1, %r1
 164  int_guard_value %i1
 166  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0], R[%r1], <CallDescr(ri) EF=5> -> %r2
 175  -live- %r2
 175  ref_return %r2
 177  ---
 177  L7:
 177  -live- %r1, %r3
 177  guard_class %r3 -> %i0
 180  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute_vtable.cls__pure_direct_read> -> %i0
 185  -live- %i0, %r1, %r3
 185  switch %i0, <SwitchDictDescr 0:L12, 1:L13>
 189  unreachable
 190  ---
 190  L12:
 190  -live- %r1, %r3
 190  residual_call_r_i $<* fn UnboxedPlainAttribute._pure_unboxed_read>, R[%r3, %r1], <CallDescr(rr) EF=4> -> %i0
 198  -live- %i0, %r3
 198  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.UnboxedPlainAttribute.inst_typ> -> %i1
 203  -live- %i0, %i1
 203  goto_if_not_int_eq %i1, $<* struct object_vtable>, L14
 208  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac55491a0> -> %r2
 212  setfield_gc_i %r2, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 217  ref_return %r2
 219  ---
 219  L14:
 219  convert_longlong_bytes_to_float %i0 -> %f0
 222  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac55099b8> -> %r2
 226  setfield_gc_f %r2, %f0, FieldDescr<pypy.objspace.std.floatobject.W_FloatObject.inst_floatval>
 231  ref_return %r2
 233  ---
 233  L13:
 233  -live- %r1, %r3
 233  residual_call_r_r $<* fn PlainAttribute._pure_direct_read>, R[%r3, %r1], <CallDescr(rr) EF=4> -> %r2
 241  -live- %r2
 241  ref_return %r2
 243  ---
 243  L6:
 243  goto L8
 246  ---
 246  L5:
 246  goto L8
