http://codereview.appspot.com/6351086/diff/1/gcc/gcov-io.h File gcc/gcov-io.h (right):
http://codereview.appspot.com/6351086/diff/1/gcc/gcov-io.h#newcode396 gcc/gcov-io.h:396: gcov_unsigned_t num_hot_counters;/* number of counters to reach a given Should it be made into an array accessed with pre-defined indices? http://codereview.appspot.com/6351086/diff/1/gcc/gcov-io.h#newcode399 gcc/gcov-io.h:399: num_hot_counters. */ Similarly for this one -- or put the above two values into a pair and declare an array of the pairs? http://codereview.appspot.com/6351086/diff/1/libgcc/libgcov.c File libgcc/libgcov.c (right): http://codereview.appspot.com/6351086/diff/1/libgcc/libgcov.c#newcode332 libgcc/libgcov.c:332: if (cs_ptr->sum_all*cutoff_perc < cs_ptr->sum_all) space needed http://codereview.appspot.com/6351086/diff/1/libgcc/libgcov.c#newcode332 libgcc/libgcov.c:332: if (cs_ptr->sum_all*cutoff_perc < cs_ptr->sum_all) space needed. Is it better to check if (cs_ptr->sum_all * cutoff_perc /cutoff_perc != cs_ptr->sum_all)? http://codereview.appspot.com/6351086/diff/1/libgcc/libgcov.c#newcode718 libgcc/libgcov.c:718: if (cs_tprg->num_hot_counters > cs_prg->num_hot_counters) Why guard the update under !cs_prg->runs++ --> the condition is used to identify if it is a first write or a merged write. (verify with a test case to see if the merge of the summary is correct). http://codereview.appspot.com/6351086/