summaryrefslogtreecommitdiff
path: root/thread_pthread.ci
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-07 01:25:05 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-07 01:25:05 +0000
commit44aef0b53f3e73ec987a668a3284d5e28bdb8121 (patch)
tree4cbe7f49ca7c1b4be5f345870ef3d99126803a31 /thread_pthread.ci
parent8ee7d0767f7940baeae60ffa95afde93f3378c93 (diff)
* this commit is a result of refactoring. only renaming functions,
moving definitions place, add/remove prototypes, deleting unused variables and removing yarv.h. This commit doesn't change any behavior of ruby/vm. * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h). * error.c, eval_intern.h: include yarvcore.h instead yarv.h * rename some functions: * debug.[ch]: debug_*() -> ruby_debug_*() * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm() * iseq.c: node_name() -> ruby_node_name() * vm.c: yarv_check_redefinition_opt_method() -> rb_vm_check_redefinition_opt_method() * some refactoring with checking -Wall. * array.c: remove rb_ary_ptr() (unused) and remove unused local variables. * object.c: add a prototype of rb_mod_module_exec(). * eval_intern.h (ruby_cref): set it inline. * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal(). * parse.y: add a prototype of rb_parse_in_eval() (in eval.c). * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c). * thread.c: remove raw_gets() function (unused) and fix some format mismatch (format mismatchs have remained yet. this is todo). * thread.c (rb_thread_wait_fd_rw): fix typo on label name. * thread_pthread.ci: comment out codes with USE_THREAD_CACHE. * vm.c (rb_svar, rb_backref_get, rb_backref_get, rb_lastline_get, rb_lastline_set) : moved from yarvcore.c. * vm.c (yarv_init_redefined_flag): add a prototype and rename yarv_opt_method_table to vm_opt_method_table. * vm.c (rb_thread_eval): moved from yarvcore.c. * yarvcore.c: remove unused global variables and fix to use nsdr(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread_pthread.ci')
-rw-r--r--thread_pthread.ci11
1 files changed, 7 insertions, 4 deletions
diff --git a/thread_pthread.ci b/thread_pthread.ci
index c5f2ebbac7..3b84429284 100644
--- a/thread_pthread.ci
+++ b/thread_pthread.ci
@@ -43,8 +43,6 @@ NOINLINE(static int
thread_start_func_2(rb_thead_t *th, VALUE *stack_start));
void static thread_cleanup_func(void *th_ptr);
-static rb_thead_t *register_cached_thread_and_wait(void);
-
#define USE_THREAD_CACHE 0
static void *
@@ -71,6 +69,7 @@ thread_start_func_1(void *th_ptr)
if (1) {
/* cache thread */
rb_thead_t *th;
+ static rb_thead_t *register_cached_thread_and_wait(void);
if ((th = register_cached_thread_and_wait()) != 0) {
th_ptr = (void *)th;
th->thread_id = pthread_self();
@@ -83,14 +82,15 @@ thread_start_func_1(void *th_ptr)
void rb_thread_create_control_thread(void);
-static pthread_mutex_t thread_cache_lock = PTHREAD_MUTEX_INITIALIZER;
-
struct cached_thread_entry {
volatile rb_thead_t **th_area;
pthread_cond_t *cond;
struct cached_thread_entry *next;
};
+
+#if USE_THREAD_CACHE
+static pthread_mutex_t thread_cache_lock = PTHREAD_MUTEX_INITIALIZER;
struct cached_thread_entry *cached_thread_root;
static rb_thead_t *
@@ -142,6 +142,7 @@ register_cached_thread_and_wait(void)
return (rb_thead_t *)th_area;
}
+#endif
static int
use_cached_thread(rb_thead_t *th)
@@ -331,6 +332,7 @@ static struct yarv_signal_thread_list signal_thread_list_anchor = {
native_mutex_unlock(lock); \
} while (0)
+#if 0 /* for debug */
static void
print_signal_list(char *str)
{
@@ -343,6 +345,7 @@ print_signal_list(char *str)
}
thread_debug("\n");
}
+#endif
static void
yarv_add_signal_thread_list(rb_thead_t *th)