   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
   5  -live- %r0
   5  guard_class %r0 -> %i0
   8  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
  13  -live- %i0, %r0
  13  switch %i0, <SwitchDictDescr 0:L1, 1:L2>
  17  unreachable
  18  ---
  18  L1:
  18  -live- %r0
  18  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r0
  23  L3:
  23  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaada36288> -> %i0
  28  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac55491a0> -> %r0
  32  setfield_gc_i %r0, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
  37  ref_return %r0
  39  ---
  39  L2:
  39  -live- %r0
  39  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r0
  44  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaada36288> -> %i0
  49  -live- %i0, %r0
  49  int_guard_value %i0
  51  goto L3
