summaryrefslogtreecommitdiff
path: root/vm_core.h
diff options
context:
space:
mode:
authornormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-08-15 00:25:34 +0000
committernormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-08-15 00:25:34 +0000
commit90037145dd3cce95e0a7719f5153fc9aa7d087b7 (patch)
tree32e2ee362705888f7e7ed206b00c5132efb38abe /vm_core.h
parentfdb2fc0b0499236399694ecc1fe6843d85c27dfa (diff)
rb_{thread,context,fiber}_struct: trivial packing
* vm_core.h (rb_thread_struct): reorder to pack * cont.c (rb_context_struct, rb_fiber_struct): ditto On x86-64, these changes reduces: rb_thread_struct to 1000 bytes (from 1016) rb_context_struct to 1288 bytes (from 1312) rb_fiber_struct to 2272 bytes (from 2304) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r--vm_core.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/vm_core.h b/vm_core.h
index 970efec837..ff8bf0ef20 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -599,6 +599,7 @@ typedef struct rb_thread_struct {
enum rb_thread_status status;
int to_kill;
int priority;
+ int mark_stack_len;
native_thread_data_t native_thread_data;
void *blocking_region_buffer;
@@ -616,8 +617,8 @@ typedef struct rb_thread_struct {
/* async errinfo queue */
VALUE pending_interrupt_queue;
- int pending_interrupt_queue_checked;
VALUE pending_interrupt_mask_stack;
+ int pending_interrupt_queue_checked;
rb_atomic_t interrupt_flag;
unsigned long interrupt_mask;
@@ -665,7 +666,6 @@ typedef struct rb_thread_struct {
#endif
jmp_buf regs;
} machine;
- int mark_stack_len;
/* statistics data for profiler */
VALUE stat_insn_usage;