C++ PATCH to integrate c++-delayed-folding branch
Alan Lawrence
alan.lawrence@arm.com
Tue Nov 17 14:09:00 GMT 2015
On 14/11/15 00:07, Jason Merrill wrote:
> And here's the final patch integrating the delayed folding branch. The general
> idea is to mostly avoid folding until the end of the function, at which point we
> fold everything as part of genericization. Since many warnings rely on looking
> at folded trees, we fold the arguments that we pass to the various warning
> functions. To avoid issues with combinatorial explosion, we cache the results
> of folding in a hash_map.
>
> In the future we probably want to move many of these warnings into
> language-independent code so we can avoid folding for them in the front end; we
> also shouldn't need to fold during genericization, but apparently not doing that
> leads to optimization regressions.
>
> This is mostly Kai's work; I just cleaned it up a bit to get it ready for the
> merge. Marek also helped some. The largest change is hooking into the GTY
> machinery to handle throwing away the folding cache rather than trying to do it
> manually in various places.
>
> Tested x86_64-pc-linux-gnu, applying to trunk.
Also PR68385 (arm-none-eabi).
More information about the Gcc-patches
mailing list