summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2021-08-20 15:20:13 +0000
committerNicholas Clark <nick@ccl4.org>2021-10-11 11:30:25 +0000
commit94ee6ed79dbca73d0345b745534477e4017fb990 (patch)
tree2743d0b040c1dce45f0a921cccbaf3c324b71509 /proto.h
parent36149847e29e423be58d70fad50d9908be1d0373 (diff)
downloadperl-94ee6ed79dbca73d0345b745534477e4017fb990.tar.gz
Split the XPVHV body into two variants "normal" and "with aux"
Default to the smaller body, and switch to the larger body if we need to allocate a C<struct xpvhv_aux> (eg need an iterator). This restores the previous small size optimisation for hashes used as objects.
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/proto.h b/proto.h
index 0fe96719b0..7b65b1390c 100644
--- a/proto.h
+++ b/proto.h
@@ -1412,6 +1412,9 @@ PERL_CALLCONV HV* Perl_gv_stashsv(pTHX_ SV* sv, I32 flags);
PERL_CALLCONV void Perl_gv_try_downgrade(pTHX_ GV* gv);
#define PERL_ARGS_ASSERT_GV_TRY_DOWNGRADE \
assert(gv)
+PERL_CALLCONV struct xpvhv_aux* Perl_hv_auxalloc(pTHX_ HV *hv);
+#define PERL_ARGS_ASSERT_HV_AUXALLOC \
+ assert(hv)
PERL_CALLCONV AV** Perl_hv_backreferences_p(pTHX_ HV *hv);
#define PERL_ARGS_ASSERT_HV_BACKREFERENCES_P \
assert(hv)