summaryrefslogtreecommitdiff
path: root/tool/runruby.rb
diff options
context:
space:
mode:
authornormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-08 20:58:03 +0000
committernormal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-08 20:58:03 +0000
commitc4e2cf466448f4283fd3f8a17a73f5fa9b745fe1 (patch)
tree078dbbf78f91bad86baf86916c77da3615bf2d11 /tool/runruby.rb
parenta2f1c07fe4aa2e9cd2db0a21f3ee8b6488cdbeab (diff)
tool/runruby.rb: test with smallest possible machine stack
Lets ensure none of our C functions use too much stack space and fix all excessive stack usage before releasing the next version. Reducing C stack usage should reduce conservative GC scanning time and improve performance. If there are platform-dependent test failures; excessive stack usage should be fixed; rather than increasing minimum values or removing these envs from testing. * tool/runruby.rb: use smallest possible machine stack size [ruby-core:81597] [Feature #13637] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'tool/runruby.rb')
-rwxr-xr-xtool/runruby.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/tool/runruby.rb b/tool/runruby.rb
index cade314748..f6c46779e3 100755
--- a/tool/runruby.rb
+++ b/tool/runruby.rb
@@ -67,7 +67,12 @@ end
libs << File.expand_path("lib", srcdir)
config["bindir"] = abs_archdir
-env = {}
+env = {
+ # Test with the smallest possible machine stack sizes.
+ # These values are clamped to machine-dependent minimum values in vm_core.h
+ 'RUBY_THREAD_MACHINE_STACK_SIZE' => '1',
+ 'RUBY_FIBER_MACHINE_STACK_SIZE' => '1',
+}
runner = File.join(abs_archdir, "ruby-runner#{config['EXEEXT']}")
runner = nil unless File.exist?(runner)