Jason Volk
8b6679c5e9
ircd::ctx::dock: Eliminate inlined template complex; optimize linkages.
2022-06-29 18:20:46 -07:00
Jason Volk
cd95b7cd8d
ircd::ctx: Specify inline linkage for various templates to prevent any dynsyms.
2020-07-11 15:41:57 -07:00
Jason Volk
f9015b8336
ircd::ctx::dock: Minor reorg.
2020-05-02 23:57:53 -07:00
Jason Volk
c3349b9d40
ircd::ctx::dock: Add convenience interface for interrupt/terminate/notify.
2020-02-19 16:16:53 -08:00
Jason Volk
df79d61395
ircd::util: Elide std::function overhead for util::unwind suite.
2019-12-03 13:39:49 -08:00
Jason Volk
864afd78e4
ircd::ctx: Fix trivial branch sequence causing L2 => I1 miss; hot section.
2019-10-09 22:07:17 -07:00
Jason Volk
ba11205f2c
ircd::ctx::dock: Add query to find if ctx is waiting on dock.
2019-09-10 11:06:16 -07:00
Jason Volk
b6149b429e
ircd::ctx::dock: Add noexcept to interface observers.
...
ircd::ctx: Propagate noexcept on hot leafs;
ircd::ctx::list: Deinline size().
2019-09-10 11:06:11 -07:00
Jason Volk
77648137e9
Revert "ircd: Remove use of all unwind::exceptional and unwind::nominal devices."
...
This reverts commit 4f243826c2
.
2019-03-22 21:06:28 -07:00
Jason Volk
4f243826c2
ircd: Remove use of all unwind::exceptional and unwind::nominal devices.
2019-03-12 18:41:05 -07:00
Jason Volk
4871928bfa
ircd::ctx: Partial de-inline of dock methods.
2019-01-13 13:57:34 -08:00
Jason Volk
10d59dec9a
ircd::ctx::dock: Make notify() an unconditional notify rather than direct jump.
2018-10-21 01:00:41 -07:00
Jason Volk
d2fbc30d4e
ircd::ctx: Use better notify member here.
2018-09-18 21:41:21 -07:00
Jason Volk
be7a20d39a
ircd::ctx: Move any renotifying to the ctx::dock itself.
2018-09-18 21:35:27 -07:00
Jason Volk
83cbfea75d
ircd::ctx: Minor cleanup.
2018-08-15 08:21:03 -07:00
Jason Volk
26b33a1845
ircd::ctx: Remove the cv_status enum.
2018-03-26 23:29:58 -07:00
Jason Volk
be624ca7f6
Update Copyrastafaris.
2018-02-05 21:24:34 -08:00
Jason Volk
6fc8de8587
ircd::ctx: Enforce semantics in mutex / shared_mutex; assertion related.
2018-01-17 03:33:08 -08:00
Jason Volk
dcd36f8200
ircd::ctx: Replace the std::deque with a ctx::list for ctx::dock's queue.
2018-01-13 23:45:36 -08:00
Jason Volk
7723e45de5
ircd::ctx: Minor commentary.
2017-11-30 11:23:45 -08:00
Jason Volk
b207b9e909
ircd: Rename ircd::scope to ircd::unwind.
2017-09-24 18:16:41 -07:00
Jason Volk
1acd278632
ircd::ctx: Updates; add ctx::view; add preliminary ctx::fault; various reorg.
2017-09-24 18:16:38 -07:00
Jason Volk
54d6793f59
Update various documentation and comments.
2017-09-24 18:16:33 -07:00
Jason Volk
d9a4f06bf6
ircd: Employ namespace scope extensions from c++1z/gnu++14.
...
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00
Jason Volk
a880e2e43e
ircd::ctx: Add minor commentary.
2017-08-23 14:59:27 -06:00
Jason Volk
c604b391be
ircd::ctx: Support direct context switching without enqueueing with ios.
2017-03-30 16:04:19 -07:00
Jason Volk
b0bc025ced
ircd::ctx: Add notify() to dock to rotate the waiters in contrast to notify_one().
2016-11-13 16:32:42 -08:00
Jason Volk
2f645941a8
ircd::ctx: Move ctx headers into directory.
2016-11-13 16:29:45 -08:00