| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* Ignode to change ext/json/depend
* Fixed to ignore json_pure files
|
| |
|
| |
|
|
|
|
|
|
| |
According to rdoc, test-unit provides omit instead of skip.
This is a compatibility layer to make it work with both test-unit and
tool/lib/minitest.
|
| |
|
|
|
|
|
| |
Replacing adjacent struct rb_call_info and struct rb_call_cache
into a struct rb_call_data.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To perform a regular method call, the VM needs two structs,
`rb_call_info` and `rb_call_cache`. At the moment, we allocate these two
structures in separate buffers. In the worst case, the CPU needs to read
4 cache lines to complete a method call. Putting the two structures
together reduces the maximum number of cache line reads to 2.
Combining the structures also saves 8 bytes per call site as the current
layout uses separate two pointers for the call info and the call cache.
This saves about 2 MiB on Discourse.
This change improves the Optcarrot benchmark at least 3%. For more
details, see attached bugs.ruby-lang.org ticket.
Complications:
- A new instruction attribute `comptime_sp_inc` is introduced to
calculate SP increase at compile time without using call caches. At
compile time, a `TS_CALLDATA` operand points to a call info struct, but
at runtime, the same operand points to a call data struct. Instruction
that explicitly define `sp_inc` also need to define `comptime_sp_inc`.
- MJIT code for copying call cache becomes slightly more complicated.
- This changes the bytecode format, which might break existing tools.
[Misc #16258]
|
| |
|
| |
|
|
|
|
| |
https://github.com/ruby/actions
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit 43015275b9a7f2833c93ad11ea96ae4cb3b7acd7.
`assert_raise_message` in test-unit is different from
`assert_raise_with_message`. It checks the exception message
only, but not the exception class,
|
| |
|
|
|
|
| |
pointed out by ruby-trunk-changes
|
| |
|
|
|
|
|
| |
- `info.yml` is for ruby/www.ruby-lang.org/_data/releases.yml
- `info.json` is meta data for users of snapshot
|
|
|
|
| |
It will not use in `ruby/actions`, and `default=tmp` is not correct.
|
|
|
|
|
| |
Align mtime of files updated by `make prepare-package` to make
packages reproducible.
|
| |
|
|
|
|
| |
To get rid of setting mode and mtime of the original cache files.
|
|
|
|
|
|
| |
* Use the given branch name instead of implicit 'HEAD".
* Format like as git-svn when `from` or `to` is SVN revision
number.
|
|
|
|
| |
https://github.com/ruby/fileutils/commit/f16f5a0dd6
|
|
|
|
|
| |
This one allocation of Method object is worth avoiding. We don't
want to test UnboundMethod#bind right here. GC need not run.
|
|
|
|
|
| |
On parallel test, there are additional tests because of implicit
checkers which are enabled on 84cbce3d88.
|
| |
|
|
|
|
|
|
|
|
|
| |
parallel test (`make test-all TESTS=-j8`) runs tests on specified
number of processes. However, some test checkers written in
`runner.rb` are not loaded. This fix enable these checkers on
parallel tests.
See also: https://github.com/ruby/ruby/pull/2508
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This reverts commit c3b84f2de83a27acc638f99743bfa2c44bac621c.
Backtrace shows it is before running tests and debug check was
nonsense.
|
|
|
|
|
|
|
|
|
|
| |
There are random failures:
> lib/rubygems/core_ext/kernel_require.rb:61:in `require':
> wrong number of arguments (given 1, expected 0) (ArgumentError)
http://ci.rvm.jp/results/trunk-jemalloc@silicon-docker/2275159
To check this failure, I added a small check code.
|
| |
|
|
|
|
| |
miniruby
|
|
|
|
|
| |
* Writing shell scripts in a Makefile is very error-prone.
* TEST_BUNDLED_GEMS_ALLOW_FAILURES seemed to not work before.
|
| |
|
| |
|
|
|
|
| |
https://sevenzip.osdn.jp/chm/cmdline/switches/method.htm
|
|
|
|
|
|
| |
It disables 7z, which seems not to have an option to stop saving
extra file attributes (uid/gid and atime), in order to make zip
packages stable.
|
|
|
|
|
| |
Extra file attributes (uid/gid and atime) make the packaged zip
file unstable.
|
|
|
|
|
|
|
|
|
|
|
| |
The original st.c was public domain hash table implementation, but
Ruby's st.c is highly modified, and its data structure is not
compatiblie with the original one.
Therefore, when creating an extension library to wrap C code that uses
the original st.c, the symbols conflict, which leads to segfault.
This changes the prefix `st_*` of st.c functions to `rb_st_*` for
reflecting that they are specific to Ruby's, and avoid symbol conflicts.
|
|
|
|
|
|
| |
The built-in version operates on a buffer of 5 words, much smaller than
the size of jmp_buf defined in libc.
Note, powerpc requires 5 words, while arm and x86_64 just require 3.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
[Bug #16167]
|
|
|
|
|
|
| |
Parents commit hashs in logs of merge commits are abbreviated to
necessary length depending on the repositories. Exclude merge
commits from ChangeLog to make it stable.
|