summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-05-07LEGAL: add legal situation of aclocal.m4 [ci skip]卜部昌平
FSF holds its copyright. Notes: Merged: https://github.com/ruby/ruby/pull/3082
2020-05-07Remove test of ruby-mode.elKazuhiro NISHIYAMA
Because ruby-mode.el already removed at f03e68edb80dca962290d1fb3a6d49dabdbb911e
2020-05-06Always correct sp on leave cancelTakashi Kokubun
Even if local stack optimization is not used and values are written to VM stack, the stack pointer itself may not be moved properly. So this should be always moved on JIT cancellation. By the way it's hard to write a test for this because if we try to generate an interrupt, it will be a method call and it consumes the interrupt by itself on popping a frame.
2020-05-06Remove OPT_CHECKED_RUN codeTakashi Kokubun
Now this one is actually not in use because we override entire leave definition for JIT.
2020-05-07leakchecker.rb: try `lsof`Nobuyoshi Nakada
2020-05-07Suffixed memory leak tests as "memory_leak"Nobuyoshi Nakada
So that `TEST_EXCLUDES` option in common.mk works.
2020-05-07Cut down warm-up loops and gain main/warm-up ratioNobuyoshi Nakada
2020-05-07Share logically equivalent functionsNobuyoshi Nakada
2020-05-07* 2020-05-07 [ci skip]git
2020-05-06Enable OPT_CHECKED_RUN on MJIT for debuggingTakashi Kokubun
Trying to debug errors like http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2921397 http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2894526
2020-05-06Fakes IPSocket.getaddress in the whole methodNobuyoshi Nakada
To get rid of calling `getaddrinfo`, which may keep FDs internally.
2020-05-06Makes nil-safeNobuyoshi Nakada
2020-05-06Ignore FDs kept by system libraryNobuyoshi Nakada
`getaddrinfo` on macOS seems keeping FDs to query host names internally.
2020-05-06Fixed leaked fdsNobuyoshi Nakada
2020-05-06leakchecker.rb: search /dev/fd tooNobuyoshi Nakada
It is more popular than /proc/self/fd.
2020-05-06[DOC] Removed no longer meaningful part [ci skip]Nobuyoshi Nakada
As now `Object#===` document is separated from `rb_equal`, this note no longer makes sense.
2020-05-06Removed unnecessary duplicate codeNobuyoshi Nakada
`rb_equal` may be inlined in `case_equal` and actually same code is generated twice.
2020-05-06Generalize the explanation of the side effect of the rb_equal() optimizationBenoit Daloze
2020-05-06Document rb_equal() and clarify the relation with Kernel#===Benoit Daloze
* Multiple times people have been confused and believed rb_equal() called #=== but it does not, it calls #==. * This optimization has a subtle side effect for Float::NAN, which is now documented.
2020-05-06Remove redundant check in rb_obj_cmp()Benoit Daloze
* rb_equal() already checks using `obj1 == obj2`.
2020-05-06* 2020-05-06 [ci skip]git
2020-05-05Improve documentation for Enumerator#next, next_values, peek and peek_values.Marc-Andre Lafortune
[DOC] [#16829]
2020-05-05Fix gemspecMarc-Andre Lafortune
2020-05-05[ruby/uri] Check if DN existsNobuyoshi Nakada
https://bugs.ruby-lang.org/issues/16830 https://github.com/ruby/uri/commit/b4bf8c1217
2020-05-05envutil.rb: Also alias to #nameNobuyoshi Nakada
2020-05-05* 2020-05-05 [ci skip]git
2020-05-04Output compaction stats in one loop / eliminate 0 countsAaron Patterson
We only need to loop `T_MASK` times once. Also, not every value between 0 and `T_MASK` is an actual Ruby type. Before this change, some integers were being added to the result hash even though they aren't actual types. This patch omits considered / moved entries that total 0, cleaning up the result hash and eliminating these "fake types".
2020-05-04Bison 3.5.91 now defaults parse.error to "simple"Nobuyoshi Nakada
2020-05-04Bison 3.59.1 folds yydestruct function headerNobuyoshi Nakada
2020-05-04Fix indentationKazuki Tsujimoto
2020-05-04Fix pseudo code for NODE_ARYPTN, NODE_HSHPTNKazuki Tsujimoto
Due to the change in 3893a8dd42fb3bbd71750648c3c0de118955a6ea, there is no longer a need to put true/false.
2020-05-04Suppress warnings by gcc 10.1.0-RC-20200430Nobuyoshi Nakada
* Folding results should not be empty. If `OnigCodePointCount(to->n)` were 0, `for` loop using `fn` wouldn't execute and `ncs` elements are not initialized. ``` enc/unicode.c:557:21: warning: 'ncs[0]' may be used uninitialized in this function [-Wmaybe-uninitialized] 557 | for (i = 0; i < ncs[0]; i++) { | ~~~^~~ ``` * Cast to `enum yytokentype` Additional enums for scanner events by ripper are not included in `yytokentype`. ``` ripper.y:7274:28: warning: implicit conversion from 'enum <anonymous>' to 'enum yytokentype' [-Wenum-conversion] ```
2020-05-03Revert 0776198486 for Solaris debugTakashi Kokubun
For some reason 0776198486 didn't fail https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20200503T230004Z.log.html.gz even while it was before 9aa5fe1bf8. Anyway, there's no need to keep the change anymore.
2020-05-03Test no .dSYM on macOSTakashi Kokubun
I think 9aa5fe1bf89db8cd215b24d8ddfb668714681b83 helps this issue too.
2020-05-03Split compile and link for MinGW supportTakashi Kokubun
MinGW test_jit fails with no error message. Perhaps linker flags should not be passed when compilation is happening. Anyway splitting these stages doesn't matter for performance. So let me just split it to fix the issue. Probably this helps Solaris's issue too.
2020-05-03Debug Solaris's MJIT failureTakashi Kokubun
using -Winvalid-pch https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20200501T170004Z.fail.html.gz
2020-05-03Travis s390x-linux is too unstableTakashi Kokubun
It has caused errors by ENOSPC like https://travis-ci.org/github/ruby/ruby/jobs/682520961 too often. I cleared all cache of Travis yesterday, but it didn't help it. Until somebody figures out how to fix it, let me exclude it from CI status reports to avoid false alerts.
2020-05-04Fixed constant initializerNobuyoshi Nakada
An expression using `static const` value seems not considered as `static const` by Visual C.
2020-05-04* 2020-05-04 [ci skip]git
2020-05-04Make int-pair-to-real conversion more portableNobuyoshi Nakada
And utilize more bits even if DBL_MANT_DIG > 53.
2020-05-03Update to ruby/spec@032ee74Benoit Daloze
2020-05-03Update to ruby/mspec@d419d0bBenoit Daloze
2020-05-03Support cc_added_args againTakashi Kokubun
This support was accidentally removed in 818d6d33368a396d9cd3d1a34a84015a9e76c5c8.
2020-05-03Skip pdb corruption on Visual Studio 2015 as wellTakashi Kokubun
It turned out that the pdb corruption happens on Visual Studio 2015 as well. https://ci.appveyor.com/project/ruby/ruby/builds/32602953/job/3gj43q18wqeiy729
2020-05-03Skip only .dSYM cleanup on macOSTakashi Kokubun
Fix https://github.com/ruby/ruby/runs/636020145 without skipping too many tests. It seems that .c -> .o with debug flags and .o -> .so without debug flags did not generate .dSYM but now .c -> .so with debug flags seems to generate a .dSYM directory. As --jit-debug should not be used by normal users, let me skip implementing the removal for now.
2020-05-03Optimize sin/cosNobuyoshi Nakada
GCC/Clang can optimize to calculate `sin(x)` and `cos(x)` at once, when the both are closely called on the same argument. Similar optimization is possible for `__sinpi(x)` and `__cospi(x)` if available, which calculate arguments in radian, i.e. `sin(x*M_PI)` and `cos(x*M_PI)` respectively.
2020-05-03Show unreserved bits onlyNobuyoshi Nakada
`RUBY_FL_SEEN_OBJ_ID` can be set by #object_id.
2020-05-02Avoid infinite times of JIT compactionTakashi Kokubun
It's to avoid memory leak for actual usage (because they don't get unloaded properly), but also for fixing CI timed out due to JIT compaction taking too long time on --jit-wait (which runs every time) http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2911601
2020-05-03spec/ruby/core/process/clock_getres_spec.rb: lax the resolution limitYusuke Endoh
Android is Linux, but the clock resolution is 10 milliseconds. I think that 1 microsecond is too strict for embedded environment. This change laxes the limit to 10 milliseconds.
2020-05-03* 2020-05-03 [ci skip]git