   0  L1:
   0  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
   3  int_guard_value %i0
   5  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
   8  ref_guard_value %r0
  10  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  13  jit_merge_point $32, I[%i0], R[%r0], F[], I[], R[%r1, %r2, %r3, %r4, %r5], F[]
  28  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  31  guard_class %r3 -> %i1
  34  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i1
  39  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
  42  switch %i1, <SwitchDictDescr 0:L2, 1:L3>
  46  unreachable
  47  ---
  47  L2:
  47  -live-
  50  raise $<* struct object>
  52  ---
  52  L3:
  52  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  55  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
  60  getfield_gc_i %r2, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
  65  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  68  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  74  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
  79  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
  82  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  88  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
  93  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
  96  guard_class %r8 -> %i2
  99  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i2
 104  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 107  int_guard_value %i2
 109  residual_call_ir_r %i2, <IndirectCallTargets>, I[%i1, $0], R[%r8, %r6, %r7], <CallDescr(rriir) EF=5> -> %r7
 121  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 124  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 130  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
 135  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 138  guard_class %r6 -> %i1
 141  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i1
 146  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 149  switch %i1, <SwitchDictDescr 18:L4, 19:L5>
 153  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 156  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_fields>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_fields>
 162  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_fields> -> %r6
 167  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 170  goto_if_not_ptr_nonzero %r6, L6
 174  getfield_gc_i %r6, FieldDescr<dicttable.num_live_items> -> %i1
 179  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 182  goto_if_not_int_is_true %i1, L7
 186  L8:
 186  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 189  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 195  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r6
 200  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 203  guard_class %r6 -> %i1
 206  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i1
 211  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 214  int_guard_value %i1
 216  residual_call_r_r %i1, <IndirectCallTargets>, R[%r6, %r0, %r7], <CallDescr(rrr) EF=7> -> %r9
 225  L9:
 225  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r9
 228  guard_class %r5 -> %i1
 231  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i1
 236  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r9
 239  switch %i1, <SwitchDictDescr 0:L10, 1:L11>
 243  unreachable
 244  ---
 244  L10:
 244  -live-
 247  raise $<* struct object>
 249  ---
 249  L11:
 249  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r9
 252  getfield_gc_r_pure %r5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 257  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
 262  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r9
 265  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 271  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 276  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r9
 279  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 285  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
 290  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 293  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 299  getfield_gc_i_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i2
 304  int_eq %i2, $61 -> %i3
 308  int_eq %i2, $62 -> %i2
 312  int_or %i3, %i2 -> %i2
 316  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 319  guard_class %r8 -> %i3
 322  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i3
 327  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 330  int_guard_value %i3
 332  residual_call_ir_v %i3, <IndirectCallTargets>, I[%i1, $0, %i2], R[%r8, %r6, %r9], <CallDescr(rriiri) EF=7>
 344  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
 347  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r5, %r4] -> %r4
 356  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
 359  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r3, %r2] -> %r2
 368  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
 371  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i1
 376  getfield_gc_i_pure %r5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i2
 381  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 384  goto_if_not_int_ge %i1, %i2, L12
 389  ref_return %r1
 391  ---
 391  L12:
 391  goto L1
 394  ---
 394  L7:
 394  L13:
 394  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 397  guard_class %r7 -> %i1
 400  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i1
 405  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 408  int_guard_value %i1
 410  residual_call_r_r %i1, <IndirectCallTargets>, R[%r7, %r0], <CallDescr(rr) EF=7> -> %r9
 418  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r9
 421  goto L9
 424  ---
 424  L6:
 424  goto L13
 427  ---
 427  L4:
 427  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 430  goto L8
 433  ---
 433  L5:
 433  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r7
 436  goto L8
