   0  -live- %r0, %r1, %r2, %r3
   3  goto_if_not_ptr_iszero %r3, L1
   7  L2:
   7  inline_call_r_i <JitCode 'searchside_converter'>, R[%r2] -> %i1
  13  -live- %i1, %r0, %r1
  16  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
  21  -live- %i1, %r0, %r1, %r3
  24  guard_class %r3 -> %i0
  27  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  32  -live- %i0, %i1, %r0, %r1, %r3
  35  switch %i0, <SwitchDictDescr 0:L3, 1:L4>
  39  unreachable
  40  ---
  40  L3:
  40  -live- %i1, %r0, %r1, %r3
  43  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
  48  L5:
  48  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
  53  -live- %i0, %i1, %r0, %r1
  56  goto_if_not_int_ne %i0, $1, L6
  61  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a60ed2100> -> %r3
  65  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
  70  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  75  assert_not_none %r3
  77  -live- %r3
  80  raise %r3
  82  ---
  82  L6:
  82  -live- %i1, %r0, %r1
  85  goto_if_not_ptr_nonzero %r1, L7
  89  ref_copy %r1 -> %r3
  92  -live- %i1, %r0, %r1, %r3
  95  guard_class %r3 -> %i0
  98  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 103  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 108  -live- %i0, %i1, %r0, %r1
 111  goto_if_not %i0, L8
 115  L9:
 115  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 120  -live- %i1, %r0, %r1, %r3
 123  guard_class %r3 -> %i0
 126  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 131  -live- %i0, %i1, %r0, %r1, %r3
 134  switch %i0, <SwitchDictDescr 0:L10, 1:L11>
 138  unreachable
 139  ---
 139  L10:
 139  -live- %i1, %r0, %r1, %r3
 142  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 147  L12:
 147  inline_call_ir_r <JitCode 'from_shape'>, I[$0, $True], R[%r3, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r3
 158  -live- %i1, %r0, %r1, %r3
 161  inline_call_r_i <JitCode 'W_NDimArray.get_size'>, R[%r3] -> %i0
 167  -live- %i0, %i1, %r0, %r1, %r3
 170  goto_if_not_int_lt %i0, $1, L13
 175  ref_return %r3
 177  ---
 177  L13:
 177  -live- %i1, %r0, %r1, %r3
 180  goto_if_not_int_is_zero %i1, L14
 184  inline_call_r_v <JitCode 'binsearch'>, R[%r0, %r1, %r3]
 191  L15:
 191  -live- %r3
 194  getfield_gc_r %r3, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 199  -live- %r2, %r3
 202  guard_class %r2 -> %i0
 205  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 210  -live- %i0, %r2, %r3
 213  switch %i0, <SwitchDictDescr 0:L16, 1:L17>
 217  unreachable
 218  ---
 218  L16:
 218  -live- %r2, %r3
 221  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 226  L18:
 226  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 231  -live- %i0, %r3
 234  goto_if_not_int_is_zero %i0, L19
 238  inline_call_r_r <JitCode 'W_NDimArray.get_scalar_value'>, R[%r3] -> %r3
 244  -live- %r3
 247  ref_return %r3
 249  ---
 249  L19:
 249  ref_return %r3
 251  ---
 251  L17:
 251  -live- %r2, %r3
 254  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 259  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 264  -live- %i0, %r2, %r3
 267  int_guard_value %i0
 269  goto L18
 272  ---
 272  L14:
 272  inline_call_r_v <JitCode 'binsearch'>, R[%r0, %r1, %r3]
 279  -live- %r3
 282  goto L15
 285  ---
 285  L11:
 285  -live- %i1, %r0, %r1, %r3
 288  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 293  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 298  -live- %i0, %i1, %r0, %r1, %r3
 301  int_guard_value %i0
 303  goto L12
 306  ---
 306  L8:
 306  L20:
 306  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
 318  -live- %i1, %r0, %r1
 321  goto L9
 324  ---
 324  L7:
 324  goto L20
 327  ---
 327  L4:
 327  -live- %i1, %r0, %r1, %r3
 330  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 335  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
 340  -live- %i0, %i1, %r0, %r1, %r3
 343  int_guard_value %i0
 345  goto L5
 348  ---
 348  L1:
 348  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r3] -> %i0
 355  -live- %i0, %r0, %r1, %r2
 358  goto_if_not %i0, L21
 362  goto L2
 365  ---
 365  L21:
 365  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a60ed2100> -> %r3
 369  setfield_gc_r %r3, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 374  setfield_gc_r %r3, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 379  assert_not_none %r3
 381  -live- %r3
 384  raise %r3
