+PERLVAR(I, rs, SV *) /* input record separator $/ */
+PERLVAR(I, last_in_gv, GV *) /* GV used in last <FH> */
+PERLVAR(I, ofsgv, GV *) /* GV of output field separator *, */
+PERLVAR(I, defoutgv, GV *) /* default FH for output */
+PERLVARI(I, chopset, const char *, " \n-") /* $: */
+PERLVAR(I, formtarget, SV *)
+PERLVAR(I, bodytarget, SV *)
+PERLVAR(I, toptarget, SV *)
+
+/* Stashes */
+PERLVAR(I, defstash, HV *) /* main symbol table */
+PERLVAR(I, curstash, HV *) /* symbol table for current package */
+
+PERLVAR(I, restartop, OP *) /* propagating an error from croak? */
+PERLVAR(I, restartjmpenv, JMPENV *) /* target frame for longjmp in die */
+PERLVAR(I, curcop, COP *)
+PERLVAR(I, curstack, AV *) /* THE STACK */
+PERLVAR(I, curstackinfo, PERL_SI *) /* current stack + context */
+PERLVAR(I, mainstack, AV *) /* the stack when nothing funny is
+ happening */
+
+PERLVAR(I, top_env, JMPENV *) /* ptr to current sigjmp environment */
+PERLVAR(I, start_env, JMPENV) /* empty startup sigjmp environment */
+PERLVARI(I, errors, SV *, NULL) /* outstanding queued errors */
+
+/* statics "owned" by various functions */
+PERLVAR(I, hv_fetch_ent_mh, HE*) /* owned by hv_fetch_ent() */
+
+PERLVAR(I, lastgotoprobe, OP*) /* from pp_ctl.c */
+
+/* sort stuff */
+PERLVAR(I, sortcop, OP *) /* user defined sort routine */
+PERLVAR(I, sortstash, HV *) /* which is in some package or other */
+PERLVAR(I, firstgv, GV *) /* $a */
+PERLVAR(I, secondgv, GV *) /* $b */
+
+/* float buffer */
+PERLVAR(I, efloatbuf, char *)
+PERLVAR(I, efloatsize, STRLEN)
+
+/* regex stuff */
+
+PERLVAR(I, reg_state, struct re_save_state)
+
+PERLVAR(I, regdummy, regnode) /* from regcomp.c */
+
+PERLVARI(I, dumpindent, U16, 4) /* number of blanks per dump
+ indentation level */
+
+
+PERLVAR(I, utf8locale, bool) /* utf8 locale detected */
+PERLVARI(I, rehash_seed_set, bool, FALSE) /* 582 hash initialized? */
+
+PERLVARA(I, colors,6, char *) /* from regcomp.c */
+
+/*
+=for apidoc Amn|peep_t|PL_peepp
+
+Pointer to the per-subroutine peephole optimiser. This is a function
+that gets called at the end of compilation of a Perl subroutine (or
+equivalently independent piece of Perl code) to perform fixups of
+some ops and to perform small-scale optimisations. The function is
+called once for each subroutine that is compiled, and is passed, as sole
+parameter, a pointer to the op that is the entry point to the subroutine.
+It modifies the op tree in place.
+
+The peephole optimiser should never be completely replaced. Rather,
+add code to it by wrapping the existing optimiser. The basic way to do
+this can be seen in L<perlguts/Compile pass 3: peephole optimization>.
+If the new code wishes to operate on ops throughout the subroutine's
+structure, rather than just at the top level, it is likely to be more
+convenient to wrap the L</PL_rpeepp> hook.
+
+=cut
+*/
+
+PERLVARI(I, peepp, peep_t, Perl_peep)
+
+/*
+=for apidoc Amn|peep_t|PL_rpeepp
+
+Pointer to the recursive peephole optimiser. This is a function
+that gets called at the end of compilation of a Perl subroutine (or
+equivalently independent piece of Perl code) to perform fixups of some
+ops and to perform small-scale optimisations. The function is called
+once for each chain of ops linked through their C<op_next> fields;
+it is recursively called to handle each side chain. It is passed, as
+sole parameter, a pointer to the op that is at the head of the chain.
+It modifies the op tree in place.
+
+The peephole optimiser should never be completely replaced. Rather,
+add code to it by wrapping the existing optimiser. The basic way to do
+this can be seen in L<perlguts/Compile pass 3: peephole optimization>.
+If the new code wishes to operate only on ops at a subroutine's top level,
+rather than throughout the structure, it is likely to be more convenient
+to wrap the L</PL_peepp> hook.
+
+=cut
+*/
+
+PERLVARI(I, rpeepp, peep_t, Perl_rpeep)
+
+/*
+=for apidoc Amn|Perl_ophook_t|PL_opfreehook
+
+When non-C<NULL>, the function pointed by this variable will be called each time an OP is freed with the corresponding OP as the argument.
+This allows extensions to free any extra attribute they have locally attached to an OP.
+It is also assured to first fire for the parent OP and then for its kids.
+
+When you replace this variable, it is considered a good practice to store the possibly previously installed hook and that you recall it inside your own.
+
+=cut
+*/