[PATCH 00/19] cleanup of memory stats prototypes
tbsaunde+gcc@tbsaunde.org
tbsaunde+gcc@tbsaunde.org
Thu Jul 27 08:30:00 GMT 2017
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
The preC++ way of passing information about the call site of a function was to
use a macro that passed __file__, __LINE__, and __FUNCTION__ to a function with
the same name with _stat appended to it. The way this is now done with C++ is
to have arguments where the default value is __LINE__, __FILE__, and
__FUNCTION__ in the caller. This has the significant advantage that if you
look for "^function (" you find the correct function, where in the C way of
doing things you need to realize its a macro and check the definition of the
macro to see what to look for next. So this removes a layer of indirection,
and makes things somewhat more consistant in using the C++ way of doing things.
patches independently bootstrapped and regtested on ppc64le-linux-gnu. I
successfully ran make all-gcc with --enable-gather-detailed-mem-stats, but
couldn't complete a bootstrap before the series was applied, because the
ddrs_table in tree-loop-distribution.c causes memory statistics gathering to crash before the series as well as after it. ok?
thanks
Trev
p.s. the issue with ddrs_table is that it ends up trying to add to the memory
stats hash table from a global constructor when that hash table hasn't yet been
constructed.
Trevor Saunders (19):
use c++ instead of make_node_stat
use c++ instead of _stat for copy_node_stat
use cxx instead of make_tree_binfo_stat
use c++ for make_int_cst_stat
use c++ instead of buildN_stat{,_loc}
use c++ instead of {make,grow}_tree_vec_stat
replace gimple_alloc_stat with c++
use c++ instead of build_decl_stat
use c++ instead of build_vl_exp_stat
use c++ for tree_cons_stat
remove unused build_var_debug_value prototype
use C++ for {make,build}_vector_stat
use c++ for build_tree_list{,_vec}_stat
replace rtx_alloc_stat with c++
replace shallow_copy_rtx_stat with c++
simplify the bitmap alloc_stat functions with c++
use c++ for bitmap_initialize
use c++ for gimple_build_debug_bind{,_source}
use c++ for fold_buildN_loc
gcc/bitmap.c | 8 ++--
gcc/bitmap.h | 17 +++-----
gcc/cp/lex.c | 4 +-
gcc/emit-rtl.c | 2 +-
gcc/fold-const.c | 14 +++----
gcc/fold-const.h | 24 +++++-------
gcc/fortran/resolve.c | 2 +-
gcc/gengenrtl.c | 2 +-
gcc/gimple.c | 8 ++--
gcc/gimple.h | 11 ++----
gcc/rtl.c | 4 +-
gcc/rtl.h | 6 +--
gcc/tree.c | 62 ++++++++++++++---------------
gcc/tree.h | 106 ++++++++++++++++++--------------------------------
14 files changed, 109 insertions(+), 161 deletions(-)
--
2.11.0
More information about the Gcc-patches
mailing list