ruby-changes:7710
From: nobu <ko1@a...>
Date: Mon, 8 Sep 2008 06:04:35 +0900 (JST)
Subject: [ruby-changes:7710] Ruby:r19231 (mvm): * thread_pthread.c (get_stack): defines only if possible.
nobu 2008-09-08 06:04:14 +0900 (Mon, 08 Sep 2008) New Revision: 19231 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=19231 Log: * thread_pthread.c (get_stack): defines only if possible. Modified files: branches/mvm/ChangeLog branches/mvm/thread_pthread.c Index: mvm/ChangeLog =================================================================== --- mvm/ChangeLog (revision 19230) +++ mvm/ChangeLog (revision 19231) @@ -1,4 +1,4 @@ -Mon Sep 8 05:56:51 2008 Nobuyoshi Nakada <nobu@r...> +Mon Sep 8 06:04:11 2008 Nobuyoshi Nakada <nobu@r...> * configure.in (XLDFLAGS): added --enable-auto-import for cygwin and mingw. @@ -6,8 +6,8 @@ * dir.c (rb_dir_open), io.c (rb_sysopenat, rb_openat): resolved conflicts. -<<<<<<< .working -======= + * thread_pthread.c (get_stack): defines only if possible. + Sat Sep 6 15:06:21 2008 Tanaka Akira <akr@f...> * transcode.c (sym_html): new variable. @@ -314,7 +314,6 @@ * vm.c (rb_vm_mark): marks trap_list. ->>>>>>> .merge-right.r19180 Thu Sep 4 13:01:11 2008 Nobuyoshi Nakada <nobu@r...> * io.c (struct sysopen_struct, rb_sysopen_internal, rb_sysopen): Index: mvm/thread_pthread.c =================================================================== --- mvm/thread_pthread.c (revision 19230) +++ mvm/thread_pthread.c (revision 19231) @@ -207,10 +207,18 @@ #define STACK_DIR_UPPER(a,b) STACK_UPPER(&stack_grow_dir_detection, a, b) #endif +#if defined HAVE_PTHREAD_GETATTR_NP || defined HAVE_PTHREAD_ATTR_GET_NP +#define STACKADDR_AVAILABLE 1 +#elif defined HAVE_PTHREAD_GET_STACKADDR_NP && defined HAVE_PTHREAD_GET_STACKSIZE_NP +#define STACKADDR_AVAILABLE 1 +#elif defined HAVE_THR_STKSEGMENT || defined HAVE_PTHREAD_STACKSEG_NP +#define STACKADDR_AVAILABLE 1 +#endif + +#ifdef STACKADDR_AVAILABLE static int get_stack(void **addr, size_t *size) { -#define STACKADDR_AVAILABLE 1 #define CHECK_ERR(expr) \ {int err = (expr); if (err) return err;} #if defined HAVE_PTHREAD_GETATTR_NP || defined HAVE_PTHREAD_ATTR_GET_NP @@ -254,15 +262,11 @@ # endif *addr = stk.ss_sp; *size = stk.ss_size; -#else -#undef STACKADDR_AVAILABLE - return -1; #endif -#ifdef STACKADDR_AVAILABLE return 0; -#endif #undef CHECK_ERR } +#endif #ifndef STACKADDR_AVAILABLE static struct { @@ -294,8 +298,8 @@ #else if (!native_main_thread.stack_start || STACK_UPPER(&addr, - native_main_thread.stack_start > addr, - native_main_thread.stack_start < addr)) { + native_main_thread.stack_start > (VALUE *)addr, + native_main_thread.stack_start < (VALUE *)addr)) { native_main_thread.stack_start = addr; } #endif -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/