   0  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
   5  -live- %r0, %r1, %r2, %r3
   5  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
  11  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
  16  -live- %r0, %r1, %r2, %r3
  16  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_fields>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_fields>
  22  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_fields> -> %r3
  27  -live- %r0, %r1, %r2, %r3
  27  goto_if_not_ptr_nonzero %r3, L1
  31  getfield_gc_i %r3, FieldDescr<dicttable.num_live_items> -> %i0
  36  -live- %i0, %r0, %r1, %r2
  36  goto_if_not_int_is_true %i0, L2
  40  -live- %r0, %r1, %r2
  40  guard_class %r1 -> %i0
  43  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  48  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
  53  -live- %i0, %r0, %r1, %r2
  53  goto_if_not %i0, L3
  57  L4:
  57  -live- %r0, %r1, %r2
  57  guard_class %r1 -> %i0
  60  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
  65  -live- %i0, %r0, %r1, %r2
  65  switch %i0, <SwitchDictDescr 0:L5, 1:L6, 2:L7>
  69  unreachable
  70  ---
  70  L5:
  70  -live- %r0, %r1, %r2
  70  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r3
  76  -live- %r0, %r2, %r3
  76  L8:
  76  inline_call_r_r <JitCode 'W_NDimArray.getfield'>, R[%r0, %r3] -> %r0
  83  -live- %r0, %r2
  83  -live- %r0, %r2
  83  goto_if_not_ptr_nonzero %r2, L9
  87  ref_copy %r2 -> %r3
  90  -live- %r0, %r2, %r3
  90  guard_class %r3 -> %i0
  93  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
  98  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 103  -live- %i0, %r0, %r2
 103  goto_if_not %i0, L10
 107  L11:
 107  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 112  inline_call_r_v <JitCode 'BaseConcreteArray.setslice'>, R[%r3, %r2]
 118  -live-
 118  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 120  ---
 120  L10:
 120  L12:
 120  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r2
 132  -live- %r0, %r2
 132  goto L11
 135  ---
 135  L9:
 135  goto L12
 138  ---
 138  L6:
 138  -live- %r0, %r1, %r2
 138  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r3
 143  goto L8
 146  ---
 146  L7:
 146  -live- %r1
 146  inline_call_r_r <JitCode 'oefmt__expected__s__got__T_object_star_2'>, R[$<* struct pypy.objspace.std.typeobject.W_TypeObject>, $<* struct rpy_string>, $<* struct rpy_string>, %r1] -> %r3
 155  -live- %r3
 155  assert_not_none %r3
 157  -live- %r3
 157  guard_class %r3 -> %i0
 160  -live- %r3
 160  raise %r3
 162  ---
 162  L3:
 162  -live- %r0, %r1, %r2
 162  guard_class %r1 -> %i0
 165  -live- %i0, %r0, %r1, %r2
 165  int_guard_value %i0
 167  -live- %r0, %r1, %r2
 167  guard_class %r1 -> %i0
 170  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_getclass> -> %i0
 175  getfield_raw_i %i0, FieldDescr<specfunc.variant0> -> %i0
 180  -live- %i0, %r0, %r1, %r2
 180  int_guard_value %i0
 182  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=2> -> %r3
 189  -live- %r0, %r1, %r2, %r3
 189  inline_call_r_i <JitCode 'W_TypeObject.issubtype'>, R[%r3, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %i0
 196  -live- %i0, %r0, %r1, %r2
 196  -live- %i0, %r0, %r1, %r2
 196  goto_if_not %i0, L13
 200  goto L4
 203  ---
 203  L13:
 203  L14:
 203  inline_call_r_i <JitCode 'W_Root.is_w'>, R[$<* struct pypy.interpreter.baseobjspace.W_Root>, %r1] -> %i0
 210  -live- %i0, %r0, %r1, %r2
 210  -live- %i0, %r0, %r1, %r2
 210  goto_if_not %i0, L15
 214  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r0
 219  -live- %r0, %r2
 219  goto_if_not_ptr_nonzero %r2, L16
 223  ref_copy %r2 -> %r3
 226  -live- %r0, %r2, %r3
 226  guard_class %r3 -> %i0
 229  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 234  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 239  -live- %i0, %r0, %r2
 239  goto_if_not %i0, L17
 243  L18:
 243  inline_call_r_v <JitCode 'BaseConcreteArray.setslice'>, R[%r0, %r2]
 249  -live-
 249  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 251  ---
 251  L17:
 251  L19:
 251  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r2
 263  -live- %r0, %r2
 263  goto L18
 266  ---
 266  L16:
 266  goto L19
 269  ---
 269  L15:
 269  -live- %r0, %r1, %r2
 269  goto_if_not_ptr_nonzero %r1, L20
 273  ref_copy %r1 -> %r3
 276  -live- %r0, %r1, %r2, %r3
 276  guard_class %r3 -> %i0
 279  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 284  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 289  -live- %i0, %r0, %r1, %r2
 289  goto_if_not %i0, L21
 293  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r4
 298  -live- %r0, %r1, %r2, %r4
 298  record_quasiimmut_field %r4, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 304  getfield_gc_r_pure %r4, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r3
 309  -live- %r0, %r1, %r2, %r3, %r4
 309  record_quasiimmut_field %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 315  getfield_gc_r_pure %r3, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r3
 320  -live- %r0, %r1, %r2, %r3, %r4
 320  guard_class %r3 -> %i0
 323  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i0
 328  -live- %i0, %r0, %r1, %r2, %r4
 328  goto_if_not_int_eq %i0, $'b', L22
 333  -live- %r0, %r1, %r2, %r4
 333  guard_class %r4 -> %i0
 336  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 341  -live- %i0, %r0, %r1, %r2, %r4
 341  switch %i0, <SwitchDictDescr 0:L23, 1:L24>
 345  unreachable
 346  ---
 346  L23:
 346  -live- %r0, %r1, %r2, %r4
 346  getfield_gc_r_pure %r4, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 351  L25:
 351  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaada36288> -> %i0
 356  -live- %i0, %r0, %r1, %r2
 356  goto_if_not_int_gt %i0, $0, L26
 361  -live- %r0, %r1, %r2
 361  goto_if_not_ptr_nonzero %r2, L27
 365  ref_copy %r2 -> %r3
 368  -live- %r0, %r1, %r2, %r3
 368  guard_class %r3 -> %i0
 371  getfield_raw_i %i0, FieldDescr<object_vtable.subclassrange_min> -> %i0
 376  int_between $TotalOrderSymbolic('compute_fn'), %i0, $TotalOrderSymbolic('compute_fn') -> %i0
 381  -live- %i0, %r0, %r1, %r2
 381  goto_if_not %i0, L28
 385  L29:
 385  inline_call_r_v <JitCode 'W_NDimArray.setitem_filter'>, R[%r0, %r1, %r2]
 392  -live-
 392  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 394  ---
 394  L28:
 394  L30:
 394  inline_call_ir_r <JitCode 'array'>, I[$True, $False, $0], R[%r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.interpreter.baseobjspace.W_Root>] -> %r2
 406  -live- %r0, %r1, %r2
 406  goto L29
 409  ---
 409  L27:
 409  goto L30
 412  ---
 412  L26:
 412  L31:
 412  getfield_gc_r %r0, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r3
 417  -live- %r0, %r1, %r2, %r3
 417  guard_class %r3 -> %i0
 420  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_descr_setitem> -> %i0
 425  inline_call_ir_v <JitCode 'dispatcher'>, I[%i0], R[%r3, %r0, %r1, %r2]
 435  -live- %r0, %r1, %r2
 435  catch_exception L32
 438  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 440  ---
 440  L32:
 440  goto_if_exception_mismatch $<* struct object_vtable>, L33
 444  residual_call_r_v $<* fn W_NDimArray.setitem_array_int>, R[%r0, %r1, %r2], <CallDescr(rrr) EF=7>
 452  -live-
 452  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 454  ---
 454  L33:
 454  reraise
 455  ---
 455  L24:
 455  -live- %r0, %r1, %r2, %r4
 455  getfield_gc_r_pure %r4, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r3
 460  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aaada36288> -> %i0
 465  -live- %i0, %r0, %r1, %r2, %r3
 465  int_guard_value %i0
 467  goto L25
 470  ---
 470  L22:
 470  goto L31
 473  ---
 473  L21:
 473  goto L31
 476  ---
 476  L20:
 476  goto L31
 479  ---
 479  L2:
 479  goto L14
 482  ---
 482  L1:
 482  goto L14
