summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-04-03 12:33:29 +0000
committerEric Andersen <andersen@codepoet.org>2002-04-03 12:33:29 +0000
commit30e35d4aadb5a5b06c5cd4a52910a2258af48858 (patch)
tree9af9992bcac879e4a47813a4c1b7eece85764606
parent04991fedf4e4dc73713dc6ea6b483c7cbb059999 (diff)
Revert this file back to where it was so m68k can compile again.
Oops. I'd hosed things up for m68k with the header file rework. -Erik
-rw-r--r--libc/sysdeps/linux/m68k/bits/setjmp.h47
1 files changed, 22 insertions, 25 deletions
diff --git a/libc/sysdeps/linux/m68k/bits/setjmp.h b/libc/sysdeps/linux/m68k/bits/setjmp.h
index 2c2b3ee15..ea8045df7 100644
--- a/libc/sysdeps/linux/m68k/bits/setjmp.h
+++ b/libc/sysdeps/linux/m68k/bits/setjmp.h
@@ -1,36 +1,18 @@
-/* Copyright (C) 1997, 1998 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
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-/* Define the machine-dependent type `jmp_buf'. m68k version. */
+/* Copyright (C) 2002, David McCullough <davidm@snapgear.com> */
+/* This file is released under the LGPL, any version you like */
#ifndef _SETJMP_H
# error "Never include <bits/setjmp.h> directly; use <setjmp.h> instead."
#endif
+#ifndef _ASM
+
typedef struct
{
- /* There are eight 4-byte data registers, but D0 is not saved. */
- long int __dregs[7];
-
- /* There are six 4-byte address registers, plus the FP and SP. */
- int *__aregs[6];
- int *__fp;
- int *__sp;
+ unsigned long __dregs[6]; /* save d2 - d7 */
+ unsigned long __aregs[6]; /* save a2 - a7 */
+ unsigned long __pc; /* the return address */
#if defined __HAVE_68881__ || defined __HAVE_FPU__
/* There are eight floating point registers which
@@ -40,6 +22,21 @@ typedef struct
} __jmp_buf[1];
+#endif /* _ASM */
+
+#define JB_REGS 0
+#define JB_DREGS 0
+#define JB_AREGS 24
+#define JB_PC 48
+#define JB_FPREGS 52
+
+#if defined __HAVE_68881__ || defined __HAVE_FPU__
+# define JB_SIZE 76
+#else
+# define JB_SIZE 52
+#endif
+
+
/* Test if longjmp to JMPBUF would unwind the frame
containing a local variable at ADDRESS. */
#define _JMPBUF_UNWINDS(jmpbuf, address) \