   0  -live- %r0, %r1
   3  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
   9  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
  14  -live- %r0, %r1, %r2
  17  guard_class %r2 -> %i0
  20  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
  25  getarrayitem_gc_r_pure $<* array [ <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, (...), <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden>, <* GCREF hidden> ]>, %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a58f50a30> -> %r2
  31  -live- %r0, %r1, %r2
  34  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  40  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
  45  -live- %r0, %r1, %r2, %r3
  48  guard_class %r3 -> %i0
  51  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
  56  getarrayitem_gc_i_pure %r2, %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000563a77308b10> -> %i0
  62  -live- %i0, %r0, %r1
  65  goto_if_not_int_ne %i0, $-1, L1
  70  residual_call_ir_r $<* fn num2dtype>, I[%i0], R[], <CallDescr(i) EF=4> -> %r1
  78  -live- %r1
  81  ref_return %r1
  83  ---
  83  L1:
  83  -live- %r0, %r1
  86  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  92  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
  97  -live- %r0, %r1, %r2
 100  guard_class %r2 -> %i0
 103  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
 108  -live- %i0, %r0, %r1
 111  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 117  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 122  -live- %i0, %r0, %r1, %r2
 125  guard_class %r2 -> %i1
 128  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i1
 133  -live- %i0, %i1, %r0, %r1
 136  goto_if_not_int_gt %i0, %i1, L2
 141  ref_push %r1
 143  ref_copy %r0 -> %r1
 146  ref_pop -> %r0
 148  L3:
 148  -live- %r0, %r1
 151  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 157  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 162  -live- %r0, %r1, %r2
 165  guard_class %r2 -> %i0
 168  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
 173  -live- %i0, %r0, %r1
 176  switch %i0, <SwitchDictDescr 18:L4, 19:L5>
 180  ref_copy %r1 -> %r2
 183  ref_copy %r0 -> %r1
 186  inline_call_r_i <JitCode 'can_cast_type'>, R[%r1, %r2, $<* struct rpy_string>] -> %i0
 194  -live- %i0, %r1
 197  goto_if_not %i0, L6
 201  ref_return %r1
 203  ---
 203  L6:
 203  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a60ed2100> -> %r2
 207  setfield_gc_r %r2, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 212  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 217  assert_not_none %r2
 219  -live- %r2
 222  raise %r2
 224  ---
 224  L4:
 224  -live- %r0, %r1
 227  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 233  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 238  -live- %r0, %r1, %r2
 241  guard_class %r2 -> %i0
 244  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i1
 249  -live- %i0, %i1, %r0, %r1
 252  goto_if_not_int_eq %i1, $18, L7
 257  -live- %r0, %r1
 260  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 266  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i0
 271  -live- %i0, %r0, %r1
 274  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 280  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 285  -live- %i0, %i1, %r0, %r1
 288  goto_if_not_int_gt %i0, %i1, L8
 293  ref_return %r0
 295  ---
 295  L8:
 295  ref_return %r1
 297  ---
 297  L7:
 297  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_strlen> -> %i0
 302  -live- %i0, %r1
 305  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 311  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 316  -live- %i0, %i1, %r1
 319  goto_if_not_int_gt %i0, %i1, L9
 324  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a7102e608> -> %r2
 328  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a7c04eb10> -> %r1
 332  inline_call_ir_v <JitCode '__init__'>, I[$'=', %i0], R[%r1, %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct list>, $<* struct dicttable>, $<* array [  ]>, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>]
 346  -live- %r1
 349  ref_return %r1
 351  ---
 351  L9:
 351  ref_return %r1
 353  ---
 353  L5:
 353  -live- %r0, %r1
 356  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 362  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 367  -live- %r0, %r1, %r2
 370  guard_class %r2 -> %i0
 373  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i1
 378  -live- %i0, %i1, %r0, %r1
 381  switch %i1, <SwitchDictDescr 18:L10, 19:L11>
 385  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_strlen> -> %i0
 390  int_mul %i0, $4 -> %i1
 394  -live- %i0, %i1, %r1
 397  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 403  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i2
 408  -live- %i0, %i1, %i2, %r1
 411  goto_if_not_int_gt %i1, %i2, L12
 416  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a71062c98> -> %r2
 420  int_mul %i0, $4 -> %i0
 424  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a7c04eb10> -> %r1
 428  inline_call_ir_v <JitCode '__init__'>, I[$'=', %i0], R[%r1, %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct list>, $<* struct dicttable>, $<* array [  ]>, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>]
 442  -live- %r1
 445  ref_return %r1
 447  ---
 447  L12:
 447  ref_return %r1
 449  ---
 449  L10:
 449  -live- %r0, %r1
 452  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 458  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i0
 463  -live- %i0, %r0, %r1
 466  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 472  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 477  int_mul %i1, $4 -> %i2
 481  -live- %i0, %i1, %i2, %r1
 484  goto_if_not_int_ge %i0, %i2, L13
 489  ref_return %r1
 491  ---
 491  L13:
 491  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a71062c98> -> %r2
 495  int_mul %i1, $4 -> %i0
 499  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000563a7c04eb10> -> %r1
 503  inline_call_ir_v <JitCode '__init__'>, I[$'=', %i0], R[%r1, %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct list>, $<* struct dicttable>, $<* array [  ]>, $<* struct pypy.module.micronumpy.descriptor.W_Dtype>]
 517  -live- %r1
 520  ref_return %r1
 522  ---
 522  L11:
 522  -live- %r0, %r1
 525  record_quasiimmut_field %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 531  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i0
 536  -live- %i0, %r0, %r1
 539  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_elsize>
 545  getfield_gc_i_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_elsize> -> %i1
 550  -live- %i0, %i1, %r0, %r1
 553  goto_if_not_int_gt %i0, %i1, L14
 558  ref_return %r0
 560  ---
 560  L14:
 560  ref_return %r1
 562  ---
 562  L2:
 562  goto L3
