   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
   5  -live- %r0, %r1, %r2, %r3
   5  guard_class %r3 -> %i0
   8  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
  13  -live- %i0, %r0, %r1, %r2, %r3
  13  switch %i0, <SwitchDictDescr 0:L1, 1:L2>
  17  unreachable
  18  ---
  18  L1:
  18  -live- %r0, %r1, %r2, %r3
  18  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
  27  -live- %r0, %r1, %r2, %r3
  27  L3:
  27  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r4
  32  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r5
  37  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  42  -live- %r0, %r1, %r2, %r3, %r4, %r5
  42  guard_class %r3 -> %i0
  45  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  50  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  50  switch %i0, <SwitchDictDescr 0:L4, 1:L5>
  54  unreachable
  55  ---
  55  L4:
  55  -live- %r0, %r1, %r2, %r3, %r4, %r5
  55  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
  60  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
  65  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  65  int_guard_value %i0
  67  L6:
  67  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i1
  72  -live- %i1, %r0, %r1, %r2, %r4, %r5
  72  goto_if_not_int_gt %i1, $1, L7
  77  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  82  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
  82  guard_class %r3 -> %i0
  85  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  90  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
  90  switch %i0, <SwitchDictDescr 0:L8, 1:L9>
  94  unreachable
  95  ---
  95  L8:
  95  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
  95  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 100  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
 105  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 105  int_guard_value %i0
 107  L10:
 107  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
 112  -live- %i0, %i1, %r0, %r1, %r2, %r4, %r5
 112  goto_if_not_int_lt %i0, $2, L11
 117  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 122  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 122  guard_class %r3 -> %i0
 125  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 130  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 130  switch %i0, <SwitchDictDescr 0:L12, 1:L13>
 134  unreachable
 135  ---
 135  L12:
 135  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 135  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r6
 140  arraylen_gc %r6, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
 145  -live- %i0, %i1, %r0, %r1, %r2, %r4, %r5, %r6
 145  int_guard_value %i0
 147  L14:
 147  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 152  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 152  guard_class %r3 -> %i0
 155  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 160  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 160  switch %i0, <SwitchDictDescr 0:L15, 1:L16>
 164  unreachable
 165  ---
 165  L15:
 165  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 165  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$True], R[%r3, %r6] -> %r3
 174  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 174  L17:
 174  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r6
 179  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r7
 184  L18:
 184  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 189  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 189  guard_class %r3 -> %i0
 192  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 197  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 197  switch %i0, <SwitchDictDescr 0:L19, 1:L20>
 201  unreachable
 202  ---
 202  L19:
 202  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 202  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r8
 211  -live- %i1, %r0, %r1, %r2, %r4, %r5, %r6, %r7, %r8
 211  L21:
 211  getfield_gc_r_pure %r8, FieldDescr<tuple2.item0> -> %r3
 216  getfield_gc_r_pure %r8, FieldDescr<tuple2.item1> -> %r8
 221  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 226  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 226  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 232  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 237  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 242  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 242  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 248  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 253  getfield_gc_i %r5, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i0
 258  getfield_gc_i_pure %r4, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i2
 263  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 263  goto_if_not_int_ge %i0, %i2, L22
 268  ref_return %r0
 270  ---
 270  L22:
 270  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 270  int_guard_value %i1
 272  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 272  ref_guard_value %r1
 274  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 274  ref_guard_value %r2
 276  recursive_call_r $48, I[%i1], R[%r1, %r2], F[], I[], R[%r0, %r4, %r7, %r6, %r5, %r8, %r3], F[] -> %r0
 295  -live- %r0
 295  ref_return %r0
 297  ---
 297  L20:
 297  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 297  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r8
 306  -live- %i1, %r0, %r1, %r2, %r4, %r5, %r6, %r7, %r8
 306  goto L21
 309  ---
 309  L16:
 309  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 309  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$True], R[%r3, %r6] -> %r3
 318  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 318  goto L17
 321  ---
 321  L13:
 321  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 321  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r6
 326  goto L14
 329  ---
 329  L11:
 329  L23:
 329  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 334  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 334  guard_class %r3 -> %i0
 337  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 342  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 342  switch %i0, <SwitchDictDescr 0:L24, 1:L25>
 346  unreachable
 347  ---
 347  L24:
 347  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 347  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 356  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 356  L26:
 356  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r6
 361  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r7
 366  goto L18
 369  ---
 369  L25:
 369  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 369  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 378  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 378  goto L26
 381  ---
 381  L9:
 381  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 381  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 386  goto L10
 389  ---
 389  L7:
 389  goto L23
 392  ---
 392  L5:
 392  -live- %r0, %r1, %r2, %r3, %r4, %r5
 392  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 397  goto L6
 400  ---
 400  L2:
 400  -live- %r0, %r1, %r2, %r3
 400  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 409  -live- %r0, %r1, %r2, %r3
 409  goto L3
