   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 0x43a05710> -> %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  switch %i2, <SwitchDictDescr 0:L3, 1:L4, 2:L5, 3:L6>
  50  unreachable
  51  ---
  51  L3:
  51  -live- %i0, %i1, %r0, %r1, %r2
  51  -live- %i0, %i1, %r0, %r1, %r2
  51  guard_class %r0 -> %i2
  54  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
  59  -live- %i0, %i1, %i2, %r0, %r1, %r2
  59  int_guard_value %i2
  61  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
  68  -live- %i0, %i1, %r0, %r1, %r2, %r3
  68  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
  73  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
  78  L7:
  78  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
  85  -live- %i0, %i1, %i2, %r0, %r1, %r2
  85  -live- %i0, %i1, %i2, %r0, %r1, %r2
  85  goto_if_not %i2, L8
  89  goto L2
  92  ---
  92  L8:
  92  inline_call_r_r <JitCode 'decode_w_dtype'>, R[%r1] -> %r3
  98  -live- %i0, %i1, %r0, %r1, %r2, %r3
  98  -live- %i0, %i1, %r0, %r1, %r2, %r3
  98  goto_if_not_ptr_nonzero %r0, L9
 102  ref_copy %r0 -> %r4
 105  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 105  guard_class %r4 -> %i2
 108  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 113  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 118  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
 118  goto_if_not %i2, L10
 122  L11:
 122  -live- %i0, %i1, %r0, %r2, %r3
 122  goto_if_not_ptr_nonzero %r0, L12
 126  ref_copy %r0 -> %r1
 129  -live- %i0, %i1, %r0, %r1, %r2, %r3
 129  guard_class %r1 -> %i2
 132  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 137  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 142  -live- %i0, %i1, %i2, %r0, %r2, %r3
 142  goto_if_not %i2, L13
 146  L14:
 146  -live- %i0, %i1, %r0, %r2, %r3
 146  goto_if_not_ptr_nonzero %r0, L15
 150  ref_copy %r0 -> %r1
 153  -live- %i0, %i1, %r0, %r1, %r2, %r3
 153  guard_class %r1 -> %i2
 156  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 161  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 166  -live- %i0, %i1, %i2, %r0, %r2, %r3
 166  goto_if_not %i2, L16
 170  inline_call_ir_i <JitCode 'order_converter'>, I[$-1], R[%r2] -> %i3
 178  -live- %i0, %i1, %i3, %r0, %r3
 178  -live- %i0, %i1, %i3, %r0, %r3
 178  goto_if_not_ptr_iszero %r3, L17
 182  L18:
 182  -live- %i0, %i1, %i3, %r0, %r3
 182  goto_if_not %i1, L19
 186  L20:
 186  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 191  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_flags> -> %i1
 196  -live- %i0, %i1, %i3, %r0
 196  goto_if_not_int_is_zero %i3, L21
 200  int_and %i1, $1 -> %i2
 204  -live- %i0, %i1, %i2, %i3, %r0
 204  goto_if_not_int_is_true %i2, L22
 208  int_copy $False -> %i2
 211  L23:
 211  int_or %i0, %i2 -> %i2
 215  int_is_true %i2 -> %i2
 218  -live- %i1, %i2, %i3, %r0
 218  goto_if_not_int_eq %i3, $1, L24
 223  int_and %i1, $2 -> %i1
 227  -live- %i1, %i2, %i3, %r0
 227  goto_if_not_int_is_true %i1, L25
 231  int_copy $False -> %i1
 234  L26:
 234  int_or %i2, %i1 -> %i2
 238  -live- %i2, %i3, %r0
 238  goto_if_not_int_is_true %i2, L27
 242  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x44327210> -> %r3
 246  setfield_gc_i %r3, %i3, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 251  inline_call_r_r <JitCode 'W_NDimArray.descr_copy'>, R[%r0, %r3] -> %r0
 258  -live- %r0
 258  ref_return %r0
 260  ---
 260  L27:
 260  ref_return %r0
 262  ---
 262  L25:
 262  int_copy $True -> %i1
 265  goto L26
 268  ---
 268  L24:
 268  int_copy $False -> %i1
 271  goto L26
 274  ---
 274  L22:
 274  int_copy $True -> %i2
 277  goto L23
 280  ---
 280  L21:
 280  int_copy $False -> %i2
 283  goto L23
 286  ---
 286  L19:
 286  -live- %i0, %i3, %r0, %r3
 286  guard_class %r0 -> %i2
 289  -live- %i0, %i2, %i3, %r0, %r3
 289  goto_if_not_int_eq %i2, $<* struct object_vtable>, L28
 294  goto L20
 297  ---
 297  L28:
 297  L29:
 297  -live- %i0, %i3, %r0, %r3
 297  goto_if_not_ptr_iszero %r3, L30
 301  ref_copy %r0 -> %r1
 304  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 309  -live- %i0, %i3, %r1, %r3
 309  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 315  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 320  L31:
 320  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 325  -live- %i0, %i3, %r1, %r2, %r3
 325  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 331  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r0
 336  instance_ptr_eq %r3, %r0 -> %i2
 340  -live- %i0, %i2, %i3, %r1, %r2, %r3
 340  goto_if_not_int_is_zero %i2, L32
 344  L33:
 344  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 349  -live- %i3, %r0, %r1, %r3
 349  guard_class %r0 -> %i2
 352  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 357  -live- %i2, %i3, %r0, %r1, %r3
 357  switch %i2, <SwitchDictDescr 0:L34, 1:L35>
 361  unreachable
 362  ---
 362  L34:
 362  -live- %i3, %r0, %r1, %r3
 362  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 367  L36:
 367  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 372  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_order> -> %i2
 377  -live- %i2, %i3, %r1, %r2, %r3
 377  switch %i3, <SwitchDictDescr 0:L37, 1:L38>
 381  L39:
 381  inline_call_ir_r <JitCode 'from_shape'>, I[%i2, $True], R[%r2, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
 392  -live- %r0, %r1, %r2, %r3
 392  inline_call_r_i <JitCode 'product'>, R[%r2] -> %i2
 398  -live- %i2, %r0, %r1, %r2, %r3
 398  -live- %i2, %r0, %r1, %r2, %r3
 398  goto_if_not_int_eq %i2, $1, L40
 403  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 408  -live- %r0, %r2, %r3
 408  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 414  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 419  -live- %r0, %r1, %r2, %r3
 419  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 425  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 430  -live- %r0, %r1, %r2, %r3, %r4
 430  guard_class %r4 -> %i2
 433  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i2
 438  -live- %i2, %r0, %r1, %r2, %r3, %r4
 438  int_guard_value %i2
 440  residual_call_ir_r %i2, <IndirectCallTargets>, I[$0, $0], R[%r4, %r2, %r1], <CallDescr(rriir) EF=5> -> %r2
 452  -live- %r0, %r2, %r3
 452  -live- %r0, %r2, %r3
 452  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 458  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
 463  -live- %r0, %r1, %r2, %r3
 463  guard_class %r1 -> %i2
 466  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
 471  -live- %i2, %r0, %r1, %r2, %r3
 471  int_guard_value %i2
 473  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
 482  -live- %r0, %r3
 482  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 487  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 492  -live- %i2, %r0, %r2, %r3
 492  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 498  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 503  -live- %i2, %r0, %r1, %r2, %r3
 503  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 509  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 514  -live- %i2, %r0, %r1, %r2, %r3, %r4
 514  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 520  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i1
 525  int_eq %i1, $61 -> %i0
 529  int_eq %i1, $60 -> %i1
 533  int_or %i0, %i1 -> %i1
 537  -live- %i1, %i2, %r0, %r2, %r3, %r4
 537  guard_class %r4 -> %i0
 540  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i0
 545  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 545  int_guard_value %i0
 547  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i2, $0, %i1], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
 559  -live- %r0
 559  ref_return %r0
 561  ---
 561  L40:
 561  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 566  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 571  inline_call_r_r <JitCode 'setslice'>, R[%r2, %r3, %r1] -> %r3
 579  -live- %r0
 579  ref_return %r0
 581  ---
 581  L37:
 581  -live- %r1, %r2, %r3
 581  int_copy $0 -> %i2
 584  goto L39
 587  ---
 587  L38:
 587  -live- %r1, %r2, %r3
 587  int_copy $1 -> %i2
 590  goto L39
 593  ---
 593  L35:
 593  -live- %i3, %r0, %r1, %r3
 593  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 598  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x44878f90> -> %i2
 603  -live- %i2, %i3, %r1, %r2, %r3
 603  int_guard_value %i2
 605  goto L36
 608  ---
 608  L32:
 608  -live- %i0, %i3, %r1, %r2, %r3
 608  goto_if_not %i0, L41
 612  goto L33
 615  ---
 615  L41:
 615  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r1] -> %i2
 621  -live- %i2, %r1, %r2, %r3
 621  -live- %i2, %r1, %r2, %r3
 621  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 627  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 632  int_mul %i2, %i1 -> %i1
 636  -live- %i1, %r1, %r2, %r3
 636  guard_class %r2 -> %i2
 639  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 644  -live- %i1, %i2, %r1, %r2, %r3
 644  switch %i2, <SwitchDictDescr 0:L42, 1:L43, 2:L44, 3:L45>
 648  unreachable
 649  ---
 649  L42:
 649  -live- %i1, %r1, %r2, %r3
 649  L46:
 649  ref_copy %r1 -> %r4
 652  L47:
 652  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_storage> -> %i0
 657  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 662  -live- %i0, %i1, %r0, %r2, %r3, %r4
 662  guard_class %r0 -> %i2
 665  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 670  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 670  switch %i2, <SwitchDictDescr 0:L48, 1:L49>
 674  unreachable
 675  ---
 675  L48:
 675  -live- %i0, %i1, %r0, %r2, %r3, %r4
 675  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 680  L50:
 680  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_strides> -> %r0
 685  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 690  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
 708  -live- %r0, %r2
 708  catch_exception L51
 711  -live- %r0, %r2
 711  ref_return %r0
 713  ---
 713  L51:
 713  last_exception -> %i2
 715  last_exc_value -> %r3
 717  -live- %r2, %r3
 717  -live- %r3
 717  raise %r3
 719  ---
 719  L49:
 719  -live- %i0, %i1, %r0, %r2, %r3, %r4
 719  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 724  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x44878f90> -> %i2
 729  -live- %i0, %i1, %i2, %r1, %r2, %r3, %r4
 729  int_guard_value %i2
 731  goto L50
 734  ---
 734  L43:
 734  -live- %i1, %r1, %r2, %r3
 734  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r0
 739  L52:
 739  -live- %i1, %r0, %r1, %r2, %r3
 739  goto_if_not_ptr_iszero %r0, L53
 743  goto L46
 746  ---
 746  L53:
 746  -live- %r1, %r2, %r3
 746  guard_class %r2 -> %i2
 749  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 754  -live- %i2, %r1, %r2, %r3
 754  switch %i2, <SwitchDictDescr 0:L54, 1:L55, 2:L56, 3:L57>
 758  unreachable
 759  ---
 759  L54:
 759  -live- %r1, %r2, %r3
 759  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r4
 762  L58:
 762  inline_call_r_r <JitCode 'call_method_opt__star_0'>, R[%r4, $<* struct rpy_string>] -> %r0
 769  -live- %r0, %r1, %r2, %r3, %r4
 769  -live- %r0, %r1, %r2, %r3, %r4
 769  guard_class %r0 -> %i2
 772  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int_w> -> %i2
 777  -live- %i2, %r0, %r1, %r2, %r3, %r4
 777  switch %i2, <SwitchDictDescr 0:L59, 1:L60, 2:L61>
 781  unreachable
 782  ---
 782  L59:
 782  -live- %r0
 782  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
 791  -live- %r3
 791  -live- %r3
 791  guard_class %r3 -> %i2
 794  -live- %r3
 794  raise %r3
 796  ---
 796  L60:
 796  -live- %r0, %r1, %r2, %r3, %r4
 796  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i1
 801  goto L47
 804  ---
 804  L61:
 804  -live- %r0, %r1, %r2, %r3, %r4
 804  -live- %r0, %r1, %r2, %r3, %r4
 804  guard_class %r0 -> %i2
 807  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int> -> %i2
 812  -live- %i2, %r0, %r1, %r2, %r3, %r4
 812  int_guard_value %i2
 814  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=7> -> %r0
 821  -live- %r0, %r1, %r2, %r3, %r4
 821  -live- %r0, %r1, %r2, %r3, %r4
 821  guard_class %r0 -> %i2
 824  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__int_w> -> %i2
 829  inline_call_ir_i <JitCode 'dispatcher'>, I[%i2], R[%r0] -> %i1
 837  -live- %i1, %r1, %r2, %r3, %r4
 837  goto L47
 840  ---
 840  L55:
 840  -live- %r1, %r2, %r3
 840  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r4
 845  L62:
 845  -live- %r1, %r2, %r3, %r4
 845  goto_if_not_ptr_nonzero %r4, L63
 849  ref_copy %r4 -> %r0
 852  -live- %r0, %r1, %r2, %r3, %r4
 852  guard_class %r0 -> %i2
 855  -live- %i2, %r1, %r2, %r3, %r4
 855  goto_if_not_int_eq %i2, $<* struct object_vtable>, L64
 860  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r4] -> %i2
 866  -live- %i2, %r1, %r2, %r3, %r4
 866  -live- %i2, %r1, %r2, %r3, %r4
 866  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 872  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 877  int_mul %i2, %i1 -> %i1
 881  goto L47
 884  ---
 884  L64:
 884  goto L58
 887  ---
 887  L63:
 887  goto L58
 890  ---
 890  L56:
 890  -live- %r1, %r2, %r3
 890  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r4
 895  goto L62
 898  ---
 898  L57:
 898  -live- %r1, %r2, %r3
 898  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r4
 903  goto L62
 906  ---
 906  L44:
 906  -live- %i1, %r1, %r2, %r3
 906  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r0
 911  goto L52
 914  ---
 914  L45:
 914  -live- %i1, %r1, %r2, %r3
 914  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r0
 919  goto L52
 922  ---
 922  L30:
 922  ref_copy %r0 -> %r1
 925  goto L31
 928  ---
 928  L17:
 928  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 933  -live- %i0, %i1, %i3, %r0, %r2, %r3
 933  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 939  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 944  instance_ptr_eq %r2, %r3 -> %i2
 948  -live- %i0, %i1, %i2, %i3, %r0, %r3
 948  goto_if_not %i2, L65
 952  goto L18
 955  ---
 955  L65:
 955  -live- %i0, %i1, %i3, %r0, %r3
 955  goto_if_not %i1, L66
 959  -live- %i0, %i3, %r0, %r3
 959  guard_class %r0 -> %i2
 962  -live- %i0, %i2, %i3, %r0, %r3
 962  goto_if_not_int_eq %i2, $<* struct object_vtable>, L67
 967  goto L29
 970  ---
 970  L67:
 970  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x43a05710> -> %r3
 974  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 979  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 984  -live- %r3
 984  raise %r3
 986  ---
 986  L66:
 986  goto L29
 989  ---
 989  L16:
 989  L68:
 989  inline_call_ir_i <JitCode 'order_converter'>, I[$0], R[%r2] -> %i1
 997  -live- %i1, %r0, %r3
 997  inline_call_r_r <JitCode 'find_shape_and_elems'>, R[%r0, %r3] -> %r2
1004  -live- %i1, %r0, %r2, %r3
1004  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r1
1009  getfield_gc_r_pure %r2, FieldDescr<tuple2.item1> -> %r2
1014  -live- %i1, %r0, %r1, %r2, %r3
1014  goto_if_not_ptr_iszero %r3, L69
1018  -live- %i1, %r0, %r1, %r2
1018  guard_class %r0 -> %i2
1021  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
1026  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
1031  -live- %i1, %i2, %r0, %r1, %r2
1031  goto_if_not %i2, L70
1035  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1038  L71:
1038  -live- %i1, %r1, %r2, %r3
1038  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1044  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r0
1049  -live- %i1, %r0, %r1, %r2, %r3
1049  guard_class %r0 -> %i2
1052  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1057  -live- %i1, %i2, %r0, %r1, %r2, %r3
1057  goto_if_not_int_eq %i2, $18, L72
1062  L73:
1062  -live- %i1, %r1, %r2, %r3
1062  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
1068  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i2
1073  -live- %i1, %i2, %r1, %r2, %r3
1073  goto_if_not_int_lt %i2, $1, L74
1078  L75:
1078  residual_call_r_r $<* fn find_dtype_for_seq>, R[%r2, %r3], <CallDescr(rr) EF=7> -> %r3
1086  -live- %i1, %r1, %r2, %r3
1086  L76:
1086  inline_call_ir_r <JitCode 'from_shape'>, I[%i1, $True], R[%r1, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
1097  -live- %r0, %r1, %r2, %r3
1097  inline_call_r_i <JitCode 'product'>, R[%r1] -> %i2
1103  -live- %i2, %r0, %r2, %r3
1103  -live- %i2, %r0, %r2, %r3
1103  goto_if_not_int_eq %i2, $1, L77
1108  getlistitem_gc_r %r2, $0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x4920fcf0> -> %r2
1116  -live- %r0, %r2, %r3
1116  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1122  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
1127  -live- %r0, %r1, %r2, %r3
1127  guard_class %r1 -> %i2
1130  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
1135  -live- %i2, %r0, %r1, %r2, %r3
1135  int_guard_value %i2
1137  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
1146  -live- %r0, %r3
1146  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
1151  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
1156  -live- %i2, %r0, %r2, %r3
1156  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1162  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
1167  -live- %i2, %r0, %r1, %r2, %r3
1167  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1173  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
1178  -live- %i2, %r0, %r1, %r2, %r3, %r4
1178  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
1184  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i1
1189  int_eq %i1, $61 -> %i0
1193  int_eq %i1, $60 -> %i1
1197  int_or %i0, %i1 -> %i1
1201  -live- %i1, %i2, %r0, %r2, %r3, %r4
1201  guard_class %r4 -> %i0
1204  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i0
1209  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1209  int_guard_value %i0
1211  residual_call_ir_v %i0, <IndirectCallTargets>, I[%i2, $0, %i1], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
1223  -live- %r0
1223  ref_return %r0
1225  ---
1225  L77:
1225  residual_call_r_v $<* fn assign>, R[%r0, %r2], <CallDescr(rr) EF=7>
1232  -live- %r0
1232  ref_return %r0
1234  ---
1234  L74:
1234  goto L76
1237  ---
1237  L72:
1237  -live- %i1, %r0, %r1, %r2, %r3
1237  guard_class %r0 -> %i2
1240  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1245  -live- %i1, %i2, %r1, %r2, %r3
1245  goto_if_not_int_eq %i2, $19, L78
1250  goto L73
1253  ---
1253  L78:
1253  goto L76
1256  ---
1256  L70:
1256  -live- %i1, %r0, %r1, %r2
1256  guard_class %r0 -> %i2
1259  -live- %i1, %i2, %r0, %r1, %r2
1259  int_guard_value %i2
1261  -live- %i1, %r0, %r1, %r2
1261  guard_class %r0 -> %i2
1264  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
1269  -live- %i1, %i2, %r0, %r1, %r2
1269  switch %i2, <SwitchDictDescr 0:L79, 1:L80, 2:L81, 3:L82>
1273  unreachable
1274  ---
1274  L79:
1274  -live- %i1, %r0, %r1, %r2
1274  -live- %i1, %r0, %r1, %r2
1274  guard_class %r0 -> %i2
1277  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
1282  -live- %i1, %i2, %r0, %r1, %r2
1282  int_guard_value %i2
1284  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
1291  -live- %i1, %r1, %r2, %r3
1291  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
1296  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
1301  L83:
1301  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
1308  -live- %i1, %i2, %r1, %r2
1308  -live- %i1, %i2, %r1, %r2
1308  goto_if_not %i2, L84
1312  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1315  goto L71
1318  ---
1318  L84:
1318  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1321  goto L75
1324  ---
1324  L80:
1324  -live- %i1, %r0, %r1, %r2
1324  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.mapdict.Object.inst_map> -> %r3
1329  -live- %i1, %r1, %r2, %r3
1329  ref_guard_value %r3
1331  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
1336  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
1341  goto L83
1344  ---
1344  L81:
1344  -live- %i1, %r0, %r1, %r2
1344  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r3
1349  goto L83
1352  ---
1352  L82:
1352  -live- %i1, %r0, %r1, %r2
1352  -live- %i1, %r0, %r1, %r2
1352  guard_class %r0 -> %i2
1355  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typedef> -> %i2
1360  getfield_raw_r %i2, FieldDescr<pbc.pbcinternal_memofield_getorbuild_0> -> %r3
1365  goto L83
1368  ---
1368  L69:
1368  -live- %i1, %r1, %r2, %r3
1368  goto_if_not_ptr_iszero %r3, L85
1372  goto L75
1375  ---
1375  L85:
1375  goto L71
1378  ---
1378  L15:
1378  goto L68
1381  ---
1381  L13:
1381  L86:
1381  residual_call_r_r $<* fn try_interface_method>, R[%r0], <CallDescr(r) EF=7> -> %r1
1388  -live- %i0, %i1, %r0, %r1, %r2, %r3
1388  getfield_gc_r_pure %r1, FieldDescr<tuple2.item0> -> %r4
1393  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i2
1398  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1398  goto_if_not_ptr_iszero %r4, L87
1402  goto L14
1405  ---
1405  L87:
1405  int_copy %i2 -> %i0
1408  ref_copy %r4 -> %r0
1411  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
1416  -live- %i0, %i1, %r0, %r2, %r3
1416  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1422  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
1427  goto L14
1430  ---
1430  L12:
1430  goto L86
1433  ---
1433  L10:
1433  L88:
1433  inline_call_r_r <JitCode 'try_array_method'>, R[%r0, %r1] -> %r1
1440  -live- %i0, %i1, %r0, %r1, %r2, %r3
1440  -live- %i0, %i1, %r0, %r1, %r2, %r3
1440  goto_if_not_ptr_iszero %r1, L89
1444  goto L11
1447  ---
1447  L89:
1447  ref_copy %r1 -> %r0
1450  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
1455  -live- %i1, %r0, %r2, %r3
1455  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1461  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
1466  int_copy $False -> %i0
1469  goto L11
1472  ---
1472  L9:
1472  goto L88
1475  ---
1475  L4:
1475  -live- %i0, %i1, %r0, %r1, %r2
1475  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.mapdict.Object.inst_map> -> %r3
1480  -live- %i0, %i1, %r0, %r1, %r2, %r3
1480  ref_guard_value %r3
1482  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
1487  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
1492  goto L7
1495  ---
1495  L5:
1495  -live- %i0, %i1, %r0, %r1, %r2
1495  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r3
1500  goto L7
1503  ---
1503  L6:
1503  -live- %i0, %i1, %r0, %r1, %r2
1503  -live- %i0, %i1, %r0, %r1, %r2
1503  guard_class %r0 -> %i2
1506  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typedef> -> %i2
1511  getfield_raw_r %i2, FieldDescr<pbc.pbcinternal_memofield_getorbuild_0> -> %r3
1516  goto L7
