   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
  13  goto_if_not_ptr_iszero %r3, L1
  17  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
  22  -live- %i0, %r0, %r1, %r2
  25  guard_class %r0 -> %i1
  28  getfield_raw_i %i1, FieldDescr<pypy.objspace.std.mapdict.Terminator_vtable.cls__read_terminator> -> %i1
  33  -live- %i0, %i1, %r1, %r2
  36  switch %i1, <SwitchDictDescr 0:L2, 1:L3>
  40  unreachable
  41  ---
  41  L2:
  41  -live- %i0, %r1, %r2
  44  goto_if_not_int_is_zero %i0, L4
  48  -live- %r1, %r2
  51  guard_class %r1 -> %i0
  54  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getdict> -> %i0
  59  -live- %i0, %r1, %r2
  62  int_guard_value %i0
  64  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r0
  71  -live- %r0, %r2
  74  inline_call_r_r <JitCode 'finditem_str'>, R[%r0, %r2] -> %r2
  81  -live- %r2
  84  ref_return %r2
  86  ---
  86  L4:
  86  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  88  ---
  88  L3:
  88  -live-
  91  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  93  ---
  93  L1:
  93  ref_isconstant %r3 -> %i0
  96  -live- %i0, %r1, %r3
  99  goto_if_not %i0, L5
 103  ref_isconstant %r1 -> %i0
 106  -live- %i0, %r1, %r3
 109  goto_if_not %i0, L6
 113  -live- %r1, %r3
 116  record_quasiimmut_field %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated>, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.mutate_ever_mutated>
 122  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated> -> %i0
 127  -live- %i0, %r1, %r3
 130  goto_if_not %i0, L7
 134  L8:
 134  -live- %r1, %r3
 137  guard_class %r3 -> %i0
 140  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute_vtable.cls__direct_read> -> %i0
 145  -live- %i0, %r1, %r3
 148  switch %i0, <SwitchDictDescr 0:L9, 1:L10>
 152  unreachable
 153  ---
 153  L9:
 153  -live- %r1, %r3
 156  inline_call_r_r <JitCode 'UnboxedPlainAttribute._prim_direct_read'>, R[%r3, %r1] -> %r2
 163  -live- %r1, %r2, %r3
 166  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
 171  -live- %r0, %r1, %r2, %r3
 174  record_quasiimmut_field %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_allow_unboxing>, FieldDescr<pypy.objspace.std.mapdict.Terminator.mutate_allow_unboxing>
 180  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_allow_unboxing> -> %i0
 185  -live- %i0, %r1, %r2, %r3
 188  goto_if_not_int_is_zero %i0, L11
 192  inline_call_r_r <JitCode 'UnboxedPlainAttribute._convert_to_boxed'>, R[%r3, %r1] -> %r0
 199  -live- %r2
 202  ref_return %r2
 204  ---
 204  L11:
 204  ref_return %r2
 206  ---
 206  L10:
 206  -live- %r1, %r3
 209  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_storageindex> -> %i0
 214  -live- %i0, %r1
 217  guard_class %r1 -> %i1
 220  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__mapdict_read_storage> -> %i1
 225  -live- %i0, %i1, %r1
 228  int_guard_value %i1
 230  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0], R[%r1], <CallDescr(ri) EF=5> -> %r2
 239  -live- %r2
 242  ref_return %r2
 244  ---
 244  L7:
 244  -live- %r1, %r3
 247  guard_class %r3 -> %i0
 250  getfield_raw_i %i0, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute_vtable.cls__pure_direct_read> -> %i0
 255  -live- %i0, %r1, %r3
 258  switch %i0, <SwitchDictDescr 0:L12, 1:L13>
 262  unreachable
 263  ---
 263  L12:
 263  -live- %r1, %r3
 266  residual_call_r_i $<* fn UnboxedPlainAttribute._pure_unboxed_read>, R[%r3, %r1], <CallDescr(rr) EF=4> -> %i0
 274  -live- %i0, %r3
 277  getfield_gc_i_pure %r3, FieldDescr<pypy.objspace.std.mapdict.UnboxedPlainAttribute.inst_typ> -> %i1
 282  -live- %i0, %i1
 285  goto_if_not_int_eq %i1, $<* struct object_vtable>, L14
 290  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a76e65440> -> %r2
 294  setfield_gc_i %r2, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 299  ref_return %r2
 301  ---
 301  L14:
 301  convert_longlong_bytes_to_float %i0 -> %f0
 304  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a68dd2170> -> %r2
 308  setfield_gc_f %r2, %f0, FieldDescr<pypy.objspace.std.floatobject.W_FloatObject.inst_floatval>
 313  ref_return %r2
 315  ---
 315  L13:
 315  -live- %r1, %r3
 318  residual_call_r_r $<* fn PlainAttribute._pure_direct_read>, R[%r3, %r1], <CallDescr(rr) EF=4> -> %r2
 326  -live- %r2
 329  ref_return %r2
 331  ---
 331  L6:
 331  goto L8
 334  ---
 334  L5:
 334  goto L8
