From 747e2fae43204b65ccf806e75ededd01638e4351 Mon Sep 17 00:00:00 2001 From: Nicholas Clark Date: Sun, 30 Nov 2008 23:27:57 +0000 Subject: [PATCH] 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 --- scope.h | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) 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)) -- 1.8.3.1