summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-11-20* remove trailing spaces.svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Rewrite fiber benchmarksamuel
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Better support for amd64 platformssamuel
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Native implementation of coroutines to improve performance of fiberssamuel
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20common.mk: BTESTS to direct tests by btestnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20thread_pthread.c (rb_reserved_fd_p): false-positive on negative FDnormal
Negative-numbered FDs are never valid FDs on POSIX-like platforms, and we initialize our self-pipes/eventfd values to "-1", so stop treating -1 as a reserved FD if our system is too low on resources to allocate FDs at startup. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20run single test [ci skip]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20vm_insnhelper.c: fix indent [ci skip]shyouhei
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Simply treat IO::WaitReadable just like Errno::EAGAINusa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20vm_insnhelper.c: recv -1 + 3 overflowsshyouhei
Here, recv can be INT2FIX(-1), which is 0xFFFF_FFFFul. INT2FIX(1) is 3ul. So `recv - 1 + INT2FIX(1)` is: recv 0xFFFF_FFFFul recv-1 0xFFFF_FFFEul (note: unsigned) recv-1+INT2FIX(1) 0x0000_0001ul Here is the overflow. Given recv is a Fixnum, it can never be 0xFFFF_FFFD. 0xFFFF_FFFF is the only value that can overflow this way, so special-casing this value should just suffice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20revert r65822shugo
Because mon_initialized may be used to re-initialize copied objects intentionally. mon_initialize_spec.rb fails: 1) MonitorMixin#mon_initialize can be called in initialize_copy to get a new Mutex and used with synchronize ERROR ThreadError: already initialized /home/shugo/src/ruby/lib/monitor.rb:255:in `mon_initialize' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:19:in `initialize_copy' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `initialize_dup' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `dup' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:28:in `block (2 levels) in <top (required)>' /home/shugo/src/ruby/spec/ruby/library/monitor/mon_initialize_spec.rb:4:in `<top (required)>' git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20rdoc querynobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20mjit.c: fix typos [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Remove unnecessary spacekazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20* properties.svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20lib/monitor.rb: prevent to initialize MonitorMixin twiceshugo
Suggested by Benoit Daloze. [ruby-core:88504] [Feature #15000] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20revert r65820 and retry assert_finishk0kubun
From: MSP-Greg <greg.mpls@gmail.com> https://github.com/ruby/ruby/commit/5187ea768f57315e61486122d688f1992d4cb21f git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20test_thread.rb: skip test_thread.rb broken for Windowsk0kubun
msys2. https://ci.appveyor.com/project/ruby/ruby/builds/20419607/job/fuvrfcmrhxr1r1cr https://ci.appveyor.com/project/ruby/ruby/builds/20395349/job/2nqewb06b5eanwea https://ci.appveyor.com/project/ruby/ruby/builds/20382452/job/658pvl1cqolyrixm git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65820 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20Check -fcf-protectionnobu
* configure.ac: Check if CFLAGS actually includes -fcf-protection instead of checking if the flag is valid by RUBY_TRY_CFLAGS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20thread.c: fix obsoleted comment [ci skip]k0kubun
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20process.c: do not try to pause MJITk0kubun
while child handler is disabled. trying to fix [Bug #15320] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19test_process.rb: Process.daemon seems irrelevant [ci skip]k0kubun
in the backtrace: http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19configure.ac: avoid crashing MJIT with -fcf-protectionk0kubun
by avoiding using __builtin_longjmp, like r64983. [Bug #15307] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19revert r65807k0kubun
it didn't work. http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677 and skips broken tests for now. But this issue should be fixed soon. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19* 2018-11-20svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19ruby/ruby.h: void rb_scan_args_verifynobu
* include/ruby/ruby.h (rb_scan_args_verify): void the never used result. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19appveyor.yml: separately execute test_bignumk0kubun
because that may crash worker with -j. https://ci.appveyor.com/project/ruby/ruby/builds/20403179/job/mkdcb6uy8qn2djgl git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19ruby.c: do not surface MJIT to userk0kubun
In some places, both JIT and MJIT are being used, but it could be confusing for new comers. We're not explaining MJIT on NEWS file or release notes as well. So we consider MJIT as an internal term of implementation like YARV. configure.ac: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19internal.h: resurrect --disable-mjit-supportk0kubun
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19fix for Solaris shnobu
* Makefile.in (mjit_config.h): removed unnecessary assignment. * tool/mjit_archflag.sh (define_arch_flags): need to quote on Solaris. [ruby-dev:50669] [Bug #15319] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19process.c: do not run signal handler before forkk0kubun
to prevent from proceeding one for MJIT while it's not safe yet. By that situation, MJIT worker could be waiting for compiler process forever http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468033 [Bug #15320] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65807 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19configure.ac: rename extra_warning as extra_warnflagsnobu
Adjusted to warnflags variable. This variable will have flags for warnings, but not a warning itself. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19configure.ac: respect extra_warnflags if givennobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19string.c: setbyte silently ignores upper bitsshyouhei
The behaviour of String#setbyte has been depending on the width of int, which is not portable. Must check explicitly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19.travis.yml: do not pass unnecessary warnflagsnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19io.c: ungetbyte silently ignores upper bitsshyouhei
The behaviour of IO#ungetbyte has been depending on the width of Fixnums. Fixnums should be invisible nowadays. It must be a bug. Fix [Bug #14359] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19_colorize_result_prepare.m4: do not save CONFIGURE_TTYnobu
redirection to a tty, file or pipe is not a permanent status. `rb_cv_` prefix means that it should be saved/restored across re-configurations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19Makefile.in: reconfig with the original warnflagsnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19.travis.yml: use dedicated flagsnobu
* .travis.yml: use dedicated flags, cflags and others, not to override optflags, warnflags and debugflags. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19array.c: avoid (VALUE)--shyouhei
This args[1]-- overflows when it is zero. Should do that only when we can say it is nonzero. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19.travis.yml: -Wno-unknown-warning-option is needed, too.shyouhei
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19.travis.yml: extra CFLAGS to suppress warningsshyouhei
When CFLAGS is passed on travis, warnflags seems not working. Let's add them directly to prevent clang form messing up the logs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19-Wno-unused-value [ci skip]shyouhei
Without this option clang outputs tons of warnings, which are annoying. See https://travis-ci.org/ruby/ruby/jobs/456553420#L1817 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19sort lines [ci skip]shyouhei
... for aethetic reasons. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18* 2018-11-19svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18Also clean ruby-runner.o and ruby.imp [ci skip]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18update-deps: fix runtime error [ci skip]nobu
* tool/update-deps (init_global): environment strings are frozen. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18mjit.c: fix deadlock introduced by r65785k0kubun
in mjit_pause() fired by before_fork_ruby(). When calling RUBY_VM_CHECK_INTS() in mjit_pause()'s loop, other threads may call start_worker() which sets `stop_worker_p = FALSE` and it could wait for MJIT worker stop forever even while `stop_worker_p` is FALSE. http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1466333 https://gist.github.com/ko1/a57ef1a03e1c7cfd22f1495e0864b63d http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/1466335 https://gist.github.com/ko1/96e867e36e6b75559b3d926f8c0bdaeb https://app.wercker.com/ruby/ruby/runs/mjit-test1/5bf1221c183106002855989c?step=5bf1225987436a0006192c31 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18wercker.yml: debug problematic test on test-allk0kubun
Some test seems to hang https://app.wercker.com/ruby/ruby/runs/mjit-test1/5bf1221c183106002855989c?step=5bf1225987436a0006192c31 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-18test_jit.rb: loosen output checkk0kubun
for interleaving between processes https://gist.github.com/ko1/ace0374825377b41628d4590b7377601 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e