   0  -live- %i0, %r0, %r1
   0  goto_if_not_ptr_iszero %r1, L1
   4  L2:
   4  -live- %i0, %r0
   4  guard_class %r0 -> %i1
   7  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.base.W_NumpyObject_vtable.cls_get_dtype> -> %i1
  12  -live- %i0, %i1, %r0
  12  switch %i1, <SwitchDictDescr 1:L3, 2:L4, 3:L5>
  16  unreachable
  17  ---
  17  L3:
  17  -live- %i0, %r0
  17  ref_copy %r0 -> %r1
  20  -live- %i0, %r0, %r1
  20  guard_class %r0 -> %i1
  23  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls__get_dtype> -> %i1
  28  -live- %i0, %i1, %r1
  28  int_guard_value %i1
  30  residual_call_r_r %i1, <IndirectCallTargets>, R[], <CallDescr() EF=2> -> %r0
  36  -live- %i0, %r0, %r1
  36  L6:
  36  -live- %i0, %r0, %r1
  36  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  42  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r0
  47  -live- %i0, %r0, %r1
  47  guard_class %r0 -> %i1
  50  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_round> -> %i1
  55  -live- %i0, %i1, %r0, %r1
  55  int_guard_value %i1
  57  residual_call_ir_r %i1, <IndirectCallTargets>, I[%i0], R[%r0, %r1], <CallDescr(rri) EF=7> -> %r1
  67  -live- %r1
  67  ref_return %r1
  69  ---
  69  L4:
  69  -live- %i0, %r0
  69  ref_copy %r0 -> %r1
  72  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.boxes.W_FlexibleBox.inst_dtype> -> %r0
  77  goto L6
  80  ---
  80  L5:
  80  -live- %i0, %r0
  80  ref_copy %r0 -> %r1
  83  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.boxes.W_UnicodeBox.inst__value> -> %r0
  88  strlen %r0 -> %i1
  91  inline_call_ir_r <JitCode 'new_unicode_dtype'>, I[%i1], R[] -> %r0
  98  -live- %i0, %r0, %r1
  98  goto L6
 101  ---
 101  L1:
 101  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i1
 108  -live- %i0, %i1, %r0
 108  -live- %i0, %i1, %r0
 108  goto_if_not %i1, L7
 112  goto L2
 115  ---
 115  L7:
 115  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aabbb1b8a0> -> %r1
 119  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 124  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 129  assert_not_none %r1
 131  -live- %r1
 131  guard_class %r1 -> %i1
 134  -live- %r1
 134  raise %r1
