summaryrefslogtreecommitdiff
path: root/common.mk
AgeCommit message (Collapse)Author
2020-04-28Remove rubyspec temporary directoriesNobuyoshi Nakada
2020-04-28Remove rubyspec temporary directoryNobuyoshi Nakada
2020-04-27check: compare with right upstreamNobuyoshi Nakada
2020-04-22Update benchmark-driver versionNobuyoshi Nakada
2020-04-22Update benchmark-driver versionNobuyoshi Nakada
2020-04-17fileutils now depends on rbconfig.rb due to JRuby supportNobuyoshi Nakada
2020-04-14Make y.output in ripper unlocalized [ci skip]Nobuyoshi Nakada
Often it is easy to search, grep, etc from command line, for debugging purpose.
2020-04-13include what you use.卜部昌平
This reverts commit 443389effc37308ce1a3c3a840082a344fc6af56. This reverts commit d94960f22ec2de3a3855305cb51343806d2b46c7. Inclusion of header files must be explicit. Every file shall directly include what is necessary. https://github.com/include-what-you-use/include-what-you-use says: > When every file includes what it uses, then it is possible to edit any > file and remove unused headers, without fear of accidentally breaking > the upwards dependencies of that file. It also becomes easy to > automatically track and update dependencies in the source code. Though we don't use iwyu itself, the principle quoted above is a good thing that we can agree. Now that include guards were added to every and all of the headers inside of our project this changeset does not increase compile time, at least on my machine. Notes: Merged: https://github.com/ruby/ruby/pull/3023
2020-04-10update dependenciesKoichi Sasada
Notes: Merged: https://github.com/ruby/ruby/pull/3010
2020-04-08Merge pull request #2991 from shyouhei/ruby.h卜部昌平
Split ruby.h Notes: Merged-By: shyouhei <shyouhei@ruby-lang.org>
2020-04-06Moved `Dir.open` and `Dir#initialize` to dir.rbNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3006
2020-04-05Added tooldir variableNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3003
2020-03-30Refresh revision.h by after-updateNobuyoshi Nakada
2020-03-24Add rexml to fix rss of test-bundled-gems (#2976)Kazuhiro NISHIYAMA
Notes: Merged-By: hsbt <hsbt@ruby-lang.org>
2020-03-23Use miniruby to run tool/mjit_tabs.rbTakashi Kokubun
hoping to fix https://github.com/ruby/actions/runs/527422022
2020-03-23Make file names and variable names consistentTakashi Kokubun
2020-03-24Moved MJIT_WITHOUT_TABS default to configure.acNobuyoshi Nakada
And then the environment variable.
2020-03-22Change the filename like make variableTakashi Kokubun
for consistency
2020-03-22Make the first argument slightly more robustTakashi Kokubun
2020-03-22Change the run_without_tabs switching to dedicatedTakashi Kokubun
variable of make instead of d059714746 as requested. You can disable this like `make MJIT_WITHOUT_TABS=false` or `export MJIT_WITHOUT_TABS=false`.
2020-03-22Disable run_without_tabs when there's no -ggdb3Takashi Kokubun
in debugflags, as requested by nobu I actually wanted to check debugflags directly rather than MJIT_DEBUGFLAGS because debugflags is always used but MJIT_DEBUGFLAGS may not be always used. But I couldn't find a better way to check debugflags.
2020-03-22Expand tabs for rb_mjit_header.h (#2975)Takashi Kokubun
This is necessary to avoid converting a hard tab to just 1 space in preprocessor to generate rb_mjit_header.h, which is helpful when using gdb or perf report. See also: [Misc #16112] This reverts commit 91acdd17c4b4bb69a8fa3ada46e09dad46b9362e. Fixed permission failure on Travis, encoding, and added SKIPPED_FILES. Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-03-22Revert "Expand tabs for rb_mjit_header.h"Takashi Kokubun
This reverts commit 57119dd561418c917b885db5f5af7f129a96d1ec. Temporarily reverting for Travis failures
2020-03-22Expand tabs for rb_mjit_header.hTakashi Kokubun
I can't live without this when using gdb or perf report. See also: [Misc #16112]
2020-03-17support builtin for Kernel#cloneS.H
Notes: Merged: https://github.com/ruby/ruby/pull/2954 Merged-By: nobu <nobu@ruby-lang.org>
2020-03-14Use a human-readable funcname with --jit-debugTakashi Kokubun
for perf output like: Samples: 100K of event 'cycles:ppp', Event count (approx.): 1007750000 Children Self Command Shared Object Symbol + 81.58% 1.47% ruby ruby [.] rb_vm_exec + 81.06% 7.61% ruby ruby [.] vm_exec_core + 80.16% 0.00% ruby ruby [.] vm_sendish (inlined) + 75.03% 0.00% ruby ruby [.] mjit_exec (inlined) + 74.37% 0.00% ruby ruby [.] mjit_exec (inlined) + 73.42% 0.22% ruby _ruby_mjit_p11277u42.so [.] _mjit42_rack_method_override_rb_call + 73.25% 0.10% ruby _ruby_mjit_p11277u41.so [.] _mjit41_sinatra_show_exceptions_rb_call + 73.19% 0.22% ruby _ruby_mjit_p11277u44.so [.] _mjit44_rack_head_rb_call + 73.03% 0.15% ruby _ruby_mjit_p11277u45.so [.] _mjit45_sinatra_base_rb_call + 72.87% 0.26% ruby _ruby_mjit_p11277u49.so [.] _mjit49_rack_logger_rb_call + 70.56% 0.11% ruby _ruby_mjit_p11277u40.so [.] _mjit40_sinatra_base_rb_call + 68.70% 0.11% ruby _ruby_mjit_p11277u39.so [.] _mjit39_sinatra_base_rb_call + 68.39% 0.29% ruby _ruby_mjit_p11277u56.so [.] _mjit56_rack_protection_frame_options_rb_call + 67.89% 0.18% ruby _ruby_mjit_p11277u37.so [.] _mjit37_sinatra_base_rb_block_in_call + 67.04% 0.16% ruby _ruby_mjit_p11277u34.so [.] _mjit34_sinatra_base_rb_synchronize Reverting deb1c7b97d, fixing `sprint_funcname`'s argument in `compact_all_jit_code`. Also updating common.mk.
2020-03-14Fix bundled gems installation on a fresh cloneDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/2951
2020-03-13Update and extract for each gemNobuyoshi Nakada
2020-03-12Add prepare-gems to download and extract bundled gemsNobuyoshi Nakada
2020-02-28Prevent unloading methods used in root_fiber while calling another Fiber (#2939)Takashi Kokubun
Fixing SEGVs like: http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2744905 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2744420 http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2741400 Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2020-02-25Share extracted bundled gems with gems for bundlerNobuyoshi Nakada
Extract bundled gems under ".bundle/gems" and get rid of duplication which cause constant redefinition warnings at `test-all` after `extract-gems` and `test-bundler`. Notes: Merged: https://github.com/ruby/ruby/pull/2922
2020-02-24Fixed symbol misused as IDNobuyoshi Nakada
`rb_funcallv_public` and `rb_respond_to` require an `ID`, not a `Symbol`. [Bug #16649]
2020-02-23Revert "Prefer `exe/ruby` to execute from it"Nobuyoshi Nakada
This reverts commit c7b71af9e21b3f0b8fe413a3c20cf4bd633c40d0, as an example in bundler expects untouch PATH.
2020-02-22Prefer `exe/ruby` to execute from itNobuyoshi Nakada
2020-02-22Introduce disposable call-cache.Koichi Sasada
This patch contains several ideas: (1) Disposable inline method cache (IMC) for race-free inline method cache * Making call-cache (CC) as a RVALUE (GC target object) and allocate new CC on cache miss. * This technique allows race-free access from parallel processing elements like RCU. (2) Introduce per-Class method cache (pCMC) * Instead of fixed-size global method cache (GMC), pCMC allows flexible cache size. * Caching CCs reduces CC allocation and allow sharing CC's fast-path between same call-info (CI) call-sites. (3) Invalidate an inline method cache by invalidating corresponding method entries (MEs) * Instead of using class serials, we set "invalidated" flag for method entry itself to represent cache invalidation. * Compare with using class serials, the impact of method modification (add/overwrite/delete) is small. * Updating class serials invalidate all method caches of the class and sub-classes. * Proposed approach only invalidate the method cache of only one ME. See [Feature #16614] for more details. Notes: Merged: https://github.com/ruby/ruby/pull/2888
2020-02-22VALUE size packed callinfo (ci).Koichi Sasada
Now, rb_call_info contains how to call the method with tuple of (mid, orig_argc, flags, kwarg). Most of cases, kwarg == NULL and mid+argc+flags only requires 64bits. So this patch packed rb_call_info to VALUE (1 word) on such cases. If we can not represent it in VALUE, then use imemo_callinfo which contains conventional callinfo (rb_callinfo, renamed from rb_call_info). iseq->body->ci_kw_size is removed because all of callinfo is VALUE size (packed ci or a pointer to imemo_callinfo). To access ci information, we need to use these functions: vm_ci_mid(ci), _flag(ci), _argc(ci), _kwarg(ci). struct rb_call_info_kw_arg is renamed to rb_callinfo_kwarg. rb_funcallv_with_cc() and rb_method_basic_definition_p_with_cc() is temporary removed because cd->ci should be marked. Notes: Merged: https://github.com/ruby/ruby/pull/2888
2020-02-15Workaround for bison provided by scoop on mswin environmentHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/2909
2020-02-12Fixed a potential memory leakNobuyoshi Nakada
`rb_str_new_cstr` can raise a `NoMemoryError`.
2020-02-09Check if bindable against the refined target [Bug #16617]Nobuyoshi Nakada
2020-01-28Fix file dependency in makeAlan Wu
2020-01-27Fixed missing dependency on array.rbNobuyoshi Nakada
2020-01-26Moved Array#shuffle and Array#shuffle! to rbincNobuyoshi Nakada
2020-01-22Remove special handling of $SAFE and related C-APIsJeremy Evans
These were all deprecated in Ruby 2.7. Notes: Merged: https://github.com/ruby/ruby/pull/2845
2020-01-21add default break pointsKoichi Sasada
2020-01-18Update clean-local [ci skip]Nobuyoshi Nakada
* Remove builtin_binary.inc which is generated for each time miniruby is built. * dSYM is a directory, not a file.
2020-01-17Update dependenciesNobuyoshi Nakada
internal/rational.h needs internal/warnings.h with Apple clang, for `UNALIGNED_MEMBER_ACCESS`.
2020-01-17Update dependencies in makefiles againKazuhiro NISHIYAMA
patch from https://travis-ci.org/ruby/ruby/jobs/638231960
2020-01-17Update dependencies in makefilesKazuhiro NISHIYAMA
patch from https://travis-ci.org/ruby/ruby/jobs/638226493
2020-01-12Clean generated ChangeLog [ci skip]Nobuyoshi Nakada
2020-01-12Ignore existing ChangeLog file and generate always [ci skip]Nobuyoshi Nakada