   0  L1:
   0  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
   3  ref_guard_value %r0
   5  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
   8  jit_merge_point $31, I[], R[%r0], F[], I[%i0, %i1], R[%r1, %r2, %r3, %r4], F[]
  23  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
  26  guard_class %r1 -> %i2
  29  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i2
  34  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4
  37  switch %i2, <SwitchDictDescr 0:L2, 1:L3>
  41  unreachable
  42  ---
  42  L2:
  42  -live-
  45  raise $<* struct object>
  47  ---
  47  L3:
  47  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
  50  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r5
  55  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
  60  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
  63  record_quasiimmut_field %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  69  getfield_gc_r_pure %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r6
  74  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  77  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  83  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r7
  88  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
  91  guard_class %r7 -> %i3
  94  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i3
  99  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 102  int_guard_value %i3
 104  residual_call_ir_r %i3, <IndirectCallTargets>, I[%i2, $0], R[%r7, %r5, %r6], <CallDescr(rriir) EF=5> -> %r5
 116  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 119  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 125  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
 130  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 133  guard_class %r6 -> %i2
 136  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
 141  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 144  switch %i2, <SwitchDictDescr 18:L4, 19:L5>
 148  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 151  guard_class %r5 -> %i2
 154  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i2
 159  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 162  int_guard_value %i2
 164  residual_call_r_r %i2, <IndirectCallTargets>, R[%r5, %r0], <CallDescr(rr) EF=7> -> %r8
 172  L6:
 172  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 175  guard_class %r2 -> %i2
 178  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i2
 183  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r8
 186  switch %i2, <SwitchDictDescr 0:L7, 1:L8>
 190  unreachable
 191  ---
 191  L7:
 191  -live-
 194  raise $<* struct object>
 196  ---
 196  L8:
 196  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 199  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r5
 204  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
 209  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r8
 212  record_quasiimmut_field %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 218  getfield_gc_r_pure %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r6
 223  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 226  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 232  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r7
 237  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 240  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 246  getfield_gc_i_pure %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i3
 251  int_eq %i3, $61 -> %i4
 255  int_eq %i3, $62 -> %i3
 259  int_or %i4, %i3 -> %i3
 263  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r7, %r8
 266  guard_class %r7 -> %i4
 269  getfield_raw_i %i4, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i4
 274  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r7, %r8
 277  int_guard_value %i4
 279  residual_call_ir_v %i4, <IndirectCallTargets>, I[%i2, $0, %i3], R[%r7, %r5, %r8], <CallDescr(rriiri) EF=7>
 291  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 294  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
 299  int_add %i2, %i0 -> %i2
 303  inline_call_ir_r <JitCode 'ArrayIter.goto'>, I[%i2], R[%r2] -> %r4
 311  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 314  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r1, %r3] -> %r3
 323  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 326  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
 331  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i3
 336  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 339  goto_if_not_int_ge %i2, %i3, L9
 344  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r1, %r3] -> %r3
 353  L10:
 353  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 356  int_sub %i1, $1 -> %i1
 360  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 363  goto_if_not_int_gt %i1, $0, L11
 368  goto L1
 371  ---
 371  L11:
 371  void_return
 372  ---
 372  L9:
 372  goto L10
 375  ---
 375  L4:
 375  L12:
 375  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 378  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 384  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
 389  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 392  guard_class %r6 -> %i2
 395  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
 400  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 403  int_guard_value %i2
 405  residual_call_r_r %i2, <IndirectCallTargets>, R[%r6, %r0, %r5], <CallDescr(rrr) EF=7> -> %r8
 414  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 417  goto L6
 420  ---
 420  L5:
 420  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 423  goto L12
