summaryrefslogtreecommitdiff
path: root/cop.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2007-05-15 07:36:57 +0000
committerNicholas Clark <nick@ccl4.org>2007-05-15 07:36:57 +0000
commitd7f23a062a625a1f0067a15d3cea5401ea21006c (patch)
treed27293a7fec62e65eab4b9efa9a3dd5ea20764db /cop.h
parenta4021b77cd29f9c157cba167a52eb3525afaf9ac (diff)
downloadperl-d7f23a062a625a1f0067a15d3cea5401ea21006c.tar.gz
BASEOP isn't an exact multiple of 8 bytes, so reordering pmop and cop
to put a 32 bit member first elimiates structure padding on LP64. p4raw-id: //depot/perl@31218
Diffstat (limited to 'cop.h')
-rw-r--r--cop.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/cop.h b/cop.h
index 8b599172d8..725aab460e 100644
--- a/cop.h
+++ b/cop.h
@@ -135,6 +135,9 @@ typedef struct jmpenv JMPENV;
struct cop {
BASEOP
+ /* On LP64 putting this here takes advantage of the fact that BASEOP isn't
+ an exact multiple of 8 bytes to save structure padding. */
+ line_t cop_line; /* line # of this command */
char * cop_label; /* label for this construct */
#ifdef USE_ITHREADS
char * cop_stashpv; /* package line was compiled in */
@@ -145,7 +148,6 @@ struct cop {
#endif
U32 cop_hints; /* hints bits from pragmata */
U32 cop_seq; /* parse sequence number */
- line_t cop_line; /* line # of this command */
/* Beware. mg.c and warnings.pl assume the type of this is STRLEN *: */
STRLEN * cop_warnings; /* lexical warnings bitmask */
/* compile time state of %^H. See the comment in op.c for how this is