summaryrefslogtreecommitdiff
path: root/object.c
diff options
context:
space:
mode:
authornormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-29 01:14:45 +0000
committernormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-10-29 01:14:45 +0000
commitfc87b3b7e01c6d14e891b5a38921eef3fd05c8e7 (patch)
treeaed87dd85181c76b099fc5c620ac1606f65f09c8 /object.c
parentd90f9b1481d52b91de7e0795677f558ddece2b37 (diff)
variable.c: reduce heap usage for autoload_data_i
For the loader (first thread which hits autoload, it is wasteful to have extra elements on the stack. For the lifetime of the process, it is wasteful to waste 2 words for every autoload entry. So this makes full use of existing stack overhead while reducing heap overhead for long-lived autoload_data_i structs. * variable.c (struct autoload_state): usable as wait-queue head (struct autoload_data_i): remove 2 words of overhead (autoload_i_mark): remove marking for thread (autoload_reset): adjust for struct changes (rb_autoload): ditto (rb_autoloading_value): ditto (rb_autoload_load): ditto (const_update): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'object.c')
0 files changed, 0 insertions, 0 deletions