   0  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_fd> -> %i1
   5  -live- %i1, %r0
   5  goto_if_not_int_lt %i1, $0, L1
  10  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4f52efa0> -> %r0
  14  setfield_gc_r %r0, $<* struct rpy_string>, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
  19  ref_return %r0
  21  ---
  21  L1:
  21  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_w_name> -> %r1
  26  -live- %i1, %r0, %r1
  26  goto_if_not_ptr_iszero %r1, L2
  30  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_appending> -> %i0
  35  -live- %i0, %i1, %r0
  35  goto_if_not %i0, L3
  39  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
  44  -live- %i0, %i1
  44  goto_if_not %i0, L4
  48  ref_copy $<* struct rpy_string> -> %r1
  51  L5:
  51  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910> -> %r2
  56  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
  62  residual_call_ir_r $<* fn ll_int2dec__Signed>, I[%i1], R[], <CallDescr(i) EF=3> -> %r0
  70  -live- %r0, %r1, %r2
  70  setarrayitem_gc_r %r2, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
  76  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
  82  -live- %r1, %r2
  82  goto_if_not_ptr_nonzero %r1, L6
  86  L7:
  86  setarrayitem_gc_r %r2, $3, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
  92  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
  98  ref_isvirtual %r2 -> %i0
 101  -live- %i0, %r2
 101  goto_if_not %i0, L8
 105  inline_call_ir_r <JitCode 'll_join_strs__v1299___simple_call__function_'>, I[$5], R[%r2] -> %r1
 113  -live- %r1
 113  L9:
 113  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4f52efa0> -> %r0
 117  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 122  ref_return %r0
 124  ---
 124  L8:
 124  int_isconstant $5 -> %i0
 127  -live- %i0, %r2
 127  goto_if_not %i0, L10
 131  L11:
 131  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1304___simple_call__function_>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r1
 140  -live- %r1
 140  goto L9
 143  ---
 143  L10:
 143  goto L11
 146  ---
 146  L6:
 146  ref_copy $<* struct rpy_string> -> %r1
 149  goto L7
 152  ---
 152  L4:
 152  ref_copy $<* struct rpy_string> -> %r1
 155  goto L5
 158  ---
 158  L3:
 158  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 163  -live- %i0, %i1, %r0
 163  goto_if_not %i0, L12
 167  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_writable> -> %i0
 172  -live- %i0, %i1
 172  goto_if_not %i0, L13
 176  ref_copy $<* struct rpy_string> -> %r1
 179  goto L5
 182  ---
 182  L13:
 182  ref_copy $<* struct rpy_string> -> %r1
 185  goto L5
 188  ---
 188  L12:
 188  ref_copy $<* struct rpy_string> -> %r1
 191  goto L5
 194  ---
 194  L2:
 194  inline_call_r_r <JitCode 'repr'>, R[%r1] -> %r1
 200  -live- %r0, %r1
 200  -live- %r0, %r1
 200  guard_class %r1 -> %i0
 203  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
 208  -live- %i0, %r0, %r1
 208  switch %i0, <SwitchDictDescr 0:L14, 1:L15, 2:L16>
 212  unreachable
 213  ---
 213  L14:
 213  -live- %r1
 213  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] -> %r1
 222  -live- %r1
 222  assert_not_none %r1
 224  -live- %r1
 224  guard_class %r1 -> %i0
 227  -live- %r1
 227  raise %r1
 229  ---
 229  L15:
 229  -live- %r0, %r1
 229  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r1
 235  -live- %r0, %r1
 235  L17:
 235  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_appending> -> %i0
 240  -live- %i0, %r0, %r1
 240  goto_if_not %i0, L18
 244  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 249  -live- %i0, %r1
 249  goto_if_not %i0, L19
 253  ref_copy $<* struct rpy_string> -> %r0
 256  L20:
 256  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910> -> %r2
 261  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 267  -live- %r0, %r1, %r2
 267  goto_if_not_ptr_nonzero %r1, L21
 271  L22:
 271  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 277  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 283  -live- %r0, %r2
 283  goto_if_not_ptr_nonzero %r0, L23
 287  L24:
 287  setarrayitem_gc_r %r2, $3, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 293  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x7fff553c0910>
 299  ref_isvirtual %r2 -> %i0
 302  -live- %i0, %r2
 302  goto_if_not %i0, L25
 306  inline_call_ir_r <JitCode 'll_join_strs__v1299___simple_call__function_'>, I[$5], R[%r2] -> %r1
 314  -live- %r1
 314  L26:
 314  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x7fff4f52efa0> -> %r0
 318  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 323  ref_return %r0
 325  ---
 325  L25:
 325  int_isconstant $5 -> %i0
 328  -live- %i0, %r2
 328  goto_if_not %i0, L27
 332  L28:
 332  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1304___simple_call__function_>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r1
 341  -live- %r1
 341  goto L26
 344  ---
 344  L27:
 344  goto L28
 347  ---
 347  L23:
 347  ref_copy $<* struct rpy_string> -> %r0
 350  goto L24
 353  ---
 353  L21:
 353  ref_copy $<* struct rpy_string> -> %r1
 356  goto L22
 359  ---
 359  L19:
 359  ref_copy $<* struct rpy_string> -> %r0
 362  goto L20
 365  ---
 365  L18:
 365  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 370  -live- %i0, %r0, %r1
 370  goto_if_not %i0, L29
 374  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_writable> -> %i0
 379  -live- %i0, %r1
 379  goto_if_not %i0, L30
 383  ref_copy $<* struct rpy_string> -> %r0
 386  goto L20
 389  ---
 389  L30:
 389  ref_copy $<* struct rpy_string> -> %r0
 392  goto L20
 395  ---
 395  L29:
 395  ref_copy $<* struct rpy_string> -> %r0
 398  goto L20
 401  ---
 401  L16:
 401  -live- %r0, %r1
 401  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r1
 406  goto L17
