aboutsummaryrefslogtreecommitdiffstats
path: root/test/lib
Commit message (Collapse)AuthorAgeFilesLines
* Guard all accesses to RubyVM::MJIT with defined?(RubyVM::MJIT) &&Benoit Daloze2020-12-041-1/+1
| | | | * Otherwise those tests, etc cannot run on alternative Ruby implementations.
* test/lib/jit_support.rb: Let JIT tests skip on centos8Yusuke Endoh2020-05-121-0/+2
| | | | It has the same issue as RHEL 8. k0kubun said he will fix later
* Split compile and link for MinGW supportTakashi Kokubun2020-05-031-1/+1
| | | | | | | | 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.
* Debug Solaris's MJIT failureTakashi Kokubun2020-05-031-1/+1
| | | | | | using -Winvalid-pch https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20200501T170004Z.fail.html.gz
* Skip pdb corruption on Visual Studio 2015 as wellTakashi Kokubun2020-05-031-5/+5
| | | | | | 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
* Skip Solaris RubyCI TestJIT for nowTakashi Kokubun2020-05-011-1/+1
| | | | | to be investigated later https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20200501T160004Z.fail.html.gz
* Skip MinGW TestJIT* and macOS TestJITDebug failuresTakashi Kokubun2020-05-011-1/+1
| | | | | | caused by 818d6d33368a396d9cd3d1a34a84015a9e76c5c8, for now. I'll take a look at them tomorrow.
* Skip JIT tests on riscv64 due to SEGV of cc1Yusuke Endoh2020-04-201-0/+2
|
* The pdb header error is printed at stdoutTakashi Kokubun2020-04-181-2/+2
| | | | https://ci.appveyor.com/project/ruby/ruby/builds/32278754/job/90jmky2jq2k0wjv8
* Compilation error does not impact exit statusTakashi Kokubun2020-04-171-2/+2
| | | | | We failed to ignore https://ci.appveyor.com/project/ruby/ruby/builds/32245902/job/xcfxw67uexxysvni
* Fix logic to detect vs120Takashi Kokubun2020-04-131-2/+2
| | | | | MJIT_CC seems not defined https://ci.appveyor.com/project/ruby/ruby/builds/32161572/job/u5sw8yn4in87heki
* Add missing call in 70b7304f03Takashi Kokubun2020-04-131-1/+1
|
* Ignore AppVeyor vs120's pdb corruptionTakashi Kokubun2020-04-131-0/+12
| | | | | | | | We tried to fix this like https://github.com/ruby/ruby/pull/3029, but it didn't work. The failure has never been helpful for developing MJIT, and currently it's not prioritized to be fixed. Until we try to figure out the root cause on AppVeyor vs120, let's optionally disable testing when the random corruption happens.
* Optimize exivar access on JIT-ed getivarTakashi Kokubun2020-03-301-0/+1
| | | | | | | | | | | | | | | | | | JIT support of dd723771c11. $ benchmark-driver -v --rbenv 'before;before --jit;after --jit' benchmark/mjit_exivar.yml --repeat-count=4 before: ruby 2.8.0dev (2020-03-30T12:32:26Z master e5db3da9d3) [x86_64-linux] before --jit: ruby 2.8.0dev (2020-03-30T12:32:26Z master e5db3da9d3) +JIT [x86_64-linux] after --jit: ruby 2.8.0dev (2020-03-31T05:57:24Z mjit-exivar 128625baec) +JIT [x86_64-linux] Calculating ------------------------------------- before before --jit after --jit mjit_exivar 57.944M 53.579M 54.471M i/s - 200.000M times in 3.451588s 3.732772s 3.671687s Comparison: mjit_exivar before: 57944345.1 i/s after --jit: 54470876.7 i/s - 1.06x slower before --jit: 53579483.4 i/s - 1.08x slower
* Propagate JIT skip to all testsTakashi Kokubun2020-03-061-1/+7
|
* test/lib/jit_support.rb: The path to icc was changedYusuke Endoh2020-03-041-1/+1
|
* test/lib/jit_support.rb: Update the regexp for iccYusuke Endoh2019-12-051-1/+1
| | | | MJIT_CC is always an absolute path.
* Prefer using MJIT_CC for JIT support checkTakashi Kokubun2019-12-041-1/+1
| | | | | because Solaris might have CC=cc and we'd like to check full path MJIT_CC=/opt/developerstudio12.5/bin/cc instead.
* Check MJIT support in one placeTakashi Kokubun2019-12-011-1/+1
| | | | | to fix test failure on trunk-no-mjit https://gist.github.com/ko1/32ab982ffd7555988818773c08f97123
* Enforce --jit-debug test by another wayTakashi Kokubun2019-10-151-1/+1
|
* RubyVM::MJIT.pause(wait: true) should waitTakashi Kokubun2019-09-261-0/+1
| | | | | | | | | | | for all compilations and compaction. Prior to this commit, the last-compiled code has not been used because MJIT worker is stopped before setting the code, and compaction has also been skipped. But it was not intentional and `wait: true` pause should wait until those two things by its feature.
* Automatically detect missing symbolsTakashi Kokubun2019-09-011-0/+1
| | | | | | | | which are usually optimized away by -O3. This CI can detect missing exports like ea84a680755b5a7fa700618cbe78e3b2fc7be01d which was needed for 761346a9604ca2c79777d1d67fb5dcc3c30dbf69.
* Restore support library for only test files that are digest and csv.Hiroshi SHIBATA2019-07-091-0/+22
|
* Restore support library for only test files.Hiroshi SHIBATA2019-07-091-0/+68
|
* Move to tool/lib from test/lib.Hiroshi SHIBATA2019-07-0220-6036/+0
|
* Return the result of the block given to assert_warning/assert_no_warningNobuyoshi Nakada2019-07-011-2/+6
|
* Add parentheses to suppress warningsNobuyoshi Nakada2019-06-301-3/+3
|
* Use EXEEXTNobuyoshi Nakada2019-06-221-12/+8
| | | | | | * test/lib/minitest/unit.rb (MiniTest::Assertions.diff): use `EXEEXT` configured value instead of switching by hard coded `host_os`.
* Show timed out threadsNobuyoshi Nakada2019-06-221-1/+7
| | | | | * test/lib/test/unit/assertions.rb (assert_join_threads): kill and show timed out threads.
* Fix over-expansionNobuyoshi Nakada2019-06-221-1/+1
| | | | | * test/lib/minitest/unit.rb (MiniTest::Assertions#mu_pp_for_diff): do not expand escaped backslash followed by 'n'.
* Use Exception#full_message for tracebackNobuyoshi Nakada2019-06-141-7/+1
|
* test/lib/test/unit/assertions.rb (assert_cpu_usage_low): tweak the waitYusuke Endoh2019-06-131-1/+1
| | | | | | | It still fails randomly. https://rubyci.org/logs/rubyci.s3.amazonaws.com/amazon2/ruby-master/log/20190613T093003Z.fail.html.gz https://rubyci.org/logs/mswinci.japaneast.cloudapp.azure.com/vc12-x64/ruby-master/log/20190613T051547Z.fail.html.gz
* assert_cpu_usage_low with timeout scaleNobuyoshi Nakada2019-06-111-4/+16
| | | | | | * test/lib/test/unit/assertions.rb (assert_cpu_usage_low): apply the timeout scale to measuring period. this assertion is very runtime environment dependent.
* MIN_HZ and MIN_MEASURABLE constantsNobuyoshi Nakada2019-06-111-4/+6
| | | | | | * test/lib/test/unit/assertions.rb (Test::Unit::Assertions): promoted MIN_HZ and MIN_MEASURABLE as constants, which should be constant through the process.
* Generalize timeout_scaleNobuyoshi Nakada2019-06-112-10/+11
| | | | | | | | | | | * test/lib/test/unit.rb (Test::Unit::TimeoutOption): renamed SubprocessOption. * test/lib/test/unit.rb (Test::Unit::TimeoutOption#setup_options): prefer `--timeout-scale` option. * test/lib/test/unit.rb (Test::Unit::TimeoutOption#non_options): prefer `ENV["RUBY_TEST_TIMEOUT_SCALE"]`.
* test/lib/test/unit/assertions.rb (assert_cpu_usage_low): Relax the limitYusuke Endoh2019-06-111-1/+1
| | | | | | | CPU usage 1% causes occesional test failure. Try to use 5%. https://rubyci.org/logs/rubyci.s3.amazonaws.com/gentoo/ruby-master/log/20190604T153002Z.fail.html.gz https://rubyci.org/logs/rubyci.s3.amazonaws.com/gentoo/ruby-master/log/20190610T153002Z.fail.html.gz
* Report a sudden death of workersNobuyoshi Nakada2019-06-071-0/+2
|
* test/lib/test/unit.rb: use colorize.rbNobuyoshi Nakada2019-06-041-26/+9
|
* test/lib/envutil.rb (EnvUtil.timeout): added.Yusuke Endoh2019-05-261-0/+7
| | | | It is a wrapper for Timeout.timeout with the scale factor applied.
* Make only `mesg` can be assigned with default `fname`Nobuyoshi Nakada2019-04-291-1/+3
|
* io.c: warn non-nil $,nobu2019-04-181-0/+4
| | | | | | | | * array.c (rb_ary_join_m): warn use of non-nil $,. * io.c (rb_output_fs_setter): warn when set to non-nil value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Show the code in syntax assertionsnobu2019-01-301-1/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Ensure to terminate the childnobu2019-01-111-30/+36
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_jit.rb: change format of test error outputk0kubun2019-01-101-1/+1
| | | | | | | to avoid breaking redmine quote like https://bugs.ruby-lang.org/issues/15522 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* jit_support.rb: deal with -std=c99 flagk0kubun2018-12-281-1/+1
| | | | | | | | CC is changed from "icc" to "icc -std=c99" by r66605. https://rubyci.org/logs/rubyci.s3.amazonaws.com/icc-x64/ruby-trunk/log/20181228T130003Z.fail.html.gz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/mkmf/test_flags.rb: try to suppress random CI failurek0kubun2018-12-271-1/+1
| | | | | | | | | on AIX ppc https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20181226T113305Z.fail.html.gz test/lib/test/unit/assertions.rb: ditto, for TestIO#test_copy_stream_no_busy_wait git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* jit_support.rb: skip testing MJIT on oracle developer studiok0kubun2018-12-271-2/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/lib/test/unit.rb: do not propagate MAKEFLAGS to childrennormal2018-12-151-1/+2
| | | | | | | | | | | | | | | Propagating MAKEFLAGS to children running test/unit caused stuck tests with GNU make when "-jN" is passed in both the make(1) command-line and the "TESTS=" variable; because the forked child process would see MAKEFLAGS and try to use jobserver on its own. This is regression caused by r64399 (commit b53fadfd5f200dbd6fe9f4b2a91ebb68618e59bb, "process.c: defaults to close_others false"); but that change also fixed a regression when close-on-exec became the default in 2.0 :< git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit_build_dir: separate MJIT_BUILD_DIRnobu2018-11-071-0/+4
| | | | | | | * Makefile.in (mjit_build_dir.so): separate MJIT_BUILD_DIR to eliminate the feature for test-all after installation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Revert "mjit_build_dir: separate MJIT_BUILD_DIR"nobu2018-11-061-6/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e