   0  -live- %r0, %r1, %r2
   3  goto_if_not_ptr_iszero %r2, L1
   7  L2:
   7  -live- %r0, %r1
  10  goto_if_not_ptr_iszero %r1, L3
  14  L4:
  14  -live- %r0
  17  goto_if_not_ptr_nonzero %r0, L5
  21  ref_copy %r0 -> %r3
  24  -live- %r0, %r3
  27  guard_class %r3 -> %i0
  30  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  35  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  40  -live- %i0, %r0
  43  goto_if_not %i0, L6
  47  L7:
  47  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  52  residual_call_r_r $<* fn BaseConcreteArray.nonzero>, R[%r3, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>], <CallDescr(rr) EF=7> -> %r2
  60  -live- %r2
  63  ref_return %r2
  65  ---
  65  L6:
  65  L8:
  65  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r0
  77  -live- %r0
  80  goto L7
  83  ---
  83  L5:
  83  goto L8
  86  ---
  86  L3:
  86  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i0
  93  -live- %i0, %r0
  96  goto_if_not %i0, L9
 100  goto L4
 103  ---
 103  L9:
 103  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa65925830> -> %r3
 107  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 112  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 117  assert_not_none %r3
 119  -live- %r3
 122  raise %r3
 124  ---
 124  L1:
 124  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r2] -> %i0
 131  -live- %i0, %r0, %r1, %r2
 134  goto_if_not %i0, L10
 138  goto L2
 141  ---
 141  L10:
 141  -live- %r0, %r1, %r2
 144  goto_if_not_ptr_iszero %r1, L11
 148  L12:
 148  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa65925830> -> %r3
 152  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 157  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 162  assert_not_none %r3
 164  -live- %r3
 167  raise %r3
 169  ---
 169  L11:
 169  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i0
 176  -live- %i0, %r0, %r1, %r2
 179  goto_if_not %i0, L13
 183  goto L12
 186  ---
 186  L13:
 186  -live- %r0, %r1, %r2
 189  goto_if_not_ptr_nonzero %r0, L14
 193  ref_copy %r0 -> %r3
 196  -live- %r0, %r1, %r2, %r3
 199  guard_class %r3 -> %i0
 202  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 207  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 212  -live- %i0, %r0, %r1, %r2
 215  goto_if_not %i0, L15
 219  L16:
 219  -live- %r0, %r1, %r2
 222  goto_if_not_ptr_nonzero %r1, L17
 226  ref_copy %r1 -> %r3
 229  -live- %r0, %r1, %r2, %r3
 232  guard_class %r3 -> %i0
 235  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 240  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 245  -live- %i0, %r0, %r1, %r2
 248  goto_if_not %i0, L18
 252  L19:
 252  -live- %r0, %r1, %r2
 255  goto_if_not_ptr_nonzero %r2, L20
 259  ref_copy %r2 -> %r3
 262  -live- %r0, %r1, %r2, %r3
 265  guard_class %r3 -> %i0
 268  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 273  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 278  -live- %i0, %r0, %r1, %r2
 281  goto_if_not %i0, L21
 285  L22:
 285  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 290  -live- %r0, %r1, %r2, %r3
 293  guard_class %r3 -> %i0
 296  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 301  -live- %i0, %r0, %r1, %r2, %r3
 304  switch %i0, <SwitchDictDescr 0:L23, 1:L24>
 308  unreachable
 309  ---
 309  L23:
 309  -live- %r0, %r1, %r2, %r3
 312  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 317  L25:
 317  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 322  -live- %i0, %r0, %r1, %r2
 325  goto_if_not_int_is_zero %i0, L26
 329  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 334  -live- %r0, %r1, %r2, %r3
 337  guard_class %r3 -> %i0
 340  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 345  -live- %i0, %r0, %r1, %r2, %r3
 348  switch %i0, <SwitchDictDescr 0:L27, 1:L28>
 352  unreachable
 353  ---
 353  L27:
 353  -live- %r0, %r1, %r2, %r3
 356  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 361  L29:
 361  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 366  -live- %i0, %r0, %r1, %r2
 369  goto_if_not_int_is_zero %i0, L30
 373  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 378  -live- %r0, %r1, %r2, %r3
 381  guard_class %r3 -> %i0
 384  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 389  -live- %i0, %r0, %r1, %r2, %r3
 392  switch %i0, <SwitchDictDescr 0:L31, 1:L32>
 396  unreachable
 397  ---
 397  L31:
 397  -live- %r0, %r1, %r2, %r3
 400  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 405  L33:
 405  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 410  -live- %i0, %r0, %r1, %r2
 413  goto_if_not_int_is_zero %i0, L34
 417  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 422  -live- %r0, %r1, %r2, %r3
 425  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 431  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 436  -live- %r0, %r1, %r2, %r3
 439  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 445  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
 450  inline_call_r_r <JitCode 'W_NDimArray.get_scalar_value'>, R[%r0] -> %r0
 456  -live- %r0, %r1, %r2, %r3
 459  guard_class %r3 -> %i0
 462  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_bool> -> %i0
 467  -live- %i0, %r0, %r1, %r2, %r3
 470  int_guard_value %i0
 472  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r0], <CallDescr(rr) EF=7> -> %i0
 480  -live- %i0, %r1, %r2
 483  goto_if_not %i0, L35
 487  ref_copy %r1 -> %r2
 490  ref_return %r2
 492  ---
 492  L35:
 492  ref_return %r2
 494  ---
 494  L34:
 494  L36:
 494  newlist $2, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa98c4a6b0>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80> -> %r4
 505  setlistitem_gc_r %r4, $0, %r1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80>
 513  setlistitem_gc_r %r4, $1, %r2, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80>
 521  new_array_clear $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaa8c14b80> -> %r3
 526  inline_call_r_i <JitCode '<lambda>__v261___simple_call__function__'>, R[%r4, %r3] -> %i0
 533  -live- %i0, %r0, %r1, %r2, %r3, %r4
 536  goto_if_not %i0, L37
 540  inline_call_r_r <JitCode 'find_result_type__v264___simple_call__function_f'>, R[%r4, %r3] -> %r4
 547  L38:
 547  -live- %r0, %r1, %r2, %r4
 550  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 555  -live- %r0, %r1, %r2, %r3, %r4
 558  guard_class %r3 -> %i0
 561  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 566  -live- %i0, %r0, %r1, %r2, %r3, %r4
 569  switch %i0, <SwitchDictDescr 0:L39, 1:L40>
 573  unreachable
 574  ---
 574  L39:
 574  -live- %r0, %r1, %r2, %r3, %r4
 577  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 582  L41:
 582  inline_call_ir_r <JitCode 'shape_agreement'>, I[$True], R[%r3, %r1] -> %r3
 591  -live- %r0, %r1, %r2, %r3, %r4
 594  inline_call_ir_r <JitCode 'shape_agreement'>, I[$True], R[%r3, %r2] -> %r3
 603  -live- %r0, %r1, %r2, %r3, %r4
 606  inline_call_ir_r <JitCode 'from_shape'>, I[$0, $True], R[%r3, %r4, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r5
 617  -live- %r0, %r1, %r2, %r3, %r4, %r5
 620  inline_call_r_r <JitCode 'where'>, R[%r5, %r3, %r0, %r1, %r2, %r4] -> %r2
 631  -live- %r2
 634  ref_return %r2
 636  ---
 636  L40:
 636  -live- %r0, %r1, %r2, %r3, %r4
 639  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 644  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 649  -live- %i0, %r0, %r1, %r2, %r3, %r4
 652  int_guard_value %i0
 654  goto L41
 657  ---
 657  L37:
 657  residual_call_r_r $<* fn find_result_type_trampoline__v494___simple_call__function_f>, R[%r4, %r3], <CallDescr(rr) EF=7> -> %r4
 665  -live- %r0, %r1, %r2, %r4
 668  goto L38
 671  ---
 671  L32:
 671  -live- %r0, %r1, %r2, %r3
 674  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 679  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 684  -live- %i0, %r0, %r1, %r2, %r3
 687  int_guard_value %i0
 689  goto L33
 692  ---
 692  L30:
 692  goto L36
 695  ---
 695  L28:
 695  -live- %r0, %r1, %r2, %r3
 698  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 703  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 708  -live- %i0, %r0, %r1, %r2, %r3
 711  int_guard_value %i0
 713  goto L29
 716  ---
 716  L26:
 716  goto L36
 719  ---
 719  L24:
 719  -live- %r0, %r1, %r2, %r3
 722  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 727  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa7f55b5c8> -> %i0
 732  -live- %i0, %r0, %r1, %r2, %r3
 735  int_guard_value %i0
 737  goto L25
 740  ---
 740  L21:
 740  L42:
 740  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r2
 752  -live- %r0, %r1, %r2
 755  goto L22
 758  ---
 758  L20:
 758  goto L42
 761  ---
 761  L18:
 761  L43:
 761  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r1
 773  -live- %r0, %r1, %r2
 776  goto L19
 779  ---
 779  L17:
 779  goto L43
 782  ---
 782  L15:
 782  L44:
 782  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r0
 794  -live- %r0, %r1, %r2
 797  goto L16
 800  ---
 800  L14:
 800  goto L44
