summaryrefslogtreecommitdiff
path: root/proto.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-02-23 11:11:12 +0000
committerNicholas Clark <nick@ccl4.org>2006-02-23 11:11:12 +0000
commit180488f8452e93d2afa0f62b189be1cc9ac6ba1a (patch)
tree9383eeeaa7cf0787e424f50616bce24f647f5f52 /proto.h
parent4115f1412e498d2b0cb499d036610a0e9f8e2c4f (diff)
downloadperl-180488f8452e93d2afa0f62b189be1cc9ac6ba1a.tar.gz
Remove get magic from typeglobs. This means that PVGVs holding
typeglobs never need to use SvPVX. This comes at price - typeglobs were using magic get for their stringificiation, and to pass SvOK(), so need to make typeglobs SvOK by default (by sucking SVp_SCREAM into SVf_OK - it's the only flag left), tweak SvSCREAM() to also check SVp_POK, and teach sv_2[inpu]v how to convert globs. However, it should free up SvPVX for the next part of the plan to pointer indirections, and therefore CPU cache pressure. p4raw-id: //depot/perl@27278
Diffstat (limited to 'proto.h')
-rw-r--r--proto.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/proto.h b/proto.h
index 657ca7bbc9..b2d6a93dcb 100644
--- a/proto.h
+++ b/proto.h
@@ -1081,10 +1081,6 @@ PERL_CALLCONV int Perl_magic_getdefelem(pTHX_ SV* sv, MAGIC* mg)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2);
-PERL_CALLCONV int Perl_magic_getglob(pTHX_ SV* sv, MAGIC* mg)
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2);
-
PERL_CALLCONV int Perl_magic_getnkeys(pTHX_ SV* sv, MAGIC* mg)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2);
@@ -2033,6 +2029,11 @@ PERL_CALLCONV CV* Perl_sv_2cv(pTHX_ SV* sv, HV** st, GV** gvp, I32 lref)
PERL_CALLCONV IO* Perl_sv_2io(pTHX_ SV* sv)
__attribute__nonnull__(pTHX_1);
+#ifdef PERL_IN_SV_C
+STATIC char* S_glob_2inpuv(pTHX_ GV* gv, STRLEN *len, bool want_number)
+ __attribute__nonnull__(pTHX_1);
+
+#endif
/* PERL_CALLCONV IV sv_2iv(pTHX_ SV* sv)
__attribute__nonnull__(pTHX_1); */