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

114 Коммитов

Автор SHA1 Сообщение Дата
Jose Narvaez 4e2eb7695e Yet Another Ruby JIT!
Renaming uJIT to YJIT. AKA s/ujit/yjit/g.
2021-10-20 18:19:31 -04:00
Maxime Chevalier-Boisvert e4c65ec49c Refactor uJIT code into more files for readability 2021-10-20 18:19:26 -04:00
Alan Wu 07dd5f22a5 Scraper touch-ups
- Support older Ruby versions
- Catch rip-relative jmp. Happens in -O0
2021-10-20 18:19:22 -04:00
Nobuyoshi Nakada 3ce5434fec
Ignore static-ruby [ci skip]
static-ruby is statically linked against libruby, even when
configured with --enable-shared.
2020-11-24 08:38:06 +09:00
Nobuyoshi Nakada 9fc564cfef
Ignore rbenv version file, and moved dot files [ci skip] 2020-07-04 22:04:46 +09:00
David Rodríguez 7a5da7d55d Allow hidden files with a hyphen to be source controlled
Latest bundler includes a file named `.gitlab-ci.yml.tt`. Because of
this too specific .gitignore entry, it was failing to be properly
imported.
2020-07-04 13:41:17 +09:00
Nobuyoshi Nakada df275179bd
Revert "Moved aclocal.m4 to macro directory"
This reverts commit 4a6571dbc1,
because chkbuild does not follow.
2020-04-05 11:53:07 +09:00
Nobuyoshi Nakada 4a6571dbc1 Moved aclocal.m4 to macro directory 2020-04-05 09:26:57 +09:00
Hiroshi SHIBATA 66e636ab24
ignore revision.tmp with in-place build 2020-02-11 14:05:34 +09:00
Nobuyoshi Nakada a93d0a4e62
Check -1 arity for C++ 2019-11-22 18:42:49 +09:00
Yuichiro Kaneko b42656b9c4 Ignore *.rbinc files 2019-11-11 09:22:46 +09:00
Nobuyoshi Nakada 04075305d3
Ignore timestamp file for the expected failure [ci skip] 2019-10-22 21:33:24 +09:00
Samuel Williams 9e7a8a4351 Only ignore build directories. 2019-06-20 23:12:48 +12:00
Samuel Williams a6a4e86029 Ignore `/build*`. 2019-06-19 20:39:10 +12:00
Nobuyoshi Nakada 14778125b1
Removed and ignore symlinks by in-place build [Bug #15870] 2019-05-24 14:24:38 +09:00
Nobuyoshi Nakada dfc21a0467
Ignore generated files by in-place build [Bug #15870] 2019-05-24 12:23:26 +09:00
Nobuyoshi Nakada 2f0f9115d3
Ignore ChangeLog 2019-05-01 20:27:51 +09:00
Kazuhiro NISHIYAMA 7a34d8902a
Merge .time 2019-04-30 00:28:00 +09:00
SHIBATA Hiroshi c697bade0f
Ignore VSCode configuration from git. 2019-04-22 20:01:07 +09:00
nobu 2301054a99 Use BUILDDIR in ruby-runner.h from config.status
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 01:49:02 +00:00
nobu 54c979e979 Ignore goruby wrapper
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-03 13:12:29 +00:00
nobu ec9e886b63 Ignore more DLEXT files [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-23 12:12:10 +00:00
kazu 1d5b52c35a .gitignore: add mjit_build_dir.c [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-22 06:08:50 +00:00
kazu 15e37da621 .gitignore: add .time under coroutine [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-22 06:08:49 +00:00
kazu a3bf7a19d0 .gitignore: revert r65834 partially [ci skip]
and exclude under coroutine only.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-22 06:08:47 +00:00
samuel 07a324a0f6 Native implementation of coroutines to improve performance of fibers
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 09:59:10 +00:00
k0kubun cdf72ddc3b win32/Makefile.sub: build precompiled header
See the comment in win32/Makefile.sub.
Not only .pch, but also .obj needs to be installed and used on runtime.

.gitignore: ignore .pch that will be built by this.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-08-04 23:53:41 +00:00
k0kubun 3293322a39 benchmark: introduce benchmark_driver.gem
Makefile.in: Clone benchmark-driver repository in benchmark/benchmark-driver
  `make update-benchmark-driver`, like simplecov.
win32/Makefile.sub: Roughly do the same thing.
.gitignore: Ignore the cloned repository.
common.mk: Trigger `make update-benchmark-driver` to run `make benchmark`
  and adjust arguments for benchmark_driver.gem.

benchmark/require.yml: renamed from benchmark/bm_require.rb, benchmark/prepare_require.rb
benchmark/require_thread.yml: renamed from benchmark/bm_require_thread.rb, benchmark/prepare_require_thread.rb
benchmark/so_count_words.yml: renamed from benchmark/bm_so_count_words.rb, benchmark/prepare_so_count_words.rb,
  benchmark/wc.input.base
benchmark/so_k_nucleotide.yml: renamed from benchmark/bm_so_k_nucleotide.rb, benchmark/prepare_so_k_nucleotide.rb,
  benchmark/make_fasta_output.rb
benchmark/so_reverse_complement.yml: renamed from benchmark/bm_so_reverse_complement.rb, benchmark/prepare_so_reverse_complement.rb,
  benchmark/make_fasta_output.rb

I'm sorry but I made some duplications between benchmark/require.yml and benchmark/require_thread.yml,
and between benchmark/so_k_nucleotide.yml and benchmark/so_reverse_complement.yml.

If you're not comfortable with it, please combine these YAMLs to share
the same prelude. One YAML file can have multiple benchmark definitions
sharing prelude.

benchmark/driver.rb: Replace its core feature with benchmark_driver.gem.
  Some old features are gone for now, but I'll add them again later.

[Misc #14902]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-07-08 14:38:05 +00:00
nobu 95208d59ca Ignore rb_mjit_min_header- instead of rb_mjit_header-
[Fix GH-1822]

From: hkdnet <satoko.itse@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-22 07:34:43 +00:00
nobu 8a1706a4b0 Ignore /mjit_config.h
[Fix GH-1822]

From: hkdnet <satoko.itse@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-22 07:34:42 +00:00
k0kubun 4651988d41 .gitignore: ignore min header for in-place build
In some revision, the build directory of minimized header is changed,
and then it's no longer ignored.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-07 13:27:42 +00:00
k0kubun 0af44e7261 common.mk: install a single header file for JIT
compilation which is created by transforming a preprocessed vm.c.
This file will be used by JIT compiler's generated code which we are
going to have from succeeding commits.

Makefile.in: generate MJIT header for UNIX environments.
win32/Makefile.sub: generate MJIT header for mswin environments.
At initial merge, we're going to support only MinGW for Windows. So the
header installed by this file won't be used for short term, but we'll
add mswin support in a half year or so, for sure.

tool/transform_mjit_header.rb: New. This script was originally written as
minimize_mjit_header.rb by Vladimir N. Makarov <vmakarov@redhat.com> for
Feature 12589.
Then I refactored a little so that it can conform CodeClimate CI which is
currently set for Ruby's GitHub repository, and fixed some bugs and ported
it to work on Windows.

Also, as original minimize_mjit_header.rb takes too long time to run,
this is modified to skip minimization step because having *static*
unused definitions does not waste compilation time on -O2 since compiler
can skip to compile unused static functions. So this does no longer
"minimize" the header and is renamed.

This header installation does NOT include a header to automatically
export symbols used by MJIT. That's because original MJIT code was
failing to export symbols in the import header in macOS environment.
But I would like to have the functionality for maintainability in the
future. I'll manually export things but it would be just an intemediate
solution.

Patch by: Vladimir N. Makarov <vmakarov@redhat.com>
Part of: Feature 12589 and 14235.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-02-04 05:49:21 +00:00
k0kubun f77fc95cf2 .gitignore: ignore dlntest.dll
This was generated with in-place build on MinGW and not ignored.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-12 15:25:56 +00:00
hsbt 06000a03a8 Removed obsoleted gitignore for test dependency.
Follow up r60458.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-26 23:02:18 +00:00
usa 29e1688917 Ignore .bundle
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-26 17:16:30 +00:00
hsbt 6faa0e12b0 [EXPERIMENTAL] Added test-bundled-gems task.
`test-bundled-gems` invoke test suite of bundled gems with
  build environment.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-21 09:50:36 +00:00
sonots 9bad616b33 * .gitignore: ignore exe/ruby and exe/.time instead of bin/ruby
because bin/ruby was renamed as exe/ruby at r59937.

follow-up: [Bug #13911]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-11 11:39:15 +00:00
nobu 86888f9cec rename ruby-runner as bin/ruby
* Makefile.in, configure.in, tool/runruby.rb: rename ruby-runner
  executable file as $(RUBY_INSTALL_NAME) under bin, to mimic
  dirty `#!/usr/bin/env` hack.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 17:42:00 +00:00
mame 0919c05501 Support LCOV visualization for both C and Ruby code
`./configure --enable-gcov && make exam && make lcov` will create
`lcov-c-out/index.html` for coverage of C code of the interpreter.
`make exam COVERAGE=true && make lcov` will create
`lcov-rb-out/index.html` for coverage of Ruby stdlib code.
Using both `--enable-gcov` and `COVERAGE=true` will create
`lcov-out/index.html` for total coverage.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-09 13:09:21 +00:00
kazu 0471781b2a Sync .gitignore and svn:ignore and cleanup [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-09 02:34:30 +00:00
hsbt 8598f8c2dc Merge bundler to standard libraries.
rubygems 2.7.x depends bundler-1.15.x. This is preparation for
  rubygems and bundler migration.

  * lib/bundler.rb, lib/bundler/*: files of bundler-1.15.4
  * spec/bundler/*: rspec examples of bundler-1.15.4. I applied patches.
    * https://github.com/bundler/bundler/pull/6007
    * Exclude not working examples on ruby repository.
    * Fake ruby interpriter instead of installed ruby.
  * Makefile.in: Added test task named `test-bundler`. This task is only
    working macOS/linux yet. I'm going to support Windows environment later.
  * tool/sync_default_gems.rb: Added sync task for bundler.

  [Feature #12733][ruby-core:77172]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-08 08:45:41 +00:00
mame ccaf52e244 Measure the test coverage without SimpleCov
Now `make test-all COVERAGE=true` measures the test coverage by using
`coverage.so` directly, and visualize the result by simplecov-html.

There has been some problems in coverage measurement with SimpleCov.
(They are not SimpleCov's fault, though.)

(1) It is difficult to extract the measured data as a machine-readable
format, such as Marshal.  I want to visualize the coverage data with
other coverage tools, such as LCOV and Cobertura.
(I know we can use SimpleCov's formatter mechanism, but I don't want
to depend upon SimpleCov so much.)

(2) SimpleCov seems to miss some coverage data.  For example,
`lib/cgi.rb` and `lib/ostruct.rb` are dropped.  I don't know why.

(3) I have a plan to enhance `coverage.so` with branch coverage.
It would be difficult to continue to only use SimpleCov as is.
This is the most important reason.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-07 15:40:29 +00:00
sonots 174fd5fd9a .gitignore: ignore run.gdb
* .gitignore: ignore run.gdb which is assumed to be generated
  by make gdb and customized manually during development

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-08-29 06:24:31 +00:00
mame f85bc2906b Use lcov visualizer for gcov statistics
This experimental feature is only for Ruby-core team, not for casual users.

Usage: `./configure --enable-gcov && make && make exam && make lcov`

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 16:02:19 +00:00
mame 33710d4581 Add coverage measurement mode by using gcov
This experimental feature is only for Ruby-core team, not for casual users.

Usage: `./configure --enable-gcov && make && make exam && make gcov`

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-20 13:00:41 +00:00
eregon 95e8c48dd3 Add in-tree mspec and ruby/spec
* For easier modifications of ruby/spec by MRI developers.
* .gitignore: track changes under spec.
* spec/mspec, spec/rubyspec: add in-tree mspec and ruby/spec.
  These files can therefore be updated like any other file in MRI.
  Instructions are provided in spec/README.
  [Feature #13156] [ruby-core:79246]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-07 12:04:49 +00:00
normal 2cdc26f868 .gitignore: ignore benchmark/bm_require.data
Followup-to r58562 in SVN

* .gitignore: ignore benchmark/bm_require.data

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-05-04 07:18:33 +00:00
nobu 9778c8da91 ext/dl has been removed already [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-23 01:31:36 +00:00
nobu 3aa95e7846 Ignore enc/jis/props.h
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-22 16:26:15 +00:00
nobu 2d9f80afd4 enc/unicode/data: no files under version control now
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-11 01:24:13 +00:00