summaryrefslogtreecommitdiff
path: root/coroutine/arm32
Commit message (Collapse)AuthorAgeFilesLines
* Replace copy coroutine with pthread implementation.Samuel Williams2021-07-011-0/+1
|
* Added include guards to coroutine headersNobuyoshi Nakada2021-01-221-0/+5
|
* Fix "Ruby is not properly fortified on armv7hl".Samuel Williams2020-12-081-0/+4
| | | | See <https://bugs.ruby-lang.org/issues/16762> for more details.
* Prefix export symbol prefix to coroutine_transferNobuyoshi Nakada2020-07-051-3/+6
|
* Removed trailing spaces [ci skip]Nobuyoshi Nakada2020-07-051-3/+3
|
* Patch assembly so that it aligns properlyPaul Jordan2020-04-011-1/+5
|
* Remove "All Rights Reserved." from Copyright statement.Samuel Williams2019-12-282-2/+2
|
* decouple internal.h headers卜部昌平2019-12-261-0/+2
| | | | | | | | | | | | | | | | | | Saves comitters' daily life by avoid #include-ing everything from internal.h to make each file do so instead. This would significantly speed up incremental builds. We take the following inclusion order in this changeset: 1. "ruby/config.h", where _GNU_SOURCE is defined (must be the very first thing among everything). 2. RUBY_EXTCONF_H if any. 3. Standard C headers, sorted alphabetically. 4. Other system headers, maybe guarded by #ifdef 5. Everything else, sorted alphabetically. Exceptions are those win32-related headers, which tend not be self- containing (headers have inclusion order dependencies).
* Make fiber_pool more conservative on platforms with limited address space.Samuel Williams2019-07-181-0/+1
| | | | | | | We use COROUTINE_LIMITED_ADDRESS_SPACE to select platforms where address space is 32-bits or less. Fiber pool implementation enables more book keeping, and reduces upper limits, in order to minimise address space utilisation.
* Restore updated implementation of arm32 coroutine code, but prefer ucontext.Samuel Williams2019-06-262-4/+12
|
* Revert "coroutine/arm32/Context.S: save/restore the registers via stack"Yusuke Endoh2019-06-262-5/+4
| | | | | | | This reverts commit 6df1814c08df93bbc0b3e7a73649bcf82e126064. It caused a SEGV again: https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20190626T051707Z.fail.html.gz
* Add `ucontext` coroutine implementation for generic fallback.Samuel Williams2019-06-261-22/+16
|
* coroutine/arm32/Context.S: save/restore the registers via stackYusuke Endoh2019-06-262-4/+5
| | | | Retry of 518adcca0a and dbe232e24e
* Revert 518adcca0a and dbe232e24eYusuke Endoh2019-06-251-6/+2
| | | | | | | | | | 518adcca0a: "Try using arm32 implementation for fibers." dbe232e24e: "Order of arguments might be incorrect in arm32 coroutine implementation." It seems to cause SEGV consistently on Ubuntu armv7l eabihf: https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20190625T081710Z.fail.html.gz https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20190625T111708Z.fail.html.gz
* Order of arguments might be incorrect in arm32 coroutine implementation.Samuel Williams2019-06-251-2/+6
|
* Make COROUTINE_REGISTERS compile-time only not to be a global symbolNobuyoshi Nakada2019-05-161-1/+1
|
* Change Makefile rule for assembly to use .S rather than .ssamuel2018-11-241-0/+0
| | | | | | | It is more conventional to use compiler to pre-process and assemble the `.S` file rather than forcing Makefile to use `.s`. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix indentation.samuel2018-11-201-14/+14
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Prefer "static inline" to avoid duplicate symbols.samuel2018-11-201-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Formatting changes.samuel2018-11-201-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Ensure start function has correct declaration.samuel2018-11-201-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Mark COROUTINE as noreturn.samuel2018-11-201-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Tidy up comments.samuel2018-11-202-11/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Native implementation of coroutines to improve performance of fiberssamuel2018-11-202-0/+74
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e