summaryrefslogtreecommitdiff
path: root/cop.h
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2015-10-17 15:22:05 +0100
committerDavid Mitchell <davem@iabyn.com>2016-02-03 09:18:30 +0000
commitf284fecd86b66528552854be16564b432fd1480c (patch)
tree88c78dba984af5e3d19c84ad254148cdfb81a320 /cop.h
parente992140c0e6f8ddfe08a88cc28a1d24149061d74 (diff)
downloadperl-f284fecd86b66528552854be16564b432fd1480c.tar.gz
reorder 'struct block' fields.
On 64-bit builds, there was a 32-bit hole near the beginning. Shuffle this towards the middle of the struct (just before the blk_u union). Unfortunately this (moved) hole can't be filled by having an I32 at the start of each union member, since struct block_eval is already the largest and has no 32-bit fields. Still, moving further on than some of the hotter fields can't hurt.
Diffstat (limited to 'cop.h')
-rw-r--r--cop.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/cop.h b/cop.h
index 8527384221..8408e093db 100644
--- a/cop.h
+++ b/cop.h
@@ -880,11 +880,11 @@ struct block {
I32 blku_oldsaveix; /* saved PL_savestack_ix */
/* all the fields above must be aligned with same-sized fields as sbu */
I32 blku_oldsp; /* current sp floor: where nextstate pops to */
- COP * blku_oldcop; /* old curcop pointer */
I32 blku_oldmarksp; /* mark stack index */
- I32 blku_oldscopesp; /* scope stack index */
+ COP * blku_oldcop; /* old curcop pointer */
PMOP * blku_oldpm; /* values of pattern match vars */
SSize_t blku_old_tmpsfloor; /* saved PL_tmps_floor */
+ I32 blku_oldscopesp; /* scope stack index */
union {
struct block_sub blku_sub;