summaryrefslogtreecommitdiff
path: root/embed.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2010-11-03 14:57:11 +0000
committerNicholas Clark <nick@ccl4.org>2010-11-03 15:04:34 +0000
commit25a9ffce153b0e67cfefd260754edeb097da5be7 (patch)
tree6d7e60d1842fa73c3f0fcec7cc9a2e2272baf085 /embed.h
parent7d255dc8b56bf0fe58c3f8a5aa84ba17aade145f (diff)
downloadperl-25a9ffce153b0e67cfefd260754edeb097da5be7.tar.gz
Add Perl_amagic_deref_call() to implement the bulk of tryAMAGICunDEREF_var().
This removes around 300 bytes of object code from each place it was previously inlined. It also provides a better interface - quite a lot of the core currently bodges things by creating a local variable C<SV **sp = &sv> to use the macro. Change the XS::APItest wrapper to amagic_deref_call().
Diffstat (limited to 'embed.h')
-rw-r--r--embed.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/embed.h b/embed.h
index ae2db751cb..0d8321296b 100644
--- a/embed.h
+++ b/embed.h
@@ -28,6 +28,7 @@
#define Gv_AMupdate(a,b) Perl_Gv_AMupdate(aTHX_ a,b)
#define amagic_call(a,b,c,d) Perl_amagic_call(aTHX_ a,b,c,d)
+#define amagic_deref_call(a,b) Perl_amagic_deref_call(aTHX_ a,b)
#define apply_attrs_string(a,b,c,d) Perl_apply_attrs_string(aTHX_ a,b,c,d)
#define atfork_lock Perl_atfork_lock
#define atfork_unlock Perl_atfork_unlock