   0  getfield_gc_r %r0, FieldDescr<pypy.module.itertools.interp_itertools.W_Product.inst_lst> -> %r2
   5  -live- %r0, %r2
   5  goto_if_not_ptr_iszero %r2, L1
   9  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x0000000186204d08> -> %r2
  13  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst_w_type>
  18  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__w_value>
  23  setfield_gc_r %r2, $<* struct pypy.interpreter.baseobjspace.W_Root>, FieldDescr<pypy.interpreter.error.OperationError.inst__application_traceback>
  28  assert_not_none %r2
  30  -live- %r2
  30  guard_class %r2 -> %i0
  33  -live- %r2
  33  raise %r2
  35  ---
  35  L1:
  35  arraylen_gc %r2, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000000177231bb0> -> %i0
  40  int_sub %i0, $0 -> %i0
  44  new_array_clear %i0, <rpython.jit.backend.llsupport.descr.ArrayDescr object at 0x0000000177231bb0> -> %r1
  49  residual_call_ir_v $<* fn ll_arraycopy__arrayPtr_arrayPtr_Signed_Signed_Signed>, I[$0, $0, %i0], R[%r2, %r1], <CallDescr(rriii) EF=2 OS_ARRAYCOPY>
  60  inline_call_r_r <JitCode 'makespecialisedtuple'>, R[%r1] -> %r2
  66  -live- %r0, %r1, %r2
  66  catch_exception L2
  69  L3:
  69  inline_call_r_v <JitCode 'W_Product.fill_next_result'>, R[%r0]
  74  -live- %r2
  74  ref_return %r2
  76  ---
  76  L2:
  76  goto_if_exception_mismatch $<* struct object_vtable>, L4
  80  new_with_vtable <rpython.jit.backend.llsupport.descr.SizeDescr object at 0x000000017669eb80> -> %r2
  84  setfield_gc_r %r2, %r1, FieldDescr<pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems>
  89  goto L3
  92  ---
  92  L4:
  92  reraise
