   0  getfield_gc_i %r0, FieldDescr<pypy.module.array.interp_array.W_ArrayBase.inst_len> -> %i0
   5  -live- %i0, %r0
   5  goto_if_not_int_is_zero %i0, L1
   9  -live- %r0
   9  guard_class %r0 -> %i0
  12  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i0
  17  new_array_clear $3, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0> -> %r1
  22  setarrayitem_gc_r %r1, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
  28  newstr $1 -> %r0
  31  strsetitem %r0, $0, %i0
  35  setarrayitem_gc_r %r1, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
  41  setarrayitem_gc_r %r1, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
  47  ref_isvirtual %r1 -> %i0
  50  -live- %i0, %r1
  50  goto_if_not %i0, L2
  54  inline_call_ir_r <JitCode 'll_join_strs__v1089___simple_call__function_'>, I[$3], R[%r1] -> %r0
  62  -live- %r0
  62  L3:
  62  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff481d5aa0> -> %r1
  66  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
  71  ref_return %r1
  73  ---
  73  L2:
  73  int_isconstant $3 -> %i0
  76  -live- %i0, %r1
  76  goto_if_not %i0, L4
  80  L5:
  80  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1094___simple_call__function_>, I[$3], R[%r1], <CallDescr(ir) EF=5> -> %r0
  89  -live- %r0
  89  goto L3
  92  ---
  92  L4:
  92  goto L5
  95  ---
  95  L1:
  95  -live- %r0
  95  guard_class %r0 -> %i0
  98  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i0
 103  -live- %i0, %r0
 103  goto_if_not_int_eq %i0, $'c', L6
 108  inline_call_r_r <JitCode 'W_ArrayBase.descr_tostring'>, R[%r0] -> %r1
 114  -live- %r0, %r1
 114  inline_call_r_r <JitCode 'repr'>, R[%r1] -> %r1
 120  -live- %r0, %r1
 120  -live- %r0, %r1
 120  guard_class %r0 -> %i0
 123  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i1
 128  -live- %i1, %r1
 128  guard_class %r1 -> %i0
 131  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
 136  -live- %i0, %i1, %r1
 136  switch %i0, <SwitchDictDescr 0:L7, 1:L8, 2:L9>
 140  unreachable
 141  ---
 141  L7:
 141  -live- %r1
 141  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] -> %r0
 150  -live- %r0
 150  assert_not_none %r0
 152  -live- %r0
 152  guard_class %r0 -> %i0
 155  -live- %r0
 155  raise %r0
 157  ---
 157  L8:
 157  -live- %i1, %r1
 157  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r2
 163  -live- %i1, %r2
 163  L10:
 163  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0> -> %r1
 168  setarrayitem_gc_r %r1, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 174  newstr $1 -> %r0
 177  strsetitem %r0, $0, %i1
 181  setarrayitem_gc_r %r1, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 187  setarrayitem_gc_r %r1, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 193  -live- %r1, %r2
 193  goto_if_not_ptr_nonzero %r2, L11
 197  L12:
 197  setarrayitem_gc_r %r1, $3, %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 203  setarrayitem_gc_r %r1, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 209  ref_isvirtual %r1 -> %i0
 212  -live- %i0, %r1
 212  goto_if_not %i0, L13
 216  inline_call_ir_r <JitCode 'll_join_strs__v1089___simple_call__function_'>, I[$5], R[%r1] -> %r0
 224  -live- %r0
 224  L14:
 224  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff481d5aa0> -> %r1
 228  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 233  ref_return %r1
 235  ---
 235  L13:
 235  int_isconstant $5 -> %i0
 238  -live- %i0, %r1
 238  goto_if_not %i0, L15
 242  L16:
 242  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1094___simple_call__function_>, I[$5], R[%r1], <CallDescr(ir) EF=5> -> %r0
 251  -live- %r0
 251  goto L14
 254  ---
 254  L15:
 254  goto L16
 257  ---
 257  L11:
 257  ref_copy $<* struct rpy_string> -> %r2
 260  goto L12
 263  ---
 263  L9:
 263  -live- %i1, %r1
 263  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r2
 268  goto L10
 271  ---
 271  L6:
 271  -live- %r0
 271  guard_class %r0 -> %i0
 274  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i0
 279  -live- %i0, %r0
 279  goto_if_not_int_eq %i0, $'u', L17
 284  inline_call_r_r <JitCode 'W_ArrayBase.descr_tounicode'>, R[%r0] -> %r1
 290  -live- %r0, %r1
 290  inline_call_r_r <JitCode 'repr'>, R[%r1] -> %r1
 296  -live- %r0, %r1
 296  -live- %r0, %r1
 296  guard_class %r0 -> %i0
 299  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i1
 304  -live- %i1, %r1
 304  guard_class %r1 -> %i0
 307  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
 312  -live- %i0, %i1, %r1
 312  switch %i0, <SwitchDictDescr 0:L18, 1:L19, 2:L20>
 316  unreachable
 317  ---
 317  L18:
 317  -live- %r1
 317  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] -> %r0
 326  -live- %r0
 326  assert_not_none %r0
 328  -live- %r0
 328  guard_class %r0 -> %i0
 331  -live- %r0
 331  raise %r0
 333  ---
 333  L19:
 333  -live- %i1, %r1
 333  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r2
 339  -live- %i1, %r2
 339  L21:
 339  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0> -> %r1
 344  setarrayitem_gc_r %r1, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 350  newstr $1 -> %r0
 353  strsetitem %r0, $0, %i1
 357  setarrayitem_gc_r %r1, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 363  setarrayitem_gc_r %r1, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 369  -live- %r1, %r2
 369  goto_if_not_ptr_nonzero %r2, L22
 373  L23:
 373  setarrayitem_gc_r %r1, $3, %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 379  setarrayitem_gc_r %r1, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 385  ref_isvirtual %r1 -> %i0
 388  -live- %i0, %r1
 388  goto_if_not %i0, L24
 392  inline_call_ir_r <JitCode 'll_join_strs__v1089___simple_call__function_'>, I[$5], R[%r1] -> %r0
 400  -live- %r0
 400  L25:
 400  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff481d5aa0> -> %r1
 404  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 409  ref_return %r1
 411  ---
 411  L24:
 411  int_isconstant $5 -> %i0
 414  -live- %i0, %r1
 414  goto_if_not %i0, L26
 418  L27:
 418  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1094___simple_call__function_>, I[$5], R[%r1], <CallDescr(ir) EF=5> -> %r0
 427  -live- %r0
 427  goto L25
 430  ---
 430  L26:
 430  goto L27
 433  ---
 433  L22:
 433  ref_copy $<* struct rpy_string> -> %r2
 436  goto L23
 439  ---
 439  L20:
 439  -live- %i1, %r1
 439  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r2
 444  goto L21
 447  ---
 447  L17:
 447  residual_call_r_r $<* fn W_ArrayBase.descr_tolist>, R[%r0], <CallDescr(r) EF=7> -> %r1
 454  -live- %r0, %r1
 454  inline_call_r_r <JitCode 'repr'>, R[%r1] -> %r1
 460  -live- %r0, %r1
 460  -live- %r0, %r1
 460  guard_class %r0 -> %i0
 463  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_typecode> -> %i1
 468  -live- %i1, %r1
 468  guard_class %r1 -> %i0
 471  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
 476  -live- %i0, %i1, %r1
 476  switch %i0, <SwitchDictDescr 0:L28, 1:L29, 2:L30>
 480  unreachable
 481  ---
 481  L28:
 481  -live- %r1
 481  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] -> %r0
 490  -live- %r0
 490  assert_not_none %r0
 492  -live- %r0
 492  guard_class %r0 -> %i0
 495  -live- %r0
 495  raise %r0
 497  ---
 497  L29:
 497  -live- %i1, %r1
 497  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r2
 503  -live- %i1, %r2
 503  L31:
 503  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0> -> %r1
 508  setarrayitem_gc_r %r1, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 514  newstr $1 -> %r0
 517  strsetitem %r0, $0, %i1
 521  setarrayitem_gc_r %r1, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 527  setarrayitem_gc_r %r1, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 533  -live- %r1, %r2
 533  goto_if_not_ptr_nonzero %r2, L32
 537  L33:
 537  setarrayitem_gc_r %r1, $3, %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 543  setarrayitem_gc_r %r1, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff47644aa0>
 549  ref_isvirtual %r1 -> %i0
 552  -live- %i0, %r1
 552  goto_if_not %i0, L34
 556  inline_call_ir_r <JitCode 'll_join_strs__v1089___simple_call__function_'>, I[$5], R[%r1] -> %r0
 564  -live- %r0
 564  L35:
 564  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff481d5aa0> -> %r1
 568  setfield_gc_r %r1, %r0, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 573  ref_return %r1
 575  ---
 575  L34:
 575  int_isconstant $5 -> %i0
 578  -live- %i0, %r1
 578  goto_if_not %i0, L36
 582  L37:
 582  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1094___simple_call__function_>, I[$5], R[%r1], <CallDescr(ir) EF=5> -> %r0
 591  -live- %r0
 591  goto L35
 594  ---
 594  L36:
 594  goto L37
 597  ---
 597  L32:
 597  ref_copy $<* struct rpy_string> -> %r2
 600  goto L33
 603  ---
 603  L30:
 603  -live- %i1, %r1
 603  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r2
 608  goto L31
