On Sat, Feb 18, 2017 at 3:45 AM, Jason Merrill <ja...@redhat.com> wrote:
> On Fri, Feb 17, 2017 at 6:51 AM, Richard Biener <rguent...@suse.de> wrote:
>>
>> The following annotates two key wrappers around copy_node in the C++ FE
>> with MEM-STAT info (and with CXX_MEM_STAT_INFO this is surprisingly
>> easy, without adding _stat variants and macros as we have for the classic
>> way from the pre-C++ era).
>>
>> It also annotates more type building functions in tree.c (all in the
>> attempt to get a better idea on where all the types are built for C++
>> sources).
>>
>> Bootstrapped without --enable-gather-detailed-mem-stats, bootstrapped
>> with --enable-gather-detailed-mem-stats and visually inspected the
>> improved stats on some example C++ code.
>>
>> There are still some more functions worth annotating:
>>
>> tree.c:8239 (build_range_type_1)                        840:  0.0%
>> 666120:  3.2%
>> tree.c:8362 (build_array_type_1)                       3024:  0.0%
>> 671496:  3.2%
>> tree.c:4841 (build_type_attribute_qual_variant)       13776:  0.1%
>> 67032:  0.3%
>> tree.c:8681 (build_method_type_directly)              41832:  0.3%
>> 202944:  1.0%
>> hash-table.h:736 (expand)                             15136:  0.1%
>> 5826600: 27.8%
>> tree.c:8532 (build_function_type)                    148344:  1.1%
>> 3538080: 16.9%
>> cp/lex.c:556 (retrofit_lang_decl)                     78628:  0.6%
>> 43776:  0.2%
>> cp/lex.c:526 (build_lang_decl_loc)                    87968:  0.6%
>> 260776:  1.2%   3902184:  7.5%    536840: 23.8%     15444
>>
>> is it ok if I go forward with this (at this stage, also for C++
>> specifics above?)
>>
>> Would it be welcome to scrap _stat and the macro wrappings everywhere
>> at this stage?
>
> The patch looks fine to me, I don't have an opinion about
> appropriateness for this stage.

Re-bootstrapped / tested on x86_64-unknown-linux-gnu, applied to trunk.

Richard.

> Jason

Reply via email to