   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
   5  -live- %i0, %r0, %r1, %r2
   8  guard_class %r0 -> %i1
  11  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i1
  16  -live- %i0, %i1, %r0, %r1, %r2
  19  switch %i1, <SwitchDictDescr 0:L1, 1:L2>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %i0, %r0, %r1, %r2
  27  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r0, $<* None>] -> %r3
  36  L3:
  36  -live- %i0, %r1, %r2, %r3
  39  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r0
  44  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r3
  49  int_copy $0 -> %i1
  52  getfield_gc_i %r3, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
  57  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i3
  62  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3
  65  goto_if_not_int_ge %i2, %i3, L4
  70  void_return
  71  ---
  71  L4:
  71  -live- %i0, %i1, %r0, %r1, %r2, %r3
  74  int_guard_value %i0
  76  -live- %i0, %i1, %r0, %r1, %r2, %r3
  79  ref_guard_value %r1
  81  recursive_call_v $55, I[%i0], R[%r1], F[], I[%i1], R[%r2, %r0, %r3], F[]
  95  -live-
  98  void_return
  99  ---
  99  L2:
  99  -live- %i0, %r0, %r1, %r2
 102  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r0, $<* None>] -> %r3
 111  -live- %i0, %r1, %r2, %r3
 114  goto L3
