Age | Commit message (Collapse) | Author |
|
Add a hook point to initialize extra extension libraries. The default
hook function is replaced when linking a strong `Init_extra_exts`
symbol. A builder can insert an object file that defines Init_extra_exts
by XLDFLAGS.
Notes:
Merged: https://github.com/ruby/ruby/pull/5407
|
|
IA64 support was dropped in ticket #15894, so we can drop support for
HP-UX.
Notes:
Merged: https://github.com/ruby/ruby/pull/5457
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5454
Merged-By: nobu <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5448
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5447
|
|
|
|
```
compiling ../ruby.c
../ruby.c:1547:17: error: implicit declaration of function 'setup_yjit_options' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
setup_yjit_options(s, &opt->yjit);
^
../ruby.c:1547:17: note: did you mean 'setup_mjit_options'?
../ruby.c:1122:1: note: 'setup_mjit_options' declared here
setup_mjit_options(const char *s, struct mjit_options *mjit_opt)
^
../ruby.c:1547:45: error: no member named 'yjit' in 'struct ruby_cmdline_options'; did you mean 'mjit'?
setup_yjit_options(s, &opt->yjit);
^~~~
mjit
../ruby.c:192:25: note: 'mjit' declared here
struct mjit_options mjit;
^
../ruby.c:1924:28: error: no member named 'yjit' in 'struct ruby_cmdline_options'; did you mean 'mjit'?
rb_yjit_init(&opt->yjit);
^~~~
mjit
../ruby.c:192:25: note: 'mjit' declared here
struct mjit_options mjit;
^
3 errors generated.
```
|
|
|
|
|
|
|
|
changed at 028f1887c2bfa50dcfc1b623470d6ab1b880fdde
|
|
`--yjit-call-threshold` and `--yjit-max-versions` need an argument.
|
|
We need to unshare the array loaded_features because the shared root
could be old gen (while loaded_features is young) which causes a WB
miss.
Notes:
Merged: https://github.com/ruby/ruby/pull/5392
|
|
* Rename --jit to --mjit
[Feature #18349]
* Fix a few more --jit references
* Fix MJIT Actions
* More s/jit/mjit/ and re-introduce --disable-jit
* Update NEWS.md
* Fix test_bug_reporter_add
Notes:
Merged-By: k0kubun <[email protected]>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4784
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4784
|
|
This reverts commit 119626da947bf6492ef7a27abf3bf12de5d0d95a.
|
|
* Add --yjit-no-type-prop so we can test YJIT without type propagation
* Fix typo in command line option
* Leave just two test workflows enable for YJIT
Notes:
Merged-By: maximecb <[email protected]>
|
|
This commit adds support for embedded strings with variable capacity and
uses Variable Width Allocation to allocate strings.
Notes:
Merged: https://github.com/ruby/ruby/pull/4933
|
|
--enable=all didn't work when cppflags=-DMJIT_FORCE_ENABLE was given.
|
|
TestRubyOptions#test_enable was broken on OpenBSD after the yjit
merge. --yjit (and --enable-all, which enables --yjit) fails on
OpenBSD because yjit uses an insecure mmap call (both writable
and executable), in alloc_exec_mem, which OpenBSD does not allow.
This can probably be reverted if yjit switches to a more secure
mmap design (writable xor executable). This would involve
initially calling mmap with PROT_READ | PROT_WRITE, and after writing
of executable code has finished, using mprotect to switch to
PROT_READ | PROT_EXEC. I believe Firefox uses this approach for
their Javascript engine since Firefox 46.
|
|
|
|
|
|
|
|
Previously, options such as "--yjit123" would enable YJIT. Additionally,
the error message for argument parsing mentioned "--jit-..." instead of
"--yjit-...".
|
|
|
|
|
|
|
|
Add RUBY_YJIT_ENABLE env var and YJIT_FORCE_ENABLE compile-time constant.
Rename YJIT_STATS to RUBY_YJIT_STATS.
|
|
|
|
|
|
|
|
|
|
Compile time flag seems pretty forceful, so let MJIT turn on by default
if it is used.
|
|
|
|
|
|
YJIT and MJIT can't be running in the same process otherwise they'll
clobber each other. We should show an error and exit if they're both
enabled.
|
|
|
|
|
|
* Implement eager versioning. Refactor versioning logic.
* Add --version-limit and --greedy-versioning command-line args
|
|
Renaming uJIT to YJIT. AKA s/ujit/yjit/g.
|
|
|
|
|
|
VM and ujit instruction counting in debug builds.
shopify/ruby#19
|
|
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4915
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4915
|