X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/f65e70f560c80556143956eb9980619a9dfbe2f4..c3ad4e544a4a43eaba83ffd50a5107970374e801:/intrpvar.h?ds=sidebyside diff --git a/intrpvar.h b/intrpvar.h index 32a9983..57918b2 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -33,11 +33,7 @@ * Important ones in the first cache line (if alignment is done right) */ PERLVAR(I, stack_sp, SV **) /* top of the stack */ -#ifdef OP_IN_REGISTER -PERLVAR(I, opsave, OP *) -#else PERLVAR(I, op, OP *) /* currently executing op */ -#endif PERLVAR(I, curpad, SV **) /* active pad (lexicals+tmps) */ PERLVAR(I, stack_base, SV **) @@ -53,9 +49,9 @@ PERLVAR(I, scopestack_ix, I32) PERLVAR(I, scopestack_max, I32) PERLVAR(I, tmps_stack, SV **) /* mortals we've made */ -PERLVARI(I, tmps_ix, I32, -1) -PERLVARI(I, tmps_floor, I32, -1) -PERLVAR(I, tmps_max, I32) +PERLVARI(I, tmps_ix, SSize_t, -1) +PERLVARI(I, tmps_floor, SSize_t, -1) +PERLVAR(I, tmps_max, SSize_t) PERLVARI(I, sub_generation, U32, 1) /* incr to invalidate method cache */ @@ -80,6 +76,7 @@ PERLVAR(I, tainted, bool) /* using variables controlled by $< */ PERLVAR(I, delaymagic, U16) /* ($<,$>) = ... */ PERLVAR(I, localizing, U8) /* are we processing a local() list? */ PERLVAR(I, in_eval, U8) /* trap "fatal" errors? */ +PERLVAR(I, defgv, GV *) /* the *_ glob */ /* =for apidoc mn|bool|PL_dowarn @@ -112,20 +109,16 @@ PERLVAR(I, mainstack, AV *) /* the stack when nothing funny is /* memory management */ PERLVAR(I, sv_count, IV) /* how many SV* are currently allocated */ -PERLVAR(I, sv_objcount, IV) /* DEPRECATED AND UNMAINTAINED. - * Will be removed in Perl 5.20. - * Used to be: how many objects are currently allocated. */ PERLVAR(I, sv_root, SV *) /* storage for SVs belonging to interp */ PERLVAR(I, sv_arenaroot, SV *) /* list of areas for garbage collection */ -PERLVAR(I, reg_state, struct re_save_state) - /* fake PMOP that PL_curpm points to while in (?{}) so $1 et al are visible */ PERLVARI(I, reg_curpm, PMOP*, NULL) /* the currently active slab in a chain of slabs of regmatch states, - * and the currently active state within that slab */ + * and the currently active state within that slab. This stack of states + * is shared amongst re-entrant calls to the regex engine */ PERLVARI(I, regmatch_slab, regmatch_slab *, NULL) PERLVAR(I, regmatch_state, regmatch_state *) @@ -178,6 +171,7 @@ PERLVAR(I, statgv, GV *) PERLVARI(I, statname, SV *, NULL) #ifdef HAS_TIMES +/* Will be removed soon after v5.21.4. See RT #121351 */ PERLVAR(I, timesbuf, struct tms) #endif @@ -188,7 +182,7 @@ The input record separator - C<$/> in Perl space. =for apidoc mn|GV*|PL_last_in_gv -The GV which was last used for a filehandle input operation. (C<< >>) +The GV which was last used for a filehandle input operation. (C<< >>) =for apidoc mn|GV*|PL_ofsgv @@ -229,16 +223,15 @@ PERLVAR(I, secondgv, GV *) /* $b */ PERLVAR(I, efloatbuf, char *) PERLVAR(I, efloatsize, STRLEN) -PERLVAR(I, regdummy, regnode) /* from regcomp.c */ - PERLVARI(I, dumpindent, U16, 4) /* number of blanks per dump indentation level */ PERLVAR(I, exit_flags, U8) /* was exit() unexpected, etc. */ PERLVAR(I, utf8locale, bool) /* utf8 locale detected */ +PERLVAR(I, in_utf8_CTYPE_locale, bool) -PERLVARA(I, colors,6, char *) /* from regcomp.c */ +PERLVARA(I, colors,6, char *) /* values from PERL_RE_COLORS env var */ /* =for apidoc Amn|peep_t|PL_peepp @@ -355,7 +348,6 @@ PERLVAR(I, psig_pend, int *) /* per-signal "count" of pending */ /* shortcuts to various I/O objects */ PERLVAR(I, stdingv, GV *) /* *STDIN */ PERLVAR(I, stderrgv, GV *) /* *STDERR */ -PERLVAR(I, defgv, GV *) PERLVAR(I, argvgv, GV *) /* *ARGV */ PERLVAR(I, argvoutgv, GV *) /* *ARGVOUT */ PERLVAR(I, argvout_stack, AV *) @@ -539,12 +531,12 @@ PERLVAR(I, subline, I32) /* line this subroutine began on */ PERLVAR(I, min_intro_pending, I32) /* start of vars to introduce */ PERLVAR(I, max_intro_pending, I32) /* end of vars to introduce */ -PERLVAR(I, padix, I32) /* max used index in current "register" pad */ +PERLVAR(I, padix, I32) /* lowest unused index - 1 + in current "register" pad */ +PERLVAR(I, constpadix, I32) /* lowest unused for constants */ PERLVAR(I, padix_floor, I32) /* how low may inner block reset padix */ -PERLVAR(I, hints, U32) /* pragma-tic compile-time flags */ - #ifdef USE_LOCALE_COLLATE PERLVAR(I, collation_name, char *) /* Name of current collation */ PERLVAR(I, collxfrm_base, Size_t) /* Basic overhead in *xfrm() */ @@ -559,7 +551,7 @@ PERLVAR(I, sawampersand, U8) /* must save all match strings */ #endif PERLVAR(I, unsafe, bool) -PERLVAR(I, colorset, bool) /* from regcomp.c */ +PERLVAR(I, colorset, bool) /* PERL_RE_COLORS env var is in use */ /* current phase the interpreter is in for ordering this structure to remove holes, we're assuming that this is 4 @@ -575,7 +567,7 @@ PERLVARI(I, perl_destruct_level, signed char, 0) #ifdef USE_LOCALE_NUMERIC -PERLVARI(I, numeric_standard, bool, TRUE) +PERLVARI(I, numeric_standard, int, TRUE) /* Assume simple numerics */ PERLVARI(I, numeric_local, bool, TRUE) /* Assume local numerics */ @@ -585,9 +577,10 @@ PERLVAR(I, numeric_radix_sv, SV *) /* The radix separator if not '.' */ #endif /* !USE_LOCALE_NUMERIC */ /* Unicode inversion lists */ -PERLVAR(I, ASCII, SV *) PERLVAR(I, Latin1, SV *) +PERLVAR(I, UpperLatin1, SV *) /* Code points 128 - 255 */ PERLVAR(I, AboveLatin1, SV *) +PERLVAR(I, InBitmap, SV *) PERLVAR(I, NonL1NonFinalFold, SV *) PERLVAR(I, HasMultiCharFold, SV *) @@ -605,7 +598,6 @@ PERLVAR(I, utf8_charname_continue, SV *) PERLVARA(I, utf8_swash_ptrs, POSIX_SWASH_COUNT, SV *) PERLVARA(I, Posix_ptrs, POSIX_CC_COUNT, SV *) -PERLVARA(I, L1Posix_ptrs, POSIX_CC_COUNT, SV *) PERLVARA(I, XPosix_ptrs, POSIX_CC_COUNT, SV *) PERLVAR(I, last_swash_hv, HV *) @@ -744,7 +736,7 @@ PERLVAR(I, debug_pad, struct perl_debug_pad) /* always needed because of the re /* Hook for File::Glob */ PERLVARI(I, globhook, globhook_t, NULL) -/* The last unconditional member of the interpreter structure when 5.19.1 was +/* The last unconditional member of the interpreter structure when 5.21.4 was released. The offset of the end of this is baked into a global variable in any shared perl library which will allow a sanity test in future perl releases. */ @@ -768,16 +760,24 @@ PERLVAR(I, memory_debug_header, struct perl_memory_debug_header) PERLVARI(I, dumper_fd, int, -1) #endif -#ifdef PERL_MAD -PERLVARI(I, madskills, bool, FALSE) /* preserve all syntactic info */ - /* (MAD = Misc Attribute Decoration) */ -PERLVARI(I, xmlfp, PerlIO *, NULL) -#endif #ifdef DEBUG_LEAKING_SCALARS PERLVARI(I, sv_serial, U32, 0) /* SV serial number, used in sv.c */ #endif +PERLVARA(I, sv_consts, SV_CONSTS_COUNT, SV*) /* constant SVs with precomputed hash value */ + +#ifdef PERL_TRACE_OPS +PERLVARA(I, op_exec_cnt, OP_max+2, UV) /* Counts of executed OPs of the given type. + If PERL_TRACE_OPS is enabled, we'll dump + a summary count of all ops executed in the + program at perl_destruct time. For + profiling/debugging only. Works only if + DEBUGGING is enabled, too. */ +#endif + +PERLVAR(I, random_state, PL_RANDOM_STATE_TYPE) + /* If you are adding a U8 or U16, check to see if there are 'Space' comments * above on where there are gaps which currently will be structure padding. */