[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-07-12 Thread michal.jankovic59 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 Michal Jankovič changed: What|Removed |Added Attachment #53273|0 |1 is obsolete|

[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-07-12 Thread michal.jankovic59 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 --- Comment #4 from Michal Jankovič --- Comment on attachment 53273 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53273 Experimental patch implementing the proposed transformation diff --git a/gcc/cp/coroutines.cc b/gcc/cp/coroutines.cc

[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-07-07 Thread michal.jankovic59 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 --- Comment #3 from Michal Jankovič --- Created attachment 53273 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53273=edit Experimental patch implementing the proposed transformation This patch implements the proposed coroutine frame

[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-06-20 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 Andrew Pinski changed: What|Removed |Added Severity|normal |enhancement

[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-06-15 Thread michal.jankovic59 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 --- Comment #2 from Michal Jankovič --- Reading through gcc/cp/coroutines.cc, it seems like the coroutine frame is indeed composed as a flat struct with fields for all the local variables, temps, and special stuff needed by the actor.

[Bug c++/105989] Coroutine frame space for temporaries in a co_await expression is not reused

2022-06-15 Thread michal.jankovic59 at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105989 --- Comment #1 from Michal Jankovič --- Exploring further, this seems to be a symptom of a deeper issue - the coroutine frame contains space for ALL variables of the coroutine, not just for the maximally sized subset of the variables that can