   0  -live- %i0, %i1, %r0, %r1, %r2
   0  guard_class %r0 -> %i2
   3  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
   8  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
  13  -live- %i0, %i1, %i2, %r0, %r1, %r2
  13  goto_if_not %i2, L1
  17  L2:
  17  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x00000100d425d8a0> -> %r3
  21  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  26  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  31  -live- %r3
  31  raise %r3
  33  ---
  33  L1:
  33  -live- %i0, %i1, %r0, %r1, %r2
  33  guard_class %r0 -> %i2
  36  -live- %i0, %i1, %i2, %r0, %r1, %r2
  36  int_guard_value %i2
  38  -live- %i0, %i1, %r0, %r1, %r2
  38  guard_class %r0 -> %i2
  41  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
  46  -live- %i0, %i1, %i2, %r0, %r1, %r2
  46  int_guard_value %i2
  48  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
  55  -live- %i0, %i1, %r0, %r1, %r2, %r3
  55  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
  62  -live- %i0, %i1, %i2, %r0, %r1, %r2
  62  -live- %i0, %i1, %i2, %r0, %r1, %r2
  62  goto_if_not %i2, L3
  66  goto L2
  69  ---
  69  L3:
  69  inline_call_r_r <JitCode 'decode_w_dtype'>, R[%r1] -> %r3
  75  -live- %i0, %i1, %r0, %r1, %r2, %r3
  75  -live- %i0, %i1, %r0, %r1, %r2, %r3
  75  goto_if_not_ptr_nonzero %r0, L4
  79  ref_copy %r0 -> %r4
  82  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
  82  guard_class %r4 -> %i2
  85  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
  90  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
  95  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
  95  goto_if_not %i2, L5
  99  L6:
  99  -live- %i0, %i1, %r0, %r2, %r3
  99  goto_if_not_ptr_nonzero %r0, L7
 103  ref_copy %r0 -> %r1
 106  -live- %i0, %i1, %r0, %r1, %r2, %r3
 106  guard_class %r1 -> %i2
 109  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 114  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 119  -live- %i0, %i1, %i2, %r0, %r2, %r3
 119  goto_if_not %i2, L8
 123  L9:
 123  -live- %i0, %i1, %r0, %r2, %r3
 123  goto_if_not_ptr_nonzero %r0, L10
 127  ref_copy %r0 -> %r1
 130  -live- %i0, %i1, %r0, %r1, %r2, %r3
 130  guard_class %r1 -> %i2
 133  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 138  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 143  -live- %i0, %i1, %i2, %r0, %r2, %r3
 143  goto_if_not %i2, L11
 147  inline_call_ir_i <JitCode 'order_converter'>, I[$-1], R[%r2] -> %i3
 155  -live- %i0, %i1, %i3, %r0, %r3
 155  -live- %i0, %i1, %i3, %r0, %r3
 155  goto_if_not_ptr_iszero %r3, L12
 159  L13:
 159  -live- %i0, %i1, %i3, %r0, %r3
 159  goto_if_not %i1, L14
 163  L15:
 163  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 168  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_flags> -> %i1
 173  -live- %i0, %i1, %i3, %r0
 173  goto_if_not_int_is_zero %i3, L16
 177  int_and %i1, $1 -> %i2
 181  -live- %i0, %i1, %i2, %i3, %r0
 181  goto_if_not_int_is_true %i2, L17
 185  int_copy $False -> %i2
 188  L18:
 188  int_or %i0, %i2 -> %i2
 192  int_is_true %i2 -> %i2
 195  -live- %i1, %i2, %i3, %r0
 195  goto_if_not_int_eq %i3, $1, L19
 200  int_and %i1, $2 -> %i1
 204  -live- %i1, %i2, %i3, %r0
 204  goto_if_not_int_is_true %i1, L20
 208  int_copy $False -> %i1
 211  L21:
 211  int_or %i2, %i1 -> %i2
 215  -live- %i2, %i3, %r0
 215  goto_if_not_int_is_true %i2, L22
 219  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x00000100696abf68> -> %r3
 223  setfield_gc_i %r3, %i3, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 228  inline_call_r_r <JitCode 'W_NDimArray.descr_copy'>, R[%r0, %r3] -> %r0
 235  -live- %r0
 235  ref_return %r0
 237  ---
 237  L22:
 237  ref_return %r0
 239  ---
 239  L20:
 239  int_copy $True -> %i1
 242  goto L21
 245  ---
 245  L19:
 245  int_copy $False -> %i1
 248  goto L21
 251  ---
 251  L17:
 251  int_copy $True -> %i2
 254  goto L18
 257  ---
 257  L16:
 257  int_copy $False -> %i2
 260  goto L18
 263  ---
 263  L14:
 263  -live- %i0, %i3, %r0, %r3
 263  guard_class %r0 -> %i2
 266  -live- %i0, %i2, %i3, %r0, %r3
 266  goto_if_not_int_eq %i2, $<* struct object_vtable>, L23
 271  goto L15
 274  ---
 274  L23:
 274  L24:
 274  -live- %i0, %i3, %r0, %r3
 274  goto_if_not_ptr_iszero %r3, L25
 278  ref_copy %r0 -> %r1
 281  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 286  -live- %i0, %i3, %r1, %r3
 286  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 292  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 297  L26:
 297  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 302  -live- %i0, %i3, %r1, %r2, %r3
 302  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 308  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r0
 313  instance_ptr_eq %r3, %r0 -> %i2
 317  -live- %i0, %i2, %i3, %r1, %r2, %r3
 317  goto_if_not_int_is_zero %i2, L27
 321  L28:
 321  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 326  -live- %i3, %r0, %r1, %r3
 326  guard_class %r0 -> %i2
 329  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 334  -live- %i2, %i3, %r0, %r1, %r3
 334  switch %i2, <SwitchDictDescr 0:L29, 1:L30>
 338  unreachable
 339  ---
 339  L29:
 339  -live- %i3, %r0, %r1, %r3
 339  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 344  L31:
 344  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 349  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_order> -> %i2
 354  -live- %i2, %i3, %r1, %r2, %r3
 354  switch %i3, <SwitchDictDescr 0:L32, 1:L33>
 358  L34:
 358  inline_call_ir_r <JitCode 'from_shape'>, I[%i2, $True], R[%r2, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
 369  -live- %r0, %r1, %r2, %r3
 369  inline_call_r_i <JitCode 'product'>, R[%r2] -> %i2
 375  -live- %i2, %r0, %r1, %r2, %r3
 375  -live- %i2, %r0, %r1, %r2, %r3
 375  goto_if_not_int_eq %i2, $1, L35
 380  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 385  -live- %r0, %r2, %r3
 385  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 391  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 396  -live- %r0, %r1, %r2, %r3
 396  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 402  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 407  -live- %r0, %r1, %r2, %r3, %r4
 407  guard_class %r4 -> %i2
 410  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i2
 415  -live- %i2, %r0, %r1, %r2, %r3, %r4
 415  int_guard_value %i2
 417  residual_call_ir_r %i2, <IndirectCallTargets>, I[$0, $0], R[%r4, %r2, %r1], <CallDescr(rriir) EF=5> -> %r2
 429  -live- %r0, %r2, %r3
 429  -live- %r0, %r2, %r3
 429  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 435  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
 440  -live- %r0, %r1, %r2, %r3
 440  guard_class %r1 -> %i2
 443  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
 448  -live- %i2, %r0, %r1, %r2, %r3
 448  int_guard_value %i2
 450  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
 459  -live- %r0, %r3
 459  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 464  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 469  -live- %i2, %r0, %r2, %r3
 469  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 475  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 480  -live- %i2, %r0, %r1, %r2, %r3
 480  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 486  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 491  -live- %i2, %r0, %r1, %r2, %r3, %r4
 491  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 497  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i1
 502  int_eq %i1, $61 -> %i0
 506  int_eq %i1, $60 -> %i1
 510  int_or %i0, %i1 -> %i1
 514  -live- %i1, %i2, %r0, %r2, %r3, %r4
 514  guard_class %r4 -> %i0
 517  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i0
 522  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 522  int_guard_value %i0
 524  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i2, $0, %i1], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
 536  -live- %r0
 536  ref_return %r0
 538  ---
 538  L35:
 538  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 543  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 548  inline_call_r_r <JitCode 'setslice'>, R[%r2, %r3, %r1] -> %r3
 556  -live- %r0
 556  ref_return %r0
 558  ---
 558  L32:
 558  -live- %r1, %r2, %r3
 558  int_copy $0 -> %i2
 561  goto L34
 564  ---
 564  L33:
 564  -live- %r1, %r2, %r3
 564  int_copy $1 -> %i2
 567  goto L34
 570  ---
 570  L30:
 570  -live- %i3, %r0, %r1, %r3
 570  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 575  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000001009e55f868> -> %i2
 580  -live- %i2, %i3, %r1, %r2, %r3
 580  int_guard_value %i2
 582  goto L31
 585  ---
 585  L27:
 585  -live- %i0, %i3, %r1, %r2, %r3
 585  goto_if_not %i0, L36
 589  goto L28
 592  ---
 592  L36:
 592  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r1] -> %i2
 598  -live- %i2, %r1, %r2, %r3
 598  -live- %i2, %r1, %r2, %r3
 598  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 604  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 609  int_mul %i2, %i1 -> %i1
 613  -live- %i1, %r1, %r2, %r3
 613  guard_class %r2 -> %i2
 616  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 621  -live- %i1, %i2, %r1, %r2, %r3
 621  switch %i2, <SwitchDictDescr 0:L37, 1:L38, 2:L39, 3:L40>
 625  unreachable
 626  ---
 626  L37:
 626  -live- %i1, %r1, %r2, %r3
 626  L41:
 626  ref_copy %r1 -> %r4
 629  L42:
 629  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_storage> -> %i0
 634  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 639  -live- %i0, %i1, %r0, %r2, %r3, %r4
 639  guard_class %r0 -> %i2
 642  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 647  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 647  switch %i2, <SwitchDictDescr 0:L43, 1:L44>
 651  unreachable
 652  ---
 652  L43:
 652  -live- %i0, %i1, %r0, %r2, %r3, %r4
 652  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 657  L45:
 657  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_strides> -> %r0
 662  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 667  residual_call_ir_r $<* fn from_shape_and_storage>, I[%i0, %i1, $0, $False, $True, %i2], R[%r1, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r4, %r0], <CallDescr(ririiirriri) EF=7> -> %r0
 685  -live- %r0, %r2
 685  catch_exception L46
 688  -live- %r0, %r2
 688  ref_return %r0
 690  ---
 690  L46:
 690  last_exception -> %i2
 692  last_exc_value -> %r3
 694  -live- %r2, %r3
 694  -live- %r3
 694  raise %r3
 696  ---
 696  L44:
 696  -live- %i0, %i1, %r0, %r2, %r3, %r4
 696  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 701  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000001009e55f868> -> %i2
 706  -live- %i0, %i1, %i2, %r1, %r2, %r3, %r4
 706  int_guard_value %i2
 708  goto L45
 711  ---
 711  L38:
 711  -live- %i1, %r1, %r2, %r3
 711  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r0
 716  L47:
 716  -live- %i1, %r0, %r1, %r2, %r3
 716  goto_if_not_ptr_iszero %r0, L48
 720  goto L41
 723  ---
 723  L48:
 723  -live- %r1, %r2, %r3
 723  guard_class %r2 -> %i2
 726  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 731  -live- %i2, %r1, %r2, %r3
 731  switch %i2, <SwitchDictDescr 0:L49, 1:L50, 2:L51, 3:L52>
 735  unreachable
 736  ---
 736  L49:
 736  -live- %r1, %r2, %r3
 736  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r4
 739  L53:
 739  inline_call_r_r <JitCode 'call_method_opt__star_0'>, R[%r4, $<* struct rpy_string>] -> %r0
 746  -live- %r0, %r1, %r2, %r3, %r4
 746  -live- %r0, %r1, %r2, %r3, %r4
 746  guard_class %r0 -> %i2
 749  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int_w> -> %i2
 754  -live- %i2, %r0, %r1, %r2, %r3, %r4
 754  switch %i2, <SwitchDictDescr 0:L54, 1:L55, 2:L56>
 758  unreachable
 759  ---
 759  L54:
 759  -live- %r0, %r1, %r2, %r3, %r4
 759  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
 764  goto L42
 767  ---
 767  L55:
 767  -live- %r0
 767  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r0] -> %r3
 776  -live- %r3
 776  -live- %r3
 776  guard_class %r3 -> %i2
 779  -live- %r3
 779  raise %r3
 781  ---
 781  L56:
 781  -live- %r0, %r1, %r2, %r3, %r4
 781  -live- %r0, %r1, %r2, %r3, %r4
 781  guard_class %r0 -> %i2
 784  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int> -> %i2
 789  -live- %i2, %r0, %r1, %r2, %r3, %r4
 789  int_guard_value %i2
 791  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=7> -> %r0
 798  -live- %r0, %r1, %r2, %r3, %r4
 798  -live- %r0, %r1, %r2, %r3, %r4
 798  guard_class %r0 -> %i2
 801  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__int_w> -> %i2
 806  inline_call_ir_i <JitCode 'dispatcher'>, I[%i2], R[%r0] -> %i1
 814  -live- %i1, %r1, %r2, %r3, %r4
 814  goto L42
 817  ---
 817  L50:
 817  -live- %r1, %r2, %r3
 817  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r4
 822  L57:
 822  -live- %r1, %r2, %r3, %r4
 822  goto_if_not_ptr_nonzero %r4, L58
 826  ref_copy %r4 -> %r0
 829  -live- %r0, %r1, %r2, %r3, %r4
 829  guard_class %r0 -> %i2
 832  -live- %i2, %r1, %r2, %r3, %r4
 832  goto_if_not_int_eq %i2, $<* struct object_vtable>, L59
 837  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r4] -> %i2
 843  -live- %i2, %r1, %r2, %r3, %r4
 843  -live- %i2, %r1, %r2, %r3, %r4
 843  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 849  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 854  int_mul %i2, %i1 -> %i1
 858  goto L42
 861  ---
 861  L59:
 861  goto L53
 864  ---
 864  L58:
 864  goto L53
 867  ---
 867  L51:
 867  -live- %r1, %r2, %r3
 867  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r4
 872  goto L57
 875  ---
 875  L52:
 875  -live- %r1, %r2, %r3
 875  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r4
 880  goto L57
 883  ---
 883  L39:
 883  -live- %i1, %r1, %r2, %r3
 883  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r0
 888  goto L47
 891  ---
 891  L40:
 891  -live- %i1, %r1, %r2, %r3
 891  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r0
 896  goto L47
 899  ---
 899  L25:
 899  ref_copy %r0 -> %r1
 902  goto L26
 905  ---
 905  L12:
 905  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 910  -live- %i0, %i1, %i3, %r0, %r2, %r3
 910  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 916  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 921  instance_ptr_eq %r2, %r3 -> %i2
 925  -live- %i0, %i1, %i2, %i3, %r0, %r3
 925  goto_if_not %i2, L60
 929  goto L13
 932  ---
 932  L60:
 932  -live- %i0, %i1, %i3, %r0, %r3
 932  goto_if_not %i1, L61
 936  -live- %i0, %i3, %r0, %r3
 936  guard_class %r0 -> %i2
 939  -live- %i0, %i2, %i3, %r0, %r3
 939  goto_if_not_int_eq %i2, $<* struct object_vtable>, L62
 944  goto L24
 947  ---
 947  L62:
 947  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x00000100d425d8a0> -> %r3
 951  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 956  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 961  -live- %r3
 961  raise %r3
 963  ---
 963  L61:
 963  goto L24
 966  ---
 966  L11:
 966  L63:
 966  inline_call_ir_i <JitCode 'order_converter'>, I[$0], R[%r2] -> %i1
 974  -live- %i1, %r0, %r3
 974  inline_call_r_r <JitCode 'find_shape_and_elems'>, R[%r0, %r3] -> %r2
 981  -live- %i1, %r0, %r2, %r3
 981  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r1
 986  getfield_gc_r_pure %r2, FieldDescr<tuple2.item1> -> %r2
 991  -live- %i1, %r0, %r1, %r2, %r3
 991  goto_if_not_ptr_iszero %r3, L64
 995  -live- %i1, %r0, %r1, %r2
 995  guard_class %r0 -> %i2
 998  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
1003  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
1008  -live- %i1, %i2, %r0, %r1, %r2
1008  goto_if_not %i2, L65
1012  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1015  L66:
1015  -live- %i1, %r1, %r2, %r3
1015  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1021  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r0
1026  -live- %i1, %r0, %r1, %r2, %r3
1026  guard_class %r0 -> %i2
1029  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1034  -live- %i1, %i2, %r0, %r1, %r2, %r3
1034  goto_if_not_int_eq %i2, $18, L67
1039  L68:
1039  -live- %i1, %r1, %r2, %r3
1039  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
1045  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i2
1050  -live- %i1, %i2, %r1, %r2, %r3
1050  goto_if_not_int_lt %i2, $1, L69
1055  L70:
1055  residual_call_r_r $<* fn find_dtype_for_seq>, R[%r2, %r3], <CallDescr(rr) EF=7> -> %r3
1063  -live- %i1, %r1, %r2, %r3
1063  L71:
1063  inline_call_ir_r <JitCode 'from_shape'>, I[%i1, $True], R[%r1, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
1074  -live- %r0, %r1, %r2, %r3
1074  inline_call_r_i <JitCode 'product'>, R[%r1] -> %i2
1080  -live- %i2, %r0, %r2, %r3
1080  -live- %i2, %r0, %r2, %r3
1080  goto_if_not_int_eq %i2, $1, L72
1085  getlistitem_gc_r %r2, $0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x00000100dd442560> -> %r2
1093  -live- %r0, %r2, %r3
1093  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1099  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
1104  -live- %r0, %r1, %r2, %r3
1104  guard_class %r1 -> %i2
1107  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
1112  -live- %i2, %r0, %r1, %r2, %r3
1112  int_guard_value %i2
1114  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
1123  -live- %r0, %r3
1123  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
1128  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
1133  -live- %i2, %r0, %r2, %r3
1133  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1139  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
1144  -live- %i2, %r0, %r1, %r2, %r3
1144  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1150  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
1155  -live- %i2, %r0, %r1, %r2, %r3, %r4
1155  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
1161  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i1
1166  int_eq %i1, $61 -> %i0
1170  int_eq %i1, $60 -> %i1
1174  int_or %i0, %i1 -> %i1
1178  -live- %i1, %i2, %r0, %r2, %r3, %r4
1178  guard_class %r4 -> %i0
1181  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i0
1186  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1186  int_guard_value %i0
1188  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i2, $0, %i1], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
1200  -live- %r0
1200  ref_return %r0
1202  ---
1202  L72:
1202  residual_call_r_v $<* fn assign>, R[%r0, %r2], <CallDescr(rr) EF=7>
1209  -live- %r0
1209  ref_return %r0
1211  ---
1211  L69:
1211  goto L71
1214  ---
1214  L67:
1214  -live- %i1, %r0, %r1, %r2, %r3
1214  guard_class %r0 -> %i2
1217  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1222  -live- %i1, %i2, %r1, %r2, %r3
1222  goto_if_not_int_eq %i2, $19, L73
1227  goto L68
1230  ---
1230  L73:
1230  goto L71
1233  ---
1233  L65:
1233  -live- %i1, %r0, %r1, %r2
1233  guard_class %r0 -> %i2
1236  -live- %i1, %i2, %r0, %r1, %r2
1236  int_guard_value %i2
1238  -live- %i1, %r0, %r1, %r2
1238  guard_class %r0 -> %i2
1241  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
1246  -live- %i1, %i2, %r0, %r1, %r2
1246  int_guard_value %i2
1248  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
1255  -live- %i1, %r1, %r2, %r3
1255  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
1262  -live- %i1, %i2, %r1, %r2
1262  -live- %i1, %i2, %r1, %r2
1262  goto_if_not %i2, L74
1266  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1269  goto L66
1272  ---
1272  L74:
1272  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1275  goto L70
1278  ---
1278  L64:
1278  -live- %i1, %r1, %r2, %r3
1278  goto_if_not_ptr_iszero %r3, L75
1282  goto L70
1285  ---
1285  L75:
1285  goto L66
1288  ---
1288  L10:
1288  goto L63
1291  ---
1291  L8:
1291  L76:
1291  residual_call_r_r $<* fn try_interface_method>, R[%r0], <CallDescr(r) EF=7> -> %r1
1298  -live- %i0, %i1, %r0, %r1, %r2, %r3
1298  getfield_gc_r_pure %r1, FieldDescr<tuple2.item0> -> %r4
1303  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i2
1308  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1308  goto_if_not_ptr_iszero %r4, L77
1312  goto L9
1315  ---
1315  L77:
1315  int_copy %i2 -> %i0
1318  ref_copy %r4 -> %r0
1321  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
1326  -live- %i0, %i1, %r0, %r2, %r3
1326  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1332  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
1337  goto L9
1340  ---
1340  L7:
1340  goto L76
1343  ---
1343  L5:
1343  L78:
1343  inline_call_r_r <JitCode 'try_array_method'>, R[%r0, %r1] -> %r1
1350  -live- %i0, %i1, %r0, %r1, %r2, %r3
1350  -live- %i0, %i1, %r0, %r1, %r2, %r3
1350  goto_if_not_ptr_iszero %r1, L79
1354  goto L6
1357  ---
1357  L79:
1357  ref_copy %r1 -> %r0
1360  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
1365  -live- %i1, %r0, %r2, %r3
1365  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1371  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
1376  int_copy $False -> %i0
1379  goto L6
1382  ---
1382  L4:
1382  goto L78
