From e982f6380c40880b73c9bacb2916f70b09155ca7 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 28 Jun 1993 03:56:39 +0000 Subject: [PATCH] entered into RCS --- sysdeps/m68k/__longjmp.c | 10 +++++++--- sysdeps/unix/bsd/m68k/pipe.S | 5 +++++ sysdeps/unix/bsd/m68k/wait.S | 9 ++++++++- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/sysdeps/m68k/__longjmp.c b/sysdeps/m68k/__longjmp.c index cff37bc..3133e70 100644 --- a/sysdeps/m68k/__longjmp.c +++ b/sysdeps/m68k/__longjmp.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -47,8 +47,12 @@ DEFUN(__longjmp, (env, val), CONST jmp_buf env AND int val) asm volatile(/* Restore the data and address registers. */ "movem%.l %0, d1-d7/a0-a7\n" /* Return to setjmp's caller. */ - "jmp a0@" : - /* No outputs. */ : "g" (env[0].__dregs[0]) +#ifdef __motorola__ + "jmp (a0)" +#else + "jmp a0@" +#endif + : /* No outputs. */ : "g" (env[0].__dregs[0]) /* We don't bother with the clobbers, because this code always jumps out anyway. */ ); diff --git a/sysdeps/unix/bsd/m68k/pipe.S b/sysdeps/unix/bsd/m68k/pipe.S index 4dcf931..547b4f3 100644 --- a/sysdeps/unix/bsd/m68k/pipe.S +++ b/sysdeps/unix/bsd/m68k/pipe.S @@ -19,7 +19,12 @@ Cambridge, MA 02139, USA. */ #include SYSCALL__ (pipe, 1) +#ifdef __motorola__ + move.l 4(sp), a0 + movem.l d0-d1, (a0) +#else movel sp@(4), a0 moveml d0-d1, a0@ +#endif clrl d0 rts diff --git a/sysdeps/unix/bsd/m68k/wait.S b/sysdeps/unix/bsd/m68k/wait.S index 2d4b1b6..927fa33 100644 --- a/sysdeps/unix/bsd/m68k/wait.S +++ b/sysdeps/unix/bsd/m68k/wait.S @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -19,8 +19,15 @@ Cambridge, MA 02139, USA. */ #include SYSCALL__ (wait, 1) +#ifdef __motorola__ + tst.l 4(sp) + beq 1f + movea.l 4(sp), a0 + move.l d1, (a0) +#else tstl sp@(4) beq 1f moveal sp@(4), a0 movel d1, a0@ +#endif 1: rts -- 2.7.4