   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
   5  -live- %r0, %r1, %r2, %r3
   8  guard_class %r2 -> %i0
  11  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  16  -live- %i0, %r0, %r1, %r2, %r3
  19  switch %i0, <SwitchDictDescr 0:L1, 1:L2>
  23  unreachable
  24  ---
  24  L1:
  24  -live- %r0, %r1, %r2, %r3
  27  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
  32  L3:
  32  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
  37  -live- %i0, %r0, %r1, %r3
  40  goto_if_not_int_is_zero %i0, L4
  44  void_return
  45  ---
  45  L4:
  45  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
  50  -live- %r1, %r2, %r3
  53  guard_class %r2 -> %i0
  56  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_sort> -> %i0
  61  -live- %i0, %r1, %r2, %r3
  64  switch %i0, <SwitchDictDescr 0:L5, 1:L6>
  68  unreachable
  69  ---
  69  L5:
  69  -live- %r1, %r2, %r3
  72  inline_call_r_v <JitCode 'sort_array'>, R[%r2, %r1, %r3]
  79  -live-
  82  void_return
  83  ---
  83  L6:
  83  -live- %r1, %r2, %r3
  86  inline_call_r_v <JitCode 'sort_array'>, R[%r2, %r1, %r3]
  93  -live-
  96  void_return
  97  ---
  97  L2:
  97  -live- %r0, %r1, %r2, %r3
 100  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 105  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 110  -live- %i0, %r0, %r1, %r2, %r3
 113  int_guard_value %i0
 115  goto L3
