   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  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i1
  39  -live- %i0, %i1, %r0, %r1, %r2, %r3
  39  int_guard_value %i1
  41  L3:
  41  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i2
  46  int_force_ge_zero %i2 -> %i1
  49  new_array_clear %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x32ad54d0> -> %r3
  54  setarrayitem_gc_i %r3, %i0, $True, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x32ad54d0>
  60  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
  65  residual_call_r_r $<* fn split_iter>, R[%r0, %r3], <CallDescr(rr) EF=5> -> %r3
  73  -live- %i2, %r1, %r2, %r3
  73  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r0
  78  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r5
  83  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r5, $<* struct pypy.module.micronumpy.iterators.IterState>] -> %r4
  92  -live- %i2, %r0, %r1, %r2, %r4, %r5
  92  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  97  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
  97  guard_class %r3 -> %i1
 100  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i1
 105  -live- %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 105  switch %i1, <SwitchDictDescr 0:L4, 1:L5>
 109  unreachable
 110  ---
 110  L4:
 110  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 110  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 119  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 119  L6:
 119  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r10
 124  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r9
 129  L7:
 129  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i1
 134  getfield_gc_i_pure %r5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i0
 139  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 139  goto_if_not_int_ge %i1, %i0, L8
 144  ref_return %r1
 146  ---
 146  L8:
 146  inline_call_ir_r <JitCode 'ArrayIter.reset'>, I[$False], R[%r0, $<* struct pypy.module.micronumpy.iterators.IterState>] -> %r3
 155  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 155  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
 160  setfield_gc_i %r3, %i1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset>
 165  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 165  guard_class %r0 -> %i0
 168  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i0
 173  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 173  switch %i0, <SwitchDictDescr 0:L9, 1:L10>
 177  unreachable
 178  ---
 178  L9:
 178  -live-
 178  raise $<* struct object>
 180  ---
 180  L10:
 180  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 180  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 185  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 185  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 191  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 196  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r9
 196  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 202  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
 207  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 207  guard_class %r8 -> %i0
 210  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i0
 215  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 215  int_guard_value %i0
 217  residual_call_ir_r %i0, <IndirectCallTargets>, I[%i1, $0], R[%r8, %r6, %r7], <CallDescr(rriir) EF=5> -> %r6
 229  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 229  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r0, %r3] -> %r3
 238  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 238  int_copy $1 -> %i0
 241  int_copy $0 -> %i1
 244  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i3
 249  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i4
 254  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 254  goto_if_not_int_ge %i3, %i4, L11
 259  inline_call_ir_r <JitCode 'box__int'>, I[%i1], R[$<* struct pypy.module.micronumpy.descriptor.W_Dtype>] -> %r3
 267  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 267  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 267  guard_class %r10 -> %i1
 270  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i1
 275  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 275  switch %i1, <SwitchDictDescr 0:L12, 1:L13>
 279  unreachable
 280  ---
 280  L12:
 280  -live-
 280  raise $<* struct object>
 282  ---
 282  L13:
 282  -live- %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r9
 282  getfield_gc_r_pure %r10, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 287  getfield_gc_i %r9, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i1
 292  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 292  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 298  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 303  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r9
 303  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 309  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r8
 314  -live- %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 314  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 320  getfield_gc_i_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i0
 325  int_eq %i0, $61 -> %i3
 329  int_eq %i0, $60 -> %i0
 333  int_or %i3, %i0 -> %i0
 337  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 337  guard_class %r8 -> %i3
 340  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i3
 345  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 345  int_guard_value %i3
 347  residual_call_ir_v %i3, <IndirectCallTargets>, I[%i1, $0, %i0], R[%r8, %r6, %r3], <CallDescr(rriiri) EF=7>
 359  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 359  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r10, %r9] -> %r9
 368  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 368  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r5, %r4] -> %r4
 377  -live- %i2, %r0, %r1, %r10, %r2, %r4, %r5, %r9
 377  goto L7
 380  ---
 380  L11:
 380  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 380  int_guard_value %i2
 382  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r9
 382  ref_guard_value %r2
 384  recursive_call_r $35, I[%i2], R[%r2], F[], I[%i0, %i1], R[%r3, %r9, %r10, %r6, %r1, %r4, %r5, %r0], F[] -> %r1
 405  -live- %r1
 405  ref_return %r1
 407  ---
 407  L5:
 407  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 407  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 416  -live- %i2, %r0, %r1, %r2, %r3, %r4, %r5
 416  goto L6
 419  ---
 419  L2:
 419  -live- %i0, %r0, %r1, %r2, %r3
 419  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 424  goto L3
