   0  -live- %i0, %r0, %r1
   3  goto_if_not_ptr_iszero %r1, L1
   7  L2:
   7  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
  12  -live- %i0, %r0, %r2
  15  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  21  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
  26  -live- %i0, %r0, %r1, %r2
  29  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  35  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
  40  -live- %i0, %r0, %r1, %r2
  43  guard_class %r1 -> %i1
  46  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i1
  51  -live- %i0, %i1, %r0, %r2
  54  goto_if_not_int_eq %i1, $'b', L3
  59  -live- %i0, %r0, %r2
  62  guard_class %r2 -> %i1
  65  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i1
  70  -live- %i0, %i1, %r0, %r2
  73  switch %i1, <SwitchDictDescr 0:L4, 1:L5>
  77  unreachable
  78  ---
  78  L4:
  78  -live- %i0, %r0, %r2
  81  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
  86  L6:
  86  inline_call_ir_r <JitCode 'from_shape'>, I[$0, $True], R[%r1, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r2
  97  L7:
  97  -live- %i0, %r0, %r2
 100  new_array_clear $1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8> -> %r3
 105  setarrayitem_gc_r %r3, $0, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555ab2974de8>
 111  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 116  -live- %i0, %r0, %r1, %r2, %r3
 119  guard_class %r1 -> %i1
 122  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i1
 127  -live- %i0, %i1, %r0, %r1, %r2, %r3
 130  switch %i1, <SwitchDictDescr 0:L8, 1:L9>
 134  unreachable
 135  ---
 135  L8:
 135  -live- %i0, %r0, %r1, %r2, %r3
 138  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 143  L10:
 143  inline_call_r_r <JitCode 'dtype_agreement'>, R[%r3, %r1, %r2] -> %r2
 151  -live- %i0, %r0, %r2
 154  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 159  -live- %i0, %r0, %r1, %r2
 162  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 168  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 173  -live- %i0, %r0, %r1, %r2
 176  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 182  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
 187  -live- %i0, %r0, %r1, %r2
 190  guard_class %r1 -> %i1
 193  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i1
 198  -live- %i0, %i1, %r0, %r2
 201  goto_if_not_int_eq %i1, $'b', L11
 206  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 211  -live- %i0, %r0, %r1, %r2
 214  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 220  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r1
 225  -live- %i0, %r0, %r1, %r2
 228  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 234  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r1
 239  -live- %i0, %r0, %r1, %r2
 242  guard_class %r1 -> %i1
 245  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i1
 250  -live- %i0, %i1, %r0, %r2
 253  goto_if_not_int_eq %i1, $'b', L12
 258  ref_copy $<* struct pypy.module.micronumpy.descriptor.W_Dtype> -> %r3
 261  L13:
 261  -live- %i0, %r0, %r2, %r3
 264  goto_if_not_int_is_zero %i0, L14
 268  ref_copy %r0 -> %r1
 271  -live- %i0, %r1, %r2, %r3
 274  guard_class %r1 -> %i1
 277  -live- %i0, %i1, %r1, %r2, %r3
 280  int_guard_value %i1
 282  -live- %i0, %r1, %r2, %r3
 285  guard_class %r1 -> %i1
 288  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i1
 293  -live- %i0, %i1, %r1, %r2, %r3
 296  switch %i1, <SwitchDictDescr 0:L15, 1:L16, 2:L17, 3:L18>
 300  unreachable
 301  ---
 301  L15:
 301  -live- %i0, %r1, %r2, %r3
 304  ref_copy %r1 -> %r0
 307  -live- %i0, %r0, %r1, %r2, %r3
 310  guard_class %r1 -> %i1
 313  getfield_raw_i %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls__get_mapdict_map> -> %i1
 318  -live- %i0, %i1, %r0, %r1, %r2, %r3
 321  int_guard_value %i1
 323  residual_call_r_r %i1, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=2> -> %r1
 330  -live- %i0, %r0, %r1, %r2, %r3
 333  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
 338  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
 343  L19:
 343  residual_call_r_r $<* fn W_NDimArray.descr_view>, R[%r2, %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>], <CallDescr(rrr) EF=7> -> %r2
 352  L20:
 352  -live- %i0, %r0, %r2, %r3
 355  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 360  -live- %i0, %r0, %r1, %r2, %r3
 363  guard_class %r1 -> %i1
 366  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i1
 371  -live- %i0, %i1, %r0, %r1, %r2, %r3
 374  switch %i1, <SwitchDictDescr 0:L21, 1:L22>
 378  unreachable
 379  ---
 379  L21:
 379  -live- %i0, %r0, %r1, %r2, %r3
 382  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 387  L23:
 387  inline_call_ir_v <JitCode 'round'>, I[%i0], R[%r0, %r3, %r1, %r2]
 397  -live- %r2
 400  ref_return %r2
 402  ---
 402  L22:
 402  -live- %i0, %r0, %r1, %r2, %r3
 405  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 410  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555aab557d00> -> %i1
 415  -live- %i0, %i1, %r0, %r1, %r2, %r3
 418  int_guard_value %i1
 420  goto L23
 423  ---
 423  L16:
 423  -live- %i0, %r1, %r2, %r3
 426  ref_copy %r1 -> %r0
 429  getfield_gc_r %r1, FieldDescr<pypy.interpreter.typedef.W_ObjectObjectUserDictWeakrefable.inst_map> -> %r1
 434  -live- %i0, %r0, %r1, %r2, %r3
 437  ref_guard_value %r1
 439  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.AbstractAttribute.inst_terminator> -> %r1
 444  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.mapdict.Terminator.inst_w_cls> -> %r1
 449  goto L19
 452  ---
 452  L17:
 452  -live- %i0, %r1, %r2, %r3
 455  ref_copy %r1 -> %r0
 458  getfield_gc_r %r1, FieldDescr<pypy.objspace.std.proxyobject.W_Transparent.inst_w_type> -> %r1
 463  goto L19
 466  ---
 466  L18:
 466  -live- %i0, %r1, %r2, %r3
 469  ref_copy %r1 -> %r0
 472  -live- %i0, %r0, %r1, %r2, %r3
 475  guard_class %r1 -> %i1
 478  getfield_raw_r %i1, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.pbc2internal_memofield_gettypefor_3> -> %r1
 483  goto L19
 486  ---
 486  L14:
 486  goto L20
 489  ---
 489  L12:
 489  L24:
 489  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
 494  -live- %i0, %r0, %r1, %r2
 497  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 503  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 508  goto L13
 511  ---
 511  L11:
 511  goto L24
 514  ---
 514  L9:
 514  -live- %i0, %r0, %r1, %r2, %r3
 517  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 522  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555aab557d00> -> %i1
 527  -live- %i0, %i1, %r0, %r1, %r2, %r3
 530  int_guard_value %i1
 532  goto L10
 535  ---
 535  L5:
 535  -live- %i0, %r0, %r2
 538  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r1
 543  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000555aab557d00> -> %i1
 548  -live- %i0, %i1, %r0, %r1
 551  int_guard_value %i1
 553  goto L6
 556  ---
 556  L3:
 556  ref_copy $<* struct pypy.module.micronumpy.base.W_NDimArray> -> %r2
 559  goto L7
 562  ---
 562  L1:
 562  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i1
 569  -live- %i0, %i1, %r0, %r1
 572  goto_if_not %i1, L25
 576  goto L2
 579  ---
 579  L25:
 579  -live- %i0, %r0, %r1
 582  goto_if_not_ptr_nonzero %r1, L26
 586  ref_copy %r1 -> %r2
 589  -live- %i0, %r0, %r1, %r2
 592  guard_class %r1 -> %i1
 595  getfield_raw_i %i1, FieldDescr<object_vtable.subclassrange_min> -> %i1
 600  int_between $TotalOrderSymbolic('compute_fn'), %i1, $TotalOrderSymbolic('compute_fn') -> %i1
 605  -live- %i0, %i1, %r0, %r2
 608  goto_if_not %i1, L27
 612  goto L7
 615  ---
 615  L27:
 615  L28:
 615  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555ab11f9c90> -> %r1
 619  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 624  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 629  assert_not_none %r1
 631  -live- %r1
 634  raise %r1
 636  ---
 636  L26:
 636  goto L28
