From 2782be74517b3cbf69c3d1206d23365bcdc9b04d Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 4 Dec 1994 19:08:38 +0000 Subject: [PATCH] Use `movel' for pushes and pops. --- sysdeps/m68k/bsd-_setjmp.S | 17 ++++++++++------- sysdeps/m68k/bsd-setjmp.S | 17 ++++++++++------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/sysdeps/m68k/bsd-_setjmp.S b/sysdeps/m68k/bsd-_setjmp.S index 5525534..a0b6393 100644 --- a/sysdeps/m68k/bsd-_setjmp.S +++ b/sysdeps/m68k/bsd-_setjmp.S @@ -26,14 +26,17 @@ Cambridge, MA 02139, USA. */ #ifdef MOTOROLA_SYNTAX #define d0 %d0 #define d1 %d1 -#define popl pop.l -#define pushl push.l +#define PUSH(reg) move.l reg, -(%esp) +#define POP(reg) move.l (%esp)+, reg +#else +#define PUSH(reg) movel reg, sp@- +#define POP(reg) movel sp@+, reg #endif ENTRY (_setjmp) - popl d0 /* Pop return PC. */ - popl d1 /* Pop jmp_buf argument. */ - pushl #0 /* Push second argument of zero. */ - pushl d1 /* Push back first argument. */ - pushl d0 /* Push back return PC. */ + POP (d0) /* Pop return PC. */ + POP (d1) /* Pop jmp_buf argument. */ + PUSH (#0) /* Push second argument of zero. */ + PUSH (d1) /* Push back first argument. */ + PUSH (d0) /* Push back return PC. */ jmp C_SYMBOL_NAME (__sigsetjmp) diff --git a/sysdeps/m68k/bsd-setjmp.S b/sysdeps/m68k/bsd-setjmp.S index 52c8e2b..d218b44 100644 --- a/sysdeps/m68k/bsd-setjmp.S +++ b/sysdeps/m68k/bsd-setjmp.S @@ -26,14 +26,17 @@ Cambridge, MA 02139, USA. */ #ifdef MOTOROLA_SYNTAX #define d0 %d0 #define d1 %d1 -#define popl pop.l -#define pushl push.l +#define PUSH(reg) move.l reg, -(%esp) +#define POP(reg) move.l (%esp)+, reg +#else +#define PUSH(reg) movel reg, sp@- +#define POP(reg) movel sp@+, reg #endif ENTRY (setjmp) - popl d0 /* Pop return PC. */ - popl d1 /* Pop jmp_buf argument. */ - pushl #1 /* Push second argument of one. */ - pushl d1 /* Push back first argument. */ - pushl d0 /* Push back return PC. */ + POP (d0) /* Pop return PC. */ + POP (d1) /* Pop jmp_buf argument. */ + PUSH (#1) /* Push second argument of one. */ + PUSH (d1) /* Push back first argument. */ + PUSH (d0) /* Push back return PC. */ jmp C_SYMBOL_NAME (__sigsetjmp) -- 2.7.4