   0  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.ufuncs.W_Ufunc2.inst_simple_binary> -> %i0
   5  -live- %i0, %r0, %r1, %r2, %r3, %r4, %r5, %r6
   5  goto_if_not %i0, L1
   9  -live- %r0, %r1, %r2, %r3, %r4, %r5, %r6
   9  goto_if_not_ptr_iszero %r3, L2
  13  -live- %r0, %r1, %r2, %r4, %r5, %r6
  13  record_quasiimmut_field %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  19  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
  24  -live- %r0, %r1, %r2, %r3, %r4, %r5, %r6
  24  guard_class %r3 -> %i0
  27  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
  32  -live- %i0, %r0, %r1, %r2, %r4, %r5, %r6
  32  goto_if_not_int_eq %i0, $17, L3
  37  ref_copy $<* struct pypy.module.micronumpy.base.W_NDimArray> -> %r3
  40  L4:
  40  inline_call_r_r <JitCode 'W_Ufunc2._find_specialization'>, R[%r0, %r1, %r2, %r3, %r4, %r5, %r6] -> %r4
  52  -live- %r4
  52  ref_return %r4
  54  ---
  54  L3:
  54  -live- %r0, %r1, %r2, %r4, %r5, %r6
  54  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  60  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
  65  -live- %r0, %r1, %r2, %r3, %r4, %r5, %r6
  65  guard_class %r3 -> %i0
  68  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_num> -> %i0
  73  -live- %i0, %r0, %r1, %r2, %r4, %r5, %r6
  73  goto_if_not_int_eq %i0, $17, L5
  78  ref_copy $<* struct pypy.module.micronumpy.base.W_NDimArray> -> %r3
  81  goto L4
  84  ---
  84  L5:
  84  -live- %r0, %r1, %r2, %r5, %r6
  84  goto_if_not_ptr_iszero %r5, L6
  88  L7:
  88  inline_call_r_r <JitCode 'promote_types'>, R[%r1, %r2] -> %r3
  95  -live- %r0, %r3
  95  L8:
  95  getfield_gc_i_pure %r0, FieldDescr<pypy.module.micronumpy.ufuncs.W_Ufunc2.inst_func> -> %i0
 100  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa9324fa98> -> %r4
 104  setfield_gc_r %r4, %r3, FieldDescr<tuple3.item0>
 109  setfield_gc_r %r4, %r3, FieldDescr<tuple3.item1>
 114  setfield_gc_i %r4, %i0, FieldDescr<tuple3.item2>
 119  ref_return %r4
 121  ---
 121  L6:
 121  -live- %r0, %r1, %r2, %r5, %r6
 121  goto_if_not_ptr_iszero %r6, L9
 125  goto L7
 128  ---
 128  L9:
 128  -live- %r0, %r5, %r6
 128  goto_if_not_ptr_nonzero %r5, L10
 132  ref_copy %r5 -> %r3
 135  -live- %r0, %r3, %r5, %r6
 135  guard_class %r3 -> %i0
 138  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 143  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 148  -live- %i0, %r0, %r5, %r6
 148  goto_if_not %i0, L11
 152  L12:
 152  -live- %r0, %r5, %r6
 152  goto_if_not_ptr_nonzero %r6, L13
 156  ref_copy %r6 -> %r3
 159  -live- %r0, %r3, %r5, %r6
 159  guard_class %r3 -> %i0
 162  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 167  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 172  -live- %i0, %r0, %r5, %r6
 172  goto_if_not %i0, L14
 176  L15:
 176  newlist $2, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac51fb168>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %r3
 187  setlistitem_gc_r %r3, $0, %r5, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
 195  setlistitem_gc_r %r3, $1, %r6, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0>
 203  new_array_clear $0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aac88c19f0> -> %r4
 208  inline_call_r_i <JitCode '<lambda>__v333___simple_call__function__'>, R[%r3, %r4] -> %i0
 215  -live- %i0, %r0, %r3, %r4
 215  -live- %i0, %r0, %r3, %r4
 215  goto_if_not %i0, L16
 219  inline_call_r_r <JitCode 'find_result_type__v336___simple_call__function_f'>, R[%r3, %r4] -> %r3
 226  -live- %r0, %r3
 226  goto L8
 229  ---
 229  L16:
 229  residual_call_r_r $<* fn find_result_type_trampoline__v409___simple_call__function_f>, R[%r3, %r4], <CallDescr(rr) EF=7> -> %r3
 237  -live- %r0, %r3
 237  goto L8
 240  ---
 240  L14:
 240  L17:
 240  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r6, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r6
 252  -live- %r0, %r5, %r6
 252  goto L15
 255  ---
 255  L13:
 255  goto L17
 258  ---
 258  L11:
 258  L18:
 258  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r5, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r5
 270  -live- %r0, %r5, %r6
 270  goto L12
 273  ---
 273  L10:
 273  goto L18
 276  ---
 276  L2:
 276  goto L4
 279  ---
 279  L1:
 279  goto L4
