   0  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
   5  -live- %i0, %r0, %r1
   5  goto_if_not_int_eq %i0, $1, L1
  10  -live- %r0, %r1
  10  goto_if_not_ptr_nonzero %r1, L2
  14  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i0
  19  -live- %i0, %r0, %r1
  19  goto_if_not_int_is_true %i0, L3
  23  L4:
  23  -live- %r0, %r1
  23  goto_if_not_ptr_nonzero %r0, L5
  27  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
  32  -live- %i0, %r0, %r1
  32  goto_if_not_int_is_true %i0, L6
  36  L7:
  36  inline_call_r_i <JitCode '_use_min_scalar'>, R[%r0, %r1] -> %i0
  43  -live- %i0, %r0, %r1
  43  -live- %i0, %r0, %r1
  43  goto_if_not %i0, L8
  47  int_copy $0 -> %i1
  50  int_copy $False -> %i2
  53  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
  56  L9:
  56  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
  61  -live- %i0, %i1, %i2, %r0, %r1, %r3
  61  goto_if_not_int_ge %i1, %i0, L10
  66  int_copy $0 -> %i1
  69  L11:
  69  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i0
  74  -live- %i0, %i1, %i2, %r1, %r3
  74  goto_if_not_int_ge %i1, %i0, L12
  79  ref_return %r3
  81  ---
  81  L12:
  81  int_copy %i1 -> %i0
  84  ref_copy %r1 -> %r0
  87  ref_copy %r3 -> %r2
  90  int_add %i0, $1 -> %i1
  94  getarrayitem_gc_r_pure %r0, %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r3
 100  -live- %i1, %i2, %r1, %r2, %r3
 100  goto_if_not_ptr_iszero %r2, L13
 104  int_copy $False -> %i2
 107  goto L11
 110  ---
 110  L13:
 110  inline_call_ir_r <JitCode '_promote_types_su'>, I[%i2, $False], R[%r2, %r3] -> %r2
 120  -live- %i1, %r1, %r2
 120  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r3
 125  getfield_gc_i_pure %r2, FieldDescr<tuple2.item1> -> %i2
 130  goto L11
 133  ---
 133  L10:
 133  int_copy %i2 -> %i0
 136  int_copy %i1 -> %i2
 139  ref_copy %r0 -> %r2
 142  ref_copy %r3 -> %r5
 145  int_add %i2, $1 -> %i1
 149  getlistitem_gc_r %r2, %i2, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r4
 157  getfield_gc_r %r4, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 162  -live- %i0, %i1, %r0, %r1, %r2, %r4, %r5
 162  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 168  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 173  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 173  guard_class %r2 -> %i2
 176  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 181  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 181  switch %i2, <SwitchDictDescr 0:L14, 1:L15>
 185  unreachable
 186  ---
 186  L14:
 186  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 186  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 191  L16:
 191  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009280d710> -> %i2
 196  -live- %i0, %i1, %i2, %r0, %r1, %r3, %r4, %r5
 196  goto_if_not_int_is_zero %i2, L17
 200  -live- %i0, %i1, %r0, %r1, %r3, %r4, %r5
 200  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 206  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 211  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 211  guard_class %r2 -> %i2
 214  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i2
 219  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 219  goto_if_not_int_eq %i2, $'i', L18
 224  L19:
 224  inline_call_r_r <JitCode 'W_NDimArray.get_scalar_value'>, R[%r4] -> %r2
 230  -live- %i0, %i1, %r0, %r1, %r2, %r5
 230  -live- %i0, %i1, %r0, %r1, %r2, %r5
 230  guard_class %r2 -> %i2
 233  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_min_dtype> -> %i2
 238  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r5
 238  int_guard_value %i2
 240  residual_call_r_r %i2, <IndirectCallTargets>, R[%r2], <CallDescr(r) EF=2> -> %r2
 247  -live- %i0, %i1, %r0, %r1, %r2, %r5
 247  getfield_gc_i_pure %r2, FieldDescr<tuple2.item0> -> %i3
 252  getfield_gc_i_pure %r2, FieldDescr<tuple2.item1> -> %i2
 257  int_ne %i3, %i2 -> %i2
 261  residual_call_ir_r $<* fn num2dtype>, I[%i3], R[], <CallDescr(i) EF=4> -> %r3
 269  -live- %i0, %i1, %i2, %r0, %r1, %r3, %r5
 269  L20:
 269  -live- %i0, %i1, %i2, %r0, %r1, %r3, %r5
 269  goto_if_not_ptr_iszero %r5, L21
 273  goto L9
 276  ---
 276  L21:
 276  inline_call_ir_r <JitCode '_promote_types_su'>, I[%i0, %i2], R[%r5, %r3] -> %r2
 286  -live- %i1, %r0, %r1, %r2
 286  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r3
 291  getfield_gc_i_pure %r2, FieldDescr<tuple2.item1> -> %i2
 296  goto L9
 299  ---
 299  L18:
 299  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 299  guard_class %r2 -> %i2
 302  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i2
 307  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 307  goto_if_not_int_eq %i2, $'u', L22
 312  goto L19
 315  ---
 315  L22:
 315  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 315  guard_class %r2 -> %i2
 318  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i2
 323  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 323  goto_if_not_int_eq %i2, $'b', L23
 328  goto L19
 331  ---
 331  L23:
 331  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 331  guard_class %r2 -> %i2
 334  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i2
 339  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 339  goto_if_not_int_eq %i2, $'f', L24
 344  goto L19
 347  ---
 347  L24:
 347  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 347  guard_class %r2 -> %i2
 350  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i2
 355  -live- %i0, %i1, %i2, %r0, %r1, %r3, %r4, %r5
 355  goto_if_not_int_eq %i2, $'c', L25
 360  goto L19
 363  ---
 363  L25:
 363  int_copy $False -> %i2
 366  goto L20
 369  ---
 369  L17:
 369  int_copy $False -> %i2
 372  goto L20
 375  ---
 375  L15:
 375  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4, %r5
 375  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 380  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009280d710> -> %i2
 385  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3, %r4, %r5
 385  int_guard_value %i2
 387  goto L16
 390  ---
 390  L8:
 390  int_copy $0 -> %i1
 393  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
 396  L26:
 396  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
 401  -live- %i0, %i1, %r0, %r1, %r3
 401  goto_if_not_int_ge %i1, %i0, L27
 406  int_copy $0 -> %i1
 409  L28:
 409  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i0
 414  -live- %i0, %i1, %r1, %r3
 414  goto_if_not_int_ge %i1, %i0, L29
 419  ref_return %r3
 421  ---
 421  L29:
 421  int_copy %i1 -> %i0
 424  ref_copy %r1 -> %r0
 427  ref_copy %r3 -> %r2
 430  int_add %i0, $1 -> %i1
 434  getarrayitem_gc_r_pure %r0, %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r3
 440  -live- %i1, %r1, %r2, %r3
 440  goto_if_not_ptr_iszero %r2, L30
 444  goto L28
 447  ---
 447  L30:
 447  inline_call_r_r <JitCode 'promote_types'>, R[%r2, %r3] -> %r3
 454  -live- %i1, %r1, %r3
 454  goto L28
 457  ---
 457  L27:
 457  int_copy %i1 -> %i0
 460  ref_copy %r0 -> %r2
 463  int_add %i0, $1 -> %i1
 467  getlistitem_gc_r %r2, %i0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r2
 475  -live- %i1, %r0, %r1, %r2, %r3
 475  goto_if_not_ptr_iszero %r3, L31
 479  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 484  -live- %i1, %r0, %r1, %r2
 484  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 490  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 495  goto L26
 498  ---
 498  L31:
 498  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 503  -live- %i1, %r0, %r1, %r2, %r3
 503  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 509  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 514  inline_call_r_r <JitCode 'promote_types'>, R[%r3, %r2] -> %r3
 521  -live- %i1, %r0, %r1, %r3
 521  goto L26
 524  ---
 524  L6:
 524  L32:
 524  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %i0
 529  -live- %i0, %r0, %r1
 529  goto_if_not_int_eq %i0, $1, L33
 534  getarrayitem_gc_r_pure %r1, $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r3
 540  ref_return %r3
 542  ---
 542  L33:
 542  goto L7
 545  ---
 545  L5:
 545  goto L32
 548  ---
 548  L3:
 548  L34:
 548  getlistitem_gc_r %r0, $0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x1009f2142d0> -> %r2
 556  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 561  -live- %r2
 561  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 567  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 572  ref_return %r3
 574  ---
 574  L2:
 574  goto L34
 577  ---
 577  L1:
 577  goto L4
