   0  L1:
   0  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
   0  int_guard_value %i0
   2  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
   2  int_guard_value %i1
   4  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
   4  int_guard_value %i2
   6  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
   6  ref_guard_value %r0
   8  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
   8  jit_merge_point $73, I[%i0, %i1, %i2], R[%r0], F[], I[], R[%r1, %r2, %r3, %r4, %r5], F[]
  25  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
  25  inline_call_ir_r <JitCode 'll_alloc_and_set__GcArray_Ptr_GcStruct_objectLlT_Signed_objectPtr'>, I[%i1], R[$<* struct object>] -> %r7
  33  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r7
  33  int_copy %i1 -> %i3
  36  int_copy %i2 -> %i4
  39  int_copy $0 -> %i6
  42  L2:
  42  -live- %i0, %i1, %i3, %i4, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r7
  42  goto_if_not_int_ge %i6, %i3, L3
  47  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i2
  52  -live- %i0, %i1, %i2, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r7
  52  goto_if_not_int_gt %i4, %i2, L4
  57  int_push %i4
  59  int_copy %i2 -> %i4
  62  int_pop -> %i2
  64  L5:
  64  int_sub %i4, $0 -> %i5
  68  new_array_clear %i5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r6
  73  residual_call_ir_v $<* fn ll_arraycopy__arrayPtr_arrayPtr_Signed_Signed_Signed>, I[$0, $0, %i5], R[%r4, %r6], <CallDescr(rriii) EF=2 OS_ARRAYCOPY>
  84  inline_call_ir_r <JitCode 'PureShapeIter.get_index'>, I[%i0], R[%r2] -> %r8
  92  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
  92  inline_call_r_r <JitCode 'll_concat__GcArray_Ptr_GcStruct_objectLlT_arrayPtr_arrayPtr'>, R[%r6, %r8] -> %r6
  99  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
  99  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r6] -> %r8
 105  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 105  catch_exception L6
 108  L7:
 108  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r7] -> %r6
 114  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 114  catch_exception L8
 117  L9:
 117  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 117  guard_class %r1 -> %i5
 120  getfield_raw_i %i5, FieldDescr<pypy.module.micronumpy.base.W_NDimArray_vtable.cls_descr_getitem> -> %i5
 125  -live- %i0, %i1, %i2, %i5, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 125  switch %i5, <SwitchDictDescr 0:L10, 1:L11>
 129  unreachable
 130  ---
 130  L10:
 130  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 130  inline_call_r_r <JitCode 'W_FlatIterator.descr_getitem'>, R[%r1, %r6] -> %r6
 137  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 137  L12:
 137  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 137  guard_class %r3 -> %i5
 140  getfield_raw_i %i5, FieldDescr<pypy.module.micronumpy.base.W_NDimArray_vtable.cls_descr_setitem> -> %i5
 145  -live- %i0, %i1, %i2, %i5, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 145  switch %i5, <SwitchDictDescr 0:L13, 1:L14>
 149  unreachable
 150  ---
 150  L13:
 150  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 150  inline_call_r_r <JitCode 'W_FlatIterator.descr_setitem'>, R[%r3, %r8, %r6] -> %r6
 158  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 158  L15:
 158  inline_call_r_v <JitCode 'PureShapeIter.next'>, R[%r2]
 163  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 163  getfield_gc_i %r2, FieldDescr<pypy.module.micronumpy.iterators.PureShapeIter.inst__done> -> %i5
 168  -live- %i0, %i1, %i2, %i5, %r0, %r1, %r2, %r3, %r4, %r5
 168  goto_if_not %i5, L16
 172  ref_return %r3
 174  ---
 174  L16:
 174  goto L1
 177  ---
 177  L14:
 177  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 177  inline_call_r_r <JitCode 'W_NDimArray.descr_setitem'>, R[%r3, %r8, %r6] -> %r6
 185  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 185  goto L15
 188  ---
 188  L11:
 188  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 188  inline_call_r_r <JitCode 'W_NDimArray.descr_getitem'>, R[%r1, %r6] -> %r6
 195  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 195  goto L12
 198  ---
 198  L8:
 198  goto_if_exception_mismatch $<* struct object_vtable>, L17
 202  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10097e0b390> -> %r6
 206  setfield_gc_r %r6, %r7, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 211  goto L9
 214  ---
 214  L17:
 214  reraise
 215  ---
 215  L6:
 215  goto_if_exception_mismatch $<* struct object_vtable>, L18
 219  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10097e0b390> -> %r8
 223  setfield_gc_r %r8, %r6, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
 228  goto L7
 231  ---
 231  L18:
 231  reraise
 232  ---
 232  L4:
 232  int_copy %i4 -> %i2
 235  goto L5
 238  ---
 238  L3:
 238  int_copy %i6 -> %i2
 241  int_add %i2, $1 -> %i6
 245  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.iterators.PureShapeIter.inst_idx_w_i> -> %r6
 250  getarrayitem_gc_r %r6, %i2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r6
 256  -live- %i0, %i1, %i2, %i3, %i4, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 256  goto_if_not_ptr_iszero %r6, L19
 260  getarrayitem_gc_r %r5, %i2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r6
 266  setarrayitem_gc_r %r7, %i2, %r6, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 272  goto L2
 275  ---
 275  L19:
 275  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.iterators.PureShapeIter.inst_idx_w_i> -> %r6
 280  getarrayitem_gc_r %r6, %i2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r6
 286  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.iterators.PureShapeIter.inst_idx_w_s> -> %r8
 291  getarrayitem_gc_r %r8, %i2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r8
 297  -live- %i0, %i1, %i2, %i3, %i4, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 297  guard_class %r6 -> %i5
 300  getfield_raw_i %i5, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i5
 305  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 305  switch %i5, <SwitchDictDescr 0:L20, 1:L21>
 309  unreachable
 310  ---
 310  L20:
 310  -live-
 310  raise $<* struct object>
 312  ---
 312  L21:
 312  -live- %i0, %i1, %i2, %i3, %i4, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 312  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r6
 317  getfield_gc_i %r8, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i5
 322  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 322  record_quasiimmut_field %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 328  getfield_gc_r_pure %r6, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r8
 333  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 333  record_quasiimmut_field %r8, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 339  getfield_gc_r_pure %r8, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r9
 344  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 344  guard_class %r9 -> %i7
 347  getfield_raw_i %i7, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i7
 352  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %i7, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 352  int_guard_value %i7
 354  residual_call_ir_r %i7, <IndirectCallTargets>, I[%i5, $0], R[%r9, %r6, %r8], <CallDescr(rriir) EF=5> -> %r6
 366  -live- %i0, %i1, %i2, %i3, %i4, %i6, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
 366  setarrayitem_gc_r %r7, %i2, %r6, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 372  goto L2
