   0  L1:
   0  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
   0  int_guard_value %i0
   2  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
   2  int_guard_value %i1
   4  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
   4  ref_guard_value %r0
   6  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
   6  jit_merge_point $22, I[%i0, %i1], R[%r0], F[], I[], R[%r1, %r2, %r3, %r4, %r5, %r6], F[]
  23  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  23  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  23  guard_class %r3 -> %i2
  26  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i2
  31  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  31  switch %i2, <SwitchDictDescr 0:L2, 1:L3>
  35  unreachable
  36  ---
  36  L2:
  36  -live-
  36  raise $<* struct object>
  38  ---
  38  L3:
  38  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  38  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r8
  43  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
  48  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
  48  record_quasiimmut_field %r8, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  54  getfield_gc_r_pure %r8, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r9
  59  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8, %r9
  59  record_quasiimmut_field %r9, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  65  getfield_gc_r_pure %r9, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r7
  70  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
  70  guard_class %r7 -> %i3
  73  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i3
  78  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
  78  int_guard_value %i3
  80  residual_call_ir_r %i3, <IndirectCallTargets>, I[%i2, $0], R[%r7, %r8, %r9], <CallDescr(rriir) EF=5> -> %r8
  92  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
  92  inline_call_r_i <JitCode 'index_w'>, R[%r8] -> %i3
  98  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  98  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
  98  goto_if_not_int_lt %i3, $0, L4
 103  L5:
 103  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 103  switch %i1, <SwitchDictDescr 1:L6, 2:L7>
 107  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 107  goto_if_not_int_lt %i3, $0, L8
 112  int_copy $0 -> %i2
 115  int_copy $0 -> %i3
 118  L9:
 118  getarrayitem_gc_r_pure %r5, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r9
 124  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r9
 124  goto_if_not_int_lt %i2, $0, L10
 129  ref_copy %r9 -> %r7
 132  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i3
 137  int_add %i2, %i3 -> %i2
 141  L11:
 141  getarrayitem_gc_r %r4, %i2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r8
 147  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 147  guard_class %r9 -> %i2
 150  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_getitem> -> %i2
 155  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 155  switch %i2, <SwitchDictDescr 0:L12, 1:L13>
 159  unreachable
 160  ---
 160  L12:
 160  -live-
 160  raise $<* struct object>
 162  ---
 162  L13:
 162  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8
 162  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r9
 167  getfield_gc_i %r8, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
 172  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r9
 172  record_quasiimmut_field %r9, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 178  getfield_gc_r_pure %r9, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r8
 183  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 183  record_quasiimmut_field %r8, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 189  getfield_gc_r_pure %r8, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r7
 194  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 194  guard_class %r7 -> %i3
 197  getfield_raw_i %i3, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i3
 202  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 202  int_guard_value %i3
 204  residual_call_ir_r %i3, <IndirectCallTargets>, I[%i2, $0], R[%r7, %r9, %r8], <CallDescr(rriir) EF=5> -> %r8
 216  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 216  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 216  guard_class %r8 -> %i2
 219  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i2
 224  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 224  int_guard_value %i2
 226  residual_call_r_r %i2, <IndirectCallTargets>, R[%r8, %r0], <CallDescr(rr) EF=7> -> %r8
 234  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 234  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 234  guard_class %r2 -> %i2
 237  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter_vtable.cls_setitem> -> %i2
 242  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 242  switch %i2, <SwitchDictDescr 0:L14, 1:L15>
 246  unreachable
 247  ---
 247  L14:
 247  -live-
 247  raise $<* struct object>
 249  ---
 249  L15:
 249  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 249  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_array> -> %r9
 254  getfield_gc_i %r6, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_offset> -> %i2
 259  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 259  record_quasiimmut_field %r9, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 265  getfield_gc_r_pure %r9, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r7
 270  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 270  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 276  getfield_gc_r_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r10
 281  -live- %i0, %i1, %i2, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r7, %r8, %r9
 281  record_quasiimmut_field %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 287  getfield_gc_i_pure %r7, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i3
 292  int_eq %i3, $61 -> %i4
 296  int_eq %i3, $62 -> %i3
 300  int_or %i4, %i3 -> %i3
 304  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 304  guard_class %r10 -> %i4
 307  getfield_raw_i %i4, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i4
 312  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r10, %r2, %r3, %r4, %r5, %r6, %r8, %r9
 312  int_guard_value %i4
 314  residual_call_ir_v %i4, <IndirectCallTargets>, I[%i2, $0, %i3], R[%r10, %r9, %r8], <CallDescr(rriiri) EF=7>
 326  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 326  arraylen_gc %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i2
 331  int_copy $0 -> %i4
 334  L16:
 334  -live- %i0, %i1, %i2, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 334  goto_if_not_int_ge %i4, %i2, L17
 339  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r2, %r6] -> %r6
 348  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 348  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r3, %r1] -> %r1
 357  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 357  getfield_gc_i %r1, FieldDescr<pypy.module.micronumpy.iterators.IterState.inst_index> -> %i2
 362  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.iterators.ArrayIter.inst_size> -> %i3
 367  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 367  goto_if_not_int_ge %i2, %i3, L18
 372  void_return
 373  ---
 373  L18:
 373  goto L1
 376  ---
 376  L17:
 376  int_copy %i4 -> %i3
 379  int_add %i3, $1 -> %i4
 383  getarrayitem_gc_r_pure %r5, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r8
 389  getarrayitem_gc_r %r4, %i3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r9
 395  inline_call_ir_r <JitCode 'ArrayIter.next'>, I[$False], R[%r8, %r9] -> %r8
 404  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r8
 404  setarrayitem_gc_r %r4, %i3, %r8, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0>
 410  goto L16
 413  ---
 413  L10:
 413  ref_copy %r9 -> %r7
 416  goto L11
 419  ---
 419  L8:
 419  arraylen_gc %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i2
 424  int_sub %i2, $1 -> %i3
 428  L19:
 428  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 428  goto_if_not_int_lt %i3, $0, L20
 433  int_copy %i3 -> %i2
 436  arraylen_gc %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i3
 441  int_add %i2, %i3 -> %i3
 445  goto L9
 448  ---
 448  L20:
 448  int_copy %i3 -> %i2
 451  goto L9
 454  ---
 454  L6:
 454  -live- %i0, %i1, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 454  arraylen_gc %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i2
 459  int_mod %i3, %i2 -> %i3
 463  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 463  goto_if_not_int_lt %i2, $0, L21
 468  int_copy %i3 -> %i4
 471  int_neg %i4 -> %i3
 474  L22:
 474  int_rshift %i3, $63 -> %i3
 478  int_and %i2, %i3 -> %i2
 482  int_add %i4, %i2 -> %i3
 486  goto L19
 489  ---
 489  L21:
 489  int_copy %i3 -> %i4
 492  goto L22
 495  ---
 495  L7:
 495  -live-
 495  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10096124f10> -> %r8
 499  setfield_gc_r %r8, $<* struct rpy_string>, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 504  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x10094c3ea50> -> %r9
 508  setfield_gc_r %r9, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 513  setfield_gc_r %r9, %r8, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
 518  setfield_gc_r %r9, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
 523  -live- %r9
 523  raise %r9
 525  ---
 525  L4:
 525  arraylen_gc %r5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i2
 530  -live- %i0, %i1, %i2, %i3, %r0, %r1, %r2, %r3, %r4, %r5, %r6
 530  goto_if_not_int_ge %i3, %i2, L23
 535  goto L5
 538  ---
 538  L23:
 538  goto L19
