summaryrefslogtreecommitdiff
path: root/embed.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2009-05-18 16:12:21 +0100
committerNicholas Clark <nick@ccl4.org>2009-05-18 16:12:21 +0100
commit538f2e763fb7d8e8be3faeafc31371e06e22ce2b (patch)
tree9da298b8a01722bd1130b88ffd69578578258831 /embed.h
parentefc36d52fb6a79de18cc6fc155712ba20b7d0414 (diff)
downloadperl-538f2e763fb7d8e8be3faeafc31371e06e22ce2b.tar.gz
Add S_sv_dup_inc_multiple(), used in place of loops that call sv_dup_inc().
Just 4 uses already give a size saving with gcc -Os.
Diffstat (limited to 'embed.h')
-rw-r--r--embed.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/embed.h b/embed.h
index 605cf2274a..e320dc5654 100644
--- a/embed.h
+++ b/embed.h
@@ -1125,6 +1125,11 @@
#define dirp_dup Perl_dirp_dup
#define gp_dup Perl_gp_dup
#define mg_dup Perl_mg_dup
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define sv_dup_inc_multiple S_sv_dup_inc_multiple
+#endif
+#endif
#define sv_dup Perl_sv_dup
#define rvpv_dup Perl_rvpv_dup
#define parser_dup Perl_parser_dup
@@ -3454,6 +3459,11 @@
#define dirp_dup(a) Perl_dirp_dup(aTHX_ a)
#define gp_dup(a,b) Perl_gp_dup(aTHX_ a,b)
#define mg_dup(a,b) Perl_mg_dup(aTHX_ a,b)
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define sv_dup_inc_multiple(a,b,c,d) S_sv_dup_inc_multiple(aTHX_ a,b,c,d)
+#endif
+#endif
#define sv_dup(a,b) Perl_sv_dup(aTHX_ a,b)
#define rvpv_dup(a,b,c) Perl_rvpv_dup(aTHX_ a,b,c)
#define parser_dup(a,b) Perl_parser_dup(aTHX_ a,b)