   0  -live- %i0, %i1, %r0, %r1, %r2
   3  guard_class %r0 -> %i2
   6  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
  11  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
  16  -live- %i0, %i1, %i2, %r0, %r1, %r2
  19  goto_if_not %i2, L1
  23  L2:
  23  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000055d2f17bf6e0> -> %r3
  27  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  32  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  37  assert_not_none %r3
  39  -live- %r3
  42  raise %r3
  44  ---
  44  L1:
  44  -live- %i0, %i1, %r0, %r1, %r2
  47  guard_class %r0 -> %i2
  50  -live- %i0, %i1, %i2, %r0, %r1, %r2
  53  int_guard_value %i2
  55  -live- %i0, %i1, %r0, %r1, %r2
  58  guard_class %r0 -> %i2
  61  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
  66  -live- %i0, %i1, %i2, %r0, %r1, %r2
  69  switch %i2, <SwitchDictDescr 0:L3, 1:L4, 2:L5, 3:L6>
  73  unreachable
  74  ---
  74  L3:
  74  -live- %i0, %i1, %r0, %r1, %r2
  77  guard_class %r0 -> %i2
  80  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
  85  -live- %i0, %i1, %i2, %r0, %r1, %r2
  88  int_guard_value %i2
  90  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
  97  -live- %i0, %i1, %r0, %r1, %r2, %r3
 100  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
 105  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
 110  L7:
 110  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
 117  -live- %i0, %i1, %i2, %r0, %r1, %r2
 120  goto_if_not %i2, L8
 124  goto L2
 127  ---
 127  L8:
 127  inline_call_r_r <JitCode 'decode_w_dtype'>, R[%r1] -> %r3
 133  -live- %i0, %i1, %r0, %r1, %r2, %r3
 136  goto_if_not_ptr_nonzero %r0, L9
 140  ref_copy %r0 -> %r4
 143  -live- %i0, %i1, %r0, %r1, %r2, %r3, %r4
 146  guard_class %r4 -> %i2
 149  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 154  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 159  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r3
 162  goto_if_not %i2, L10
 166  L11:
 166  -live- %i0, %i1, %r0, %r2, %r3
 169  goto_if_not_ptr_nonzero %r0, L12
 173  ref_copy %r0 -> %r1
 176  -live- %i0, %i1, %r0, %r1, %r2, %r3
 179  guard_class %r1 -> %i2
 182  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 187  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 192  -live- %i0, %i1, %i2, %r0, %r2, %r3
 195  goto_if_not %i2, L13
 199  L14:
 199  -live- %i0, %i1, %r0, %r2, %r3
 202  goto_if_not_ptr_nonzero %r0, L15
 206  ref_copy %r0 -> %r1
 209  -live- %i0, %i1, %r0, %r1, %r2, %r3
 212  guard_class %r1 -> %i2
 215  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
 220  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
 225  -live- %i0, %i1, %i2, %r0, %r2, %r3
 228  goto_if_not %i2, L16
 232  inline_call_ir_i <JitCode 'order_converter'>, I[$-1], R[%r2] -> %i3
 240  -live- %i0, %i1, %i3, %r0, %r3
 243  goto_if_not_ptr_iszero %r3, L17
 247  L18:
 247  -live- %i0, %i1, %i3, %r0, %r3
 250  goto_if_not %i1, L19
 254  L20:
 254  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 259  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_flags> -> %i1
 264  -live- %i0, %i1, %i3, %r0
 267  goto_if_not_int_is_zero %i3, L21
 271  int_and %i1, $1 -> %i2
 275  -live- %i0, %i1, %i2, %i3, %r0
 278  goto_if_not_int_is_true %i2, L22
 282  int_copy $False -> %i2
 285  L23:
 285  int_or %i0, %i2 -> %i2
 289  int_is_true %i2 -> %i2
 292  -live- %i1, %i2, %i3, %r0
 295  goto_if_not_int_eq %i3, $1, L24
 300  int_and %i1, $2 -> %i0
 304  -live- %i0, %i2, %i3, %r0
 307  goto_if_not_int_is_true %i0, L25
 311  int_copy $False -> %i0
 314  L26:
 314  int_or %i2, %i0 -> %i2
 318  -live- %i2, %i3, %r0
 321  goto_if_not_int_is_true %i2, L27
 325  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000055d2f3f9d9b8> -> %r3
 329  setfield_gc_i %r3, %i3, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 334  inline_call_r_r <JitCode 'W_NDimArray.descr_copy'>, R[%r0, %r3] -> %r0
 341  -live- %r0
 344  ref_return %r0
 346  ---
 346  L27:
 346  ref_return %r0
 348  ---
 348  L25:
 348  int_copy $True -> %i0
 351  goto L26
 354  ---
 354  L24:
 354  int_copy $False -> %i0
 357  goto L26
 360  ---
 360  L22:
 360  int_copy $True -> %i2
 363  goto L23
 366  ---
 366  L21:
 366  int_copy $False -> %i2
 369  goto L23
 372  ---
 372  L19:
 372  -live- %i0, %i3, %r0, %r3
 375  guard_class %r0 -> %i2
 378  -live- %i0, %i2, %i3, %r0, %r3
 381  goto_if_not_int_eq %i2, $<* struct object_vtable>, L28
 386  goto L20
 389  ---
 389  L28:
 389  L29:
 389  -live- %i0, %i3, %r0, %r3
 392  goto_if_not_ptr_iszero %r3, L30
 396  ref_copy %r0 -> %r1
 399  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 404  -live- %i0, %i3, %r1, %r3
 407  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 413  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 418  L31:
 418  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 423  -live- %i0, %i3, %r1, %r2, %r3
 426  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 432  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r0
 437  instance_ptr_eq %r3, %r0 -> %i2
 441  -live- %i0, %i2, %i3, %r1, %r2, %r3
 444  goto_if_not_int_is_zero %i2, L32
 448  L33:
 448  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 453  -live- %i3, %r0, %r1, %r3
 456  guard_class %r0 -> %i2
 459  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 464  -live- %i2, %i3, %r0, %r1, %r3
 467  switch %i2, <SwitchDictDescr 0:L34, 1:L35>
 471  unreachable
 472  ---
 472  L34:
 472  -live- %i3, %r0, %r1, %r3
 475  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 480  L36:
 480  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 485  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_order> -> %i2
 490  -live- %i2, %i3, %r1, %r2, %r3
 493  switch %i3, <SwitchDictDescr 0:L37, 1:L38>
 497  L39:
 497  inline_call_ir_r <JitCode 'from_shape'>, I[%i2, $True], R[%r2, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
 508  -live- %r0, %r1, %r2, %r3
 511  inline_call_r_i <JitCode 'product'>, R[%r2] -> %i2
 517  -live- %i2, %r0, %r1, %r2, %r3
 520  goto_if_not_int_eq %i2, $1, L40
 525  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 530  -live- %r0, %r2, %r3
 533  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 539  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 544  -live- %r0, %r1, %r2, %r3
 547  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 553  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 558  -live- %r0, %r1, %r2, %r3, %r4
 561  guard_class %r4 -> %i2
 564  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_read> -> %i2
 569  -live- %i2, %r0, %r1, %r2, %r3, %r4
 572  int_guard_value %i2
 574  residual_call_ir_r %i2, <IndirectCallTargets>, I[$0, $0], R[%r4, %r2, %r1], <CallDescr(rriir) EF=5> -> %r2
 586  -live- %r0, %r2, %r3
 589  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 595  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
 600  -live- %r0, %r1, %r2, %r3
 603  guard_class %r1 -> %i2
 606  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
 611  -live- %i2, %r0, %r1, %r2, %r3
 614  int_guard_value %i2
 616  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
 625  -live- %r0, %r3
 628  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 633  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 638  -live- %i2, %r0, %r2, %r3
 641  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 647  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 652  -live- %i2, %r0, %r1, %r2, %r3
 655  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 661  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
 666  -live- %i2, %r0, %r1, %r2, %r3, %r4
 669  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
 675  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i0
 680  int_eq %i0, $61 -> %i1
 684  int_eq %i0, $60 -> %i0
 688  int_or %i1, %i0 -> %i0
 692  -live- %i0, %i2, %r0, %r2, %r3, %r4
 695  guard_class %r4 -> %i1
 698  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i1
 703  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 706  int_guard_value %i1
 708  residual_call_ir_v %i1, <IndirectCallTargets>, I[%i2, $0, %i0], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
 720  -live- %r0
 723  ref_return %r0
 725  ---
 725  L40:
 725  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 730  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 735  inline_call_r_r <JitCode 'setslice'>, R[%r2, %r3, %r1] -> %r3
 743  -live- %r0
 746  ref_return %r0
 748  ---
 748  L37:
 748  -live- %r1, %r2, %r3
 751  int_copy $0 -> %i2
 754  goto L39
 757  ---
 757  L38:
 757  -live- %r1, %r2, %r3
 760  int_copy $1 -> %i2
 763  goto L39
 766  ---
 766  L35:
 766  -live- %i3, %r0, %r1, %r3
 769  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 774  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2f4800288> -> %i2
 779  -live- %i2, %i3, %r1, %r2, %r3
 782  int_guard_value %i2
 784  goto L36
 787  ---
 787  L32:
 787  -live- %i0, %i3, %r1, %r2, %r3
 790  goto_if_not %i0, L41
 794  goto L33
 797  ---
 797  L41:
 797  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r1] -> %i2
 803  -live- %i2, %r1, %r2, %r3
 806  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 812  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i0
 817  int_mul %i2, %i0 -> %i0
 821  -live- %i0, %r1, %r2, %r3
 824  guard_class %r2 -> %i2
 827  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 832  -live- %i0, %i2, %r1, %r2, %r3
 835  switch %i2, <SwitchDictDescr 0:L42, 1:L43, 2:L44, 3:L45>
 839  unreachable
 840  ---
 840  L42:
 840  L46:
 840  -live- %i0, %r1, %r2, %r3
 843  ref_copy %r1 -> %r4
 846  L47:
 846  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_storage> -> %i1
 851  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 856  -live- %i0, %i1, %r0, %r2, %r3, %r4
 859  guard_class %r0 -> %i2
 862  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i2
 867  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 870  switch %i2, <SwitchDictDescr 0:L48, 1:L49>
 874  unreachable
 875  ---
 875  L48:
 875  -live- %i0, %i1, %r0, %r2, %r3, %r4
 878  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 883  L50:
 883  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_strides> -> %r0
 888  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
 893  residual_call_ir_r $<* fn from_shape_and_storage>, I[%i1, %i0, $0, $False, $True, %i2], R[%r1, %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, %r4, %r0], <CallDescr(ririiirriri) EF=7> -> %r0
 911  -live- %r0, %r2
 914  catch_exception L51
 917  -live- %r0, %r2
 920  ref_return %r0
 922  ---
 922  L51:
 922  last_exception -> %i2
 924  last_exc_value -> %r3
 926  -live- %r2, %r3
 929  raise %r3
 931  ---
 931  L49:
 931  -live- %i0, %i1, %r0, %r2, %r3, %r4
 934  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 939  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2f4800288> -> %i2
 944  -live- %i0, %i1, %i2, %r1, %r2, %r3, %r4
 947  int_guard_value %i2
 949  goto L50
 952  ---
 952  L43:
 952  -live- %i0, %r1, %r2, %r3
 955  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r0
 960  L52:
 960  -live- %i0, %r0, %r1, %r2, %r3
 963  goto_if_not_ptr_iszero %r0, L53
 967  goto L46
 970  ---
 970  L53:
 970  -live- %r1, %r2, %r3
 973  guard_class %r2 -> %i2
 976  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_base> -> %i2
 981  -live- %i2, %r1, %r2, %r3
 984  switch %i2, <SwitchDictDescr 0:L54, 1:L55, 2:L56, 3:L57>
 988  unreachable
 989  ---
 989  L54:
 989  -live- %r1, %r2, %r3
 992  ref_copy $<* struct pypy.interpreter.baseobjspace.W_Root> -> %r4
 995  L58:
 995  inline_call_r_r <JitCode 'call_method_opt__star_0'>, R[%r4, $<* struct rpy_string>] -> %r0
1002  -live- %r0, %r1, %r2, %r3, %r4
1005  guard_class %r0 -> %i2
1008  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int_w> -> %i2
1013  -live- %i2, %r0, %r1, %r2, %r3, %r4
1016  switch %i2, <SwitchDictDescr 0:L59, 1:L60, 2:L61>
1020  unreachable
1021  ---
1021  L59:
1021  -live- %r0
1024  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
1033  -live- %r3
1036  assert_not_none %r3
1038  -live- %r3
1041  guard_class %r3 -> %i2
1044  -live- %r3
1047  raise %r3
1049  ---
1049  L60:
1049  -live- %r0, %r1, %r2, %r3, %r4
1052  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
1057  goto L47
1060  ---
1060  L61:
1060  -live- %r0, %r1, %r2, %r3, %r4
1063  guard_class %r0 -> %i2
1066  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_int> -> %i2
1071  -live- %i2, %r0, %r1, %r2, %r3, %r4
1074  int_guard_value %i2
1076  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=7> -> %r0
1083  -live- %r0, %r1, %r2, %r3, %r4
1086  guard_class %r0 -> %i2
1089  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__int_w> -> %i2
1094  inline_call_ir_i <JitCode 'dispatcher'>, I[%i2], R[%r0] -> %i0
1102  -live- %i0, %r1, %r2, %r3, %r4
1105  goto L47
1108  ---
1108  L55:
1108  -live- %r1, %r2, %r3
1111  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.SliceArray.inst_orig_arr> -> %r4
1116  L62:
1116  -live- %r1, %r2, %r3, %r4
1119  goto_if_not_ptr_nonzero %r4, L63
1123  ref_copy %r4 -> %r0
1126  -live- %r0, %r1, %r2, %r3, %r4
1129  guard_class %r0 -> %i2
1132  -live- %i2, %r1, %r2, %r3, %r4
1135  goto_if_not_int_eq %i2, $<* struct object_vtable>, L64
1140  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r4] -> %i2
1146  -live- %i2, %r1, %r2, %r3, %r4
1149  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
1155  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i0
1160  int_mul %i2, %i0 -> %i0
1164  goto L47
1167  ---
1167  L64:
1167  goto L58
1170  ---
1170  L63:
1170  goto L58
1173  ---
1173  L56:
1173  -live- %r1, %r2, %r3
1176  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r4
1181  goto L62
1184  ---
1184  L57:
1184  -live- %r1, %r2, %r3
1187  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r4
1192  goto L62
1195  ---
1195  L44:
1195  -live- %i0, %r1, %r2, %r3
1198  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.flatiter.FakeArrayImplementation.inst__base> -> %r0
1203  goto L52
1206  ---
1206  L45:
1206  -live- %i0, %r1, %r2, %r3
1209  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.concrete.ConcreteArrayWithBase.inst_orig_base> -> %r0
1214  goto L52
1217  ---
1217  L30:
1217  ref_copy %r0 -> %r1
1220  goto L31
1223  ---
1223  L17:
1223  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
1228  -live- %i0, %i1, %i3, %r0, %r2, %r3
1231  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1237  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
1242  instance_ptr_eq %r2, %r3 -> %i2
1246  -live- %i0, %i1, %i2, %i3, %r0, %r3
1249  goto_if_not %i2, L65
1253  goto L18
1256  ---
1256  L65:
1256  -live- %i0, %i1, %i3, %r0, %r3
1259  goto_if_not %i1, L66
1263  -live- %i0, %i3, %r0, %r3
1266  guard_class %r0 -> %i2
1269  -live- %i0, %i2, %i3, %r0, %r3
1272  goto_if_not_int_eq %i2, $<* struct object_vtable>, L67
1277  goto L29
1280  ---
1280  L67:
1280  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000055d2f17bf6e0> -> %r3
1284  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
1289  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
1294  assert_not_none %r3
1296  -live- %r3
1299  raise %r3
1301  ---
1301  L66:
1301  goto L29
1304  ---
1304  L16:
1304  L68:
1304  inline_call_ir_i <JitCode 'order_converter'>, I[$0], R[%r2] -> %i0
1312  -live- %i0, %r0, %r3
1315  inline_call_r_r <JitCode 'find_shape_and_elems'>, R[%r0, %r3] -> %r2
1322  -live- %i0, %r0, %r2, %r3
1325  getfield_gc_r_pure %r2, FieldDescr<tuple2.item0> -> %r1
1330  getfield_gc_r_pure %r2, FieldDescr<tuple2.item1> -> %r2
1335  -live- %i0, %r0, %r1, %r2, %r3
1338  goto_if_not_ptr_iszero %r3, L69
1342  -live- %i0, %r0, %r1, %r2
1345  guard_class %r0 -> %i2
1348  -live- %i0, %i2, %r0, %r1, %r2
1351  goto_if_not_int_eq %i2, $<* struct object_vtable>, L70
1356  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1359  L71:
1359  -live- %i0, %r1, %r2, %r3
1362  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1368  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r0
1373  -live- %i0, %r0, %r1, %r2, %r3
1376  guard_class %r0 -> %i2
1379  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1384  -live- %i0, %i2, %r0, %r1, %r2, %r3
1387  goto_if_not_int_eq %i2, $18, L72
1392  L73:
1392  -live- %i0, %r1, %r2, %r3
1395  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
1401  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i2
1406  -live- %i0, %i2, %r1, %r2, %r3
1409  goto_if_not_int_lt %i2, $1, L74
1414  L75:
1414  residual_call_r_r $<* fn find_dtype_for_seq>, R[%r2, %r3], <CallDescr(rr) EF=7> -> %r3
1422  L76:
1422  -live- %i0, %r1, %r2, %r3
1425  inline_call_ir_r <JitCode 'from_shape'>, I[%i0, $True], R[%r1, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
1436  -live- %r0, %r1, %r2, %r3
1439  inline_call_r_i <JitCode 'product'>, R[%r1] -> %i2
1445  -live- %i2, %r0, %r2, %r3
1448  goto_if_not_int_eq %i2, $1, L77
1453  getlistitem_gc_r %r2, $0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000055d2bc387830> -> %r2
1461  -live- %r0, %r2, %r3
1464  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1470  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
1475  -live- %r0, %r1, %r2, %r3
1478  guard_class %r1 -> %i2
1481  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_coerce> -> %i2
1486  -live- %i2, %r0, %r1, %r2, %r3
1489  int_guard_value %i2
1491  residual_call_r_r %i2, <IndirectCallTargets>, R[%r1, %r3, %r2], <CallDescr(rrr) EF=7> -> %r3
1500  -live- %r0, %r3
1503  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
1508  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i2
1513  -live- %i2, %r0, %r2, %r3
1516  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1522  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
1527  -live- %i2, %r0, %r1, %r2, %r3
1530  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
1536  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
1541  -live- %i2, %r0, %r1, %r2, %r3, %r4
1544  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
1550  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i0
1555  int_eq %i0, $61 -> %i1
1559  int_eq %i0, $60 -> %i0
1563  int_or %i1, %i0 -> %i0
1567  -live- %i0, %i2, %r0, %r2, %r3, %r4
1570  guard_class %r4 -> %i1
1573  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i1
1578  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1581  int_guard_value %i1
1583  residual_call_ir_v %i1, <IndirectCallTargets>, I[%i2, $0, %i0], R[%r4, %r2, %r3], <CallDescr(rriiri) EF=7>
1595  -live- %r0
1598  ref_return %r0
1600  ---
1600  L77:
1600  residual_call_r_v $<* fn assign>, R[%r0, %r2], <CallDescr(rr) EF=7>
1607  -live- %r0
1610  ref_return %r0
1612  ---
1612  L74:
1612  goto L76
1615  ---
1615  L72:
1615  -live- %i0, %r0, %r1, %r2, %r3
1618  guard_class %r0 -> %i2
1621  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i2
1626  -live- %i0, %i2, %r1, %r2, %r3
1629  goto_if_not_int_eq %i2, $19, L78
1634  goto L73
1637  ---
1637  L78:
1637  goto L76
1640  ---
1640  L70:
1640  -live- %i0, %r0, %r1, %r2
1643  guard_class %r0 -> %i2
1646  -live- %i0, %i2, %r0, %r1, %r2
1649  int_guard_value %i2
1651  -live- %i0, %r0, %r1, %r2
1654  guard_class %r0 -> %i2
1657  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
1662  -live- %i0, %i2, %r0, %r1, %r2
1665  switch %i2, <SwitchDictDescr 0:L79, 1:L80, 2:L81, 3:L82>
1669  unreachable
1670  ---
1670  L79:
1670  -live- %i0, %r0, %r1, %r2
1673  guard_class %r0 -> %i2
1676  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
1681  -live- %i0, %i2, %r0, %r1, %r2
1684  int_guard_value %i2
1686  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r3
1693  -live- %i0, %r1, %r2, %r3
1696  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
1701  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
1706  L83:
1706  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
1713  -live- %i0, %i2, %r1, %r2
1716  goto_if_not %i2, L84
1720  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1723  goto L71
1726  ---
1726  L84:
1726  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
1729  goto L75
1732  ---
1732  L80:
1732  -live- %i0, %r0, %r1, %r2
1735  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r3
1740  -live- %i0, %r1, %r2, %r3
1743  ref_guard_value %r3
1745  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
1750  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
1755  goto L83
1758  ---
1758  L81:
1758  -live- %i0, %r0, %r1, %r2
1761  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r3
1766  goto L83
1769  ---
1769  L82:
1769  -live- %i0, %r0, %r1, %r2
1772  guard_class %r0 -> %i2
1775  getfield_raw_r %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r3
1780  goto L83
1783  ---
1783  L69:
1783  -live- %i0, %r1, %r2, %r3
1786  goto_if_not_ptr_iszero %r3, L85
1790  goto L75
1793  ---
1793  L85:
1793  goto L71
1796  ---
1796  L15:
1796  goto L68
1799  ---
1799  L13:
1799  L86:
1799  residual_call_ir_r $<* fn try_interface_method>, I[%i0], R[%r0], <CallDescr(ri) EF=7> -> %r1
1808  -live- %i0, %i1, %r0, %r1, %r2, %r3
1811  getfield_gc_r_pure %r1, FieldDescr<tuple2.item0> -> %r4
1816  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i2
1821  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
1824  goto_if_not_ptr_iszero %r4, L87
1828  goto L14
1831  ---
1831  L87:
1831  int_copy %i2 -> %i0
1834  ref_copy %r4 -> %r0
1837  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
1842  -live- %i0, %i1, %r0, %r2, %r3
1845  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
1851  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
1856  goto L14
1859  ---
1859  L12:
1859  goto L86
1862  ---
1862  L10:
1862  L88:
1862  inline_call_r_r <JitCode 'try_array_method'>, R[%r0, %r1] -> %r1
1869  -live- %i0, %i1, %r0, %r1, %r2, %r3
1872  goto_if_not_ptr_iszero %r1, L89
1876  -live- %i0, %i1, %r0, %r2, %r3
1879  guard_class %r0 -> %i2
1882  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
1887  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
1892  -live- %i0, %i1, %i2, %r0, %r2, %r3
1895  goto_if_not %i2, L90
1899  goto L11
1902  ---
1902  L90:
1902  -live- %i0, %i1, %r0, %r2, %r3
1905  guard_class %r0 -> %i2
1908  -live- %i0, %i1, %i2, %r0, %r2, %r3
1911  int_guard_value %i2
1913  -live- %i0, %i1, %r0, %r2, %r3
1916  guard_class %r0 -> %i2
1919  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
1924  -live- %i0, %i1, %i2, %r0, %r2, %r3
1927  switch %i2, <SwitchDictDescr 0:L91, 1:L92, 2:L93, 3:L94>
1931  unreachable
1932  ---
1932  L91:
1932  -live- %i0, %i1, %r0, %r2, %r3
1935  guard_class %r0 -> %i2
1938  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
1943  -live- %i0, %i1, %i2, %r0, %r2, %r3
1946  int_guard_value %i2
1948  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
1955  -live- %i0, %i1, %r0, %r1, %r2, %r3
1958  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
1963  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
1968  L95:
1968  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
1975  -live- %i0, %i1, %i2, %r0, %r2, %r3
1978  goto_if_not %i2, L96
1982  goto L11
1985  ---
1985  L96:
1985  -live- %i0, %i1, %r0, %r2, %r3
1988  guard_class %r0 -> %i2
1991  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
1996  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
2001  -live- %i0, %i1, %i2, %r0, %r2, %r3
2004  goto_if_not %i2, L97
2008  goto L11
2011  ---
2011  L97:
2011  -live- %i0, %i1, %r0, %r2, %r3
2014  guard_class %r0 -> %i2
2017  -live- %i0, %i1, %i2, %r0, %r2, %r3
2020  int_guard_value %i2
2022  -live- %i0, %i1, %r0, %r2, %r3
2025  guard_class %r0 -> %i2
2028  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i2
2033  -live- %i0, %i1, %i2, %r0, %r2, %r3
2036  switch %i2, <SwitchDictDescr 0:L98, 1:L99, 2:L100, 3:L101>
2040  unreachable
2041  ---
2041  L98:
2041  -live- %i0, %i1, %r0, %r2, %r3
2044  guard_class %r0 -> %i2
2047  getfield_raw_i %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i2
2052  -live- %i0, %i1, %i2, %r0, %r2, %r3
2055  int_guard_value %i2
2057  residual_call_r_r %i2, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
2064  -live- %i0, %i1, %r0, %r1, %r2, %r3
2067  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
2072  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
2077  L102:
2077  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i2
2084  -live- %i0, %i1, %i2, %r0, %r2, %r3
2087  goto_if_not %i2, L103
2091  goto L11
2094  ---
2094  L103:
2094  -live- %i0, %i1, %r0, %r2, %r3
2097  goto_if_not_ptr_nonzero %r0, L104
2101  ref_copy %r0 -> %r1
2104  -live- %i0, %i1, %r0, %r1, %r2, %r3
2107  guard_class %r1 -> %i2
2110  getfield_raw_i %i2, FieldDescr<object_vtable.subclassrange_min> -> %i2
2115  int_between $TotalOrderSymbolic('compute_fn'), %i2, $TotalOrderSymbolic('compute_fn') -> %i2
2120  -live- %i0, %i1, %i2, %r0, %r2, %r3
2123  goto_if_not %i2, L105
2127  goto L11
2130  ---
2130  L105:
2130  L106:
2130  residual_call_r_r $<* fn _array_from_buffer_3118>, R[%r0, %r3], <CallDescr(rr) EF=7> -> %r0
2138  -live- %i0, %i1, %r0, %r2, %r3
2141  goto L11
2144  ---
2144  L104:
2144  goto L106
2147  ---
2147  L99:
2147  -live- %i0, %i1, %r0, %r2, %r3
2150  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r1
2155  -live- %i0, %i1, %r0, %r1, %r2, %r3
2158  ref_guard_value %r1
2160  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
2165  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
2170  goto L102
2173  ---
2173  L100:
2173  -live- %i0, %i1, %r0, %r2, %r3
2176  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r1
2181  goto L102
2184  ---
2184  L101:
2184  -live- %i0, %i1, %r0, %r2, %r3
2187  guard_class %r0 -> %i2
2190  getfield_raw_r %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r1
2195  goto L102
2198  ---
2198  L92:
2198  -live- %i0, %i1, %r0, %r2, %r3
2201  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r1
2206  -live- %i0, %i1, %r0, %r1, %r2, %r3
2209  ref_guard_value %r1
2211  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
2216  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
2221  goto L95
2224  ---
2224  L93:
2224  -live- %i0, %i1, %r0, %r2, %r3
2227  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r1
2232  goto L95
2235  ---
2235  L94:
2235  -live- %i0, %i1, %r0, %r2, %r3
2238  guard_class %r0 -> %i2
2241  getfield_raw_r %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r1
2246  goto L95
2249  ---
2249  L89:
2249  ref_copy %r1 -> %r0
2252  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
2257  -live- %i1, %r0, %r2, %r3
2260  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
2266  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
2271  int_copy $False -> %i0
2274  goto L11
2277  ---
2277  L9:
2277  goto L88
2280  ---
2280  L4:
2280  -live- %i0, %i1, %r0, %r1, %r2
2283  getfield_gc_r %r0, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r3
2288  -live- %i0, %i1, %r0, %r1, %r2, %r3
2291  ref_guard_value %r3
2293  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r3
2298  getfield_gc_r_pure %r3, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r3
2303  goto L7
2306  ---
2306  L5:
2306  -live- %i0, %i1, %r0, %r1, %r2
2309  getfield_gc_r %r0, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r3
2314  goto L7
2317  ---
2317  L6:
2317  -live- %i0, %i1, %r0, %r1, %r2
2320  guard_class %r0 -> %i2
2323  getfield_raw_r %i2, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r3
2328  goto L7
