   0  -live- %i0, %r0, %r1
   0  goto_if_not_ptr_iszero %r1, L1
   4  ref_return %r0
   6  ---
   6  L1:
   6  getfield_gc_r %r1, FieldDescr<pypy.module.micronumpy.base.W_NDimArray.inst_implementation> -> %r1
  11  -live- %i0, %r0, %r1
  11  guard_class %r1 -> %i1
  14  getfield_raw_i %i1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray_vtable.cls_get_shape> -> %i1
  19  -live- %i0, %i1, %r0, %r1
  19  switch %i1, <SwitchDictDescr 0:L2, 1:L3>
  23  unreachable
  24  ---
  24  L2:
  24  -live- %i0, %r0, %r1
  24  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r4
  29  L4:
  29  inline_call_r_r <JitCode '_shape_agreement'>, R[%r0, %r4] -> %r3
  36  -live- %i0, %r0, %r3, %r4
  36  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
  41  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i2
  46  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i3
  51  -live- %i0, %i1, %i2, %i3, %r0, %r3, %r4
  51  goto_if_not_int_gt %i2, %i3, L5
  56  int_copy %i2 -> %i3
  59  L6:
  59  -live- %i0, %i1, %i3, %r0, %r3, %r4
  59  goto_if_not_int_lt %i1, %i3, L7
  64  residual_call_r_r $<* fn format_shape>, R[%r0], <CallDescr(r) EF=5> -> %r1
  71  -live- %r1, %r4
  71  residual_call_r_r $<* fn format_shape>, R[%r4], <CallDescr(r) EF=5> -> %r0
  78  -live- %r0, %r1
  78  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c> -> %r2
  83  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
  89  -live- %r0, %r1, %r2
  89  goto_if_not_ptr_nonzero %r1, L8
  93  L9:
  93  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
  99  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 105  -live- %r0, %r2
 105  goto_if_not_ptr_nonzero %r0, L10
 109  L11:
 109  setarrayitem_gc_r %r2, $3, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 115  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 121  ref_isvirtual %r2 -> %i1
 124  -live- %i1, %r2
 124  goto_if_not %i1, L12
 128  inline_call_ir_r <JitCode 'll_join_strs__v971___simple_call__function_l'>, I[$5], R[%r2] -> %r0
 136  -live- %r0
 136  L13:
 136  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xea98282c> -> %r1
 140  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 145  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xc665378c> -> %r0
 149  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 154  setfield_gc_r %r0, %r1, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
 159  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
 164  -live- %r0
 164  raise %r0
 166  ---
 166  L12:
 166  int_isconstant $5 -> %i1
 169  -live- %i1, %r2
 169  goto_if_not %i1, L14
 173  L15:
 173  residual_call_ir_r $<* fn ll_join_strs_trampoline__v976___simple_call__function_l>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r0
 182  -live- %r0
 182  goto L13
 185  ---
 185  L14:
 185  goto L15
 188  ---
 188  L10:
 188  ref_copy $<* struct rpy_string> -> %r0
 191  goto L11
 194  ---
 194  L8:
 194  ref_copy $<* struct rpy_string> -> %r1
 197  goto L9
 200  ---
 200  L7:
 200  -live- %i0, %r0, %r3, %r4
 200  goto_if_not %i0, L16
 204  ref_return %r3
 206  ---
 206  L16:
 206  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xc964930c>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r2
 217  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 222  new_array %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r1
 227  setfield_gc_r %r2, %r1, FieldDescr<list.items>
 232  int_copy $0 -> %i0
 235  L17:
 235  arraylen_gc %r3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 240  -live- %i0, %i1, %r0, %r2, %r3, %r4
 240  goto_if_not_int_ge %i0, %i1, L18
 245  getfield_gc_i %r2, FieldDescr<list.length> -> %i1
 250  getfield_gc_r %r2, FieldDescr<list.items> -> %r1
 255  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i0
 260  -live- %i0, %i1, %r0, %r1, %r3, %r4
 260  goto_if_not_int_eq %i1, %i0, L19
 265  ref_copy %r1 -> %r2
 268  L20:
 268  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i0
 273  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xc964930c>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r2
 284  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 289  new_array %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r1
 294  setfield_gc_r %r2, %r1, FieldDescr<list.items>
 299  int_copy $0 -> %i2
 302  L21:
 302  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 307  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 307  goto_if_not_int_ge %i2, %i1, L22
 312  getfield_gc_i %r2, FieldDescr<list.length> -> %i1
 317  getfield_gc_r %r2, FieldDescr<list.items> -> %r1
 322  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i2
 327  -live- %i0, %i1, %i2, %r0, %r1, %r3, %r4
 327  goto_if_not_int_eq %i1, %i2, L23
 332  ref_copy %r1 -> %r2
 335  L24:
 335  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 340  -live- %i0, %i1, %r0, %r3, %r4
 340  goto_if_not_int_gt %i0, %i1, L25
 345  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xd61beacc>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %r2
 356  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 361  new_array_clear %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %r1
 366  setfield_gc_r %r2, %r1, FieldDescr<list.items>
 371  int_copy $0 -> %i0
 374  L26:
 374  arraylen_gc %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 379  -live- %i0, %i1, %r0, %r2, %r4
 379  goto_if_not_int_ge %i0, %i1, L27
 384  getfield_gc_r %r2, FieldDescr<list.items> -> %r1
 389  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %i1
 394  residual_call_ir_r $<* fn ll_join__rpy_stringPtr_Signed_arrayPtr>, I[%i1], R[$<* struct rpy_string>, %r1], <CallDescr(rir) EF=5> -> %r2
 404  -live- %r2, %r4
 404  newlist $0, <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xd61beacc>, FieldDescr<list.length>, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %r0
 415  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 420  new_array_clear %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %r1
 425  setfield_gc_r %r0, %r1, FieldDescr<list.items>
 430  int_copy $0 -> %i0
 433  L28:
 433  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 438  -live- %i0, %i1, %r0, %r2, %r4
 438  goto_if_not_int_ge %i0, %i1, L29
 443  getfield_gc_r %r0, FieldDescr<list.items> -> %r1
 448  arraylen_gc %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c> -> %i1
 453  residual_call_ir_r $<* fn ll_join__rpy_stringPtr_Signed_arrayPtr>, I[%i1], R[$<* struct rpy_string>, %r1], <CallDescr(rir) EF=5> -> %r1
 463  -live- %r1, %r2
 463  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c> -> %r0
 468  setarrayitem_gc_r %r0, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 474  -live- %r0, %r1, %r2
 474  goto_if_not_ptr_nonzero %r2, L30
 478  L31:
 478  setarrayitem_gc_r %r0, $1, %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 484  setarrayitem_gc_r %r0, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 490  -live- %r0, %r1
 490  goto_if_not_ptr_nonzero %r1, L32
 494  L33:
 494  setarrayitem_gc_r %r0, $3, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 500  setarrayitem_gc_r %r0, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xdfbc7e8c>
 506  ref_isvirtual %r0 -> %i1
 509  -live- %i1, %r0
 509  goto_if_not %i1, L34
 513  inline_call_ir_r <JitCode 'll_join_strs__v971___simple_call__function_l'>, I[$5], R[%r0] -> %r0
 521  -live- %r0
 521  L35:
 521  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xea98282c> -> %r1
 525  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 530  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0xc665378c> -> %r0
 534  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 539  setfield_gc_r %r0, %r1, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
 544  setfield_gc_r %r0, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
 549  -live- %r0
 549  raise %r0
 551  ---
 551  L34:
 551  int_isconstant $5 -> %i1
 554  -live- %i1, %r0
 554  goto_if_not %i1, L36
 558  L37:
 558  residual_call_ir_r $<* fn ll_join_strs_trampoline__v976___simple_call__function_l>, I[$5], R[%r0], <CallDescr(ir) EF=5> -> %r0
 567  -live- %r0
 567  goto L35
 570  ---
 570  L36:
 570  goto L37
 573  ---
 573  L32:
 573  ref_copy $<* struct rpy_string> -> %r1
 576  goto L33
 579  ---
 579  L30:
 579  ref_copy $<* struct rpy_string> -> %r2
 582  goto L31
 585  ---
 585  L29:
 585  int_copy %i0 -> %i1
 588  ref_copy %r4 -> %r1
 591  int_add %i1, $1 -> %i0
 595  getarrayitem_gc_i %r1, %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 601  residual_call_ir_r $<* fn ll_str__IntegerR_SignedConst_Signed>, I[%i1], R[], <CallDescr(i) EF=3> -> %r1
 609  -live- %i0, %r0, %r1, %r2, %r4
 609  getfield_gc_i %r0, FieldDescr<list.length> -> %i1
 614  int_add %i1, $1 -> %i2
 618  setfield_gc_i %r0, %i2, FieldDescr<list.length>
 623  setlistitem_gc_r %r0, %i1, %r1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c>
 631  goto L28
 634  ---
 634  L27:
 634  int_copy %i0 -> %i1
 637  ref_copy %r0 -> %r1
 640  int_add %i1, $1 -> %i0
 644  getarrayitem_gc_i %r1, %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 650  residual_call_ir_r $<* fn ll_str__IntegerR_SignedConst_Signed>, I[%i1], R[], <CallDescr(i) EF=3> -> %r1
 658  -live- %i0, %r0, %r1, %r2, %r4
 658  getfield_gc_i %r2, FieldDescr<list.length> -> %i1
 663  int_add %i1, $1 -> %i2
 667  setfield_gc_i %r2, %i2, FieldDescr<list.length>
 672  setlistitem_gc_r %r2, %i1, %r1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xcaa62b6c>
 680  goto L26
 683  ---
 683  L25:
 683  ref_return %r3
 685  ---
 685  L23:
 685  new_array %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r2
 690  residual_call_ir_v $<* fn ll_arraycopy__arrayPtr_arrayPtr_Signed_Signed_Signed>, I[$0, $0, %i1], R[%r1, %r2], <CallDescr(rriii) EF=2 OS_ARRAYCOPY>
 701  goto L24
 704  ---
 704  L22:
 704  int_copy %i2 -> %i1
 707  ref_copy %r4 -> %r1
 710  int_add %i1, $1 -> %i2
 714  getarrayitem_gc_i %r1, %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 720  -live- %i0, %i1, %i2, %r0, %r2, %r3, %r4
 720  goto_if_not_int_ne %i1, $1, L38
 725  getfield_gc_i %r2, FieldDescr<list.length> -> %i3
 730  int_add %i3, $1 -> %i4
 734  setfield_gc_i %r2, %i4, FieldDescr<list.length>
 739  setlistitem_gc_i %r2, %i3, %i1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec>
 747  goto L21
 750  ---
 750  L38:
 750  goto L21
 753  ---
 753  L19:
 753  new_array %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %r2
 758  residual_call_ir_v $<* fn ll_arraycopy__arrayPtr_arrayPtr_Signed_Signed_Signed>, I[$0, $0, %i1], R[%r1, %r2], <CallDescr(rriii) EF=2 OS_ARRAYCOPY>
 769  goto L20
 772  ---
 772  L18:
 772  int_copy %i0 -> %i1
 775  ref_copy %r3 -> %r1
 778  int_add %i1, $1 -> %i0
 782  getarrayitem_gc_i %r1, %i1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 788  -live- %i0, %i1, %r0, %r2, %r3, %r4
 788  goto_if_not_int_ne %i1, $1, L39
 793  getfield_gc_i %r2, FieldDescr<list.length> -> %i2
 798  int_add %i2, $1 -> %i3
 802  setfield_gc_i %r2, %i3, FieldDescr<list.length>
 807  setlistitem_gc_i %r2, %i2, %i1, FieldDescr<list.items>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec>
 815  goto L17
 818  ---
 818  L39:
 818  goto L17
 821  ---
 821  L5:
 821  goto L6
 824  ---
 824  L3:
 824  -live- %i0, %r0, %r1
 824  getfield_gc_r_pure %r1, FieldDescr<pypy.module.micronumpy.concrete.BaseConcreteArray.inst_shape> -> %r4
 829  arraylen_gc %r4, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0xca9c6bec> -> %i1
 834  -live- %i0, %i1, %r0, %r4
 834  int_guard_value %i1
 836  goto L4
