   0  -live- %r0
   0  guard_class %r0 -> %i0
   3  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.base.W_NumpyObject_vtable.cls_get_dtype> -> %i0
   8  -live- %i0, %r0
   8  switch %i0, <SwitchDictDescr 1:L1, 2:L2, 3:L3>
  12  unreachable
  13  ---
  13  L1:
  13  -live- %r0
  13  ref_copy %r0 -> %r1
  16  -live- %r0, %r1
  16  guard_class %r0 -> %i0
  19  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls__get_dtype> -> %i0
  24  -live- %i0, %r1
  24  int_guard_value %i0
  26  residual_call_r_r %i0, <IndirectCallTargets>, R[], <CallDescr() EF=2> -> %r2
  32  -live- %r1, %r2
  32  L4:
  32  new_array $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x00000100ab63da60> -> %r0
  37  inline_call_ir_r <JitCode 'from_shape'>, I[$0, $True], R[%r0, %r2, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r0
  48  -live- %r0, %r1
  48  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
  53  getfield_gc_i_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_start> -> %i0
  58  -live- %i0, %r0, %r1, %r2
  58  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  64  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
  69  -live- %i0, %r0, %r1, %r2, %r3
  69  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  75  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r4
  80  -live- %i0, %r0, %r1, %r2, %r3, %r4
  80  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_byteorder>
  86  getfield_gc_i_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_byteorder> -> %i1
  91  int_eq %i1, $61 -> %i2
  95  int_eq %i1, $62 -> %i1
  99  int_or %i2, %i1 -> %i1
 103  -live- %i0, %i1, %r0, %r1, %r2, %r4
 103  guard_class %r4 -> %i2
 106  getfield_raw_i %i2, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_store> -> %i2
 111  -live- %i0, %i1, %i2, %r0, %r1, %r2, %r4
 111  int_guard_value %i2
 113  residual_call_ir_v %i2, <IndirectCallTargets>, I[%i0, $0, %i1], R[%r4, %r2, %r1], <CallDescr(rriiri) EF=7>
 125  -live- %r0
 125  ref_return %r0
 127  ---
 127  L2:
 127  -live- %r0
 127  ref_copy %r0 -> %r1
 130  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.boxes.W_FlexibleBox.inst_dtype> -> %r2
 135  goto L4
 138  ---
 138  L3:
 138  -live- %r0
 138  ref_copy %r0 -> %r1
 141  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.boxes.W_UnicodeBox.inst__value> -> %r0
 146  unicodelen %r0 -> %i0
 149  inline_call_ir_r <JitCode 'new_unicode_dtype'>, I[%i0], R[] -> %r2
 156  -live- %r1, %r2
 156  goto L4
