summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
6 daysReplace stdatomic ops with explicit mem orderJohn Hawthorn
My previous pass missed these atomic operations using operators.
6 daysImplement rbimpl_atomic_value_loadJohn Hawthorn
This only adds the rbimpl_ version to include/ruby/atomic.h so that it is not a new public interface. We were already using RUBY_ATOMIC_VALUE_LOAD in a few locations. This will allow us to use other memory orders internally when desired.
6 daysConvert ATOMIC_LOAD_RELAXED to use new rbimpl_*John Hawthorn
6 daysUpdate rbimpl_atomic_* to all take a memory orderJohn Hawthorn
6 daysRename rbimpl_atomic.*_set to _storeJohn Hawthorn
"store" is the terminology the C11 standard uses, which allows us to use this as a fallback. This only changes the private rbimpl_ version of the method, RUBY_ATOMIC_SET et al. keep the same name.
6 daysMake Enumerator::Product write-barrier protectedPeter Zhu
6 daysMake Enumerator::Chain write-barrier protectedPeter Zhu
6 daysZJIT: Add flag to disable the HIR optimizer (#14181)Max Bernstein
Also add a check in the bisect script that can assign blame to the HIR optimizer.
6 daysZJIT: Avoid splitting add_into/sub_into for x86_64 (#14177)Takashi Kokubun
* ZJIT: Avoid splitting add_into/sub_into * Require add_into/sub_into to take a Reg
6 days[DOC] Markup example code as rubyNobuyoshi Nakada
6 days[DOC] Use backticks instead of `<tt>` except for nested markupsNobuyoshi Nakada
6 days[DOC] Use backticks instead of `+` in markdown modeNobuyoshi Nakada
6 days[DOC] Markup constants as codeNobuyoshi Nakada
6 days[DOC] Fix a typoNobuyoshi Nakada
6 days[DOC] Try the latest RDocNobuyoshi Nakada
6 days[DOC] Use the specified revision RDocNobuyoshi Nakada
6 daysUse rb_gc_mark_and_move for autoload_dataPeter Zhu
6 daysUse rb_gc_mark_and_move for autoload_constPeter Zhu
6 daysCI: ubuntu.yml: Skip user ground id test on ppc64le and s390xJun Aruga
This is a temporary workaround.
6 daysCI: ubuntu.yml: Set HOME env on ppc64le and s390xJun Aruga
This is a temporary workaround.
6 daysCI: ubuntu.yml: Add GitHub Actions s390x caseJun Aruga
Add the s390x case using GitHub Actions ppc64le/s390x service. https://github.com/IBM/actionspz We can run the ppc64le/s390x cases only in the registered upstream repositories. https://github.com/IBM/actionspz/blob/main/docs/FAQ.md#what-about-forked-repos The following matrix upstream logic is to skip the ppc64le/s390x in the downstream (fork) repositories. ``` + upstream: + - ${{ github.repository == 'ruby/ruby' }} ``` Use the "os" list to determine the excluded ppc64le/s390x cases by using the "exclude" syntax. Because the "exclude" syntax are executed before the "include" syntax. Add the ubuntu-24.04-ppc64le as a comment, because the GitHub Actions ppc64le case has the following test errors and failures. https://bugs.ruby-lang.org/issues/21534
6 daysUse `$(SRC_FILE)` and `$(OS_DEST_FILE)`Nobuyoshi Nakada
NMake combines VPATH and stem with a backslash. The resulting source name is embedded verbatim, backslash included, into the generated file using the `#line` pragma (e.g., "src\gc.rb"). This causes the warning "C4129: Unrecognized character escape sequence".
6 daysNMake needs caret to escape a hash signNobuyoshi Nakada
6 daysHandle preperly comments in middle of lines in gems/bundled_gemsNobuyoshi Nakada
6 days[DOC] Fix docs for GC.configPeter Zhu
After commit 61fff8a, GC.config now returns the same hash for getting and setting.
6 days[DOC] New .md file to replace doc/globals.rdocBurdette Lamar
6 days[ruby/stringio] Fix test nameSutou Kouhei
(https://github.com/ruby/stringio/pull/139) https://github.com/ruby/stringio/commit/0edc8e22da
6 daysCI: Surface Rust warnings on PRs that touch any Rust codeAlan Wu
Rust PRs will have a failed CI step if they trigger any warnings. This helps us stay on top of warnings from new Rust releases and also ones we accidentally write. Fix a typo for demo, since this only runs when Rust files are changed.
6 daysZJIT: CI: Use Rust version built into GitHub Actions imageAlan Wu
Saves the work of installing Rust for most jobs. Keep a job on each platform that tests 1.85.0, the minimum supported version, though.
6 days[DOC] YJIT: Add YJIT to autolink_excluded_wordsStan Lo
6 days[DOC] ZJIT: Add ZJIT to autolink_excluded_wordsStan Lo
This tells RDoc to not automatically link to the `ZJIT` module so we don't need to keep escaping the word ZJIT in the documentation/comments.
6 daysZJIT: Add --zjit-exec-mem-size (#14175)Takashi Kokubun
* ZJIT: Add --zjit-exec-mem-size * Add a comment about the limit
6 daysZJIT: Implement `concatstrings` insn (#14154)Stan Lo
Co-authored-by: Alexander Momchilov <alexander.momchilov@shopify.com>
6 daysYJIT, ZJIT: Fix JITs compiling prelude (#14171)Takashi Kokubun
6 daysZJIT: Add compile/profile/GC/invalidation time stats (#14158)Takashi Kokubun
Co-authored-by: Stan Lo <stan001212@gmail.com>
6 daysZJIT: Add RubyVM::ZJIT.enabled? (#14159)Takashi Kokubun
Co-authored-by: Max Bernstein <tekknolagi@gmail.com>
6 daysYJIT: Fix `mismatched_lifetime_syntaxes`, new in Rust 1.89.0Alan Wu
6 daysZJIT: Fix `mismatched_lifetime_syntaxes`, new in Rust 1.89.0Alan Wu
7 daysFix return value of setting in GC.configPeter Zhu
gc_config_set returned rb_gc_impl_config_get, but gc_config_get also added the implementation key to the return value. This caused the return value of GC.config to differ depending on whether the optional hash argument is provided or not.
7 daysAdd NODE IN locationsS-H-GAMELINKS
Add locations to struct `RNode_IN`. memo: ```bash > ruby -e 'case 1; in 2 then 3; end' --parser=prism --dump=parsetree @ ProgramNode (location: (1,0)-(1,24)) +-- locals: [] +-- statements: @ StatementsNode (location: (1,0)-(1,24)) +-- body: (length: 1) +-- @ CaseMatchNode (location: (1,0)-(1,24)) +-- predicate: | @ IntegerNode (location: (1,5)-(1,6)) | +-- IntegerBaseFlags: decimal | +-- value: 1 +-- conditions: (length: 1) | +-- @ InNode (location: (1,8)-(1,19)) | +-- pattern: | | @ IntegerNode (location: (1,11)-(1,12)) | | +-- IntegerBaseFlags: decimal | | +-- value: 2 | +-- statements: | | @ StatementsNode (location: (1,18)-(1,19)) | | +-- body: (length: 1) | | +-- @ IntegerNode (location: (1,18)-(1,19)) | | +-- IntegerBaseFlags: decimal | | +-- value: 3 | +-- in_loc: (1,8)-(1,10) = "in" | +-- then_loc: (1,13)-(1,17) = "then" +-- else_clause: nil +-- case_keyword_loc: (1,0)-(1,4) = "case" +-- end_keyword_loc: (1,21)-(1,24) = "end" ```
7 days[DOC] Update JIT optionsBurdette Lamar
7 days[DOC] Tweaks for GC.configBurdetteLamar
7 days[DOC] Tweaks for GC.configBurdetteLamar
7 daysUpdate string_casecmp.ymlErim Icel
7 daysUpdate test_string.rbErim Icel
7 daysOptimize `str_casecmp` length check using pointer endErim Icel
7 days[DOC] Fix `vssetup.cmd` argumentsNobuyoshi Nakada
7 daysCI: mingw: Use the official actions for msys2Hiroshi SHIBATA
Because ruby/setup-ruby is affected to test result.
7 daysCI: mingw: Set up msys2 environment variablesNobuyoshi Nakada
7 daysCI: mingw: Set `cmd` as the default shellNobuyoshi Nakada
It is used in more steps than `sh`.