   0  -live- %r0, %r1, %r2, %r3
   3  guard_class %r1 -> %i0
   6  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.base.W_NumpyObject_vtable.cls_get_dtype> -> %i0
  11  -live- %i0, %r0, %r1, %r2, %r3
  14  switch %i0, <SwitchDictDescr 1:L1, 2:L2, 3:L3>
  18  unreachable
  19  ---
  19  L1:
  19  -live- %r0, %r1, %r2, %r3
  22  ref_copy %r1 -> %r4
  25  ref_copy %r1 -> %r5
  28  -live- %r0, %r1, %r2, %r3, %r4, %r5
  31  guard_class %r1 -> %i0
  34  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls__get_dtype> -> %i0
  39  -live- %i0, %r0, %r2, %r3, %r4, %r5
  42  int_guard_value %i0
  44  residual_call_r_r %i0, <IndirectCallTargets>, R[], <CallDescr() EF=2> -> %r1
  50  L4:
  50  -live- %r0, %r1, %r2, %r3, %r4, %r5
  53  guard_class %r2 -> %i0
  56  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.base.W_NumpyObject_vtable.cls_get_dtype> -> %i0
  61  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5
  64  switch %i0, <SwitchDictDescr 1:L5, 2:L6, 3:L7>
  68  unreachable
  69  ---
  69  L5:
  69  -live- %r0, %r1, %r2, %r3, %r4, %r5
  72  ref_copy %r2 -> %r6
  75  ref_copy %r2 -> %r7
  78  -live- %r0, %r1, %r2, %r3, %r4, %r5, %r6, %r7
  81  guard_class %r2 -> %i0
  84  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls__get_dtype> -> %i0
  89  -live- %i0, %r0, %r1, %r3, %r4, %r5, %r6, %r7
  92  int_guard_value %i0
  94  residual_call_r_r %i0, <IndirectCallTargets>, R[], <CallDescr() EF=2> -> %r8
 100  L8:
 100  -live- %r0, %r1, %r3, %r4, %r5, %r6, %r7, %r8
 103  inline_call_r_r <JitCode 'W_Ufunc2.find_specialization'>, R[%r0, %r1, %r8, $<* struct pypy.module.micronumpy.base.W_NDimArray>, %r3, $<* struct pypy.module.micronumpy.base.W_NDimArray>, $<* struct pypy.module.micronumpy.base.W_NDimArray>] -> %r1
 115  -live- %r0, %r1, %r4, %r5, %r6, %r7
 118  getfield_gc_r_pure %r1, FieldDescr<tuple3.item0> -> %r1
 123  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.ufuncs.W_Ufunc2.inst_func> -> %i0
 128  -live- %i0, %r1, %r4, %r5, %r6, %r7
 131  guard_class %r5 -> %i1
 134  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i1
 139  -live- %i0, %i1, %r1, %r4, %r6, %r7
 142  int_guard_value %i1
 144  residual_call_r_r %i1, <IndirectCallTargets>, R[%r4, %r1], <CallDescr(rr) EF=7> -> %r0
 152  -live- %i0, %r0, %r1, %r6, %r7
 155  guard_class %r6 -> %i1
 158  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls_convert_to> -> %i1
 163  -live- %i0, %i1, %r0, %r1, %r7
 166  int_guard_value %i1
 168  residual_call_r_r %i1, <IndirectCallTargets>, R[%r7, %r1], <CallDescr(rr) EF=7> -> %r3
 176  -live- %i0, %r0, %r1, %r3
 179  int_guard_value %i0
 181  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1, %r0, %r3], <CallDescr(rrr) EF=7> -> %r0
 190  -live- %r0
 193  goto_if_not_ptr_nonzero %r0, L9
 197  ref_copy %r0 -> %r1
 200  -live- %r0, %r1
 203  guard_class %r1 -> %i0
 206  -live- %i0, %r0
 209  goto_if_not_int_eq %i0, $<* struct object_vtable>, L10
 214  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.boxes.W_ObjectBox.inst_w_obj> -> %r0
 219  ref_return %r0
 221  ---
 221  L10:
 221  L11:
 221  ref_return %r0
 223  ---
 223  L9:
 223  goto L11
 226  ---
 226  L6:
 226  -live- %r0, %r1, %r2, %r3, %r4, %r5
 229  ref_copy %r2 -> %r6
 232  ref_copy %r2 -> %r7
 235  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.boxes.W_FlexibleBox.inst_dtype> -> %r8
 240  goto L8
 243  ---
 243  L7:
 243  -live- %r0, %r1, %r2, %r3, %r4, %r5
 246  ref_copy %r2 -> %r6
 249  ref_copy %r2 -> %r7
 252  getfield_gc_r %r2, FieldDescr<pypy.module.micronumpy.boxes.W_UnicodeBox.inst__value> -> %r2
 257  strlen %r2 -> %i0
 260  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab03fe8250> -> %r2
 264  int_mul %i0, $4 -> %i0
 268  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab1b0e6170> -> %r8
 272  inline_call_ir_v <JitCode '__init__'>, I[$'=', %i0], R[%r8, %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct list>, $<* struct dicttable>, $<* array [  ]>, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>]
 286  -live- %r0, %r1, %r3, %r4, %r5, %r6, %r7, %r8
 289  goto L8
 292  ---
 292  L2:
 292  -live- %r0, %r1, %r2, %r3
 295  ref_copy %r1 -> %r4
 298  ref_copy %r1 -> %r5
 301  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.boxes.W_FlexibleBox.inst_dtype> -> %r1
 306  goto L4
 309  ---
 309  L3:
 309  -live- %r0, %r1, %r2, %r3
 312  ref_copy %r1 -> %r4
 315  ref_copy %r1 -> %r5
 318  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.boxes.W_UnicodeBox.inst__value> -> %r1
 323  strlen %r1 -> %i0
 326  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab03fe8250> -> %r6
 330  int_mul %i0, $4 -> %i0
 334  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000aaab1b0e6170> -> %r1
 338  inline_call_ir_v <JitCode '__init__'>, I[$'=', %i0], R[%r1, %r6, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct list>, $<* struct dicttable>, $<* array [  ]>, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>]
 352  -live- %r0, %r1, %r2, %r3, %r4, %r5
 355  goto L4
