   0  L1:
   0  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
   3  int_guard_value %i0
   5  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
   8  ref_guard_value %r0
  10  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  13  jit_merge_point $26, I[%i0], R[%r0], F[], I[%i1, %i2], R[%r1, %r2, %r3], F[]
  28  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  31  guard_class %r2 -> %i3
  34  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i3
  39  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3
  42  switch %i3, <SwitchDictDescr 0:L2, 1:L3>
  46  unreachable
  47  ---
  47  L2:
  47  -live-
  50  raise $<* struct object>
  52  ---
  52  L3:
  52  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  55  int_copy %i2 -> %i3
  58  int_copy %i1 -> %i2
  61  ref_copy %r3 -> %r4
  64  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
  69  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
  74  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r4, %r6
  77  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  83  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
  88  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r6
  91  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  97  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r5
 102  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 105  guard_class %r5 -> %i4
 108  getfield_raw_i %i4, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i4
 113  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 116  int_guard_value %i4
 118  residual_call_ir_r %i4, <IndirectCallTargets>, I[%i1, $0], R[%r5, %r6, %r3], <CallDescr(rriir) EF=5> -> %r3
 130  -live- %i0, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 133  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 139  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
 144  -live- %i0, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r6
 147  guard_class %r6 -> %i1
 150  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_argmin> -> %i1
 155  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r6
 158  int_guard_value %i1
 160  residual_call_r_i %i1, <IndirectCallTargets>, R[%r6, %r4, %r3], <CallDescr(rrr) EF=7> -> %i1
 169  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 172  goto_if_not %i1, L4
 176  int_push %i3
 178  int_copy %i2 -> %i3
 181  int_pop -> %i2
 183  ref_copy %r4 -> %r3
 186  L5:
 186  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r2, %r1] -> %r1
 195  -live- %i0, %i2, %i3, %r0, %r1, %r2, %r3
 198  int_add %i3, $1 -> %i1
 202  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i3
 207  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i4
 212  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 215  goto_if_not_int_ge %i3, %i4, L6
 220  int_return %i2
 222  ---
 222  L6:
 222  goto L1
 225  ---
 225  L4:
 225  int_copy %i2 -> %i3
 228  goto L5
