   0  -live- %r0
   0  goto_if_not_ptr_nonzero %r0, L1
   4  ref_copy %r0 -> %r1
   7  -live- %r0, %r1
   7  guard_class %r1 -> %i0
  10  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  15  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  20  -live- %i0, %r0
  20  goto_if_not %i0, L2
  24  -live- %r0
  24  guard_class %r0 -> %i0
  27  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.base.W_NumpyObject_vtable.cls_get_dtype> -> %i0
  32  -live- %i0, %r0
  32  switch %i0, <SwitchDictDescr 0:L3, 2:L4, 3:L5>
  36  unreachable
  37  ---
  37  L3:
  37  -live- %r0
  37  -live- %r0
  37  guard_class %r0 -> %i0
  40  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.boxes.W_GenericBox_vtable.cls__get_dtype> -> %i0
  45  -live- %i0
  45  int_guard_value %i0
  47  residual_call_r_r %i0, <IndirectCallTargets>, R[], <CallDescr() EF=2> -> %r1
  53  -live- %r1
  53  ref_return %r1
  55  ---
  55  L4:
  55  -live- %r0
  55  getfield_gc_r_pure %r0, FieldDescr<pypy.module.micronumpy.boxes.W_FlexibleBox.inst_dtype> -> %r1
  60  ref_return %r1
  62  ---
  62  L5:
  62  -live- %r0
  62  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.boxes.W_UnicodeBox.inst__value> -> %r1
  67  unicodelen %r1 -> %i0
  70  inline_call_ir_r <JitCode 'new_unicode_dtype'>, I[%i0], R[] -> %r1
  77  -live- %r1
  77  ref_return %r1
  79  ---
  79  L2:
  79  L6:
  79  -live- %r0
  79  guard_class %r0 -> %i0
  82  -live- %i0, %r0
  82  goto_if_not_int_eq %i0, $<* struct object_vtable>, L7
  87  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
  89  ---
  89  L7:
  89  -live- %r0
  89  guard_class %r0 -> %i0
  92  -live- %i0, %r0
  92  int_guard_value %i0
  94  -live- %r0
  94  guard_class %r0 -> %i0
  97  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 102  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 107  -live- %i0, %r0
 107  int_guard_value %i0
 109  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 116  -live- %r0, %r1
 116  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 123  -live- %i0, %r0
 123  -live- %i0, %r0
 123  goto_if_not %i0, L8
 127  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 129  ---
 129  L8:
 129  -live- %r0
 129  guard_class %r0 -> %i0
 132  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 137  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 142  -live- %i0, %r0
 142  goto_if_not %i0, L9
 146  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 148  ---
 148  L9:
 148  -live- %r0
 148  guard_class %r0 -> %i0
 151  -live- %i0, %r0
 151  int_guard_value %i0
 153  -live- %r0
 153  guard_class %r0 -> %i0
 156  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 161  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 166  -live- %i0, %r0
 166  int_guard_value %i0
 168  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 175  -live- %r0, %r1
 175  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 182  -live- %i0, %r0
 182  -live- %i0, %r0
 182  goto_if_not %i0, L10
 186  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 188  ---
 188  L10:
 188  -live- %r0
 188  guard_class %r0 -> %i0
 191  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 196  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 201  -live- %i0, %r0
 201  goto_if_not %i0, L11
 205  L12:
 205  inline_call_ir_i <JitCode 'int_w__pypy_interpreter_baseobjspace_W_Root'>, I[$True], R[%r0] -> %i0
 213  -live- %r0
 213  catch_exception L13
 216  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 218  ---
 218  L13:
 218  goto_if_exception_mismatch $<* struct object_vtable>, L14
 222  last_exception -> %i1
 224  last_exc_value -> %r2
 226  getfield_gc_r %r2, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type> -> %r1
 231  inline_call_r_i <JitCode 'exception_match'>, R[%r1, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %i0
 238  -live- %i0, %r0, %r2
 238  -live- %i0, %r0, %r2
 238  goto_if_not %i0, L15
 242  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff5768f2d0> -> %r1
 246  setfield_gc_i %r1, $0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 251  inline_call_r_r <JitCode 'comparison_le_impl'>, R[%r0, %r1] -> %r0
 258  -live- %r0
 258  -live- %r0
 258  goto_if_not_ptr_nonzero %r0, L16
 262  ref_copy %r0 -> %r1
 265  -live- %r0, %r1
 265  guard_class %r1 -> %i0
 268  -live- %i0, %r0
 268  goto_if_not_int_eq %i0, $<* struct object_vtable>, L17
 273  getfield_gc_i_pure %r0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
 278  int_is_true %i0 -> %i0
 281  L18:
 281  -live- %i0
 281  goto_if_not %i0, L19
 285  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 287  ---
 287  L19:
 287  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 289  ---
 289  L17:
 289  L20:
 289  inline_call_r_i <JitCode 'is_true'>, R[%r0] -> %i0
 295  -live- %i0
 295  goto L18
 298  ---
 298  L16:
 298  goto L20
 301  ---
 301  L15:
 301  -live- %r2
 301  raise %r2
 303  ---
 303  L14:
 303  reraise
 304  ---
 304  L11:
 304  -live- %r0
 304  guard_class %r0 -> %i0
 307  -live- %i0, %r0
 307  int_guard_value %i0
 309  -live- %r0
 309  guard_class %r0 -> %i0
 312  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 317  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 322  -live- %i0, %r0
 322  int_guard_value %i0
 324  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 331  -live- %r0, %r1
 331  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 338  -live- %i0, %r0
 338  -live- %i0, %r0
 338  goto_if_not %i0, L21
 342  goto L12
 345  ---
 345  L21:
 345  -live- %r0
 345  guard_class %r0 -> %i0
 348  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 353  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 358  -live- %i0, %r0
 358  goto_if_not %i0, L22
 362  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 364  ---
 364  L22:
 364  -live- %r0
 364  guard_class %r0 -> %i0
 367  -live- %i0, %r0
 367  int_guard_value %i0
 369  -live- %r0
 369  guard_class %r0 -> %i0
 372  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 377  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 382  -live- %i0, %r0
 382  int_guard_value %i0
 384  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 391  -live- %r0, %r1
 391  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 398  -live- %i0, %r0
 398  -live- %i0, %r0
 398  goto_if_not %i0, L23
 402  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 404  ---
 404  L23:
 404  -live- %r0
 404  guard_class %r0 -> %i0
 407  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 412  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 417  -live- %i0, %r0
 417  goto_if_not %i0, L24
 421  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 423  ---
 423  L24:
 423  -live- %r0
 423  guard_class %r0 -> %i0
 426  -live- %i0, %r0
 426  int_guard_value %i0
 428  -live- %r0
 428  guard_class %r0 -> %i0
 431  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 436  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 441  -live- %i0, %r0
 441  int_guard_value %i0
 443  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 450  -live- %r0, %r1
 450  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 457  -live- %i0, %r0
 457  -live- %i0, %r0
 457  goto_if_not %i0, L25
 461  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 463  ---
 463  L25:
 463  -live- %r0
 463  guard_class %r0 -> %i0
 466  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 471  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 476  -live- %i0, %r0
 476  goto_if_not %i0, L26
 480  L27:
 480  inline_call_r_r <JitCode 'len'>, R[%r0] -> %r1
 486  -live- %r1
 486  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
 491  new_array_clear $2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910> -> %r0
 496  setarrayitem_gc_r %r0, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 502  residual_call_ir_r $<* fn ll_int2dec__Signed>, I[%i0], R[], <CallDescr(i) EF=3> -> %r1
 510  -live- %r0, %r1
 510  setarrayitem_gc_r %r0, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 516  ref_isvirtual %r0 -> %i0
 519  -live- %i0, %r0
 519  goto_if_not %i0, L28
 523  L29:
 523  inline_call_ir_r <JitCode 'll_join_strs__v1299___simple_call__function_'>, I[$2], R[%r0] -> %r1
 531  -live- %r1
 531  L30:
 531  inline_call_r_r <JitCode 'variable_dtype'>, R[%r1] -> %r1
 537  -live- %r1
 537  ref_return %r1
 539  ---
 539  L28:
 539  int_isconstant $2 -> %i0
 542  -live- %i0, %r0
 542  goto_if_not %i0, L31
 546  goto L29
 549  ---
 549  L31:
 549  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1304___simple_call__function_>, I[$2], R[%r0], <CallDescr(ir) EF=5> -> %r1
 558  -live- %r1
 558  goto L30
 561  ---
 561  L26:
 561  -live- %r0
 561  guard_class %r0 -> %i0
 564  -live- %i0, %r0
 564  int_guard_value %i0
 566  -live- %r0
 566  guard_class %r0 -> %i0
 569  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 574  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 579  -live- %i0, %r0
 579  int_guard_value %i0
 581  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 588  -live- %r0, %r1
 588  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 595  -live- %i0, %r0
 595  -live- %i0, %r0
 595  goto_if_not %i0, L32
 599  goto L27
 602  ---
 602  L32:
 602  -live- %r0
 602  guard_class %r0 -> %i0
 605  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 610  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 615  -live- %i0, %r0
 615  goto_if_not %i0, L33
 619  L34:
 619  inline_call_r_r <JitCode 'len'>, R[%r0] -> %r1
 625  -live- %r1
 625  getfield_gc_i_pure %r1, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval> -> %i0
 630  inline_call_ir_r <JitCode 'new_unicode_dtype'>, I[%i0], R[] -> %r1
 637  -live- %r1
 637  ref_return %r1
 639  ---
 639  L33:
 639  -live- %r0
 639  guard_class %r0 -> %i0
 642  -live- %i0, %r0
 642  int_guard_value %i0
 644  -live- %r0
 644  guard_class %r0 -> %i0
 647  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 652  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 657  -live- %i0, %r0
 657  int_guard_value %i0
 659  residual_call_r_r %i0, <IndirectCallTargets>, R[%r0], <CallDescr(r) EF=2> -> %r1
 666  -live- %r0, %r1
 666  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r1, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 673  -live- %i0, %r0
 673  -live- %i0, %r0
 673  goto_if_not %i0, L35
 677  goto L34
 680  ---
 680  L35:
 680  ref_return $<* struct pypy.module.micronumpy.descriptor.W_Dtype>
 682  ---
 682  L1:
 682  goto L6
