   0  -live- %r0, %r1, %r2
   0  goto_if_not_ptr_nonzero %r0, L1
   4  ref_copy %r0 -> %r3
   7  -live- %r0, %r1, %r2, %r3
   7  guard_class %r3 -> %i0
  10  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  15  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  20  -live- %i0, %r0, %r1, %r2
  20  goto_if_not %i0, L2
  24  L3:
  24  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  29  -live- %r0, %r1, %r2, %r3
  29  guard_class %r3 -> %i0
  32  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  37  -live- %i0, %r0, %r1, %r2, %r3
  37  switch %i0, <SwitchDictDescr 0:L4, 1:L5>
  41  unreachable
  42  ---
  42  L4:
  42  -live- %r0, %r1, %r2, %r3
  42  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
  47  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
  52  -live- %i0, %r0, %r1, %r2, %r3
  52  int_guard_value %i0
  54  L6:
  54  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
  59  -live- %i0, %r0, %r1, %r2
  59  goto_if_not_int_is_zero %i0, L7
  63  -live- %r0, %r1, %r2
  63  goto_if_not_ptr_nonzero %r1, L8
  67  ref_copy %r1 -> %r3
  70  -live- %r0, %r1, %r2, %r3
  70  guard_class %r3 -> %i0
  73  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  78  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  83  -live- %i0, %r0, %r1, %r2
  83  goto_if_not %i0, L9
  87  L10:
  87  residual_call_r_r $<* fn W_NDimArray.descr_dot>, R[%r1, %r0, %r2], <CallDescr(rrr) EF=7> -> %r3
  96  -live- %r3
  96  ref_return %r3
  98  ---
  98  L9:
  98  L11:
  98  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r1
 110  -live- %r0, %r1, %r2
 110  goto L10
 113  ---
 113  L8:
 113  goto L11
 116  ---
 116  L7:
 116  residual_call_r_r $<* fn W_NDimArray.descr_dot>, R[%r0, %r1, %r2], <CallDescr(rrr) EF=7> -> %r3
 125  -live- %r3
 125  ref_return %r3
 127  ---
 127  L5:
 127  -live- %r0, %r1, %r2, %r3
 127  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 132  goto L6
 135  ---
 135  L2:
 135  L12:
 135  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r0
 147  -live- %r0, %r1, %r2
 147  goto L3
 150  ---
 150  L1:
 150  goto L12
