Global Variables */
/***********************************************/ /* Global only to current thread */ /***********************************************/
/* Don't forget to re-run embed.pl to propagate changes! */
/* The 'T' prefix is only needed for vars that need appropriate #defines * generated when built with or without USE_5005THREADS. It is also used * to generate the appropriate export list for win32. * * When building without USE_5005THREADS, these variables will be truly global. * When building without USE_5005THREADS but with MULTIPLICITY, these variables * will be global per-interpreter. */
/* Important ones in the first cache line (if alignment is done right) */
PERLVAR(Tstack_sp, SV **) /* top of the stack */ #ifdef OP_IN_REGISTER PERLVAR(Topsave, OP *) #else PERLVAR(Top, OP *) /* currently executing op */ #endif PERLVAR(Tcurpad, SV **) /* active pad (lexicals+tmps) */
PERLVAR(Tstack_base, SV **) PERLVAR(Tstack_max, SV **)
PERLVAR(Tscopestack, I32 *) /* scopes we've ENTERed */ PERLVAR(Tscopestack_ix, I32) PERLVAR(Tscopestack_max,I32)
PERLVAR(Tsavestack, ANY *) /* items that need to be restored when LEAVEing scopes we've ENTERed */ PERLVAR(Tsavestack_ix, I32) PERLVAR(Tsavestack_max, I32)
PERLVAR(Ttmps_stack, SV **) /* mortals we've made */ PERLVARI(Ttmps_ix, I32, -1) PERLVARI(Ttmps_floor, I32, -1) PERLVAR(Ttmps_max, I32)
PERLVAR(Tmarkstack, I32 *) /* stack_sp locations we're remembering */ PERLVAR(Tmarkstack_ptr, I32 *) PERLVAR(Tmarkstack_max, I32 *)
PERLVAR(TSv, SV *) /* used to hold temporary values */ PERLVAR(TXpv, XPV *) /* used to hold temporary values */
/* =for apidoc Amn|STRLEN|PL_na
A convenience variable which is typically used with SvPV when one doesn't care about the length of the string. It is usually more efficient to either declare a local variable and use that instead or to use the SvPV_nolen macro.
The input record separator - $/ in Perl space.
The GV which was last used for a filehandle input operation. (<FH>)
The output field separator - $, in Perl space.