Change 34960 by [EMAIL PROTECTED] on 2008/12/01 00:02:17

        Expose save_pushptrptr() and implement SAVESWITCHSTACK() with it.

Affected files ...

... //depot/perl/embed.fnc#659 edit
... //depot/perl/embed.h#792 edit
... //depot/perl/proto.h#990 edit
... //depot/perl/scope.c#240 edit
... //depot/perl/scope.h#97 edit

Differences ...

==== //depot/perl/embed.fnc#659 (text) ====
Index: perl/embed.fnc
--- perl/embed.fnc#658~34959~   2008-11-30 15:45:20.000000000 -0800
+++ perl/embed.fnc      2008-11-30 16:02:17.000000000 -0800
@@ -925,9 +925,10 @@
 Ap     |void   |save_pushptr   |NULLOK void *const ptr|const int type
 #if defined(PERL_IN_SCOPE_C)
 s      |void   |save_pushi32ptr|I32 i|NULLOK void *const ptr|const int type
-s      |void   |save_pushptrptr|NULLOK void *const ptr1 \
-                               |NULLOK void *const ptr2|const int type
 #endif
+: Used by SAVESWITCHSTACK() in pp.c
+p      |void   |save_pushptrptr|NULLOK void *const ptr1 \
+                               |NULLOK void *const ptr2|const int type
 : Used in perly.y
 p      |OP*    |sawparens      |NULLOK OP* o
 : Used in perly.y

==== //depot/perl/embed.h#792 (text+w) ====
Index: perl/embed.h
--- perl/embed.h#791~34959~     2008-11-30 15:45:20.000000000 -0800
+++ perl/embed.h        2008-11-30 16:02:17.000000000 -0800
@@ -809,10 +809,10 @@
 #if defined(PERL_IN_SCOPE_C)
 #ifdef PERL_CORE
 #define save_pushi32ptr                S_save_pushi32ptr
-#define save_pushptrptr                S_save_pushptrptr
 #endif
 #endif
 #ifdef PERL_CORE
+#define save_pushptrptr                Perl_save_pushptrptr
 #define sawparens              Perl_sawparens
 #define scalar                 Perl_scalar
 #endif
@@ -3159,10 +3159,10 @@
 #if defined(PERL_IN_SCOPE_C)
 #ifdef PERL_CORE
 #define save_pushi32ptr(a,b,c) S_save_pushi32ptr(aTHX_ a,b,c)
-#define save_pushptrptr(a,b,c) S_save_pushptrptr(aTHX_ a,b,c)
 #endif
 #endif
 #ifdef PERL_CORE
+#define save_pushptrptr(a,b,c) Perl_save_pushptrptr(aTHX_ a,b,c)
 #define sawparens(a)           Perl_sawparens(aTHX_ a)
 #define scalar(a)              Perl_scalar(aTHX_ a)
 #endif

==== //depot/perl/proto.h#990 (text+w) ====
Index: perl/proto.h
--- perl/proto.h#989~34959~     2008-11-30 15:45:20.000000000 -0800
+++ perl/proto.h        2008-11-30 16:02:17.000000000 -0800
@@ -2915,8 +2915,8 @@
 PERL_CALLCONV void     Perl_save_pushptr(pTHX_ void *const ptr, const int 
type);
 #if defined(PERL_IN_SCOPE_C)
 STATIC void    S_save_pushi32ptr(pTHX_ I32 i, void *const ptr, const int type);
-STATIC void    S_save_pushptrptr(pTHX_ void *const ptr1, void *const ptr2, 
const int type);
 #endif
+PERL_CALLCONV void     Perl_save_pushptrptr(pTHX_ void *const ptr1, void 
*const ptr2, const int type);
 PERL_CALLCONV OP*      Perl_sawparens(pTHX_ OP* o);
 PERL_CALLCONV OP*      Perl_scalar(pTHX_ OP* o);
 #if defined(PERL_IN_OP_C)

==== //depot/perl/scope.c#240 (text) ====
Index: perl/scope.c
--- perl/scope.c#239~34959~     2008-11-30 15:45:20.000000000 -0800
+++ perl/scope.c        2008-11-30 16:02:17.000000000 -0800
@@ -184,8 +184,8 @@
     return sv;
 }
 
-static void
-S_save_pushptrptr(pTHX_ void *const ptr1, void *const ptr2, const int type)
+void
+Perl_save_pushptrptr(pTHX_ void *const ptr1, void *const ptr2, const int type)
 {
     dVAR;
     SSCHECK(3);

==== //depot/perl/scope.h#97 (text) ====
Index: perl/scope.h
--- perl/scope.h#96~34958~      2008-11-30 15:27:57.000000000 -0800
+++ perl/scope.h        2008-11-30 16:02:17.000000000 -0800
@@ -178,10 +178,7 @@
 
 #define SAVESWITCHSTACK(f,t) \
     STMT_START {                                       \
-       SSCHECK(3);                                     \
-       SSPUSHPTR(MUTABLE_SV(f));                       \
-       SSPUSHPTR(MUTABLE_SV(t));                       \
-       SSPUSHINT(SAVEt_SAVESWITCHSTACK);               \
+       save_pushptrptr(MUTABLE_SV(f), MUTABLE_SV(t), SAVEt_SAVESWITCHSTACK); \
        SWITCHSTACK((f),(t));                           \
        PL_curstackinfo->si_stack = (t);                \
     } STMT_END
End of Patch.

Reply via email to