   0  -live- %r0, %r1
   0  goto_if_not_ptr_nonzero %r0, L1
   4  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
   9  -live- %i0, %r0, %r1
   9  goto_if_not_int_is_true %i0, L2
  13  int_copy $0 -> %i1
  16  int_copy $True -> %i2
  19  int_copy $0 -> %i3
  22  int_copy $0 -> %i4
  25  L3:
  25  getfield_gc_i %r0, FieldDescr<list.length> -> %i0
  30  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1
  30  goto_if_not_int_ge %i4, %i0, L4
  35  int_copy $0 -> %i4
  38  L5:
  38  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7f3f4990> -> %i0
  43  -live- %i0, %i1, %i2, %i3, %i4, %r1
  43  goto_if_not_int_ge %i4, %i0, L6
  48  -live- %i1, %i2, %i3
  48  goto_if_not %i2, L7
  52  int_return $False
  54  ---
  54  L7:
  54  int_ge %i3, %i1 -> %i0
  58  int_return %i0
  60  ---
  60  L6:
  60  int_copy %i4 -> %i0
  63  ref_copy %r1 -> %r2
  66  int_add %i0, $1 -> %i4
  70  getarrayitem_gc_r_pure %r2, %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7f3f4990> -> %r2
  76  -live- %i1, %i3, %i4, %r1, %r2
  76  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
  82  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
  87  -live- %i1, %i3, %i4, %r1, %r2
  87  guard_class %r2 -> %i0
  90  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i0
  95  int_copy %i0 -> %i2
  98  ref_isvirtual $<* struct dicttable> -> %i5
 101  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r1
 101  goto_if_not %i5, L8
 105  inline_call_ir_i <JitCode 'll_call_lookup_function__v2294___simple_call__function_'>, I[%i0, %i2, $0], R[$<* struct dicttable>] -> %i0
 115  -live- %i0, %i1, %i3, %i4, %r1
 115  L9:
 115  -live- %i0, %i1, %i3, %i4, %r1
 115  goto_if_not_int_ge %i0, $0, L10
 120  getfield_gc_r $<* struct dicttable>, FieldDescr<dicttable.entries> -> %r2
 125  getinteriorfield_gc_i %r2, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x6ec7b310> -> %i0
 131  -live- %i0, %i1, %i3, %i4, %r1
 131  goto_if_not_int_gt %i0, %i3, L11
 136  int_copy $False -> %i2
 139  int_copy %i0 -> %i3
 142  goto L5
 145  ---
 145  L11:
 145  int_copy $False -> %i2
 148  goto L5
 151  ---
 151  L10:
 151  raise $<* struct object>
 153  ---
 153  L8:
 153  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v2300___simple_call__function_>, I[%i0, %i2, $0], R[$<* struct dicttable>], <CallDescr(riii) EF=5 OS_DICT_LOOKUP> -> %i0
 164  -live- %i0, %i1, %i3, %i4, %r1
 164  goto L9
 167  ---
 167  L4:
 167  int_copy %i4 -> %i0
 170  ref_copy %r0 -> %r2
 173  int_add %i0, $1 -> %i4
 177  getlistitem_gc_r %r2, %i0, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7f3f4990> -> %r3
 185  getfield_gc_r %r3, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 190  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 190  guard_class %r2 -> %i0
 193  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i0
 198  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 198  switch %i0, <SwitchDictDescr 0:L12, 1:L13>
 202  unreachable
 203  ---
 203  L12:
 203  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 203  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 208  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
 213  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 213  int_guard_value %i0
 215  L14:
 215  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x6f1fb910> -> %i0
 220  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1, %r3
 220  goto_if_not_int_is_zero %i0, L15
 224  getfield_gc_r %r3, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 229  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2
 229  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 235  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 240  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2
 240  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 246  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 251  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2
 251  guard_class %r2 -> %i0
 254  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i0
 259  int_copy %i0 -> %i5
 262  ref_isvirtual $<* struct dicttable> -> %i6
 265  -live- %i0, %i1, %i2, %i3, %i4, %i5, %i6, %r0, %r1
 265  goto_if_not %i6, L16
 269  inline_call_ir_i <JitCode 'll_call_lookup_function__v2294___simple_call__function_'>, I[%i0, %i5, $0], R[$<* struct dicttable>] -> %i0
 279  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1
 279  L17:
 279  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1
 279  goto_if_not_int_ge %i0, $0, L18
 284  getfield_gc_r $<* struct dicttable>, FieldDescr<dicttable.entries> -> %r2
 289  getinteriorfield_gc_i %r2, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x6ec7b310> -> %i0
 295  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1
 295  goto_if_not_int_gt %i0, %i1, L19
 300  int_copy %i0 -> %i1
 303  goto L3
 306  ---
 306  L19:
 306  goto L3
 309  ---
 309  L18:
 309  raise $<* struct object>
 311  ---
 311  L16:
 311  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v2300___simple_call__function_>, I[%i0, %i5, $0], R[$<* struct dicttable>], <CallDescr(riii) EF=5 OS_DICT_LOOKUP> -> %i0
 322  -live- %i0, %i1, %i2, %i3, %i4, %r0, %r1
 322  goto L17
 325  ---
 325  L15:
 325  getfield_gc_r %r3, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r2
 330  -live- %i1, %i3, %i4, %r0, %r1, %r2
 330  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype>, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.mutate_dtype>
 336  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_dtype> -> %r2
 341  -live- %i1, %i3, %i4, %r0, %r1, %r2
 341  record_quasiimmut_field %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype>, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.mutate_itemtype>
 347  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.descriptor.W_Dtype.inst_itemtype> -> %r2
 352  -live- %i1, %i3, %i4, %r0, %r1, %r2
 352  guard_class %r2 -> %i0
 355  getfield_raw_i %i0, FieldDescr<pypy.module.micronumpy.types.BaseType_vtable.cls_kind> -> %i0
 360  int_copy %i0 -> %i2
 363  ref_isvirtual $<* struct dicttable> -> %i5
 366  -live- %i0, %i1, %i2, %i3, %i4, %i5, %r0, %r1
 366  goto_if_not %i5, L20
 370  inline_call_ir_i <JitCode 'll_call_lookup_function__v2294___simple_call__function_'>, I[%i0, %i2, $0], R[$<* struct dicttable>] -> %i0
 380  -live- %i0, %i1, %i3, %i4, %r0, %r1
 380  L21:
 380  -live- %i0, %i1, %i3, %i4, %r0, %r1
 380  goto_if_not_int_ge %i0, $0, L22
 385  getfield_gc_r $<* struct dicttable>, FieldDescr<dicttable.entries> -> %r2
 390  getinteriorfield_gc_i %r2, %i0, <rpython.jit.backend.llsupport.descr.InteriorFieldDescr object at 0x6ec7b310> -> %i0
 396  -live- %i0, %i1, %i3, %i4, %r0, %r1
 396  goto_if_not_int_gt %i0, %i3, L23
 401  int_copy $False -> %i2
 404  int_copy %i0 -> %i3
 407  goto L3
 410  ---
 410  L23:
 410  int_copy $False -> %i2
 413  goto L3
 416  ---
 416  L22:
 416  raise $<* struct object>
 418  ---
 418  L20:
 418  residual_call_ir_i $<* fn ll_call_lookup_function_trampoline__v2300___simple_call__function_>, I[%i0, %i2, $0], R[$<* struct dicttable>], <CallDescr(riii) EF=5 OS_DICT_LOOKUP> -> %i0
 429  -live- %i0, %i1, %i3, %i4, %r0, %r1
 429  goto L21
 432  ---
 432  L13:
 432  -live- %i1, %i2, %i3, %i4, %r0, %r1, %r2, %r3
 432  getfield_gc_r_pure %r2, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r2
 437  goto L14
 440  ---
 440  L2:
 440  int_return $False
 442  ---
 442  L1:
 442  int_return $False
