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

23 Коммитов

Автор SHA1 Сообщение Дата
Samuel Williams 42130a64f0
Replace copy coroutine with pthread implementation. 2021-07-01 11:23:03 +12:00
Nobuyoshi Nakada f1c36f2e6b
Added include guards to coroutine headers 2021-01-22 23:21:25 +09:00
Samuel Williams bf04fe086b
Remove "All Rights Reserved." from Copyright statement. 2019-12-28 12:45:37 +13:00
Samuel Williams f96216df8d
Remove "All Rights Reserved." from Copyright statement. 2019-12-28 12:41:47 +13:00
卜部昌平 5e22f873ed decouple internal.h headers
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).
2019-12-26 20:45:12 +09:00
Samuel Williams 6c6bf9ffcb Add `ucontext` coroutine implementation for generic fallback. 2019-06-26 20:19:53 +12:00
Nobuyoshi Nakada e29a85a96c
Make COROUTINE_XMM_REGISTERS compile-time only too 2019-05-17 13:16:39 +09:00
Nobuyoshi Nakada a160b2f567
Make COROUTINE_REGISTERS compile-time only not to be a global symbol 2019-05-16 15:52:09 +09:00
samuel e64f71f812 Change Makefile rule for assembly to use .S rather than .s
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
2018-11-24 11:35:29 +00:00
samuel 6459112852 Fix argument order.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-24 02:31:11 +00:00
samuel 26adef94fa Fix indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 20:09:38 +00:00
samuel 495dffba43 GAS style assembly for win64 (mingw).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:18:16 +00:00
samuel 0ba0ad8b41 Fix struct usage.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:18:01 +00:00
samuel 49e920855a Fix line endings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:49 +00:00
samuel 0b5e1442f5 Initial support for x64-mingw32
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:44 +00:00
samuel d97c928067 Better (?) support for Windows TIB.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:39 +00:00
samuel ae3c8c2085 Prefer "static inline" to avoid duplicate symbols.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:17 +00:00
samuel a3de4a092d Remove trailing whitespace.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:12 +00:00
samuel 83c84182ad Formatting changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:17:00 +00:00
samuel 9481461cc3 Ensure start function has correct declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:16:54 +00:00
samuel 99346f74a4 Mark COROUTINE as noreturn.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:16:41 +00:00
samuel 3710dedc12 Tidy up comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-20 10:16:29 +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