   0  -live- %i0, %i1, %i2, %r0
   0  goto_if_not_int_eq %i1, $4, L1
   5  int_copy $2 -> %i1
   8  int_copy $True -> %i3
  11  L2:
  11  residual_call_ir_r $<* fn _operate>, I[%i0, %i1, %i2, $'\x00'], R[%r0, $<* struct rpy_string>], <CallDescr(iriiir) EF=7> -> %r0
  24  -live- %i0, %i3, %r0
  24  getfield_gc_r_pure %r0, FieldDescr<tuple3.item0> -> %r1
  29  getfield_gc_i_pure %r0, FieldDescr<tuple3.item1> -> %i2
  34  getfield_gc_i_pure %r0, FieldDescr<tuple3.item2> -> %i1
  39  -live- %i0, %i1, %i2, %i3, %r1
  39  goto_if_not %i3, L3
  43  int_and $0, $4294967295 -> %i2
  47  setfield_raw_i %i0, %i2, FieldDescr<z_stream.c_avail_in>
  52  int_signext $4, $4 -> %i2
  56  residual_call_ir_i $<* fn ccall_inflate__z_streamPtr_INT>, I[%i0, %i2], R[], <CallDescr(ii) EF=7> -> %i2
  65  -live- %i0, %i1, %i2, %r1
  65  -live- %i0, %i1, %i2, %r1
  65  goto_if_not_int_lt %i2, $0, L4
  70  inline_call_ir_r <JitCode 'fromstream'>, I[%i0, %i2], R[$<* struct rpy_string>] -> %r0
  79  -live- %r0
  79  assert_not_none %r0
  81  -live- %r0
  81  guard_class %r0 -> %i1
  84  -live- %r0
  84  raise %r0
  86  ---
  86  L4:
  86  L5:
  86  int_eq %i2, $1 -> %i2
  90  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000002aa87601750> -> %r0
  94  setfield_gc_r %r0, %r1, FieldDescr<tuple3.item0>
  99  setfield_gc_i %r0, %i2, FieldDescr<tuple3.item1>
 104  setfield_gc_i %r0, %i1, FieldDescr<tuple3.item2>
 109  ref_return %r0
 111  ---
 111  L3:
 111  goto L5
 114  ---
 114  L1:
 114  int_copy $False -> %i3
 117  goto L2
