summaryrefslogtreecommitdiff
path: root/tool
AgeCommit message (Collapse)Author
2020-12-14Simplify positioning of '{' and '}'Takashi Kokubun
and fix inconsistent indentation in mjit_compile.inc.erb
2020-12-15fix inline method cache sync bugKoichi Sasada
`cd` is passed to method call functions to method invocation functions, but `cd` can be manipulated by other ractors simultaneously so it contains thread-safety issue. To solve this issue, this patch stores `ci` and found `cc` to `calling` and stops to pass `cd`. Notes: Merged: https://github.com/ruby/ruby/pull/3903
2020-12-14Fixed dst name for digest gemHiroshi SHIBATA
2020-12-13Debug the command used for gdb dumpTakashi Kokubun
It's not working http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/3288206. I'm debugging why.
2020-12-12Dump a backtrace with gdbTakashi Kokubun
Because Ruby often fails to dump a C backtrace.
2020-12-13Fixed RUBY_RM_RECURSIVE when autoconf met the required versionNobuyoshi Nakada
Before 9189cf5793cd527a86b711d15d5fd0633ec082e1 the result of `m4_version_compare` was compared to -1, however the `$2` of `m4_version_prereq` has different meaning and is expanded when the required version met.
2020-12-12tool/mk_builtin_loader.rb: prevent "assigned but unused variable"Yusuke Endoh
2020-12-11Removed needless gemspec of webrickHiroshi SHIBATA
2020-12-11Bump webrick-1.7.0 for version management with ruby/webrick.Hiroshi SHIBATA
2020-12-10remove bz2NARUSE, Yui
2020-12-10Promote webrick to bundled gemsHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3729
2020-12-10Move webrick library into internal test toolchainHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3729
2020-12-08Added missing dependency of fileutilsHiroshi SHIBATA
2020-12-07rbinstall.rb: do not install useless files after installedNobuyoshi Nakada
2020-12-07Extract gemspec to versioned fileNobuyoshi Nakada
Not to be overwritten by test-bundler-prepare. gem files often contain useless gemspec files which have not been processed.
2020-12-07rbinstall.rb: relaxed split argumentNobuyoshi Nakada
did_you_mean splits the output by `$/`.
2020-12-07rbinstall.rb: fix the position to expand filesNobuyoshi Nakada
As `spec.files` is used for `executables` and so on, the expanded list needs to be located at the same place.
2020-12-07rbinstall.rb: install files expanded from bundled gemsNobuyoshi Nakada
Although gemspec file (e.g., power_assert and rake) often uses `git ls-files`, as it does not make sense in other than its own repository, it has been ignored now. Gather all files expanded from the bundled gem to install, instead.
2020-12-06update-bundled_gems: support recent format, keep the tag to testNobuyoshi Nakada
2020-12-06update-bundled_gems: chomp ".git" suffix from the source code URINobuyoshi Nakada
2020-12-06Moved update-bundled_gems code to a toolNobuyoshi Nakada
2020-12-04Guard all accesses to RubyVM::MJIT with defined?(RubyVM::MJIT) &&Benoit Daloze
* Otherwise those tests, etc cannot run on alternative Ruby implementations.
2020-12-03Avoid leaving too many core files in /tmpTakashi Kokubun
for CIs like ci.rvm.jp.
2020-12-03Do not require time and fileutils by defaultTakashi Kokubun
I have no idea what I'm doing, but the previous commit caused lots of CI failures like https://github.com/ruby/ruby/runs/1496949568 and this place is the most suspicious.
2020-12-03Save a core file on a worker crashTakashi Kokubun
CI failures like http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/3280458 doesn't provide any useful information, and it doesn't leave a core file in a CI environment because a test like `Process.kill(:TRAP, $$)` overwrites in a next run very quickly. Thus I'd like to keep core files in /tmp.
2020-12-03Revert "Report a full_message on a worker crash"Takashi Kokubun
This reverts commit 00f046ef57f9da7f5248f9ef9d55702ddc407bf1. It was not helpful for an issue I was debugging.
2020-12-03test-bundled-gems.rb: show failed gems at lastNobuyoshi Nakada
2020-12-02test-bundled-gems: select bundled gems to test by BUNDLED_GEMSNobuyoshi Nakada
2020-12-01tune parallel testKoichi Sasada
This patch contains the fowllowing hacks: (1) Add "--timetable-data=FILE" option for test-all This option enables to dump timeline event contains worker, suite, and start/end time. (2) remove TestJIT in test_jit_debug.rb on parallel test. it is duplicated test. (3) move test_jit.rb and test_jit_debug.rb at first because these two tests are bottleneck of parallel tests. On my environment, `make test-all TESTS=-j12` reduced the total time 190 seconds -> 140 seconds. Notes: Merged: https://github.com/ruby/ruby/pull/3826
2020-11-27Cache access to reg_cfp->self on JITTakashi Kokubun
``` $ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=12 --alternate --output=all benchmark.yml before --jit: ruby 3.0.0dev (2020-11-27T06:41:15Z master 8ce1711c25) +JIT [x86_64-linux] after --jit: ruby 3.0.0dev (2020-11-27T08:36:02Z master 2c592126b9) +JIT [x86_64-linux] last_commit=Cache access to reg_cfp->self on JIT Calculating ------------------------------------- before --jit after --jit Optcarrot Lan_Master.nes 82.40522392468650 82.66023870551237 fps 82.67998539899482 83.08660305312587 85.51280693947453 87.09311989553235 86.32925337181406 87.16115255191410 87.35617494926235 87.30699391518075 87.91865339426212 88.47590342996875 88.11573661006648 88.64778616696353 88.16060826662158 88.67015079203991 88.21639244865058 89.19630739497482 88.47241577897603 89.23443637947730 89.37087287229809 89.57052723997015 89.46969964699964 89.97803363889025 ```
2020-11-26Revert "Set VM_FRAME_FLAG_FINISH at once on MJIT"Takashi Kokubun
This reverts commit 4d2c8edca69884a41d2f843d36023e3decdb9872. Unfortunately this seems to cause several issues: https://github.com/ruby/ruby/runs/1462188376?check_suite_focus=true http://ci.rvm.jp/results/trunk-mjit-wait@phosphorus-docker/3272802
2020-11-26Set VM_FRAME_FLAG_FINISH at once on MJITTakashi Kokubun
Performance is probably improved? $ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=12 --alternate --output=all benchmark.yml before --jit: ruby 3.0.0dev (2020-11-27T04:37:47Z master 69e77e81dc) +JIT [x86_64-linux] after --jit: ruby 3.0.0dev (2020-11-27T05:28:19Z master df6b05c6dd) +JIT [x86_64-linux] last_commit=Set VM_FRAME_FLAG_FINISH at once Calculating ------------------------------------- before --jit after --jit Optcarrot Lan_Master.nes 80.89292998533379 82.19497327502751 fps 80.93130641142331 85.13943315260148 81.06214830270119 87.43757879797808 82.29172808453910 87.89942441487113 84.61206450455929 87.91309779491075 85.44545883567997 87.98026086648694 86.02923132404449 88.03081060383973 86.07411817365879 88.14650206137341 86.34348799602836 88.32791633649961 87.90257338977324 88.57599644892220 88.58006509876580 88.67426384743277 89.26611118140011 88.81669430874207 This should have no bad impact on VM because this function is ALWAYS_INLINE.
2020-11-24Report a full_message on a worker crashTakashi Kokubun
A worker crash happens very often, but we're not sure why. I'd like to know a backtrace if it's available.
2020-11-23Increase the # of downloader.rb's retry attemptsTakashi Kokubun
Apparently 9 was not enough either. https://rubyci.org/logs/rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/log/20201123T063303Z.fail.html.gz
2020-11-22Clarify the intention of `false &&`Takashi Kokubun
2020-11-22make-snapshot: don't store symlinks by 7z for reproduceable pacakgesNobuyoshi Nakada
2020-11-22make-snapshot: measure archiving timesNobuyoshi Nakada
2020-11-22make-snapshot: suppress messages copying cached files unless verboseNobuyoshi Nakada
2020-11-22make-snapshot: clean autoconf caches for reproduceable packagesNobuyoshi Nakada
2020-11-20Try to fix download errorKazuhiro NISHIYAMA
https://github.com/ruby/ruby/runs/1428320660?check_suite_focus=true#step:9:10 ``` tool/downloader.rb:243:in `rescue in download': failed to download config.guess (RuntimeError) OpenURI::HTTPError: 403 Forbidden: https://cdn.jsdelivr.net/gh/gcc-mirror/gcc@master/config.guess ``` Notes: Merged: https://github.com/ruby/ruby/pull/3794
2020-11-12Fixed typoHiroshi SHIBATA
2020-10-29An ellipsis (...) can only be placed at the beginningNobuyoshi Nakada
2020-10-27freeze dynamic regexp literalsKoichi Sasada
Regexp literals are frozen, and also dynamically comppiled Regexp literals (/#{expr}/) are frozen. Notes: Merged: https://github.com/ruby/ruby/pull/3676
2020-10-26Escape '/*' within block comment tooNobuyoshi Nakada
2020-10-21extend timeout of rbs test on rbs testsKoichi Sasada
2020-10-19Followed up with 708413807ae958afb79257b18475424e0a8a4a56Hiroshi SHIBATA
* Added sync task for digest * Update doc/* for default gems * Update the latest version of gemspec
2020-10-17sync RClass::ext::iv_index_tblKoichi Sasada
iv_index_tbl manages instance variable indexes (ID -> index). This data structure should be synchronized with other ractors so introduce some VM locks. This patch also introduced atomic ivar cache used by set/getinlinecache instructions. To make updating ivar cache (IVC), we changed iv_index_tbl data structure to manage (ID -> entry) and an entry points serial and index. IVC points to this entry so that cache update becomes atomically. Notes: Merged: https://github.com/ruby/ruby/pull/3662
2020-10-14sync generic_ivtblKoichi Sasada
generic_ivtbl is a process global table to maintain instance variables for non T_OBJECT/T_CLASS/... objects. So we need to protect them for multi-Ractor exection. Hint: we can make them Ractor local for unshareable objects, but now it is premature optimization. Notes: Merged: https://github.com/ruby/ruby/pull/3655
2020-10-14Promote pathname to default gemsHiroshi SHIBATA
2020-10-14Promote drb to the default gemsHiroshi SHIBATA