   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
   5  -live- %i0, %r0, %r1, %r3
   5  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  11  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
  16  -live- %i0, %r0, %r1, %r2, %r3
  16  guard_class %r3 -> %i1
  19  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i1
  24  -live- %i0, %i1, %r0, %r1, %r2, %r3
  24  switch %i1, <SwitchDictDescr 0:L1, 1:L2>
  28  unreachable
  29  ---
  29  L1:
  29  -live- %i0, %r0, %r1, %r2, %r3
  29  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
  34  L3:
  34  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009280d710> -> %i2
  39  int_force_ge_zero %i2 -> %i1
  42  new_array_clear %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x100927ee3d0> -> %r3
  47  setarrayitem_gc_i %r3, %i0, $True, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x100927ee3d0>
  53  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
  58  residual_call_r_r $<* fn split_iter>, R[%r0, %r3], <CallDescr(rr) EF=5> -> %r3
  66  -live- %i2, %r1, %r2, %r3
  66  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r0
  71  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r5
  76  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r5, $<* struct pypy.module.micronumpy.iterators.IterState>] -> %r4
  85  -live- %i2, %r0, %r1, %r2, %r4, %r5
  85  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  90  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
  90  guard_class %r3 -> %i1
  93  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i1
  98  -live- %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
  98  switch %i1, <SwitchDictDescr 0:L4, 1:L5>
 102  unreachable
 103  ---
 103  L4:
 103  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 103  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 112  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 112  L6:
 112  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r10
 117  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r9
 122  L7:
 122  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i1
 127  getfield_gc_i_pure %r5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i0
 132  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 132  goto_if_not_int_ge %i1, %i0, L8
 137  ref_return %r1
 139  ---
 139  L8:
 139  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r0, $<* struct pypy.module.micronumpy.iterators.IterState>] -> %r3
 148  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 148  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
 153  setfield_gc_i %r3, %i1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset>
 158  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 158  guard_class %r0 -> %i0
 161  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i0
 166  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 166  switch %i0, <SwitchDictDescr 0:L9, 1:L10>
 170  unreachable
 171  ---
 171  L9:
 171  -live-
 171  raise $<* struct object>
 173  ---
 173  L10:
 173  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 173  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 178  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 178  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 184  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 189  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r9
 189  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 195  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
 200  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 200  guard_class %r8 -> %i0
 203  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i0
 208  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 208  int_guard_value %i0
 210  residual_call_ir_r %i0, <IndirectCallTargets>, I[%i1, $0], R[%r8, %r6, %r7], <CallDescr(rriir) EF=5> -> %r6
 222  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 222  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r0, %r3] -> %r3
 231  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 231  int_copy $1 -> %i0
 234  int_copy $0 -> %i1
 237  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i3
 242  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i4
 247  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 247  goto_if_not_int_ge %i3, %i4, L11
 252  inline_call_ir_r <JitCode 'box__int'>, I[%i1], R[$<* struct pypy.module.micronumpy.descriptor.W_Dtype>] -> %r3
 260  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 260  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 260  guard_class %r10 -> %i1
 263  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i1
 268  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 268  switch %i1, <SwitchDictDescr 0:L12, 1:L13>
 272  unreachable
 273  ---
 273  L12:
 273  -live-
 273  raise $<* struct object>
 275  ---
 275  L13:
 275  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 275  getfield_gc_r_pure %r10, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 280  getfield_gc_i %r9, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
 285  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 285  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 291  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 296  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r9
 296  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 302  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
 307  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 307  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 313  getfield_gc_i_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i0
 318  int_eq %i0, $61 -> %i3
 322  int_eq %i0, $62 -> %i0
 326  int_or %i3, %i0 -> %i0
 330  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 330  guard_class %r8 -> %i3
 333  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i3
 338  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 338  int_guard_value %i3
 340  residual_call_ir_v %i3, <IndirectCallTargets>, I[%i1, $0, %i0], R[%r8, %r6, %r3], <CallDescr(rriiri) EF=7>
 352  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 352  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r10, %r9] -> %r9
 361  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 361  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r5, %r4] -> %r4
 370  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 370  goto L7
 373  ---
 373  L11:
 373  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 373  int_guard_value %i2
 375  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 375  ref_guard_value %r2
 377  recursive_call_r $46, I[%i2], R[%r2], F[], I[%i0, %i1], R[%r5, %r9, %r4, %r3, %r10, %r6, %r1, %r0], F[] -> %r1
 398  -live- %r1
 398  ref_return %r1
 400  ---
 400  L5:
 400  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 400  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 409  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 409  goto L6
 412  ---
 412  L2:
 412  -live- %i0, %r0, %r1, %r2, %r3
 412  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 417  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009280d710> -> %i1
 422  -live- %i0, %i1, %r0, %r1, %r2, %r3
 422  int_guard_value %i1
 424  goto L3
