   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
   5  -live- %r0, %r1, %r2, %r3
   8  guard_class %r3 -> %i0
  11  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
  16  -live- %i0, %r0, %r1, %r2, %r3
  19  switch %i0, <SwitchDictDescr 0:L1, 1:L2>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %r0, %r1, %r2, %r3
  27  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
  36  L3:
  36  -live- %r0, %r1, %r2, %r3
  39  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r5
  44  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r4
  49  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  54  -live- %r0, %r1, %r2, %r3, %r4, %r5
  57  guard_class %r3 -> %i0
  60  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  65  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  68  switch %i0, <SwitchDictDescr 0:L4, 1:L5>
  72  unreachable
  73  ---
  73  L4:
  73  -live- %r0, %r1, %r2, %r3, %r4, %r5
  76  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
  81  L6:
  81  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i1
  86  -live- %i1, %r0, %r1, %r2, %r4, %r5
  89  goto_if_not_int_gt %i1, $1, L7
  94  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  99  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 102  guard_class %r3 -> %i0
 105  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 110  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 113  switch %i0, <SwitchDictDescr 0:L8, 1:L9>
 117  unreachable
 118  ---
 118  L8:
 118  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 121  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 126  L10:
 126  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 131  -live- %i0, %i1, %r0, %r1, %r2, %r4, %r5
 134  goto_if_not_int_lt %i0, $2, L11
 139  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 144  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 147  guard_class %r3 -> %i0
 150  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 155  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 158  switch %i0, <SwitchDictDescr 0:L12, 1:L13>
 162  unreachable
 163  ---
 163  L12:
 163  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 166  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r6
 171  L14:
 171  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 176  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 179  guard_class %r3 -> %i0
 182  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 187  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 190  switch %i0, <SwitchDictDescr 0:L15, 1:L16>
 194  unreachable
 195  ---
 195  L15:
 195  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 198  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$True], R[%r3, %r6] -> %r3
 207  L17:
 207  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 210  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r6
 215  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r7
 220  L18:
 220  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 225  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 228  guard_class %r3 -> %i0
 231  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 236  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 239  switch %i0, <SwitchDictDescr 0:L19, 1:L20>
 243  unreachable
 244  ---
 244  L19:
 244  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 247  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r8
 256  L21:
 256  -live- %i1, %r0, %r1, %r2, %r4, %r5, %r6, %r7, %r8
 259  getfield_gc_r_pure %r8, FieldDescr<tuple2.item0> -> %r3
 264  getfield_gc_r_pure %r8, FieldDescr<tuple2.item1> -> %r8
 269  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 274  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 277  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 283  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 288  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 293  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 296  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 302  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 307  getfield_gc_i %r4, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i0
 312  getfield_gc_i_pure %r5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i2
 317  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 320  goto_if_not_int_ge %i0, %i2, L22
 325  ref_return %r0
 327  ---
 327  L22:
 327  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 330  int_guard_value %i1
 332  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 335  ref_guard_value %r1
 337  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 340  ref_guard_value %r2
 342  recursive_call_r $42, I[%i1], R[%r1, %r2], F[], I[], R[%r4, %r5, %r0, %r8, %r3, %r7, %r6], F[] -> %r0
 361  -live- %r0
 364  ref_return %r0
 366  ---
 366  L20:
 366  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 369  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r8
 378  -live- %i1, %r0, %r1, %r2, %r4, %r5, %r6, %r7, %r8
 381  goto L21
 384  ---
 384  L16:
 384  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 387  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$True], R[%r3, %r6] -> %r3
 396  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 399  goto L17
 402  ---
 402  L13:
 402  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 405  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r6
 410  arraylen_gc %r6, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 415  -live- %i0, %i1, %r0, %r1, %r2, %r4, %r5, %r6
 418  int_guard_value %i0
 420  goto L14
 423  ---
 423  L11:
 423  L23:
 423  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 428  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 431  guard_class %r3 -> %i0
 434  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_create_iter> -> %i0
 439  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 442  switch %i0, <SwitchDictDescr 0:L24, 1:L25>
 446  unreachable
 447  ---
 447  L24:
 447  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 450  inline_call_ir_r <JitCode 'FakeArrayImplementation.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 459  L26:
 459  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 462  getfield_gc_r_pure %r3, FieldDescr<tuple2.item0> -> %r6
 467  getfield_gc_r_pure %r3, FieldDescr<tuple2.item1> -> %r7
 472  goto L18
 475  ---
 475  L25:
 475  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 478  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 487  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 490  goto L26
 493  ---
 493  L9:
 493  -live- %i1, %r0, %r1, %r2, %r3, %r4, %r5
 496  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 501  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 506  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 509  int_guard_value %i0
 511  goto L10
 514  ---
 514  L7:
 514  goto L23
 517  ---
 517  L5:
 517  -live- %r0, %r1, %r2, %r3, %r4, %r5
 520  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 525  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 530  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
 533  int_guard_value %i0
 535  goto L6
 538  ---
 538  L2:
 538  -live- %r0, %r1, %r2, %r3
 541  inline_call_ir_r <JitCode 'BaseConcreteArray.create_iter'>, I[$False], R[%r3, $<* None>] -> %r3
 550  -live- %r0, %r1, %r2, %r3
 553  goto L3
