   0  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r0] -> %i0
   6  -live- %i0, %r0
   6  -live- %i0, %r0
   6  goto_if_not_int_gt %i0, $1, L1
  11  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r0
  15  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  20  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  25  assert_not_none %r0
  27  -live- %r0
  27  guard_class %r0 -> %i0
  30  -live- %r0
  30  raise %r0
  32  ---
  32  L1:
  32  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
  37  -live- %r0
  37  guard_class %r0 -> %i0
  40  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
  45  -live- %i0, %r0
  45  switch %i0, <SwitchDictDescr 0:L2, 1:L3>
  49  unreachable
  50  ---
  50  L2:
  50  -live- %r0
  50  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r0, $<* None>] -> %r1
  59  -live- %r1
  59  L4:
  59  getfield_gc_r_pure %r1, FieldDescr<tuple2.item0> -> %r0
  64  getfield_gc_r_pure %r1, FieldDescr<tuple2.item1> -> %r1
  69  -live- %r0, %r1
  69  guard_class %r0 -> %i0
  72  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i0
  77  -live- %i0, %r0, %r1
  77  switch %i0, <SwitchDictDescr 0:L5, 1:L6>
  81  unreachable
  82  ---
  82  L5:
  82  -live-
  82  raise $<* struct object>
  84  ---
  84  L6:
  84  -live- %r0, %r1
  84  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r0
  89  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i0
  94  -live- %i0, %r0
  94  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 100  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 105  -live- %i0, %r0, %r1
 105  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 111  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 116  -live- %i0, %r0, %r1, %r2
 116  guard_class %r2 -> %i1
 119  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i1
 124  -live- %i0, %i1, %r0, %r1, %r2
 124  int_guard_value %i1
 126  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0, $0], R[%r2, %r0, %r1], <CallDescr(rriir) EF=5> -> %r1
 138  -live- %r1
 138  -live- %r1
 138  goto_if_not_ptr_nonzero %r1, L7
 142  ref_copy %r1 -> %r0
 145  -live- %r0, %r1
 145  guard_class %r0 -> %i0
 148  -live- %i0, %r1
 148  goto_if_not_int_eq %i0, $<* struct object_vtable>, L8
 153  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
 158  int_is_true %i0 -> %i0
 161  L9:
 161  -live- %i0
 161  goto_if_not %i0, L10
 165  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 167  ---
 167  L10:
 167  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 169  ---
 169  L8:
 169  L11:
 169  inline_call_r_i <JitCode 'is_true'>, R[%r1] -> %i0
 175  -live- %i0
 175  goto L9
 178  ---
 178  L7:
 178  goto L11
 181  ---
 181  L3:
 181  -live- %r0
 181  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r0, $<* None>] -> %r1
 190  -live- %r1
 190  goto L4
