diff options
| author | Andreas Schwab | 2004-11-27 22:42:19 +0000 |
|---|---|---|
| committer | Andreas Schwab | 2004-11-27 22:42:19 +0000 |
| commit | e3177e43680cda464ba8c14bf51ee4866d1268ed (patch) | |
| tree | 4bcbe413f5d0e830c2a7746f7a9f84fc2b01fb81 /src/s/gnu-linux.h | |
| parent | 4dec23ff0ba3df7e24abaedc30cc76f9a8442edc (diff) | |
| download | emacs-e3177e43680cda464ba8c14bf51ee4866d1268ed.tar.gz emacs-e3177e43680cda464ba8c14bf51ee4866d1268ed.zip | |
Enable no-op gcpros on ia64.
(GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
Diffstat (limited to 'src/s/gnu-linux.h')
| -rw-r--r-- | src/s/gnu-linux.h | 14 |
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 @@ | |||
| 1 | /* This file is the configuration file for Linux-based GNU systems | 1 | /* This file is the configuration file for Linux-based GNU systems |
| 2 | Copyright (C) 1985, 86, 92, 94, 96, 1999, 2002 Free Software Foundation, Inc. | 2 | Copyright (C) 1985, 86, 92, 94, 96, 1999, 2002, 2004 Free Software Foundation, Inc. |
| 3 | 3 | ||
| 4 | This file is part of GNU Emacs. | 4 | This file is part of GNU Emacs. |
| 5 | 5 | ||
| @@ -355,12 +355,22 @@ Boston, MA 02111-1307, USA. */ | |||
| 355 | 355 | ||
| 356 | #if defined __i386__ || defined __sparc__ || defined __mc68000__ \ | 356 | #if defined __i386__ || defined __sparc__ || defined __mc68000__ \ |
| 357 | || defined __alpha__ || defined __mips__ || defined __s390__ \ | 357 | || defined __alpha__ || defined __mips__ || defined __s390__ \ |
| 358 | || defined __arm__ || defined __powerpc__ || defined __amd64__ | 358 | || defined __arm__ || defined __powerpc__ || defined __amd64__ \ |
| 359 | || defined __ia64__ | ||
| 359 | #define GC_SETJMP_WORKS 1 | 360 | #define GC_SETJMP_WORKS 1 |
| 360 | #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS | 361 | #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS |
| 361 | #ifdef __mc68000__ | 362 | #ifdef __mc68000__ |
| 362 | #define GC_LISP_OBJECT_ALIGNMENT 2 | 363 | #define GC_LISP_OBJECT_ALIGNMENT 2 |
| 363 | #endif | 364 | #endif |
| 365 | #ifdef __ia64__ | ||
| 366 | #define GC_MARK_SECONDARY_STACK() \ | ||
| 367 | do { \ | ||
| 368 | extern void *__libc_ia64_register_backing_store_base; \ | ||
| 369 | __builtin_ia64_flushrs (); \ | ||
| 370 | mark_memory (__libc_ia64_register_backing_store_base, \ | ||
| 371 | __builtin_ia64_bsp ()); \ | ||
| 372 | } while (0) | ||
| 373 | #endif | ||
| 364 | #endif | 374 | #endif |
| 365 | 375 | ||
| 366 | /* arch-tag: 6244ea2a-abd0-44ec-abec-ff3dcc9afea9 | 376 | /* arch-tag: 6244ea2a-abd0-44ec-abec-ff3dcc9afea9 |