diff options
author | Nicholas Clark <nick@ccl4.org> | 2007-01-15 18:15:54 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2007-01-15 18:15:54 +0000 |
commit | 17ab79462074d95168fb4cd137197d4e6a0696b2 (patch) | |
tree | 2b9c460eeae6816d88242966d344199dcf097747 /pp.h | |
parent | cde874cac37ec0b08192df9c6fec992f97b30566 (diff) | |
download | perl-17ab79462074d95168fb4cd137197d4e6a0696b2.tar.gz |
pp_rv2av and pp_rv2hv have a lot of common code, so it's certainly a
space saving to merge them. Hopefully this will reduce L2 cache misses.
p4raw-id: //depot/perl@29836
Diffstat (limited to 'pp.h')
-rw-r--r-- | pp.h | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -403,7 +403,7 @@ and C<PUSHu>. if ((SvAMAGIC(left)||SvAMAGIC(right))) {\ SV * const tmpsv = amagic_call(left, \ right, \ - meth_enum, \ + (meth_enum), \ (assign)? AMGf_assign: 0); \ if (tmpsv) { \ SPAGAIN; \ @@ -437,7 +437,7 @@ and C<PUSHu>. if(0) goto am_again; /* shut up unused warning */ \ am_again: \ if ((SvAMAGIC(arg))&&\ - (tmpsv=AMG_CALLun_var(arg,meth_enum))) {\ + (tmpsv=AMG_CALLun_var(arg,(meth_enum)))) {\ SPAGAIN; if (shift) sp += shift; \ set(tmpsv); ret; } \ } STMT_END @@ -466,6 +466,8 @@ and C<PUSHu>. } STMT_END #define tryAMAGICunDEREF(meth) tryAMAGICunW(meth,setAGAIN,0,(void)0) +#define tryAMAGICunDEREF_var(meth_enum) \ + tryAMAGICunW_var(meth_enum,setAGAIN,0,(void)0) #define opASSIGN (PL_op->op_flags & OPf_STACKED) #define SETsv(sv) STMT_START { \ |