   0  L1:
   0  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
   0  int_guard_value %i0
   2  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
   2  ref_guard_value %r0
   4  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
   4  jit_merge_point $32, I[%i0], R[%r0], F[], I[%i1, %i2], R[%r1, %r2, %r3], F[]
  19  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  19  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  19  guard_class %r1 -> %i3
  22  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i3
  27  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3
  27  switch %i3, <SwitchDictDescr 0:L2, 1:L3>
  31  unreachable
  32  ---
  32  L2:
  32  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  32  int_copy %i1 -> %i3
  35  int_copy %i2 -> %i1
  38  ref_copy %r2 -> %r4
  41  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r5
  46  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
  51  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r3, %r4, %r5
  51  record_quasiimmut_field %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  57  getfield_gc_r_pure %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
  62  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5
  62  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  68  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
  73  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  73  guard_class %r6 -> %i4
  76  getfield_raw_i %i4, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i4
  81  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  81  int_guard_value %i4
  83  residual_call_ir_r %i4, <IndirectCallTargets>, I[%i2, $0], R[%r6, %r5, %r2], <CallDescr(rriir) EF=5> -> %r2
  95  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4
  95  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4
  95  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 101  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r5
 106  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5
 106  guard_class %r5 -> %i2
 109  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_argmax> -> %i2
 114  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5
 114  int_guard_value %i2
 116  residual_call_r_i %i2, <IndirectCallTargets>, R[%r5, %r4, %r2], <CallDescr(rrr) EF=7> -> %i2
 125  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 125  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 125  goto_if_not %i2, L4
 129  int_push %i3
 131  int_copy %i1 -> %i3
 134  int_pop -> %i1
 136  ref_copy %r4 -> %r2
 139  L5:
 139  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r1, %r3] -> %r3
 148  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3
 148  int_add %i3, $1 -> %i2
 152  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i3
 157  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i4
 162  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 162  goto_if_not_int_ge %i3, %i4, L6
 167  int_return %i1
 169  ---
 169  L6:
 169  goto L1
 172  ---
 172  L4:
 172  int_copy %i1 -> %i3
 175  goto L5
 178  ---
 178  L3:
 178  -live-
 178  raise $<* struct object>
