From 8b54e95fe404dd0bb71f0b87bc6ec588dc53e421 Mon Sep 17 00:00:00 2001 From: "Stephen R. van den Berg" <srb@cuci.nl> Date: Tue, 26 Aug 2014 02:20:25 +0200 Subject: [PATCH] Add stack_revroll(). --- src/interpret.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/interpret.h b/src/interpret.h index 3d0a6c62c2..8c9455170e 100644 --- a/src/interpret.h +++ b/src/interpret.h @@ -469,6 +469,13 @@ PMOD_EXPORT extern void push_text( const char *x ); _sp_[-2]=_; \ } while(0) +#define stack_revroll(args) do { \ + struct svalue *_sp_ = Pike_sp; \ + int _args_ = (args); struct svalue _=_sp_[-1]; \ + memmove(_sp_-_args_+1, _sp_-_args_, (_args_-1)*sizeof(struct svalue)); \ + _sp_[-_args_]=_; \ + } while(0) + #if PIKE_T_INT+NUMBER_NUMBER==0 && defined(HAS___BUILTIN_MEMSET) #define push_zeroes(N) do{ \ ptrdiff_t num_ = (N); \ -- GitLab