From: Nicholas Clark Date: Sun, 30 Nov 2008 23:27:57 +0000 (+0000) Subject: Re-implement the macros SAVECOMPPAD(), SAVECOMPILEWARNINGS(), X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=747e2fae43204b65ccf806e75ededd01638e4351;p=p5sagit%2Fp5-mst-13.2.git Re-implement the macros SAVECOMPPAD(), SAVECOMPILEWARNINGS(), SAVEPARSER() in terms of save_pushptr(). This shinks the exectuable by about 4K. Maybe some of the other scope.h macros should become functions. p4raw-id: //depot/perl@34958 --- diff --git a/scope.h b/scope.h index e910388..6eddb19 100644 --- a/scope.h +++ b/scope.h @@ -174,12 +174,7 @@ Closing bracket on a callback. See C and L. SSPUSHINT(SAVEt_HINTS); \ } STMT_END -#define SAVECOMPPAD() \ - STMT_START { \ - SSCHECK(2); \ - SSPUSHPTR(MUTABLE_SV(PL_comppad)); \ - SSPUSHINT(SAVEt_COMPPAD); \ - } STMT_END +#define SAVECOMPPAD() save_pushptr(MUTABLE_SV(PL_comppad), SAVEt_COMPPAD) #define SAVESWITCHSTACK(f,t) \ STMT_START { \ @@ -204,12 +199,7 @@ Closing bracket on a callback. See C and L. could have done savefreesharedpvREF, but this way actually seems cleaner, as it simplifies the code that does the saves, and reduces the load on the save stack. */ -#define SAVECOMPILEWARNINGS() \ - STMT_START { \ - SSCHECK(2); \ - SSPUSHPTR(PL_compiling.cop_warnings); \ - SSPUSHINT(SAVEt_COMPILE_WARNINGS); \ - } STMT_END +#define SAVECOMPILEWARNINGS() save_pushptr(PL_compiling.cop_warnings, SAVEt_COMPILE_WARNINGS) #define SAVESTACK_CXPOS() \ STMT_START { \ @@ -219,12 +209,7 @@ Closing bracket on a callback. See C and L. SSPUSHINT(SAVEt_STACK_CXPOS); \ } STMT_END -#define SAVEPARSER(p) \ - STMT_START { \ - SSCHECK(2); \ - SSPUSHPTR(p); \ - SSPUSHINT(SAVEt_PARSER); \ - } STMT_END +#define SAVEPARSER(p) save_pushptr((p), SAVEt_PARSER) #ifdef USE_ITHREADS # define SAVECOPSTASH(c) SAVEPPTR(CopSTASHPV(c))