summaryrefslogtreecommitdiff
path: root/vm_core.h
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-26 07:56:44 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-26 07:56:44 +0000
commit1939d097e650a60557eafbd89a6684f4626e0ad5 (patch)
tree62a3065ee36528808c6dd58a23011df911fc3820 /vm_core.h
parent043523adc5275b640f5bb33bd05513194dabf61d (diff)
move several fields from rb_thread_t to rb_execution_context_t.
* vm_core.h (rb_thread_t): move several fields which are copied at cont.c to rb_execution_context_t. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r--vm_core.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/vm_core.h b/vm_core.h
index 028d9c3177..dc9043497f 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -737,6 +737,12 @@ typedef struct rb_thread_context_struct {
VALUE *stack; /* must free, must mark */
size_t stack_size; /* size in word (byte size / sizeof(VALUE)) */
rb_control_frame_t *cfp;
+
+ struct rb_vm_tag *tag;
+ struct rb_vm_protect_tag *protect_tag;
+
+ int safe_level;
+ int raised_flag;
} rb_execution_context_t;
typedef struct rb_thread_struct {
@@ -745,8 +751,7 @@ typedef struct rb_thread_struct {
rb_vm_t *vm;
rb_execution_context_t ec;
- int safe_level;
- int raised_flag;
+
VALUE last_status; /* $? */
/* for rb_iterate */
@@ -801,9 +806,6 @@ typedef struct rb_thread_struct {
VALUE locking_mutex;
struct rb_mutex_struct *keeping_mutexes;
- struct rb_vm_tag *tag;
- struct rb_vm_protect_tag *protect_tag;
-
/* storage */
st_table *local_storage;
VALUE local_storage_recursive_hash;