   0  residual_call_ir_r $<* fn AbstractAttribute.find_map_attr>, I[%i0], R[%r0, %r2], <CallDescr(rri) EF=0> -> %r4
  10  -live- %i0, %r0, %r1, %r2, %r3, %r4
  10  goto_if_not_ptr_iszero %r4, L1
  14  getfield_gc_r_pure %r0, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r0
  19  -live- %i0, %r0, %r1, %r2, %r3
  19  guard_class %r0 -> %i1
  22  getfield_raw_i %i1, FieldDescr<pypy.objspace.std.mapdict.Terminator_vtable.cls__write_terminator> -> %i1
  27  -live- %i0, %i1, %r0, %r1, %r2, %r3
  27  switch %i1, <SwitchDictDescr 0:L2, 1:L3, 2:L4>
  31  unreachable
  32  ---
  32  L2:
  32  -live- %i0, %r0, %r1, %r2, %r3
  32  -live- %i0, %r0, %r1, %r2, %r3
  32  goto_if_not_int_is_zero %i0, L5
  36  int_return $False
  38  ---
  38  L5:
  38  inline_call_ir_i <JitCode 'Terminator._write_terminator'>, I[%i0], R[%r0, %r1, %r2, %r3] -> %i1
  49  -live- %i1
  49  int_return %i1
  51  ---
  51  L3:
  51  -live- %i0, %r0, %r1, %r2, %r3
  51  -live- %i0, %r0, %r1, %r2, %r3
  51  goto_if_not_int_is_zero %i0, L6
  55  -live- %r1, %r2, %r3
  55  guard_class %r1 -> %i1
  58  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getdict> -> %i1
  63  getfield_raw_i %i1, FieldDescr<specfunc.variant0> -> %i1
  68  -live- %i1, %r1, %r2, %r3
  68  int_guard_value %i1
  70  residual_call_r_r %i1, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r0
  77  -live- %r0, %r2, %r3
  77  inline_call_r_v <JitCode 'setitem_str'>, R[%r0, %r2, %r3]
  84  -live-
  84  int_return $True
  86  ---
  86  L6:
  86  inline_call_ir_i <JitCode 'Terminator._write_terminator'>, I[%i0], R[%r0, %r1, %r2, %r3] -> %i1
  97  -live- %i1
  97  int_return %i1
  99  ---
  99  L4:
  99  -live- %i0, %r0, %r1, %r2, %r3
  99  inline_call_ir_i <JitCode 'Terminator._write_terminator'>, I[%i0], R[%r0, %r1, %r2, %r3] -> %i1
 110  -live- %i1
 110  int_return %i1
 112  ---
 112  L1:
 112  -live- %r1, %r3, %r4
 112  record_quasiimmut_field %r4, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated>, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.mutate_ever_mutated>
 118  getfield_gc_i_pure %r4, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated> -> %i1
 123  -live- %i1, %r1, %r3, %r4
 123  goto_if_not %i1, L7
 127  L8:
 127  getfield_gc_i_pure %r4, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_storageindex> -> %i1
 132  -live- %i1, %r1, %r3
 132  guard_class %r1 -> %i0
 135  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__mapdict_write_storage> -> %i0
 140  -live- %i0, %i1, %r1, %r3
 140  int_guard_value %i0
 142  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i1], R[%r1, %r3], <CallDescr(rir) EF=5>
 151  -live-
 151  int_return $True
 153  ---
 153  L7:
 153  -live- %r1, %r3, %r4
 153  jit_force_quasi_immutable %r4, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.mutate_ever_mutated>
 157  setfield_gc_i %r4, $True, FieldDescr<pypy.objspace.std.mapdict.PlainAttribute.inst_ever_mutated>
 162  goto L8
