   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  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  12  ---
  12  L1:
  12  getfield_gc_r %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_w_name> -> %r1
  17  -live- %i1, %r0, %r1
  17  goto_if_not_ptr_iszero %r1, L2
  21  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_appending> -> %i0
  26  -live- %i0, %i1, %r0
  26  goto_if_not %i0, L3
  30  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
  35  -live- %i0, %i1
  35  goto_if_not %i0, L4
  39  ref_copy $<* struct rpy_string> -> %r1
  42  L5:
  42  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0> -> %r2
  47  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
  53  residual_call_ir_r $<* fn ll_int2dec__Signed>, I[%i1], R[], <CallDescr(i) EF=3> -> %r0
  61  -live- %r0, %r1, %r2
  61  setarrayitem_gc_r %r2, $1, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
  67  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
  73  -live- %r1, %r2
  73  goto_if_not_ptr_nonzero %r1, L6
  77  L7:
  77  setarrayitem_gc_r %r2, $3, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
  83  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
  89  ref_isvirtual %r2 -> %i0
  92  -live- %i0, %r2
  92  goto_if_not %i0, L8
  96  inline_call_ir_r <JitCode 'll_join_strs__v1222___simple_call__function_'>, I[$5], R[%r2] -> %r1
 104  -live- %r1
 104  L9:
 104  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac5501f30> -> %r0
 108  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 113  ref_return %r0
 115  ---
 115  L8:
 115  int_isconstant $5 -> %i0
 118  -live- %i0, %r2
 118  goto_if_not %i0, L10
 122  L11:
 122  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1224___simple_call__function_>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r1
 131  -live- %r1
 131  goto L9
 134  ---
 134  L10:
 134  goto L11
 137  ---
 137  L6:
 137  ref_copy $<* struct rpy_string> -> %r1
 140  goto L7
 143  ---
 143  L4:
 143  ref_copy $<* struct rpy_string> -> %r1
 146  goto L5
 149  ---
 149  L3:
 149  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 154  -live- %i0, %i1, %r0
 154  goto_if_not %i0, L12
 158  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_writable> -> %i0
 163  -live- %i0, %i1
 163  goto_if_not %i0, L13
 167  ref_copy $<* struct rpy_string> -> %r1
 170  goto L5
 173  ---
 173  L13:
 173  ref_copy $<* struct rpy_string> -> %r1
 176  goto L5
 179  ---
 179  L12:
 179  ref_copy $<* struct rpy_string> -> %r1
 182  goto L5
 185  ---
 185  L2:
 185  inline_call_r_r <JitCode 'repr'>, R[%r1] -> %r1
 191  -live- %r0, %r1
 191  -live- %r0, %r1
 191  guard_class %r1 -> %i0
 194  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_str_w> -> %i0
 199  -live- %i0, %r0, %r1
 199  switch %i0, <SwitchDictDescr 0:L14, 1:L15, 2:L16>
 203  unreachable
 204  ---
 204  L14:
 204  -live- %r0, %r1
 204  inline_call_r_r <JitCode 'W_UnicodeObject.str_w'>, R[%r1] -> %r1
 210  -live- %r0, %r1
 210  L17:
 210  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_appending> -> %i0
 215  -live- %i0, %r0, %r1
 215  goto_if_not %i0, L18
 219  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 224  -live- %i0, %r1
 224  goto_if_not %i0, L19
 228  ref_copy $<* struct rpy_string> -> %r0
 231  L20:
 231  new_array_clear $5, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0> -> %r2
 236  setarrayitem_gc_r %r2, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 242  -live- %r0, %r1, %r2
 242  goto_if_not_ptr_nonzero %r1, L21
 246  L22:
 246  setarrayitem_gc_r %r2, $1, %r1, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 252  setarrayitem_gc_r %r2, $2, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 258  -live- %r0, %r2
 258  goto_if_not_ptr_nonzero %r0, L23
 262  L24:
 262  setarrayitem_gc_r %r2, $3, %r0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 268  setarrayitem_gc_r %r2, $4, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x000002aa8c8e1ec0>
 274  ref_isvirtual %r2 -> %i0
 277  -live- %i0, %r2
 277  goto_if_not %i0, L25
 281  inline_call_ir_r <JitCode 'll_join_strs__v1222___simple_call__function_'>, I[$5], R[%r2] -> %r1
 289  -live- %r1
 289  L26:
 289  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aac5501f30> -> %r0
 293  setfield_gc_r %r0, %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value>
 298  ref_return %r0
 300  ---
 300  L25:
 300  int_isconstant $5 -> %i0
 303  -live- %i0, %r2
 303  goto_if_not %i0, L27
 307  L28:
 307  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1224___simple_call__function_>, I[$5], R[%r2], <CallDescr(ir) EF=5> -> %r1
 316  -live- %r1
 316  goto L26
 319  ---
 319  L27:
 319  goto L28
 322  ---
 322  L23:
 322  ref_copy $<* struct rpy_string> -> %r0
 325  goto L24
 328  ---
 328  L21:
 328  ref_copy $<* struct rpy_string> -> %r1
 331  goto L22
 334  ---
 334  L19:
 334  ref_copy $<* struct rpy_string> -> %r0
 337  goto L20
 340  ---
 340  L18:
 340  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
 345  -live- %i0, %r0, %r1
 345  goto_if_not %i0, L29
 349  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_writable> -> %i0
 354  -live- %i0, %r1
 354  goto_if_not %i0, L30
 358  ref_copy $<* struct rpy_string> -> %r0
 361  goto L20
 364  ---
 364  L30:
 364  ref_copy $<* struct rpy_string> -> %r0
 367  goto L20
 370  ---
 370  L29:
 370  ref_copy $<* struct rpy_string> -> %r0
 373  goto L20
 376  ---
 376  L15:
 376  -live- %r0, %r1
 376  getfield_gc_r_pure %r1, FieldDescr<pypy.objspace.std.bytesobject.W_BytesObject.inst__value> -> %r1
 381  goto L17
 384  ---
 384  L16:
 384  -live- %r1
 384  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
 393  -live- %r1
 393  assert_not_none %r1
 395  -live- %r1
 395  guard_class %r1 -> %i0
 398  -live- %r1
 398  raise %r1
