   0  -live- %i0, %i1, %i2, %r0
   3  goto_if_not_int_eq %i1, $4, L1
   8  int_copy $2 -> %i1
  11  int_copy $True -> %i3
  14  L2:
  14  residual_call_ir_r $<* fn _operate>, I[%i0, %i1, %i2, $'\x00'], R[%r0, $<* struct rpy_string>], <CallDescr(iriiir) EF=7> -> %r0
  27  -live- %i0, %i3, %r0
  30  getfield_gc_r_pure %r0, FieldDescr<tuple3.item0> -> %r1
  35  getfield_gc_i_pure %r0, FieldDescr<tuple3.item1> -> %i2
  40  getfield_gc_i_pure %r0, FieldDescr<tuple3.item2> -> %i1
  45  -live- %i0, %i1, %i2, %i3, %r1
  48  goto_if_not %i3, L3
  52  int_and $0, $4294967295 -> %i2
  56  setfield_raw_i %i0, %i2, FieldDescr<z_stream.c_avail_in>
  61  int_signext $4, $4 -> %i2
  65  residual_call_ir_i $<* fn ccall_inflate__z_streamPtr_INT>, I[%i0, %i2], R[], <CallDescr(ii) EF=7> -> %i2
  74  -live- %i0, %i1, %i2, %r1
  77  goto_if_not_int_lt %i2, $0, L4
  82  inline_call_ir_r <JitCode 'fromstream'>, I[%i0, %i2], R[$<* struct rpy_string>] -> %r0
  91  -live- %r0
  94  assert_not_none %r0
  96  -live- %r0
  99  guard_class %r0 -> %i1
 102  -live- %r0
 105  raise %r0
 107  ---
 107  L4:
 107  L5:
 107  int_eq %i2, $1 -> %i2
 111  new <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000555b00876170> -> %r0
 115  setfield_gc_r %r0, %r1, FieldDescr<tuple3.item0>
 120  setfield_gc_i %r0, %i2, FieldDescr<tuple3.item1>
 125  setfield_gc_i %r0, %i1, FieldDescr<tuple3.item2>
 130  ref_return %r0
 132  ---
 132  L3:
 132  goto L5
 135  ---
 135  L1:
 135  int_copy $False -> %i3
 138  goto L2
