   0  getfield_gc_r %r0, FieldDescr<pypy.module.posix.interp_posix.FileEncoder.inst_w_obj> -> %r0
   5  inline_call_r_r <JitCode 'ObjSpace.fsencode_w'>, R[%r0] -> %r0
  11  -live- %i0, %i1, %r0
  11  residual_call_r_r $<* fn get_nonmovingbuffer_final_null>, R[%r0], <CallDescr(r) EF=5> -> %r1
  18  -live- %i0, %i1, %r0, %r1
  18  getfield_gc_i_pure %r1, FieldDescr<tuple2.item0> -> %i2
  23  getfield_gc_i_pure %r1, FieldDescr<tuple2.item1> -> %i3
  28  int_signext %i0, $4 -> %i0
  32  int_signext %i1, $4 -> %i1
  36  residual_call_ir_i $<* fn ccall_open__arrayPtr_INT_INT>, I[%i2, %i0, %i1], R[], <CallDescr(iii) EF=7> -> %i0
  46  -live- %i0, %i2, %i3, %r0
  46  residual_call_ir_v $<* fn free_nonmovingbuffer>, I[%i2, %i3], R[%r0], <CallDescr(rii) EF=2>
  55  -live- %i0
  55  goto_if_not_int_lt %i0, $0, L1
  60  residual_call_ir_i $<* fn _ll_1_threadlocalref_get__INTLlT_Signed>, I[$CDefinedIntSymbolic('RPY_TLOFS_rpy_errno')], R[], <CallDescr(i) EF=2 OS_THREADLOCALREF_GET> -> %i1
  68  new_array_clear $2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x00000100a0ecb9f0> -> %r0
  73  setarrayitem_gc_r %r0, $0, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x00000100a0ecb9f0>
  79  setarrayitem_gc_r %r0, $1, $<* struct rpy_string>, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x00000100a0ecb9f0>
  85  ref_isvirtual %r0 -> %i0
  88  -live- %i0, %i1, %r0
  88  goto_if_not %i0, L2
  92  L3:
  92  inline_call_ir_r <JitCode 'll_join_strs__v1095___simple_call__function_'>, I[$2], R[%r0] -> %r1
 100  -live- %i1, %r1
 100  L4:
 100  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000001006dff05d0> -> %r0
 104  setfield_gc_r %r0, %r1, FieldDescr<exceptions.EnvironmentError.inst_strerror>
 109  setfield_gc_i %r0, %i1, FieldDescr<exceptions.EnvironmentError.inst_errno>
 114  assert_not_none %r0
 116  -live- %r0
 116  guard_class %r0 -> %i0
 119  -live- %r0
 119  raise %r0
 121  ---
 121  L2:
 121  int_isconstant $2 -> %i0
 124  -live- %i0, %i1, %r0
 124  goto_if_not %i0, L5
 128  goto L3
 131  ---
 131  L5:
 131  residual_call_ir_r $<* fn ll_join_strs_trampoline__v1091___simple_call__function_>, I[$2], R[%r0], <CallDescr(ir) EF=5> -> %r1
 140  -live- %i1, %r1
 140  goto L4
 143  ---
 143  L1:
 143  int_return %i0
