aboutsummaryrefslogtreecommitdiffstats
path: root/vm_core.h
diff options
context:
space:
mode:
Diffstat (limited to 'vm_core.h')
-rw-r--r--vm_core.h28
1 files changed, 14 insertions, 14 deletions
diff --git a/vm_core.h b/vm_core.h
index a2ca6342cf..67f9641c25 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -767,6 +767,19 @@ typedef struct rb_execution_context_struct {
rb_ensure_list_t *ensure_list;
rb_fiber_t *fiber;
+
+ /* for GC */
+ struct {
+ VALUE *stack_start;
+ VALUE *stack_end;
+ size_t stack_maxsize;
+#ifdef __ia64
+ VALUE *register_stack_start;
+ VALUE *register_stack_end;
+ size_t register_stack_maxsize;
+#endif
+ jmp_buf regs;
+ } machine;
} rb_execution_context_t;
typedef struct rb_thread_struct {
@@ -829,19 +842,6 @@ typedef struct rb_thread_struct {
VALUE first_args;
VALUE (*first_func)(ANYARGS);
- /* for GC */
- struct {
- VALUE *stack_start;
- VALUE *stack_end;
- size_t stack_maxsize;
-#ifdef __ia64
- VALUE *register_stack_start;
- VALUE *register_stack_end;
- size_t register_stack_maxsize;
-#endif
- jmp_buf regs;
- } machine;
-
/* statistics data for profiler */
VALUE stat_insn_usage;
@@ -1543,7 +1543,7 @@ void rb_vm_register_special_exception_str(enum ruby_special_exceptions sp, VALUE
#define rb_vm_register_special_exception(sp, e, m) \
rb_vm_register_special_exception_str(sp, e, rb_usascii_str_new_static((m), (long)rb_strlen_lit(m)))
-void rb_gc_mark_machine_stack(rb_thread_t *th);
+void rb_gc_mark_machine_stack(const rb_execution_context_t *ec);
int rb_autoloading_value(VALUE mod, ID id, VALUE* value);