diff options
author | Iain Sandoe <iain@sandoe.co.uk> | 2019-12-03 13:09:29 +0000 |
---|---|---|
committer | Iain Sandoe <iain@sandoe.co.uk> | 2019-12-03 13:09:29 +0000 |
commit | 075cd8afb545925ecc0d88c114f33da6353a409c (patch) | |
tree | 7a0bdc9643253306c8e4d64954f2312bc286708c /liboffloadmic | |
parent | 9d5bec7646fdc120087e39ba6ac01b5c299bf8aa (diff) |
c++coroutines - Address review comments, make a more specific pass gate.
To avoid scanning every function for coroutine state machine IFNs, we
allocate and set a bit in the function structure for coroutines. This
together with the enable flag, can be tested to skip the scan for all
other functions.
2019-12-03 Iain Sandoe <iain@sandoe.co.uk>
gcc/
* coroutine-passes.cc (gate): Check for coroutine components in
addition to the coroutine enable flag before executing the IFN
lowering pass.
* function.h (struct function): Allocate a bit to indicate that
the function is a coroutine component.
gcc/cp/
* decl.c (emit_coro_helper): Set coroutine component bit when
needed.
(finish_function): Likewise.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/c++-coroutines@278936 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'liboffloadmic')
0 files changed, 0 insertions, 0 deletions