summaryrefslogtreecommitdiff
path: root/sv.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2005-06-01 14:33:14 +0000
committerNicholas Clark <nick@ccl4.org>2005-06-01 14:33:14 +0000
commitb79f7545f218479c6361e25f42849d88b9cef87e (patch)
treedd31c7556d5e1a467d5dfb3610c5df0ba7507ed4 /sv.h
parentae7e4cc14be2e40a3d39a27af7d2e07ebcc705e9 (diff)
downloadperl-b79f7545f218479c6361e25f42849d88b9cef87e.tar.gz
Store the xhv_aux structure after the main array.
This reduces the size of HV bodies from 24 to 20 bytes on a 32 bit build. It has the side effect of defined %symbol_table:: now always being true. defined %hash is already deprecated. p4raw-id: //depot/perl@24660
Diffstat (limited to 'sv.h')
-rw-r--r--sv.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sv.h b/sv.h
index a8dcc5bffb..15d90a9e06 100644
--- a/sv.h
+++ b/sv.h
@@ -225,7 +225,10 @@ perform the upgrade if necessary. See C<svtype>.
#define SVf_ROK 0x00080000 /* has a valid reference pointer */
#define SVf_FAKE 0x00100000 /* glob or lexical is just a copy */
-#define SVf_OOK 0x00200000 /* has valid offset value */
+#define SVf_OOK 0x00200000 /* has valid offset value
+ For a PVHV this means that a
+ hv_aux struct is present after the
+ main array */
#define SVf_BREAK 0x00400000 /* refcnt is artificially low - used
* by SV's in final arena cleanup */
#define SVf_READONLY 0x00800000 /* may not be modified */