   0  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r0] -> %i0
   6  -live- %i0, %r0
   9  goto_if_not_int_gt %i0, $1, L1
  14  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a60ed2100> -> %r0
  18  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  23  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  28  assert_not_none %r0
  30  -live- %r0
  33  raise %r0
  35  ---
  35  L1:
  35  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
  40  -live- %r0
  43  guard_class %r0 -> %i0
  46  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
  51  -live- %i0, %r0
  54  switch %i0, <SwitchDictDescr 0:L2, 1:L3>
  58  unreachable
  59  ---
  59  L2:
  59  -live- %r0
  62  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r0, $<* None>] -> %r1
  71  L4:
  71  -live- %r1
  74  getfield_gc_r_pure %r1, FieldDescr<tuple2.item0> -> %r0
  79  getfield_gc_r_pure %r1, FieldDescr<tuple2.item1> -> %r1
  84  -live- %r0, %r1
  87  guard_class %r0 -> %i0
  90  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i0
  95  -live- %i0, %r0, %r1
  98  switch %i0, <SwitchDictDescr 0:L5, 1:L6>
 102  unreachable
 103  ---
 103  L5:
 103  -live-
 106  raise $<* struct object>
 108  ---
 108  L6:
 108  -live- %r0, %r1
 111  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r0
 116  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i0
 121  -live- %i0, %r0
 124  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 130  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 135  -live- %i0, %r0, %r1
 138  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 144  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 149  -live- %i0, %r0, %r1, %r2
 152  guard_class %r2 -> %i1
 155  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i1
 160  -live- %i0, %i1, %r0, %r1, %r2
 163  int_guard_value %i1
 165  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0, $0], R[%r2, %r0, %r1], <CallDescr(rriir) EF=5> -> %r1
 177  -live- %r1
 180  goto_if_not_ptr_nonzero %r1, L7
 184  ref_copy %r1 -> %r0
 187  -live- %r0, %r1
 190  guard_class %r0 -> %i0
 193  -live- %i0, %r1
 196  goto_if_not_int_eq %i0, $<* struct object_vtable>, L8
 201  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
 206  int_is_true %i0 -> %i0
 209  L9:
 209  -live- %i0
 212  goto_if_not %i0, L10
 216  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 218  ---
 218  L10:
 218  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 220  ---
 220  L8:
 220  L11:
 220  inline_call_r_i <JitCode 'is_true'>, R[%r1] -> %i0
 226  -live- %i0
 229  goto L9
 232  ---
 232  L7:
 232  goto L11
 235  ---
 235  L3:
 235  -live- %r0
 238  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r0, $<* None>] -> %r1
 247  -live- %r1
 250  goto L4
