   0  getfield_gc_r %r0, FieldDescr<pypy.module.itertools.interp_itertools.W_Chain.inst_w_it> -> %r1
   5  -live- %r0, %r1
   8  goto_if_not_ptr_nonzero %r1, L1
  12  L2:
  12  getfield_gc_r %r0, FieldDescr<pypy.module.itertools.interp_itertools.W_Chain.inst_w_it> -> %r1
  17  inline_call_r_r <JitCode 'call_shortcut__star_0'>, R[%r1] -> %r1
  23  -live- %r0, %r1
  26  catch_exception L3
  29  L4:
  29  -live- %r1
  32  goto_if_not_ptr_iszero %r1, L5
  36  ref_return $<* struct pypy.interpreter.baseobjspace.W_Root>
  38  ---
  38  L5:
  38  ref_return %r1
  40  ---
  40  L3:
  40  goto_if_exception_mismatch $<* struct object_vtable>, L6
  44  last_exc_value -> %r1
  46  residual_call_r_r $<* fn W_Chain._handle_error>, R[%r0, %r1], <CallDescr(rr) EF=7> -> %r1
  54  -live- %r1
  57  goto L4
  60  ---
  60  L6:
  60  reraise
  61  ---
  61  L1:
  61  getfield_gc_r %r0, FieldDescr<pypy.module.itertools.interp_itertools.W_Chain.inst_w_iterables> -> %r1
  66  -live- %r0, %r1
  69  guard_class %r1 -> %i0
  72  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_shortcut_next> -> %i0
  77  -live- %i0, %r0, %r1
  80  int_guard_value %i0
  82  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r1
  89  -live- %r0, %r1
  92  guard_class %r1 -> %i0
  95  getfield_raw_i %i0, FieldDescr<pypy.interpreter.baseobjspace.W_Root_vtable.cls_shortcut___iter__> -> %i0
 100  -live- %i0, %r0, %r1
 103  int_guard_value %i0
 105  residual_call_r_r %i0, <IndirectCallTargets>, R[%r1], <CallDescr(r) EF=7> -> %r1
 112  -live- %r0, %r1
 115  setfield_gc_r %r0, %r1, FieldDescr<pypy.module.itertools.interp_itertools.W_Chain.inst_w_it>
 120  goto L2
