gpui2: Type-erase futures. (#3266)
Project2's LLVM IR size is ~33-44% bigger than project1 due to the fact that in gpui2 we call async_task::spawn(_local) with impl Future instead of dyn Future, which leads to quite a few more instantiations of RawTask. LLVM-IR size for project2: | build_type | main | this branch | project1 | | debug | 2617795 | 2022814 | 1817866 | | release | 4439033 | 3715086 | 3314489 | Note that this PR is in line with what was done in GPUI1 (we've also boxed futures there). Release Notes: - N/A
A
Antonio Scandurra committed
e4bc03217de247507cffbcc9faaac230580d1f51
Committed by GitHub <noreply@github.com>
on 11/8/2023, 1:21:40 PM