aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mach/alpha
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-04-08 07:06:57 +0000
committerRoland McGrath <roland@gnu.org>2002-04-08 07:06:57 +0000
commitf899db60945ef4c080ffe4393e55ef2fbcbbf6c0 (patch)
tree159ec00fc213be47a80546f25d90320fd8c1aaba /sysdeps/mach/alpha
parent7ce93726fb9f02c45e45df15d923faabaa8951d3 (diff)
downloadglibc-f899db60945ef4c080ffe4393e55ef2fbcbbf6c0.zip
glibc-f899db60945ef4c080ffe4393e55ef2fbcbbf6c0.tar.gz
glibc-f899db60945ef4c080ffe4393e55ef2fbcbbf6c0.tar.bz2
* sysdeps/mach/hurd/alpha/trampoline.c: Don't include
<mach/machine/alpha_instruction.h>. (_hurd_setup_sighandler): Take proper arguments for current decls. Update code to use _hurdsig_catch_fault. Use `callsys' instruction instead of `call_pal'. * sysdeps/mach/hurd/alpha/intr-msg.h: New file. * sysdeps/mach/alpha/sysdep.h: Include <mach/alpha/asm.h>. (ALIGN, at, AT, fp): New macros.
Diffstat (limited to 'sysdeps/mach/alpha')
-rw-r--r--sysdeps/mach/alpha/sysdep.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/sysdeps/mach/alpha/sysdep.h b/sysdeps/mach/alpha/sysdep.h
index 9e7ace0..ddd98d6 100644
--- a/sysdeps/mach/alpha/sysdep.h
+++ b/sysdeps/mach/alpha/sysdep.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1994,97,2002 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
@@ -34,8 +34,17 @@
asm volatile ("mov %0,$30; jmp $31, (%1); ldgp $29, 0(%1)" \
: : "r" (__sp), "r" (__fn)); })
-#define ENTRY(name) LEAF(name, ***loser no arg count***)
-
#define STACK_GROWTH_DOWN
+#define RETURN_TO(sp, pc, retval) \
+ asm volatile ("mov %0,$30; jmp $31, (%1); mov %2,$0" \
+ : : "r" (sp), "r" (pc), "r" ((long int) (retval)));
+
+#define ALIGN 3
#include <sysdeps/mach/sysdep.h>
+
+#include <mach/alpha/asm.h>
+#undef at
+#define at 28
+#define AT $28
+#define fp s6