   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 $29, 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> -> %r6
 116  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r6
 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> -> %r5
 130  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 133  guard_class %r5 -> %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, %r6
 144  goto_if_not_int_eq %i2, $18, L4
 149  L5:
 149  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r6
 152  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 158  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r5
 163  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 166  guard_class %r5 -> %i2
 169  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
 174  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 177  int_guard_value %i2
 179  residual_call_r_r %i2, <IndirectCallTargets>, R[%r5, %r0, %r6], <CallDescr(rrr) EF=7> -> %r8
 188  L6:
 188  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 191  guard_class %r2 -> %i2
 194  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i2
 199  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r8
 202  switch %i2, <SwitchDictDescr 0:L7, 1:L8>
 206  unreachable
 207  ---
 207  L7:
 207  -live-
 210  raise $<* struct object>
 212  ---
 212  L8:
 212  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 215  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r5
 220  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
 225  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r8
 228  record_quasiimmut_field %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 234  getfield_gc_r_pure %r5, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r6
 239  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 242  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 248  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r7
 253  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 256  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 262  getfield_gc_i_pure %r6, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i3
 267  int_eq %i3, $61 -> %i4
 271  int_eq %i3, $60 -> %i3
 275  int_or %i4, %i3 -> %i3
 279  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r7, %r8
 282  guard_class %r7 -> %i4
 285  getfield_raw_i %i4, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i4
 290  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r7, %r8
 293  int_guard_value %i4
 295  residual_call_ir_v %i4, <IndirectCallTargets>, I[%i2, $0, %i3], R[%r7, %r5, %r8], <CallDescr(rriiri) EF=7>
 307  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 310  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
 315  int_add %i2, %i0 -> %i2
 319  inline_call_ir_r <JitCode 'ArrayIter.goto'>, I[%i2], R[%r2] -> %r4
 327  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 330  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r1, %r3] -> %r3
 339  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 342  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
 347  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i3
 352  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4
 355  goto_if_not_int_ge %i2, %i3, L9
 360  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r1, %r3] -> %r3
 369  L10:
 369  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 372  int_sub %i1, $1 -> %i1
 376  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 379  goto_if_not_int_gt %i1, $0, L11
 384  goto L1
 387  ---
 387  L11:
 387  void_return
 388  ---
 388  L9:
 388  goto L10
 391  ---
 391  L4:
 391  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 394  guard_class %r5 -> %i2
 397  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
 402  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r6
 405  goto_if_not_int_eq %i2, $19, L12
 410  goto L5
 413  ---
 413  L12:
 413  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r6
 416  guard_class %r6 -> %i2
 419  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i2
 424  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r6
 427  int_guard_value %i2
 429  residual_call_r_r %i2, <IndirectCallTargets>, R[%r6, %r0], <CallDescr(rr) EF=7> -> %r8
 437  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r8
 440  goto L6
