Граф коммитов

2172 Коммитов

Автор SHA1 Сообщение Дата
Nobuyoshi Nakada 37e2a67a74
Method ID of call and fcall can be const not only ident 2021-01-01 00:54:38 +09:00
Nobuyoshi Nakada 0fbf4d0374
Access to reserved word parameter like as `__builtin.arg!(:if)` 2020-12-31 15:11:38 +09:00
Nobuyoshi Nakada f6256d8b7e
bisect.sh: Apply bisect.patch if exists [ci skip]
For some external reasons, e.g. Bison 3.5.91, some commits need to
be applied retroactively in order to pass builds.
2020-12-29 21:12:08 +09:00
Nobuyoshi Nakada b7163c712c
Canonicalization functions were removed already
At b958e2add8
2020-12-29 21:00:16 +09:00
Nobuyoshi Nakada d57c5a7b61 transcode-tblgen.rb: make silent a little when just -v 2020-12-29 17:45:19 +09:00
Nobuyoshi Nakada 365df8d351 transcode-tblgen.rb: send verbose messages to STDOUT 2020-12-29 17:45:19 +09:00
Nobuyoshi Nakada a042043487
Do not include external library sources into packages 2020-12-27 23:33:56 +09:00
Nobuyoshi Nakada 260d626ef6
Ignore symbols declared in the platform header 2020-12-27 15:50:44 +09:00
Nobuyoshi Nakada 366b58d7ca
Ignore objects from the "missing" directory 2020-12-27 15:50:44 +09:00
Nobuyoshi Nakada 0957814c27
Get rid of \K for old BASERUBYs which have a bug in String#scan 2020-12-27 15:50:43 +09:00
Nobuyoshi Nakada d55d0331c7
Exclude entry points 2020-12-27 15:50:02 +09:00
Nobuyoshi Nakada 46ab4fcf2a
Support AC_FUNC_MEMCMP 2020-12-27 15:50:02 +09:00
Nobuyoshi Nakada ddacff2b41
Follow up on variations of the development start messages [ci skip] 2020-12-25 17:43:23 +09:00
NARUSE, Yui 67fe290bb3 fix filename 2020-12-25 15:28:48 +09:00
NARUSE, Yui a89932799c gen-release-note.rb: Avoid to depend release metadata
Because it doesn't have metadata when I edit draft.
2020-12-24 17:20:05 +09:00
NARUSE, Yui 6a6daf3803 Add tag key
Release note will use tag value when I write GitHub URLs with release
tags.
2020-12-24 17:20:05 +09:00
NARUSE, Yui 709d9cf1ba Add release engineering related tools 2020-12-24 17:20:05 +09:00
NARUSE, Yui d58537cf8f Revert "remove bz2"
This reverts commit 7856da5fe7.
For other branches
2020-12-24 17:20:05 +09:00
Nobuyoshi Nakada fb54574393
Pass keyword options in assert_syntax_error 2020-12-24 01:24:30 +09:00
Kenta Murata aa856d5077 [ruby/date] Fix envutil for old Ruby
https://github.com/ruby/date/commit/57e25c406a
2020-12-23 18:19:26 +09:00
Takashi Kokubun 81a8d1cf09
Skip checking ROBJECT_EMBED
when we already check ROBJECT_NUMIV(self) is larger than
ROBJECT_EMBED_LEN_MAX at the beginning of the method, because the number
of instance variables for the same object doesn't decrease.

```
$ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=4 --alternate --output=all benchmark_3000.yml
before --jit: ruby 3.0.0dev (2020-12-23T06:32:19Z master dbb4f19969) +JIT [x86_64-linux]
after --jit: ruby 3.0.0dev (2020-12-23T07:45:42Z master 95e866c098) +JIT [x86_64-linux]
last_commit=Skip checking ROBJECT_EMBED
Calculating -------------------------------------
                              before --jit           after --jit
Optcarrot 3000 frames   102.34091772397872    102.77738408379015 fps
                        103.37784821624231    105.46530219076179
                        104.39567016876369    106.43712452152215
                        105.31782092252713    106.54986150067481
```
2020-12-22 23:50:43 -08:00
Hiroshi SHIBATA 61bd28b836
[ruby/date] Workaround for non-ruby repository like ruby/date, flori/json
https://github.com/ruby/date/commit/1ff7fa2d80
2020-12-23 13:53:40 +09:00
Hiroshi SHIBATA f14aaa2b12
Guard < Ruby 3.0 for the repositories of default gems. 2020-12-23 13:44:47 +09:00
Marc-Andre Lafortune 02233ed024 Adapt tool/search-cgvars.rb for MacOS 2020-12-22 22:25:41 -05:00
Marc-Andre Lafortune 3df3b47187 Add tool/search-cgvars.rb, thanks @ko1 2020-12-22 22:25:41 -05:00
Hiroshi SHIBATA edb76e8765 Prepare to release json-2.5.0 2020-12-22 19:44:27 +09:00
Takashi Kokubun 692af8e8f8
Prefer stdbool in vm_exec
Make the code a bit modern and consistent with some other places.
2020-12-21 21:16:39 -08:00
Akinori MUSHA 63b872c409 Prepare for importing the set gem 2020-12-22 12:17:47 +09:00
Marc-Andre Lafortune 1ecac8e4d0 Add `require_relative` option to `assert_ractor` 2020-12-20 22:00:05 -05:00
Takashi Kokubun 7d0144e055
Check mjit_call_p only when interrupted
for leaf_without_check_ints insns.

$ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=12 --alternate --output=all benchmark.yml
before --jit: ruby 3.0.0dev (2020-12-20T05:02:18Z master 02b3555874) +JIT [x86_64-linux]
after --jit: ruby 3.0.0dev (2020-12-20T05:36:00Z master 3f58de4eab) +JIT [x86_64-linux]
last_commit=Check mjit_call_p only when interrupted
Calculating -------------------------------------
                                 before --jit           after --jit
Optcarrot Lan_Master.nes    84.50647332260259     85.85057800433144 fps
                            91.17796644338372     92.09930605656054
                            91.29346683444497     93.01336611323687
                            91.50322318568884     93.07234029037433
                            91.66560903214686     93.22773241529644
                            91.82315142636172     93.37032901061119
                            92.15066379608260     93.83701526141679
                            92.37897097456643     93.86032792681507
                            92.53049815524908     93.91211970920320
                            92.78414507914283     94.09109196967890
                            92.90299756525958     94.40107239595325
                            93.70279428858790     95.01326369371263
2020-12-19 21:38:14 -08:00
Marc-Andre Lafortune b1b6dbfdc3 `assert_ractor` tweak. Thanks Nobu 2020-12-19 22:37:27 -05:00
Marc-Andre Lafortune 70f20234b2 Add `assert_ractor` [Feature #17367] 2020-12-19 17:13:08 -05:00
Takashi Kokubun 5611066e03
Prefer RB_OBJ_FROZEN_RAW
following the original implementation's change.
RB_TYPE_P(obj, T_OBJECT) is already checked in these places.

```
$ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=12 --alternate --output=all benchmark.yml
before --jit: ruby 3.0.0dev (2020-12-19T08:27:44Z master 52b1716c78) +JIT [x86_64-linux]
after --jit: ruby 3.0.0dev (2020-12-19T08:27:44Z master 52b1716c78) +JIT [x86_64-linux]
Calculating -------------------------------------
                                 before --jit           after --jit
Optcarrot Lan_Master.nes    88.04551460097873     84.38303800957766 fps
                            88.25194345156318     85.31098251408059
                            88.34143982084871     86.60491582339496
                            88.63486879856976     88.23675694701865
                            88.85392212902701     88.23696283371444
                            89.05739427483194     88.97185459567562
                            89.08141031147311     90.16373192658857
                            89.11359420883423     90.61655686444394
                            89.80323392966130     90.77044959019291
                            90.58912189625207     90.88534596330966
                            90.59847996970350     91.34314801302897
                            90.61180456415137     93.11599164249547
```
2020-12-19 00:34:33 -08:00
Jeremy Evans 05313c914b Use category: :deprecated in warnings that are related to deprecation
Also document that both :deprecated and :experimental are supported
:category option values.

The locations where warnings were marked as deprecation warnings
was previously reviewed by shyouhei.

Comment a couple locations where deprecation warnings should probably
be used but are not currently used because deprecation warning
enablement has not occurred at the time they are called
(RUBY_FREE_MIN, RUBY_HEAP_MIN_SLOTS, -K).

Add assert_deprecated_warn to test assertions.  Use this to simplify
some tests, and fix failing tests after marking some warnings with
deprecated category.
2020-12-18 09:54:11 -08:00
Nobuyoshi Nakada 9908177857
test/ruby: Check warning messages at a finer granularity
Instead of suppressing all warnings wholly in each test scripts by
setting `$VERBOSE` to `nil` in `setup` methods.
2020-12-17 20:06:18 +09:00
Hiroshi SHIBATA 44fba194a5
ruby/pathname separated .rb file to top-level directory. 2020-12-17 17:24:51 +09:00
Takashi Kokubun 5d74894f2b
Lazily move PC with RUBY_VM_CHECK_INTS
```
$ benchmark-driver -v --rbenv 'before --jit;after --jit' --repeat-count=12 --alternate --output=all benchmark.yml
before --jit: ruby 3.0.0dev (2020-12-17T06:17:46Z master 3b4d698e0b) +JIT [x86_64-linux]
after --jit: ruby 3.0.0dev (2020-12-17T07:01:48Z master 843abb96f0) +JIT [x86_64-linux]
last_commit=Lazily move PC with RUBY_VM_CHECK_INTS
Calculating -------------------------------------
                                 before --jit           after --jit
Optcarrot Lan_Master.nes    80.29343646660429     83.15779723251525 fps
                            82.26755637885149     85.50197941326810
                            83.50682959728820     88.14657804306270
                            85.01236533133049     88.78201988978667
                            87.81799334561326     88.94841008936447
                            87.88228562393064     89.37925215601926
                            88.06695585889995     89.86143277214475
                            88.84730834922165     90.00773346420887
                            90.46317871213088     90.82603371104014
                            90.96308347148916     91.29797694822179
                            90.97945938504556     91.31086331868738
                            91.57127890154500     91.49949184318844
```
2020-12-16 23:06:28 -08:00
Takashi Kokubun 3b4d698e0b
Ignore catch_except_p for PC motion
We probably don't need to move it when an insn is leaf...
2020-12-16 22:17:46 -08:00
Hiroshi SHIBATA 46ea74297e
Bump version to json-2.4.1 and use VERSION file for json version same as upstream 2020-12-17 14:20:42 +09:00
Takashi Kokubun 53babf35ef
Inline getconstant on JIT (#3906)
* Inline getconstant on JIT

* Support USE_MJIT=0
2020-12-16 06:24:07 -08:00
Takashi Kokubun 9d85ed6cbb
Simplify positioning of '{' and '}'
and fix inconsistent indentation in mjit_compile.inc.erb
2020-12-14 21:07:41 -08:00
Koichi Sasada aa6287cd26 fix inline method cache sync bug
`cd` is passed to method call functions to method invocation
functions, but `cd` can be manipulated by other ractors simultaneously
so it contains thread-safety issue.

To solve this issue, this patch stores `ci` and found `cc` to `calling`
and stops to pass `cd`.
2020-12-15 13:29:30 +09:00
Hiroshi SHIBATA 27520a1e1e
Fixed dst name for digest gem 2020-12-14 19:39:32 +09:00
Takashi Kokubun aacd2295d0
Debug the command used for gdb dump
It's not working
http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/3288206. I'm
debugging why.
2020-12-13 23:35:29 -08:00
Takashi Kokubun 246d7e4f1d
Dump a backtrace with gdb
Because Ruby often fails to dump a C backtrace.
2020-12-12 18:46:24 -08:00
Nobuyoshi Nakada 3b7c05ef8d
Fixed RUBY_RM_RECURSIVE when autoconf met the required version
Before 9189cf5793 the result of
`m4_version_compare` was compared to -1, however the `$2` of
`m4_version_prereq` has different meaning and is expanded when
the required version met.
2020-12-13 01:16:57 +09:00
Yusuke Endoh 248f1ef282 tool/mk_builtin_loader.rb: prevent "assigned but unused variable" 2020-12-12 23:09:11 +09:00
Hiroshi SHIBATA a6a68bae3c
Removed needless gemspec of webrick 2020-12-11 14:16:42 +09:00
Hiroshi SHIBATA 947a5505e5
Bump webrick-1.7.0 for version management with ruby/webrick. 2020-12-11 14:16:42 +09:00
NARUSE, Yui 7856da5fe7 remove bz2 2020-12-10 18:24:43 +09:00