   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 0x50dda030> -> %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 0x50345a10> -> %r2
  56  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
  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 0x50345a10>
  76  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
  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 0x50345a10>
  92  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
  98  ref_isvirtual %r2 -> %i0
 101  -live- %i0, %r2
 101  goto_if_not %i0, L8
 105  inline_call_ir_r <JitCode 'll_join_strs__v1158___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 0x50dda030> -> %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__v1160___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- %r0, %r1
 213  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r1
 219  -live- %r0, %r1
 219  L17:
 219  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_appending> -> %i0
 224  -live- %i0, %r0, %r1
 224  goto_if_not %i0, L18
 228  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 233  -live- %i0, %r1
 233  goto_if_not %i0, L19
 237  ref_copy $<* struct rpy_string> -> %r0
 240  L20:
 240  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10> -> %r2
 245  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
 251  -live- %r0, %r1, %r2
 251  goto_if_not_ptr_nonzero %r1, L21
 255  L22:
 255  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
 261  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
 267  -live- %r0, %r2
 267  goto_if_not_ptr_nonzero %r0, L23
 271  L24:
 271  setarrayitem_gc_r %r2, $3, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
 277  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x50345a10>
 283  ref_isvirtual %r2 -> %i0
 286  -live- %i0, %r2
 286  goto_if_not %i0, L25
 290  inline_call_ir_r <JitCode 'll_join_strs__v1158___simple_call__function_'>, I[$5], R[%r2] -> %r1
 298  -live- %r1
 298  L26:
 298  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x50dda030> -> %r0
 302  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 307  ref_return %r0
 309  ---
 309  L25:
 309  int_isconstant $5 -> %i0
 312  -live- %i0, %r2
 312  goto_if_not %i0, L27
 316  L28:
 316  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1160___simple_call__function_>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r1
 325  -live- %r1
 325  goto L26
 328  ---
 328  L27:
 328  goto L28
 331  ---
 331  L23:
 331  ref_copy $<* struct rpy_string> -> %r0
 334  goto L24
 337  ---
 337  L21:
 337  ref_copy $<* struct rpy_string> -> %r1
 340  goto L22
 343  ---
 343  L19:
 343  ref_copy $<* struct rpy_string> -> %r0
 346  goto L20
 349  ---
 349  L18:
 349  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 354  -live- %i0, %r0, %r1
 354  goto_if_not %i0, L29
 358  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_writable> -> %i0
 363  -live- %i0, %r1
 363  goto_if_not %i0, L30
 367  ref_copy $<* struct rpy_string> -> %r0
 370  goto L20
 373  ---
 373  L30:
 373  ref_copy $<* struct rpy_string> -> %r0
 376  goto L20
 379  ---
 379  L29:
 379  ref_copy $<* struct rpy_string> -> %r0
 382  goto L20
 385  ---
 385  L15:
 385  -live- %r0, %r1
 385  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r1
 390  goto L17
 393  ---
 393  L16:
 393  -live- %r1
 393  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
 402  -live- %r1
 402  assert_not_none %r1
 404  -live- %r1
 404  guard_class %r1 -> %i0
 407  -live- %r1
 407  raise %r1
