aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Move WeakMap and WeakKeyMap code to weakmap.cPeter Zhu2023-03-105-883/+1031
| | | | | | These classes don't belong in gc.c as they're not actually part of the GC. This commit refactors the code by moving all the code into a weakmap.c file.
* [rubygems/rubygems] Use `RbSys::ExtensionTask` when creating new rust gemsIan Ker-Seymer2023-03-108-8/+18
| | | | https://github.com/rubygems/rubygems/commit/125f9fece9
* Remove prototypes for functions that are no longer used. (#7497)Samuel Williams2023-03-101-4/+0
|
* RJIT: Resurrect --rjit-pause and RJIT.resumeTakashi Kokubun2023-03-092-8/+6
|
* RJIT: Do nothing on jit_cont_freeTakashi Kokubun2023-03-091-0/+2
| | | | if cont is NULL.
* RJIT: Use imemo_type_p insteadTakashi Kokubun2023-03-093-5/+6
| | | | which seems safer. It seems like imemo_type can cause SEGV.
* RJIT: Lazily compile global ocbTakashi Kokubun2023-03-092-12/+16
|
* [rubygems/rubygems] rubocop -a test/rubygems/test_gem.rbHiroshi SHIBATA2023-03-101-3/+3
| | | | https://github.com/rubygems/rubygems/commit/4d20ed7e32
* [rubygems/rubygems] Disable side-effect of GEM_HOME configurationHiroshi SHIBATA2023-03-102-0/+10
| | | | https://github.com/rubygems/rubygems/commit/c43328ab03
* Explain the project purpose in rjit.md [ci skip]Takashi Kokubun2023-03-091-1/+6
|
* [rubygems/rubygems] Removed needless optionHiroshi SHIBATA2023-03-101-1/+0
| | | | https://github.com/rubygems/rubygems/commit/4489361a21
* [rubygems/rubygems] Added only missing extensions option into pristine commandHiroshi SHIBATA2023-03-102-0/+58
| | | | https://github.com/rubygems/rubygems/commit/cfd0e615d7
* Accept `sleep(nil)` as sleep forever. (#7484)Samuel Williams2023-03-102-5/+27
|
* Bump ruby/setup-ruby from 1.143.0 to 1.144.0dependabot[bot]2023-03-104-4/+4
| | | | | | | | | | | | | | Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.143.0 to 1.144.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/31a7f6d628878b80bc63375a93ae079ec50a1601...9669f3ee51dc3f4eda8447ab696b3ab19a90d14b) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
* Revert and refine tests for uninitialized queueNobuyoshi Nakada2023-03-101-0/+12
| | | | | `Queue` and `SizedQueue` still check array members. Only the test of `ConditionVariable` is useless.
* Remove stale testsNobuyoshi Nakada2023-03-102-18/+0
| | | | | | These tests were added at a198bb3929a4562a12b4aa245a297c7d3695149f, when these classes were `Struct`s. Since these classes have been rewritten, these tests no longer make sense.
* Allow classes and modules to become too complexHParker2023-03-095-30/+117
| | | | This makes the behavior of classes and modules when there are too many instance variables match the behavior of objects with too many instance variables.
* YJIT: upgrade type in `guard_object_is_string` (#7489)Maxime Chevalier-Boisvert2023-03-092-35/+49
| | | | | | | | | * YJIT: upgrade type in guard_object_is_string Also make logic more in line with other guard_xxx methods * Update yjit/src/core.rs * Revert changes to Type::upgrade()
* Remove unused forward decl of rb_thread_structMatt Valentine-House2023-03-091-2/+0
|
* YJIT: Merge x86_merge into x86_split (#7487)Takashi Kokubun2023-03-091-31/+12
|
* Ignore parse.y expand tabs commitTakashi Kokubun2023-03-091-0/+1
| | | | [Misc #19523]
* Expand tabs in parse.yTakashi Kokubun2023-03-091-7361/+7361
| | | | | I used the same script as https://github.com/ruby/ruby/pull/6094 but for a .y file.
* Another fix for 262254dc7dTakashi Kokubun2023-03-091-1/+1
| | | | Koichi might want to adjust his editor configuration.
* Revert an unneeded diff in 262254dc7dTakashi Kokubun2023-03-091-3/+3
|
* rename `defined_ivar` to `definedivar`Koichi Sasada2023-03-104-11/+11
| | | | because non-opt instructions should contain `_` char.
* YJIT: Optimize `cmp REG, 0` into `test REG, REG` (#7471)Takashi Kokubun2023-03-091-2/+31
|
* [rubygems/rubygems] Drop to support Psych 3.0 bundled at Ruby 2.5Hiroshi SHIBATA2023-03-091-27/+5
| | | | https://github.com/rubygems/rubygems/commit/a6650c2c96
* Remove special handling of `SIGCHLD`. (#7482)Samuel Williams2023-03-091-53/+2
|
* Fix interpreter crash caused by RUBY_INTERNAL_EVENT_NEWOBJ + RactorsKJ Tsanaktsidis2023-03-092-0/+18
| | | | | | | | | | | | When a Ractor is created whilst a tracepoint for RUBY_INTERNAL_EVENT_NEWOBJ is active, the interpreter crashes. This is because during the early setup of the Ractor, the stdio objects are created, which allocates Ruby objects, which fires the tracepoint. However, the tracepoint machinery tries to dereference the control frame (ec->cfp->pc), which isn't set up yet and so crashes with a null pointer dereference. Fix this by not firing GC tracepoints if cfp isn't yet set up.
* RJIT: Make functions in rjit_c.c staticTakashi Kokubun2023-03-083-24/+28
| | | | They don't need to be global.
* RJIT: Reorganize rjit.cTakashi Kokubun2023-03-081-54/+45
| | | | Reordering functions for readability, adding stats whenever possible.
* RJIT: Stop allowing leaked globals rjit_*Takashi Kokubun2023-03-0810-74/+74
|
* RJIT: Get rid of verbose loggingTakashi Kokubun2023-03-081-26/+2
|
* RJIT: Clean up the declaration messTakashi Kokubun2023-03-082-10/+2
|
* [rubygems/rubygems] Ensure that `TempIO` is closedNobuyoshi Nakada2023-03-091-0/+6
| | | | https://github.com/rubygems/rubygems/commit/dc7b9db514
* [Bug #19161] Check for TLS usabilityNobuyoshi Nakada2023-03-091-6/+7
| | | | On all platforms using GCC, even other than darwin.
* Make sure TestDefaultGems#test_validate_gemspec runs even when Dir.pwd != srcdirlukeg2023-03-091-4/+11
| | | | | | For instance, when running tests in build directory like: $ make test-all TESTOPTS="../ruby/test"
* Remove SIGCHLD `waidpid`. (#7476)Samuel Williams2023-03-098-324/+6
| | | | | | | * Remove `waitpid_lock` and related code. * Remove un-necessary test. * Remove `rb_thread_sleep_interruptible` dead code.
* [rubygems/rubygems] rubocop -a lib/rubygems/specification.rbHiroshi SHIBATA2023-03-081-1/+1
| | | | https://github.com/rubygems/rubygems/commit/85d60e9886
* [rubygems/rubygems] Detect extension files under full_required_pathsHiroshi SHIBATA2023-03-081-0/+12
| | | | | | | | | | | | | | | | When we use this methods with local gemspec, we don't handle build status of extension correctly. So We need to find extension files in require_paths. Example with ruby/erb repository: ``` $ bundle exec irb Ignoring erb-4.0.2 because its extensions are not built. Try: gem pristine erb --version 4.0.2 >> ``` https://github.com/rubygems/rubygems/commit/f90e43cf3f
* Fix node search in bindgenTakashi Kokubun2023-03-081-1/+8
| | | | | This is to fix a weird bindgen behavior on Matt's branch: https://github.com/ruby/ruby/pull/7393
* Fix ruby_testoptions on RubyCITakashi Kokubun2023-03-081-1/+1
| | | | http://rubyci.s3.amazonaws.com/osx1200arm-no-yjit/ruby-master/log/20230308T185004Z.fail.html.gz
* [ruby/net-http] Enhanced RDoc for Net::HTTPBurdette Lamar2023-03-081-17/+36
| | | | | | (https://github.com/ruby/net-http/pull/130) https://github.com/ruby/net-http/commit/698e18cfc1
* Add defined_ivar as YJIT instruction as wellOle Friis Østergaard2023-03-083-159/+201
| | | | | | | | | | This works much like the existing `defined` implementation, but calls out to rb_ivar_defined instead of the more general rb_vm_defined. Other difference to the existing `defined` implementation is that this new instruction has to take the same operands as the CRuby `defined_ivar` instruction.
* Add defined_ivar instructionOle Friis Østergaard2023-03-083-13/+28
| | | | | | | | This is a variation of the `defined` instruction, for use when we are checking for an instance variable. Splitting this out as a separate instruction lets us skip some checks, and it also allows us to use an instance variable cache, letting shape analysis speed up the operation further.
* Fix commit missNobuyoshi Nakada2023-03-091-1/+1
|
* Disable color mode of test-syntax-suggest when on dumb terminalNobuyoshi Nakada2023-03-081-0/+6
| | | | | The compliation-mode of Emacs sets TERM to "dumb" and does not support coloring.
* Fix crash when allocating classes with newobj hookPeter Zhu2023-03-082-1/+14
| | | | | | | | | | | | | | | | | | | | | | We need to zero out the whole slot when running the newobj hook for a newly allocated class because the slot could be filled with garbage, which would cause a crash if a GC runs inside of the newobj hook. For example, the following script crashes: ``` require "objspace" GC.stress = true ObjectSpace.trace_object_allocations { 100.times do Class.new end } ``` [Bug #19482]
* Constify local static variables in yyparseNobuyoshi Nakada2023-03-081-0/+2
|
* code styleHiroshi SHIBATA2023-03-081-1/+3
|