   0  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_fd> -> %i0
   5  -live- %i0, %r0, %r1
   8  goto_if_not_int_lt %i0, $0, L1
  13  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3a14e090> -> %r1
  17  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  22  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  27  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
  32  assert_not_none %r1
  34  -live- %r1
  37  raise %r1
  39  ---
  39  L1:
  39  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_readable> -> %i0
  44  -live- %i0, %r0, %r1
  47  goto_if_not %i0, L2
  51  inline_call_r_r <JitCode 'ObjSpace.writebuf_w'>, R[%r1] -> %r1
  57  -live- %r0, %r1
  60  guard_class %r1 -> %i0
  63  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_getlength> -> %i0
  68  -live- %i0, %r0, %r1
  71  int_guard_value %i0
  73  residual_call_r_i %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=5> -> %i1
  80  -live- %i1, %r0, %r1
  83  goto_if_not_int_gt %i1, $64, L3
  88  -live- %i1, %r0, %r1
  91  guard_class %r1 -> %i0
  94  getfield_raw_i %i0, FieldDescr<rpython.rlib.buffer.Buffer_vtable.cls_get_raw_address> -> %i0
  99  -live- %i0, %i1, %r0, %r1
 102  int_guard_value %i0
 104  residual_call_r_i %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %i0
 111  -live- %i0, %i1, %r0, %r1
 114  catch_exception L4
 117  -live- %i0, %i1, %r0, %r1
 120  goto_if_not_int_is_true %i0, L5
 124  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_fd> -> %i2
 129  residual_call_ir_i $<* fn ccall_read__Signed_arrayPtr_Unsigned>, I[%i2, %i0, %i1], R[], <CallDescr(iii) EF=7> -> %i0
 139  -live- %i0, %r1
 142  goto_if_not_int_ge %i0, $0, L6
 147  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x4d6bb9f0> -> %r1
 151  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 156  ref_return %r1
 158  ---
 158  L6:
 158  residual_call_ir_i $<* fn _ll_1_threadlocalref_get__SignedLlT_Signed>, I[$CDefinedIntSymbolic('RPY_TLOFS_rpy_errno')], R[], <CallDescr(i) EF=2 OS_THREADLOCALREF_GET> -> %i0
 166  -live- %i0
 169  goto_if_not_int_eq %i0, $11, L7
 174  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 176  ---
 176  L7:
 176  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x20060af0> -> %r1
 180  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<exceptions.EnvironmentError.inst_strerror>
 185  setfield_gc_i %r1, %i0, FieldDescr<exceptions.EnvironmentError.inst_errno>
 190  inline_call_r_r <JitCode 'wrap_oserror2__exceptions_IOError'>, R[%r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %r1
 198  -live- %r1
 201  assert_not_none %r1
 203  -live- %r1
 206  guard_class %r1 -> %i0
 209  -live- %r1
 212  raise %r1
 214  ---
 214  L5:
 214  L8:
 214  getfield_gc_i %r0, FieldDescr<pypy.module._io.interp_fileio.W_FileIO.inst_fd> -> %i0
 219  inline_call_ir_r <JitCode 'read'>, I[%i0, %i1], R[] -> %r0
 227  -live- %r0, %r1
 230  catch_exception L9
 233  inline_call_ir_v <JitCode 'output_slice'>, I[$0], R[%r1, %r0]
 241  -live- %r0
 244  strlen %r0 -> %i0
 247  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x4d6bb9f0> -> %r1
 251  setfield_gc_i %r1, %i0, FieldDescr<pypy.objspace.std.intobject.W_IntObject.inst_intval>
 256  ref_return %r1
 258  ---
 258  L9:
 258  goto_if_exception_mismatch $<* struct object_vtable>, L10
 262  last_exc_value -> %r1
 264  getfield_gc_i %r1, FieldDescr<exceptions.EnvironmentError.inst_errno> -> %i0
 269  -live- %i0, %r1
 272  goto_if_not_int_eq %i0, $11, L11
 277  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
 279  ---
 279  L11:
 279  inline_call_r_r <JitCode 'wrap_oserror2__exceptions_IOError'>, R[%r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, $<* struct pypy.objspace.std.typeobject.W_TypeObject>] -> %r1
 287  -live- %r1
 290  assert_not_none %r1
 292  -live- %r1
 295  guard_class %r1 -> %i0
 298  -live- %r1
 301  raise %r1
 303  ---
 303  L10:
 303  reraise
 304  ---
 304  L4:
 304  goto_if_exception_mismatch $<* struct object_vtable>, L12
 308  goto L8
 311  ---
 311  L12:
 311  reraise
 312  ---
 312  L3:
 312  goto L8
 315  ---
 315  L2:
 315  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x3a14e3b0> -> %r1
 319  setfield_gc_r %r1, $<* struct rpy_string>, FieldDescr<pypy.interpreter.error.OpErrFmtNoArgs.inst__value>
 324  setfield_gc_r %r1, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
 329  assert_not_none %r1
 331  -live- %r1
 334  raise %r1
