| Age | Commit message (Collapse) | Author |
|
|
|
|
|
I made a special kind of `ProfiledType` that looks at specific objects, not just their classes/shapes (https://github.com/ruby/ruby/pull/15051). Then I profiled some of our benchmarks.
For lobsters:
```
Top-6 invokeblock handler (100.0% of total 1,064,155):
megamorphic: 494,931 (46.5%)
monomorphic_iseq: 337,171 (31.7%)
polymorphic: 113,381 (10.7%)
monomorphic_ifunc: 52,260 ( 4.9%)
monomorphic_other: 38,970 ( 3.7%)
no_profiles: 27,442 ( 2.6%)
```
For railsbench:
```
Top-6 invokeblock handler (100.0% of total 2,529,104):
monomorphic_iseq: 834,452 (33.0%)
megamorphic: 818,347 (32.4%)
polymorphic: 632,273 (25.0%)
monomorphic_ifunc: 224,243 ( 8.9%)
monomorphic_other: 19,595 ( 0.8%)
no_profiles: 194 ( 0.0%)
```
For shipit:
```
Top-6 invokeblock handler (100.0% of total 2,104,148):
megamorphic: 1,269,889 (60.4%)
polymorphic: 411,475 (19.6%)
no_profiles: 173,367 ( 8.2%)
monomorphic_other: 118,619 ( 5.6%)
monomorphic_iseq: 84,891 ( 4.0%)
monomorphic_ifunc: 45,907 ( 2.2%)
```
Seems like a monomorphic case for a specific ISEQ actually isn't a bad way of going about this, at least to start...
|
|
|
|
|
|
new ZJIT stats excerpt from liquid-runtime:
```
vm_read_from_parent_iseq_local_count: 10,909,753
guard_type_count: 45,109,441
guard_type_exit_ratio: 4.3%
guard_shape_count: 15,272,133
guard_shape_exit_ratio: 20.1%
code_region_bytes: 3,899,392
```
lobsters
```
guard_type_count: 71,765,580
guard_type_exit_ratio: 4.3%
guard_shape_count: 21,872,560
guard_shape_exit_ratio: 8.0%
```
railsbench
```
guard_type_count: 117,661,124
guard_type_exit_ratio: 0.7%
guard_shape_count: 28,032,665
guard_shape_exit_ratio: 5.1%
```
shipit
```
guard_type_count: 106,195,615
guard_type_exit_ratio: 3.5%
guard_shape_count: 33,672,673
guard_shape_exit_ratio: 10.1%
```
|
|
https://github.com/ruby/ruby/actions/runs/19107764906/job/54596244201
|
|
https://github.com/ruby/ruby/actions/runs/19111531630/job/54609629054
|
|
execution tag
(https://github.com/ruby/erb/pull/92)
These were the wrong way around.
https://github.com/ruby/erb/commit/50a5cd76fe
|
|
|
|
This bug was happening only when the `id2ref` table exists. We need
to replace the generic fields before replacing the object id of the
newly moved object.
Fixes [Bug #21664]
|
|
|
|
|
|
|
|
https://github.com/ruby/strscan/commit/5614095d9c
|
|
`$Id$` is for RCS, CVS, and SVN; no information with GIT.
https://github.com/ruby/strscan/commit/9e3db14fa2
|
|
https://github.com/ruby/strscan/commit/16ec901356
|
|
```
tool/sync_default_gems.rb:177:in `block in <module:SyncDefaultGems>': undefined local variable or method `it' for SyncDefaultGems:Module (NameError)
it.exclude << "lib/open3/jruby_windows.rb"
^^
from <internal:kernel>:90:in `tap'
from tool/sync_default_gems.rb:176:in `<module:SyncDefaultGems>'
from tool/sync_default_gems.rb:10:in `<main>'
```
|
|
Find interesting commits by following parents instead of relying on
"git log".
If we encounter a merge commit that may contain a conflict resolution,
fall back to cherry-picking the merge commit as a whole rather than
replaying each individual commit. The sync commit will include a
shortlog for the squashed commits in that case.
|
|
Currently, we try to git cherry-pick the upstream commit and then
resolve merge conflicts in the working tree with the help of Git's
rename detection. By the nature of heuristics, it does not work reliably
when the upstream adds or removes files.
Instead, first prepare temporary commit objects with uninteresting files
removed and file paths adjusted for ruby/ruby, and then cherry-pick it.
The cherry-pick should succeed as long as the mapping rules are correct,
the upstream does not contain a funny merge that strictly depends on
merge order, and there are no local changes in ruby/ruby.
|
|
No behavior change is intended by this change.
|
|
Use "git commit --amend" instead of "git filter-branch" since we only
need to handle one commit at HEAD.
|
|
This fixes it for the English gem.
|
|
* See https://github.com/ruby/pathname/pull/57#issuecomment-3485646510
|
|
https://github.com/ruby/strscan/commit/b4ddc3a2a6
|
|
Cannot use C99 syntax, as far as supporting Ruby 2.6 and earlier.
https://github.com/ruby/strscan/commit/f6d178fda5
|
|
Instead of an undocumented constant.
|
|
|
|
|
|
After 34b0ac68b31, we use a fallback instead of side exit for splats.
Count splats under `send_fallback_one_or_more_complex_arg_pass`.
|
|
Kokubun bought up that "complex" is a more fitting name for what these
counters count. Thanks!
Also:
- make the SendFallbackReason enum name consistent with the counter name
- rewrite the printout prompt in zjit.rb
|
|
We can't run arbitrary ruby code with the VM lock held.
|
|
`eos?` is opposite, cannot be used instead of `rest?`.
https://github.com/ruby/strscan/commit/bee8cc547b
|
|
(https://github.com/ruby/stringio/pull/172)
https://github.com/ruby/stringio/commit/17ae4daf9a
|
|
|
|
(https://github.com/ruby/stringio/pull/169)
https://github.com/ruby/stringio/commit/bef6541b55
|
|
(https://github.com/ruby/stringio/pull/167)
https://github.com/ruby/stringio/commit/94303ace95
|
|
(https://github.com/ruby/stringio/pull/170)
https://github.com/ruby/stringio/commit/da338d7e5d
|
|
(https://github.com/ruby/stringio/pull/168)
https://github.com/ruby/stringio/commit/9f10c7ae86
|
|
(https://github.com/ruby/stringio/pull/166)
https://github.com/ruby/stringio/commit/5eeb61df34
|
|
(https://github.com/ruby/stringio/pull/163)
https://github.com/ruby/stringio/commit/a126fe252f
|
|
ZJIT: Fix --zjit-mem-size and resurrect --zjit-exec-mem-size
|
|
that has not been obsolete.
Partially reverting https://github.com/ruby/ruby/pull/15049.
|
|
(https://github.com/ruby/strscan/pull/169)
Partially revert https://github.com/ruby/strscan/pull/168 because
strscan_rest_p did not have `rb_warning("StringScanner#rest? is
obsolete")`.
It is actively used by the latest tzinfo.gem, and we shouldn't remove it
without deprecating it.
https://github.com/ruby/strscan/commit/f3fdf21189
|
|
|
|
We shouldn't run any ruby code with the VM lock held.
|
|
https://github.com/ruby/strscan/commit/1387def685
|
|
ruby/strscan#168
|
|
same bug as: https://github.com/jruby/jruby/issues/9035
https://github.com/ruby/stringio/commit/65b144b175
|
|
Since https://github.com/ruby/strscan/commit/92961cde2b42.
https://github.com/ruby/strscan/commit/911f9c682a
|