Pushing to stack after EXTEND doesn't require *X*PUSH
authorSteffen Mueller <smueller@cpan.org>
Mon, 22 Oct 2012 13:47:04 +0000 (15:47 +0200)
committerSteffen Mueller <smueller@cpan.org>
Mon, 22 Oct 2012 13:47:04 +0000 (15:47 +0200)
This just converts a few (m)?XPUSH(s|p|...) to (m)?PUSH(s|p|...) that
follow an explicit call to EXTEND.

sv.c

diff --git a/sv.c b/sv.c
index 9f9ef1c..bcf3e6d 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -13716,8 +13716,8 @@ Perl_sv_recode_to_utf8(pTHX_ SV *sv, SV *encoding)
        save_re_context();
        PUSHMARK(sp);
        EXTEND(SP, 3);
-       XPUSHs(encoding);
-       XPUSHs(sv);
+       PUSHs(encoding);
+       PUSHs(sv);
 /*
   NI-S 2002/07/09
   Passing sv_yes is wrong - it needs to be or'ed set of constants
@@ -13787,12 +13787,12 @@ Perl_sv_cat_decode(pTHX_ SV *dsv, SV *encoding,
        save_re_context();
        PUSHMARK(sp);
        EXTEND(SP, 6);
-       XPUSHs(encoding);
-       XPUSHs(dsv);
-       XPUSHs(ssv);
+       PUSHs(encoding);
+       PUSHs(dsv);
+       PUSHs(ssv);
        offsv = newSViv(*offset);
-       mXPUSHs(offsv);
-       mXPUSHp(tstr, tlen);
+       mPUSHs(offsv);
+       mPUSHp(tstr, tlen);
        PUTBACK;
        call_method("cat_decode", G_SCALAR);
        SPAGAIN;