summary refs log tree commit diff
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.tar.gz
glibc-f899db60945ef4c080ffe4393e55ef2fbcbbf6c0.tar.xz
glibc-f899db60945ef4c080ffe4393e55ef2fbcbbf6c0.zip
* 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 9e7ace0eed..ddd98d666a 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