Oliver Kowalke
b78e0c894b
return values transferred by continuation
2016-12-26 10:11:06 +01:00
oliver Kowalke
7ab9ace7b3
introduction of callcc()/continuation<>
2016-12-25 21:23:04 +01:00
oliver Kowalke
7db7873401
enable unit-test only if <thread> is supported
2016-12-13 08:06:01 +01:00
Oliver Kowalke
df7f46260a
unit-test: enable ontop-exception
2016-12-04 12:09:55 +01:00
Oliver Kowalke
ba3673d9cb
add unit-tests for fcontext
2016-11-26 19:45:39 +01:00
oliver Kowalke
1aa4e6a320
Merge branch 'ontop' into develop
2016-11-21 08:19:56 +01:00
Oliver Kowalke
e607528e4a
reduced signature of ontop-fn
2016-11-21 08:19:02 +01:00
Oliver Kowalke
b2149a615a
reduced signature of ontop-fn
2016-11-17 19:56:26 +01:00
Oliver Kowalke
a83c1dcc62
fix unit test
2016-11-11 16:43:20 +01:00
Oliver Kowalke
2bfdd768d3
fix unit-test
2016-10-15 08:25:29 +02:00
Oliver Kowalke
2e5430fd27
disable warning for MSVC
2016-10-11 11:49:39 +02:00
Oliver Kowalke
d7e39b4c18
pass ecv2 a universal reference to context-fn
2016-10-07 19:20:30 +02:00
oliver Kowalke
b1472d4338
use macro BOOST_MSVC in unit-test
2016-09-26 09:04:41 +02:00
oliver Kowalke
5d6e4a61c0
use macro BOOST_MSVC in unit-test
2016-09-26 08:59:35 +02:00
oliver Kowalke
ff4f933429
unit-tests: use defect macro for thread_local
2016-09-15 08:51:50 +02:00
Oliver Kowalke
f91dbd674a
fix test-function name
2016-07-31 20:55:57 +02:00
Oliver Kowalke
648c24c3f5
execute seh-test in separate thread
2016-07-31 20:55:27 +02:00
Oliver Kowalke
61ab618846
rename test_windows_nulled_stack()
2016-07-31 17:45:53 +02:00
Oliver Kowalke
087b68382a
test for 12340 (SEH test on Windows)
2016-07-31 17:45:00 +02:00
oliver Kowalke
ae66946c06
fix test/Jamfile.v2 requirements
2016-06-17 08:18:46 +02:00
Oliver Kowalke
2baea29df0
fix typo in unit.test (WINDOWS only)
2016-05-22 15:37:32 +02:00
oliver Kowalke
d4c3f32436
enhance unit-tests for Windows (nulled stack)
2016-05-19 08:25:56 +02:00
Oliver Kowalke
e28159dd65
adapt execution_context (v1) for exec_ontop
...
- pass only void* as argument
2016-02-11 17:40:01 +01:00
Oliver Kowalke
a136c521f5
return data from function with exec_ontop
2016-02-10 19:27:39 +01:00
Oliver Kowalke
31a196f12c
add unit-test for passing pointers between execution_context
2016-02-09 16:55:04 +01:00
Oliver Kowalke
83a8fddf36
some fixes for passign references as arguments to ec
2016-02-08 21:29:06 +01:00
Oliver Kowalke
cf783fd907
make execution_context (v2) typesafe
2016-02-08 18:36:58 +01:00
Oliver Kowalke
68a57f29b3
rename captued_context to execution_context
...
- split into execution_context v2 (previous captured_context)
and execution_context v1
- v1 enabled if segmented-stacks=on at b2 commandline
2016-02-06 12:18:38 +01:00
Oliver Kowalke
c3296606c1
remove unit-test for fcontext_t
2016-01-13 16:58:44 +01:00
Oliver Kowalke
8710b4f928
introduction of property context-switch
...
- property context-switch is used to determine if captured_context
or execution_context is used
2016-01-04 17:43:47 +01:00
Oliver Kowalke
ba357205a9
class captured_context added
2016-01-01 22:03:18 +01:00
Oliver Kowalke
0ec3ad70a6
re-factor apply()/invoke() + unit-tests
2015-12-11 19:44:11 +01:00
Oliver Kowalke
31dadae120
re-enable unit-tests for execution_context
2015-12-11 19:44:03 +01:00
Oliver Kowalke
4380967c80
relax to C++11
2015-12-08 17:46:09 +01:00
Oliver Kowalke
4d68f47767
fcontext uses 'void*' for data transfer
2015-11-28 22:58:36 +01:00
Oliver Kowalke
4f9df7d8e4
segmented-stacks=on -> only segmented_stack can be used
2015-10-18 19:16:19 +02:00
Oliver Kowalke
43d89cb639
support passing argument between execution_context'
2015-10-15 17:42:25 +02:00
Oliver Kowalke
01660915c1
reorder test macros in unit-test
2015-10-11 09:07:43 +02:00
Oliver Kowalke
c60534cf89
default ctor of execution_context without stack allocator
2015-09-26 20:20:58 +02:00
Oliver Kowalke
c5ede089b0
enhance tests for execution_context
2015-07-14 18:04:21 +02:00
Oliver Kowalke
a1447bb35e
add invoke() in order to support member fn
2015-06-23 17:52:34 +02:00
Oliver Kowalke
16abb31ae8
add checks for C++11/14 features in unit-tests
2015-06-21 18:42:55 +02:00
Oliver Kowalke
aadb5968f4
remove parent-tracking in execution_context
...
- tracking parent inside of execution_context:
- costs performance
- execution_context doesn't realy know which execution_context should be
executed next (if it's terminating)
- fibers do not care of the parent context -> scheduler decides which is
the next context
2015-06-03 09:00:21 +02:00
Oliver Kowalke
41123e262d
make execution_context conform to N4397
2015-03-26 10:00:42 +01:00
Oliver Kowalke
55b10634f7
return to parent activation record
2015-03-25 22:43:37 +01:00
Oliver Kowalke
bc3cd0fbed
rename jump_to() -> resume()
2015-02-18 18:23:58 +01:00
Oliver Kowalke
57d9bc6e1b
small optimization/fix unit.test
2015-02-13 17:31:44 +01:00
Oliver Kowalke
0ae6d8af2a
execution_context now C++14
...
- lambda capture expressions supports move-only types
- parameters are packed into std::tuple<> and with context-function
moved to the context-lambda (->lambda capture expression)
- in context-lambda context-function with packed parameters called
(-> deferred call)
2015-02-11 19:42:15 +01:00
Oliver Kowalke
bf0468b878
use BOOST_CONTEXT_NO_EXECUTION_CONTEXT in unit test
2015-02-10 18:56:40 +01:00
Oliver Kowalke
3b9a002642
replace test for __cplusplus by BOOST_NO_CXX11_ - macros
2015-02-07 16:42:17 +01:00
Oliver Kowalke
fa078765cb
me stack-allocators/some fixes
2015-01-23 22:02:20 +01:00
Oliver Kowalke
d0ab46ad5c
use std::call_once + lambda in stack_traits init
...
- stack_traits uses std::call_once for static initialization
2015-01-15 18:31:45 +01:00
Oliver Kowalke
cf2c8f4422
add support for additional control-structures (preallocated)
2015-01-12 20:03:49 +01:00
Oliver Kowalke
5c2c78a702
add example for stacked contexts
2014-03-01 22:37:22 +01:00
Oliver Kowalke
ffc63734e8
update , fixes
2014-02-17 17:11:32 +01:00
Oliver Kowalke
676b4e5d79
fcontext_t as typedef of void*
2014-02-16 21:07:50 +01:00
Oliver Kowalke
dbfeda223d
context: simple_stack_allocator moved to examples directory, guarded_stack_allocator removed
...
[SVN r81346]
2012-11-14 17:30:45 +00:00
Oliver Kowalke
e80f47e60e
context: add test for stack size (min, max, default)
...
[SVN r80537]
2012-09-16 09:29:13 +00:00
Oliver Kowalke
5fe939cd06
context: namespace renamed to 'context'; spltting up asm files
...
[SVN r80529]
2012-09-15 06:31:49 +00:00
Oliver Kowalke
6d5c769154
context: fixing invalid fcontext_t struct on i386; test stacksizes
...
[SVN r80504]
2012-09-12 11:36:48 +00:00
Oliver Kowalke
854c49d321
context: return pointer to fcontext_t
...
- make_fcontext() allocated fcontext_t on context stack and return pointer
- stack_allocator renamed to guarded_stack_allocator
- simple_stack_allocator using calloc()/free() added
- pagesize() made public accessible
[SVN r80423]
2012-09-06 19:43:07 +00:00
Oliver Kowalke
daf017cb4c
context: refactoring stack_allocator (Windows stack sizes etc.)
...
[SVN r80375]
2012-09-03 17:06:56 +00:00
Oliver Kowalke
e32d499ae2
context: new layout for fcontext_t
...
- fcontext_t takes pointer to stack (lower addresses) and stack size
- make_fcontext() computes start address of stack pointer depending on
architecture (growing upwards, downwards)
- make_fcontext() preserves frame pointer on intel
- stack alignment corrected on intel
- BOOST_USE_UCONTEXT for performance measurements added
[SVN r80338]
2012-08-31 19:50:07 +00:00
Oliver Kowalke
2be3bf4d5a
context: use size instead of limit if fc_stack
...
[SVN r79956]
2012-08-10 16:07:25 +00:00
Oliver Kowalke
f60965dc6b
context: fixing warnings on Windows platform
...
[SVN r78958]
2012-06-15 18:27:09 +00:00
Oliver Kowalke
b5fe010e78
context: tab cleanup
...
[SVN r78544]
2012-05-22 20:02:04 +00:00
Oliver Kowalke
6151f8173d
context: remove argument for context function from make_fcontext()
...
[SVN r78129]
2012-04-22 10:18:43 +00:00
Oliver Kowalke
97d37d559f
context: remove start_fcontext; context linking removed
...
[SVN r78114]
2012-04-21 19:05:03 +00:00
Oliver Kowalke
13b4a5b3bd
context: library stripped
...
[SVN r77938]
2012-04-12 18:42:36 +00:00
Oliver Kowalke
95937a481c
context: documentation update and check-functions in context public interface
...
[SVN r77321]
2012-03-13 09:06:35 +00:00
Oliver Kowalke
b8fd549bac
initial commit of boost.context
...
[SVN r76974]
2012-02-11 13:04:55 +00:00