summaryrefslogtreecommitdiff
path: root/src/s
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2004-11-27 22:42:19 +0000
committerAndreas Schwab <schwab@suse.de>2004-11-27 22:42:19 +0000
commite3177e43680cda464ba8c14bf51ee4866d1268ed (patch)
tree4bcbe413f5d0e830c2a7746f7a9f84fc2b01fb81 /src/s
parent4dec23ff0ba3df7e24abaedc30cc76f9a8442edc (diff)
downloademacs-e3177e43680cda464ba8c14bf51ee4866d1268ed.tar.gz
Enable no-op gcpros on ia64.
(GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
Diffstat (limited to 'src/s')
-rw-r--r--src/s/gnu-linux.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h
index 033ce49293a..3cf21756d7d 100644
--- a/src/s/gnu-linux.h
+++ b/src/s/gnu-linux.h
@@ -1,5 +1,5 @@
/* This file is the configuration file for Linux-based GNU systems
- Copyright (C) 1985, 86, 92, 94, 96, 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1985, 86, 92, 94, 96, 1999, 2002, 2004 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -355,12 +355,22 @@ Boston, MA 02111-1307, USA. */
#if defined __i386__ || defined __sparc__ || defined __mc68000__ \
|| defined __alpha__ || defined __mips__ || defined __s390__ \
- || defined __arm__ || defined __powerpc__ || defined __amd64__
+ || defined __arm__ || defined __powerpc__ || defined __amd64__ \
+ || defined __ia64__
#define GC_SETJMP_WORKS 1
#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
#ifdef __mc68000__
#define GC_LISP_OBJECT_ALIGNMENT 2
#endif
+#ifdef __ia64__
+#define GC_MARK_SECONDARY_STACK() \
+ do { \
+ extern void *__libc_ia64_register_backing_store_base; \
+ __builtin_ia64_flushrs (); \
+ mark_memory (__libc_ia64_register_backing_store_base, \
+ __builtin_ia64_bsp ()); \
+ } while (0)
+#endif
#endif
/* arch-tag: 6244ea2a-abd0-44ec-abec-ff3dcc9afea9