   0  -live- %r0, %r1, %r2
   0  goto_if_not_ptr_iszero %r2, L1
   4  L2:
   4  -live- %r1
   4  goto_if_not_ptr_iszero %r1, L3
   8  L4:
   8  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3fff66b922d0> -> %r3
  12  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  17  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  22  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
  27  -live- %r3
  27  raise %r3
  29  ---
  29  L3:
  29  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i0
  36  -live- %i0
  36  -live- %i0
  36  goto_if_not %i0, L5
  40  goto L4
  43  ---
  43  L5:
  43  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3fff66b922d0> -> %r3
  47  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  52  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  57  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
  62  -live- %r3
  62  raise %r3
  64  ---
  64  L1:
  64  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r2] -> %i0
  71  -live- %i0, %r0, %r1, %r2
  71  -live- %i0, %r0, %r1, %r2
  71  goto_if_not %i0, L6
  75  goto L2
  78  ---
  78  L6:
  78  -live- %r0, %r1, %r2
  78  goto_if_not_ptr_iszero %r1, L7
  82  L8:
  82  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3fff66b922d0> -> %r3
  86  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  91  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  96  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
 101  -live- %r3
 101  raise %r3
 103  ---
 103  L7:
 103  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i0
 110  -live- %i0, %r0, %r1, %r2
 110  -live- %i0, %r0, %r1, %r2
 110  goto_if_not %i0, L9
 114  goto L8
 117  ---
 117  L9:
 117  -live- %r0, %r1, %r2
 117  goto_if_not_ptr_nonzero %r0, L10
 121  ref_copy %r0 -> %r3
 124  -live- %r0, %r1, %r2, %r3
 124  guard_class %r3 -> %i0
 127  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 132  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 137  -live- %i0, %r0, %r1, %r2
 137  goto_if_not %i0, L11
 141  L12:
 141  -live- %r0, %r1, %r2
 141  goto_if_not_ptr_nonzero %r1, L13
 145  ref_copy %r1 -> %r3
 148  -live- %r0, %r1, %r2, %r3
 148  guard_class %r3 -> %i0
 151  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 156  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 161  -live- %i0, %r0, %r1, %r2
 161  goto_if_not %i0, L14
 165  L15:
 165  -live- %r0, %r1, %r2
 165  goto_if_not_ptr_nonzero %r2, L16
 169  ref_copy %r2 -> %r3
 172  -live- %r0, %r1, %r2, %r3
 172  guard_class %r3 -> %i0
 175  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 180  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 185  -live- %i0, %r0, %r1, %r2
 185  goto_if_not %i0, L17
 189  L18:
 189  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 194  -live- %r0, %r1, %r2, %r3
 194  guard_class %r3 -> %i0
 197  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 202  -live- %i0, %r0, %r1, %r2, %r3
 202  switch %i0, <SwitchDictDescr 0:L19, 1:L20>
 206  unreachable
 207  ---
 207  L19:
 207  -live- %r0, %r1, %r2, %r3
 207  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 212  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 217  -live- %i0, %r0, %r1, %r2, %r3
 217  int_guard_value %i0
 219  L21:
 219  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 224  -live- %i0, %r0, %r1, %r2
 224  goto_if_not_int_is_zero %i0, L22
 228  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 233  -live- %r0, %r1, %r2, %r3
 233  guard_class %r3 -> %i0
 236  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 241  -live- %i0, %r0, %r1, %r2, %r3
 241  switch %i0, <SwitchDictDescr 0:L23, 1:L24>
 245  unreachable
 246  ---
 246  L23:
 246  -live- %r0, %r1, %r2, %r3
 246  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 251  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 256  -live- %i0, %r0, %r1, %r2, %r3
 256  int_guard_value %i0
 258  L25:
 258  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 263  -live- %i0, %r0, %r1, %r2
 263  goto_if_not_int_is_zero %i0, L26
 267  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 272  -live- %r0, %r1, %r2, %r3
 272  guard_class %r3 -> %i0
 275  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 280  -live- %i0, %r0, %r1, %r2, %r3
 280  switch %i0, <SwitchDictDescr 0:L27, 1:L28>
 284  unreachable
 285  ---
 285  L27:
 285  -live- %r0, %r1, %r2, %r3
 285  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 290  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 295  -live- %i0, %r0, %r1, %r2, %r3
 295  int_guard_value %i0
 297  L29:
 297  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 302  -live- %i0, %r0, %r1, %r2
 302  goto_if_not_int_is_zero %i0, L30
 306  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 311  -live- %r0, %r1, %r2, %r3
 311  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 317  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 322  -live- %r0, %r1, %r2, %r3
 322  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 328  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
 333  inline_call_r_r <JitCode 'W_NDimArray.get_scalar_value'>, R[%r0] -> %r0
 339  -live- %r0, %r1, %r2, %r3
 339  -live- %r0, %r1, %r2, %r3
 339  guard_class %r3 -> %i0
 342  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_bool> -> %i0
 347  -live- %i0, %r0, %r1, %r2, %r3
 347  int_guard_value %i0
 349  residual_call_r_i %i0, <IndirectCallTargets>, R[%r3, %r0], <CallDescr(rr) EF=7> -> %i0
 357  -live- %i0, %r1, %r2
 357  -live- %i0, %r1, %r2
 357  goto_if_not %i0, L31
 361  ref_copy %r1 -> %r2
 364  ref_return %r2
 366  ---
 366  L31:
 366  ref_return %r2
 368  ---
 368  L30:
 368  L32:
 368  newlist $2, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3fff4381a210>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff6e03e050> -> %r4
 379  setlistitem_gc_r %r4, $0, %r1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff6e03e050>
 387  setlistitem_gc_r %r4, $1, %r2, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff6e03e050>
 395  new_array_clear $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff6e03e050> -> %r3
 400  inline_call_r_i <JitCode '<lambda>__v448___simple_call__function__'>, R[%r4, %r3] -> %i0
 407  -live- %i0, %r0, %r1, %r2, %r3, %r4
 407  -live- %i0, %r0, %r1, %r2, %r3, %r4
 407  goto_if_not %i0, L33
 411  inline_call_r_r <JitCode 'find_result_type__v433___simple_call__function_f'>, R[%r4, %r3] -> %r4
 418  -live- %r0, %r1, %r2, %r4
 418  L34:
 418  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 423  -live- %r0, %r1, %r2, %r3, %r4
 423  guard_class %r3 -> %i0
 426  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 431  -live- %i0, %r0, %r1, %r2, %r3, %r4
 431  switch %i0, <SwitchDictDescr 0:L35, 1:L36>
 435  unreachable
 436  ---
 436  L35:
 436  -live- %r0, %r1, %r2, %r3, %r4
 436  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 441  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x3fff42ab5710> -> %i0
 446  -live- %i0, %r0, %r1, %r2, %r3, %r4
 446  int_guard_value %i0
 448  L37:
 448  inline_call_ir_r <JitCode 'shape_agreement'>, I[$True], R[%r3, %r1] -> %r3
 457  -live- %r0, %r1, %r2, %r3, %r4
 457  inline_call_ir_r <JitCode 'shape_agreement'>, I[$True], R[%r3, %r2] -> %r3
 466  -live- %r0, %r1, %r2, %r3, %r4
 466  inline_call_ir_r <JitCode 'from_shape'>, I[$0, $True], R[%r3, %r4, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r5
 477  -live- %r0, %r1, %r2, %r3, %r4, %r5
 477  inline_call_r_r <JitCode 'where'>, R[%r5, %r3, %r0, %r1, %r2, %r4] -> %r2
 488  -live- %r2
 488  ref_return %r2
 490  ---
 490  L36:
 490  -live- %r0, %r1, %r2, %r3, %r4
 490  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 495  goto L37
 498  ---
 498  L33:
 498  residual_call_r_r $<* fn find_result_type_trampoline__v751___simple_call__function_f>, R[%r4, %r3], <CallDescr(rr) EF=7> -> %r4
 506  -live- %r0, %r1, %r2, %r4
 506  goto L34
 509  ---
 509  L28:
 509  -live- %r0, %r1, %r2, %r3
 509  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 514  goto L29
 517  ---
 517  L26:
 517  goto L32
 520  ---
 520  L24:
 520  -live- %r0, %r1, %r2, %r3
 520  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 525  goto L25
 528  ---
 528  L22:
 528  goto L32
 531  ---
 531  L20:
 531  -live- %r0, %r1, %r2, %r3
 531  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 536  goto L21
 539  ---
 539  L17:
 539  L38:
 539  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
 551  -live- %r0, %r1, %r2
 551  goto L18
 554  ---
 554  L16:
 554  goto L38
 557  ---
 557  L14:
 557  L39:
 557  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
 569  -live- %r0, %r1, %r2
 569  goto L15
 572  ---
 572  L13:
 572  goto L39
 575  ---
 575  L11:
 575  L40:
 575  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
 587  -live- %r0, %r1, %r2
 587  goto L12
 590  ---
 590  L10:
 590  goto L40
