summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-01-31 16:15:26 +0000
committerEric Andersen <andersen@codepoet.org>2002-01-31 16:15:26 +0000
commit2ad28ec7a7d67b56f950f1d19b209660086f5328 (patch)
tree061feaf987c19fd22b5101c9a96429846a0a8a07
parent5cea2f7d1054fe7d1695fe5f04cff59d5884e20c (diff)
Fix/simplify longjmp. Fix toplevel mips settings
-rw-r--r--Makefile2
-rw-r--r--libc/sysdeps/linux/common/longjmp.c11
2 files changed, 8 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index 7e88c8850..bf3ed35e7 100644
--- a/Makefile
+++ b/Makefile
@@ -69,6 +69,8 @@ headers: dummy
ln -fs $(KERNEL_SOURCE)/include/asm-ppc include/asm; \
elif [ $(TARGET_ARCH) = "v850" ];then \
ln -fs $(KERNEL_SOURCE)/include/asm-v850 include/asm; \
+ elif [ $(TARGET_ARCH) = "mipsel" ];then \
+ ln -fs $(KERNEL_SOURCE)/include/asm-mips include/asm; \
else \
if [ $(HAS_MMU) != "true" ]; then \
ln -fs $(KERNEL_SOURCE)/include/asm-$(TARGET_ARCH)nommu include/asm;\
diff --git a/libc/sysdeps/linux/common/longjmp.c b/libc/sysdeps/linux/common/longjmp.c
index 95c7fef48..3502a0323 100644
--- a/libc/sysdeps/linux/common/longjmp.c
+++ b/libc/sysdeps/linux/common/longjmp.c
@@ -21,10 +21,13 @@
#include <signal.h>
+extern void __longjmp (__jmp_buf __env, int val);
+
+
/* Set the signal mask to the one specified in ENV, and jump
to the position specified in ENV, causing the setjmp
call there to return VAL, or 1 if VAL is 0. */
-void __libc_siglongjmp (sigjmp_buf env, int val)
+void longjmp (sigjmp_buf env, int val)
{
#if 0
/* Perform any cleanups needed by the frames being unwound. */
@@ -40,7 +43,5 @@ void __libc_siglongjmp (sigjmp_buf env, int val)
__longjmp (env[0].__jmpbuf, val ?: 1);
}
-strong_alias (__libc_siglongjmp, __libc_longjmp)
-weak_alias (__libc_siglongjmp, _longjmp)
-weak_alias (__libc_siglongjmp, longjmp)
-weak_alias (__libc_siglongjmp, siglongjmp)
+weak_alias (longjmp, _longjmp)
+weak_alias (longjmp, siglongjmp)