summaryrefslogtreecommitdiff
path: root/vm_core.h
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-28 14:27:49 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-28 14:27:49 +0000
commit8dd9c12c585375cc9d89441d7518a7846044deb0 (patch)
treefb3e3b2351ee24ff78d21116d18b9604c4a53fa0 /vm_core.h
parent75392e45f1f09f7f0e6036dcb1fb6513707d35e8 (diff)
move fields to ec.
* vm_core.h (rb_thread.h): move errinfo and trace_arg to rb_execution_context_t. * cont.c (fiber_switch, rb_cont_call): do not restore "trace_arg" here. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r--vm_core.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/vm_core.h b/vm_core.h
index d58130af07..679512390d 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -743,10 +743,12 @@ typedef struct rb_thread_context_struct {
struct rb_vm_tag *tag;
struct rb_vm_protect_tag *protect_tag;
-
int safe_level;
int raised_flag;
+ /* temporary place of errinfo */
+ VALUE errinfo;
+
/* storage (ec (fiber) local) */
st_table *local_storage;
VALUE local_storage_recursive_hash;
@@ -756,6 +758,9 @@ typedef struct rb_thread_context_struct {
const VALUE *root_lep;
VALUE root_svar;
+ /* trace information */
+ struct rb_trace_arg_struct *trace_arg;
+
/* ensure & callcc */
rb_ensure_list_t *ensure_list;
} rb_execution_context_t;
@@ -797,9 +802,6 @@ typedef struct rb_thread_struct {
VALUE thgroup;
VALUE value;
- /* temporary place of errinfo */
- VALUE errinfo;
-
/* temporary place of retval on OPT_CALL_THREADED_CODE */
#if OPT_CALL_THREADED_CODE
VALUE retval;
@@ -841,7 +843,6 @@ typedef struct rb_thread_struct {
/* tracer */
rb_hook_list_t event_hooks;
- struct rb_trace_arg_struct *trace_arg; /* trace information */
/* fiber */
rb_fiber_t *fiber;