summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-11-27 13:08:27 +0000
committerknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-11-27 13:08:27 +0000
commit7cc1a562b3859130e6f80278d0d503e6c70eac36 (patch)
treea5162b91cb5c59890cdc033b88762f0bf51d871f
parent0667359370b8447f8171b1a323c3b683cf09b311 (diff)
downloadruby-7cc1a562b3859130e6f80278d0d503e6c70eac36.tar.gz
ruby-7cc1a562b3859130e6f80278d0d503e6c70eac36.tar.xz
ruby-7cc1a562b3859130e6f80278d0d503e6c70eac36.zip
* eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
process to get the base address for the RSE backing store, so hardcode it for the moment. [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@5039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog7
-rw-r--r--eval.c8
-rw-r--r--gc.c8
3 files changed, 23 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a8f68fe82..0d95f0a0b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Thu Nov 27 22:05:48 2003 Akinori MUSHA <knu@iDaemons.org>
+
+ * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
+ process to get the base address for the RSE backing store, so
+ hardcode it for the moment.
+ [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
+
Thu Nov 27 17:36:42 2003 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
diff --git a/eval.c b/eval.c
index 9737c7d7e..217c5c7f4 100644
--- a/eval.c
+++ b/eval.c
@@ -7841,9 +7841,17 @@ Init_Proc()
#ifdef __ia64__
#include <ucontext.h>
+#if defined(__FreeBSD__)
+/*
+ * FreeBSD/ia64 currently does not have a way for a process to get the
+ * base address for the RSE backing store, so hardcode it.
+ */
+#define __libc_ia64_register_backing_store_base (4ULL<<61)
+#else
#pragma weak __libc_ia64_register_backing_store_base
extern unsigned long __libc_ia64_register_backing_store_base;
#endif
+#endif
/* Windows SEH refers data on the stack. */
#undef SAVE_WIN32_EXCEPTION_LIST
diff --git a/gc.c b/gc.c
index 238c55105..7df38d229 100644
--- a/gc.c
+++ b/gc.c
@@ -32,9 +32,17 @@
#ifdef __ia64__
#include <ucontext.h>
+#if defined(__FreeBSD__)
+/*
+ * FreeBSD/ia64 currently does not have a way for a process to get the
+ * base address for the RSE backing store, so hardcode it.
+ */
+#define __libc_ia64_register_backing_store_base (4ULL<<61)
+#else
#pragma weak __libc_ia64_register_backing_store_base
extern unsigned long __libc_ia64_register_backing_store_base;
#endif
+#endif
void re_free_registers _((struct re_registers*));
void rb_io_fptr_finalize _((struct OpenFile*));