summaryrefslogtreecommitdiff
path: root/thread.c
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.c
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.c')
-rw-r--r--thread.c30
1 files changed, 4 insertions, 26 deletions
diff --git a/thread.c b/thread.c
index 6ecb79d356..792835fa5d 100644
--- a/thread.c
+++ b/thread.c
@@ -229,9 +229,6 @@ rb_thread_terminate_all(void)
system_working = 0;
}
-
-VALUE th_eval_body(rb_thead_t *th);
-
static void
thread_cleanup_func(void *th_ptr)
{
@@ -240,7 +237,6 @@ thread_cleanup_func(void *th_ptr)
th->machine_stack_start = th->machine_stack_end = 0;
}
-
static int
thread_start_func_2(rb_thead_t *th, VALUE *stack_start)
{
@@ -653,15 +649,13 @@ rb_thread_execute_interrupts(rb_thead_t *th)
if (th->throwed_errinfo) {
VALUE err = th->throwed_errinfo;
th->throwed_errinfo = 0;
- thread_debug("rb_thread_execute_interrupts: %p\n", err);
+ thread_debug("rb_thread_execute_interrupts: %ld\n", err);
if (err == eKillSignal) {
th->errinfo = INT2FIX(TAG_FATAL);
TH_JUMP_TAG(th, TAG_FATAL);
}
else if (err == eTerminateSignal) {
- struct rb_vm_tag *tag = th->tag;
-
/* rewind to toplevel stack */
while (th->tag->prev) {
th->tag = th->tag->prev;
@@ -824,7 +818,7 @@ rb_thread_kill(VALUE thread)
rb_exit(EXIT_SUCCESS);
}
- thread_debug("rb_thread_kill: %p (%p)\n", th, th->thread_id);
+ thread_debug("rb_thread_kill: %p (%p)\n", th, (void *)th->thread_id);
rb_thread_interrupt(th);
th->throwed_errinfo = eKillSignal;
@@ -1635,7 +1629,8 @@ rb_thread_wait_fd_rw(int fd, char c)
case'w':
GVL_UNLOCK_RANGE(result = select(fd + 1, 0, rb_fd_ptr(&set), 0, 0));
break;
- defaut:
+
+ default:
rb_bug("unknown wait type: %c", c);
}
}
@@ -1793,23 +1788,6 @@ rb_thread_atfork(void)
st_insert(vm->living_threads, th->self, (st_data_t) th->thread_id);
}
-/*
- * for tests
- */
-
-static VALUE
-raw_gets(VALUE klass)
-{
- char buff[100];
- GVL_UNLOCK_BEGIN();
- {
- fgets(buff, 100, stdin);
- }
- GVL_UNLOCK_END();
- return rb_str_new2(buff);
-}
-
-
struct thgroup {
int enclosed;
VALUE group;