   0  strlen %r0 -> %i1
   3  residual_call_r_r $<* fn get_nonmovingbuffer_ll>, R[%r0], <CallDescr(r) EF=5> -> %r0
  10  -live- %i0, %i1, %r0
  13  getfield_gc_i_pure %r0, FieldDescr<tuple3.item0> -> %i2
  18  getfield_gc_r_pure %r0, FieldDescr<tuple3.item1> -> %r1
  23  getfield_gc_i_pure %r0, FieldDescr<tuple3.item2> -> %i3
  28  inline_call_ir_i <JitCode 'write__Signed_arrayPtr_Signed_star_3'>, I[%i0, %i2, %i1], R[] -> %i0
  37  -live- %i0, %i2, %i3, %r1
  40  catch_exception L1
  43  inline_call_ir_i <JitCode 'handle_posix_error__write'>, I[%i0], R[$<* struct rpy_string>] -> %i0
  51  -live- %i0, %i2, %i3, %r1
  54  catch_exception L2
  57  residual_call_ir_v $<* fn free_nonmovingbuffer_ll>, I[%i2, %i3], R[%r1], <CallDescr(iri) EF=2>
  66  int_return %i0
  68  ---
  68  L2:
  68  last_exception -> %i0
  70  last_exc_value -> %r0
  72  L3:
  72  residual_call_ir_v $<* fn free_nonmovingbuffer_ll>, I[%i2, %i3], R[%r1], <CallDescr(iri) EF=2>
  81  -live- %r0
  84  raise %r0
  86  ---
  86  L1:
  86  last_exception -> %i0
  88  last_exc_value -> %r0
  90  goto L3
