summaryrefslogtreecommitdiff
path: root/intrpvar.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2011-05-02 22:22:06 +0100
committerNicholas Clark <nick@ccl4.org>2011-06-12 18:36:24 +0200
commit30b0736d971c494432c032b4ca9fd2e8dcd31680 (patch)
treed8d995e5b83acb1e7c379c01f4a3104fa344b924 /intrpvar.h
parenteeb6b84165f37835a92b974fba01c7e4bbf9fe3f (diff)
downloadperl-30b0736d971c494432c032b4ca9fd2e8dcd31680.tar.gz
Reorder interpreter struct to remove alignment holes
On a LP64 system the interpreter struct should now be 8 bytes smaller.
Diffstat (limited to 'intrpvar.h')
-rw-r--r--intrpvar.h21
1 files changed, 10 insertions, 11 deletions
diff --git a/intrpvar.h b/intrpvar.h
index 83b4fdccf7..9dda6a3ab1 100644
--- a/intrpvar.h
+++ b/intrpvar.h
@@ -251,17 +251,20 @@ PERLVAR(Ilocalizing, U8) /* are we processing a local() list? */
PERLVAR(Icolorset, bool) /* from regcomp.c */
PERLVAR(Iin_eval, U8) /* trap "fatal" errors? */
PERLVAR(Itainted, bool) /* using variables controlled by $< */
-
-/* current phase the interpreter is in */
-PERLVARI(Iphase, enum perl_phase, PERL_PHASE_CONSTRUCT)
+PERLVAR(Itainting, bool) /* doing taint checks */
/* This value may be set when embedding for full cleanup */
/* 0=none, 1=full, 2=full with checks */
/* mod_perl is special, and also assigns a meaning -1 */
PERLVARI(Iperl_destruct_level, signed char, 0)
+/* current phase the interpreter is in */
+PERLVARI(Iphase, enum perl_phase, PERL_PHASE_CONSTRUCT)
+
PERLVAR(Iperldb, U32)
+PERLVAR(Isignals, U32) /* Using which pre-5.8 signals */
+
/* pseudo environmental stuff */
PERLVAR(Iorigargc, int)
PERLVAR(Iorigargv, char **)
@@ -297,14 +300,12 @@ The C variable which corresponds to Perl's $^W warning variable.
*/
PERLVAR(Idowarn, U8)
- /* Space for a U8 */
PERLVAR(Isawampersand, bool) /* must save all match strings */
PERLVAR(Iunsafe, bool)
PERLVAR(Iexit_flags, U8) /* was exit() unexpected, etc. */
PERLVAR(Isrand_called, bool)
-/* Part of internal state, but makes the 16th 1 byte variable in a row. */
-PERLVAR(Itainting, bool) /* doing taint checks */
PERLVARI(Iin_load_module, bool, FALSE) /* to prevent recursions in PerlIO_find_layer */
+ /* Space for a U16 */
PERLVAR(Iinplace, char *)
PERLVAR(Ie_script, SV *)
@@ -689,10 +690,6 @@ PERLVARI(Iunitcheckav_save, AV*, NULL) /* save UNITCHECK{}s when compiling */
PERLVARI(Iclocktick, long, 0) /* this many times() ticks in a second */
-PERLVAR(Isignals, U32) /* Using which pre-5.8 signals */
-
-PERLVAR(Ireentrant_retint, int) /* Integer return value from reentrant functions */
-
PERLVAR(Istashcache, HV *) /* Cache to speed up S_method_common */
/* Hooks to shared SVs and locks. */
@@ -740,11 +737,13 @@ PERLVARI(Iutf8_foldable, HV *, NULL)
PERLVAR(Icustom_ops, HV *) /* custom op registrations */
+PERLVAR(Ireentrant_retint, int) /* Integer return value from reentrant functions */
+
/* The last unconditional member of the interpreter structure when 5.10.0 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. */
-#define PERL_LAST_5_16_0_INTERP_MEMBER Icustom_ops
+#define PERL_LAST_5_16_0_INTERP_MEMBER Ireentrant_retint
#ifdef PERL_IMPLICIT_CONTEXT
PERLVARI(Imy_cxt_size, int, 0) /* size of PL_my_cxt_list */