   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
   5  -live- %r0, %r2
   8  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  14  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
  19  -live- %r0, %r1, %r2
  22  guard_class %r2 -> %i0
  25  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
  30  -live- %i0, %r0, %r1, %r2
  33  switch %i0, <SwitchDictDescr 0:L1, 1:L2>
  37  unreachable
  38  ---
  38  L1:
  38  -live- %r0, %r1, %r2
  41  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r2, $<* None>] -> %r2
  50  L3:
  50  -live- %r0, %r1, %r2
  53  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r6
  58  getfield_gc_r_pure %r2, FieldDescr<tuple2.item1> -> %r2
  63  -live- %r0, %r1, %r2, %r6
  66  guard_class %r6 -> %i0
  69  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i0
  74  -live- %i0, %r0, %r1, %r2, %r6
  77  switch %i0, <SwitchDictDescr 0:L4, 1:L5>
  81  unreachable
  82  ---
  82  L4:
  82  -live-
  85  raise $<* struct object>
  87  ---
  87  L5:
  87  -live- %r0, %r1, %r2, %r6
  90  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r3
  95  getfield_gc_i %r2, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i0
 100  -live- %i0, %r0, %r1, %r2, %r3, %r6
 103  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 109  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r4
 114  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r6
 117  record_quasiimmut_field %r4, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 123  getfield_gc_r_pure %r4, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r5
 128  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 131  guard_class %r5 -> %i1
 134  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i1
 139  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 142  int_guard_value %i1
 144  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0, $0], R[%r5, %r3, %r4], <CallDescr(rriir) EF=5> -> %r3
 156  -live- %r0, %r1, %r2, %r3, %r6
 159  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r6, %r2] -> %r2
 168  -live- %r0, %r1, %r2, %r3, %r6
 171  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 176  -live- %r0, %r1, %r2, %r3, %r6
 179  guard_class %r0 -> %i0
 182  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 187  -live- %i0, %r0, %r1, %r2, %r3, %r6
 190  switch %i0, <SwitchDictDescr 0:L6, 1:L7>
 194  unreachable
 195  ---
 195  L6:
 195  -live- %r0, %r1, %r2, %r3, %r6
 198  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r0
 203  L8:
 203  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i2
 208  int_copy $0 -> %i0
 211  int_copy $1 -> %i1
 214  getfield_gc_i %r2, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i3
 219  getfield_gc_i_pure %r6, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i4
 224  -live- %i0, %i1, %i2, %i3, %i4, %r1, %r2, %r3, %r6
 227  goto_if_not_int_ge %i3, %i4, L9
 232  int_return %i0
 234  ---
 234  L9:
 234  -live- %i0, %i1, %i2, %r1, %r2, %r3, %r6
 237  int_guard_value %i2
 239  -live- %i0, %i1, %i2, %r1, %r2, %r3, %r6
 242  ref_guard_value %r1
 244  recursive_call_i $26, I[%i2], R[%r1], F[], I[%i1, %i0], R[%r2, %r6, %r3], F[] -> %i0
 260  -live- %i0
 263  int_return %i0
 265  ---
 265  L7:
 265  -live- %r0, %r1, %r2, %r3, %r6
 268  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r0
 273  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 278  -live- %i0, %r0, %r1, %r2, %r3, %r6
 281  int_guard_value %i0
 283  goto L8
 286  ---
 286  L2:
 286  -live- %r0, %r1, %r2
 289  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r2, $<* None>] -> %r2
 298  -live- %r0, %r1, %r2
 301  goto L3
