GNU g++  v5.2.1
GNU Standard C++
__gnu_profile Namespace Reference

GNU profile code for public use. More...

Classes

class  __container_size_info
 A container size instrumentation line in the object table. More...
 
class  __container_size_stack_info
 A container size instrumentation line in the stack table. More...
 
struct  __cost_factor
 
struct  __cost_factor_setter
 
struct  __cost_factor_writer
 
class  __hashfunc_info
 A hash performance instrumentation line in the object table. More...
 
class  __hashfunc_stack_info
 A hash performance instrumentation line in the stack table. More...
 
class  __list2slist_info
 
class  __list2slist_stack_info
 
class  __list2vector_info
 A list-to-vector instrumentation line in the object table. More...
 
class  __list2vector_stack_info
 
class  __map2umap_info
 A map-to-unordered_map instrumentation line in the object table. More...
 
class  __map2umap_stack_info
 A map-to-unordered_map instrumentation line in the stack table. More...
 
class  __object_info_base
 Base class for a line in the object table. More...
 
struct  __reentrance_guard
 Reentrance guard. More...
 
class  __stack_hash
 Hash function for summary trace using call stack as index. More...
 
class  __trace_base
 Base class for all trace producers. More...
 
class  __trace_container_size
 Container size instrumentation trace producer. More...
 
class  __trace_hash_func
 Hash performance instrumentation producer. More...
 
class  __trace_hashtable_size
 Hashtable size instrumentation trace producer. More...
 
class  __trace_list_to_slist
 
class  __trace_list_to_vector
 
class  __trace_map2umap
 Map-to-unordered_map instrumentation producer. More...
 
class  __trace_vector_size
 Hashtable size instrumentation trace producer. More...
 
class  __trace_vector_to_list
 Vector-to-list instrumentation producer. More...
 
class  __vector2list_info
 A vector-to-list instrumentation line in the object table. More...
 
class  __vector2list_stack_info
 A vector-to-list instrumentation line in the stack table. More...
 
struct  __warn
 
struct  __warning_data
 Representation of a warning. More...
 

Typedefs

typedef std::_GLIBCXX_STD_C::vector< __cost_factor * > __cost_factor_vector
 
typedef std::tr1::unordered_map< std::string, std::string > __env_t
 Internal environment. More...
 
typedef void * __instruction_address_t
 
typedef std::_GLIBCXX_STD_C::vector< __instruction_address_t__stack_npt
 
typedef __stack_npt__stack_t
 
typedef std::_GLIBCXX_STD_C::vector< __warning_data__warning_vector_t
 

Enumerations

enum  __state_type {
  __ON,
  __OFF,
  __INVALID
}
 

Functions

std::size_t __env_to_size_t (const char *__env_var, std::size_t __default_value)
 
template<typename _InputIterator , typename _Function >
_Function __for_each (_InputIterator __first, _InputIterator __last, _Function __f)
 
__stack_t __get_stack ()
 
template<typename _Container >
void __insert_top_n (_Container &__output, const typename _Container::value_type &__value, typename _Container::size_type __n)
 
bool __is_invalid ()
 
bool __is_off ()
 
bool __is_on ()
 
int __log2 (std::size_t __size)
 
int __log_magnitude (float __f)
 
float __map_erase_cost (std::size_t __size)
 
float __map_find_cost (std::size_t __size)
 
float __map_insert_cost (std::size_t __size)
 
std::size_t __max_mem ()
 
FILE * __open_output_file (const char *__extension)
 
bool __profcxx_init ()
 This function must be called by each instrumentation point. More...
 
void __profcxx_init_unconditional ()
 
void __read_cost_factors ()
 
template<typename _ForwardIterator , typename _Tp >
_ForwardIterator __remove (_ForwardIterator __first, _ForwardIterator __last, const _Tp &__value)
 
void __report ()
 Final report method, registered with atexit. More...
 
void __report_and_free ()
 
void __set_cost_factors ()
 
void __set_max_mem ()
 
void __set_max_stack_trace_depth ()
 
void __set_max_warn_count ()
 
void __set_trace_path ()
 
std::size_t __size (__stack_t __stack)
 
std::size_t __stack_max_depth ()
 
template<typename _Container >
void __top_n (const _Container &__input, _Container &__output, typename _Container::size_type __n)
 
__hashfunc_info__trace_hash_func_construct ()
 
void __trace_hash_func_destruct (__hashfunc_info *, std::size_t, std::size_t, std::size_t)
 
void __trace_hash_func_free ()
 
void __trace_hash_func_init ()
 
void __trace_hash_func_report (FILE *__f, __warning_vector_t &__warnings)
 
__container_size_info__trace_hashtable_size_construct (std::size_t)
 
void __trace_hashtable_size_destruct (__container_size_info *, std::size_t, std::size_t)
 
void __trace_hashtable_size_free ()
 
void __trace_hashtable_size_init ()
 
void __trace_hashtable_size_report (FILE *__f, __warning_vector_t &__warnings)
 
void __trace_hashtable_size_resize (__container_size_info *, std::size_t, std::size_t)
 
__list2slist_info__trace_list_to_slist_construct ()
 
void __trace_list_to_slist_destruct (__list2slist_info *)
 
void __trace_list_to_slist_free ()
 
void __trace_list_to_slist_init ()
 
void __trace_list_to_slist_operation (__list2slist_info *)
 
void __trace_list_to_slist_report (FILE *__f, __warning_vector_t &__warnings)
 
void __trace_list_to_slist_rewind (__list2slist_info *)
 
__list2vector_info__trace_list_to_vector_construct ()
 
void __trace_list_to_vector_destruct (__list2vector_info *)
 
void __trace_list_to_vector_free ()
 
void __trace_list_to_vector_init ()
 
void __trace_list_to_vector_insert (__list2vector_info *, std::size_t, std::size_t)
 
void __trace_list_to_vector_invalid_operator (__list2vector_info *)
 
void __trace_list_to_vector_iterate (__list2vector_info *, int)
 
void __trace_list_to_vector_report (FILE *__f, __warning_vector_t &__warnings)
 
void __trace_list_to_vector_resize (__list2vector_info *, std::size_t, std::size_t)
 
__map2umap_info__trace_map_to_unordered_map_construct ()
 
void __trace_map_to_unordered_map_destruct (__map2umap_info *)
 
void __trace_map_to_unordered_map_erase (__map2umap_info *, std::size_t, std::size_t)
 
void __trace_map_to_unordered_map_find (__map2umap_info *, std::size_t)
 
void __trace_map_to_unordered_map_free ()
 
void __trace_map_to_unordered_map_init ()
 
void __trace_map_to_unordered_map_insert (__map2umap_info *, std::size_t, std::size_t)
 
void __trace_map_to_unordered_map_invalidate (__map2umap_info *)
 
void __trace_map_to_unordered_map_iterate (__map2umap_info *, std::size_t)
 
void __trace_map_to_unordered_map_iterate (__map2umap_info *__info, int)
 
void __trace_map_to_unordered_map_report (FILE *__f, __warning_vector_t &__warnings)
 
template<typename __object_info , typename __stack_info >
void __trace_report (__trace_base< __object_info, __stack_info > *__cont, FILE *__f, __warning_vector_t &__warnings)
 
__container_size_info__trace_vector_size_construct (std::size_t)
 
void __trace_vector_size_destruct (__container_size_info *, std::size_t, std::size_t)
 
void __trace_vector_size_free ()
 
void __trace_vector_size_init ()
 
void __trace_vector_size_report (FILE *, __warning_vector_t &)
 
void __trace_vector_size_resize (__container_size_info *, std::size_t, std::size_t)
 
__vector2list_info__trace_vector_to_list_construct ()
 
void __trace_vector_to_list_destruct (__vector2list_info *)
 
void __trace_vector_to_list_free ()
 
void __trace_vector_to_list_init ()
 
void __trace_vector_to_list_insert (__vector2list_info *, std::size_t, std::size_t)
 
void __trace_vector_to_list_invalid_operator (__vector2list_info *)
 
void __trace_vector_to_list_iterate (__vector2list_info *, int)
 
void __trace_vector_to_list_report (FILE *, __warning_vector_t &)
 
void __trace_vector_to_list_resize (__vector2list_info *, std::size_t, std::size_t)
 
bool __turn (__state_type __s)
 
bool __turn_off ()
 
bool __turn_on ()
 
void __write (FILE *__f, __stack_t __stack)
 
void __write_cost_factors ()
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__state_type, __state, __INVALID)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_hash_func *, _S_hash_func, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_hashtable_size *, _S_hashtable_size, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_map2umap *, _S_map2umap, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_vector_size *, _S_vector_size, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_vector_to_list *, _S_vector_to_list, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_list_to_slist *, _S_list_to_slist, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__trace_list_to_vector *, _S_list_to_vector, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __vector_shift_cost_factor,{"__vector_shift_cost_factor", 1.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __vector_iterate_cost_factor,{"__vector_iterate_cost_factor", 1.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __vector_resize_cost_factor,{"__vector_resize_cost_factor", 1.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __list_shift_cost_factor,{"__list_shift_cost_factor", 0.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __list_iterate_cost_factor,{"__list_iterate_cost_factor", 10.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __list_resize_cost_factor,{"__list_resize_cost_factor", 0.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __map_insert_cost_factor,{"__map_insert_cost_factor", 1.5})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __map_erase_cost_factor,{"__map_erase_cost_factor", 1.5})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __map_find_cost_factor,{"__map_find_cost_factor", 1})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __map_iterate_cost_factor,{"__map_iterate_cost_factor", 2.3})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __umap_insert_cost_factor,{"__umap_insert_cost_factor", 12.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __umap_erase_cost_factor,{"__umap_erase_cost_factor", 12.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __umap_find_cost_factor,{"__umap_find_cost_factor", 10.0})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor, __umap_iterate_cost_factor,{"__umap_iterate_cost_factor", 1.7})
 
 _GLIBCXX_PROFILE_DEFINE_DATA (__cost_factor_vector *, __cost_factors, 0)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (const char *, _S_trace_file_name, _GLIBCXX_PROFILE_TRACE_PATH_ROOT)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (std::size_t, _S_max_warn_count, _GLIBCXX_PROFILE_MAX_WARN_COUNT)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (std::size_t, _S_max_stack_depth, _GLIBCXX_PROFILE_MAX_STACK_DEPTH)
 
 _GLIBCXX_PROFILE_DEFINE_DATA (std::size_t, _S_max_mem, _GLIBCXX_PROFILE_MEM_PER_DIAGNOSTIC)
 
 _GLIBCXX_PROFILE_DEFINE_UNINIT_DATA (__env_t, __env)
 
 _GLIBCXX_PROFILE_DEFINE_UNINIT_DATA (__gnu_cxx::__mutex, __global_mutex)
 Master lock. More...
 

Detailed Description

GNU profile code for public use.

Typedef Documentation

typedef std::_GLIBCXX_STD_C::vector<__cost_factor*> __gnu_profile::__cost_factor_vector
typedef std::tr1::unordered_map<std::string, std::string> __gnu_profile::__env_t

Internal environment.

Values can be set one of two ways:

  1. In config file "var = value". The default config file path is libstdcxx-profile.conf.
  2. By setting process environment variables. For instance, in a Bash shell you can set the unit cost of iterating through a map like this: export __map_iterate_cost_factor=5.0. If a value is set both in the input file and through an environment variable, the environment value takes precedence.
typedef std::_GLIBCXX_STD_C::vector<__instruction_address_t> __gnu_profile::__stack_npt
typedef std::_GLIBCXX_STD_C::vector<__warning_data> __gnu_profile::__warning_vector_t

Enumeration Type Documentation

Enumerator
__ON 
__OFF 
__INVALID 

Function Documentation

std::size_t __gnu_profile::__env_to_size_t ( const char *  __env_var,
std::size_t  __default_value 
)
inline

Referenced by __set_max_mem(), and __set_max_stack_trace_depth().

Here is the caller graph for this function:

template<typename _InputIterator , typename _Function >
_Function __gnu_profile::__for_each ( _InputIterator  __first,
_InputIterator  __last,
_Function  __f 
)

Referenced by __report(), __set_cost_factors(), and __write_cost_factors().

Here is the caller graph for this function:

template<typename _Container >
void __gnu_profile::__insert_top_n ( _Container &  __output,
const typename _Container::value_type &  __value,
typename _Container::size_type  __n 
)

Referenced by __top_n().

Here is the caller graph for this function:

bool __gnu_profile::__is_invalid ( )
inline

References __INVALID, and _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init(), and __profcxx_init_unconditional().

Here is the caller graph for this function:

bool __gnu_profile::__is_off ( )
inline

References __OFF, and _GLIBCXX_PROFILE_DATA.

bool __gnu_profile::__is_on ( )
inline

References __ON, and _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init().

Here is the caller graph for this function:

int __gnu_profile::__log2 ( std::size_t  __size)
inline

Referenced by __map_erase_cost(), __map_find_cost(), and __map_insert_cost().

Here is the caller graph for this function:

int __gnu_profile::__log_magnitude ( float  __f)
inline

Referenced by __gnu_profile::__warn::operator()().

Here is the caller graph for this function:

float __gnu_profile::__map_erase_cost ( std::size_t  __size)
inline

References __log2(), and _GLIBCXX_PROFILE_DATA.

Referenced by __gnu_profile::__map2umap_info::__record_erase().

Here is the call graph for this function:

Here is the caller graph for this function:

float __gnu_profile::__map_find_cost ( std::size_t  __size)
inline

References __log2(), and _GLIBCXX_PROFILE_DATA.

Referenced by __gnu_profile::__map2umap_info::__record_find().

Here is the call graph for this function:

Here is the caller graph for this function:

float __gnu_profile::__map_insert_cost ( std::size_t  __size)
inline

References __log2(), and _GLIBCXX_PROFILE_DATA.

Referenced by __gnu_profile::__map2umap_info::__record_insert().

Here is the call graph for this function:

Here is the caller graph for this function:

std::size_t __gnu_profile::__max_mem ( )
inline
FILE* __gnu_profile::__open_output_file ( const char *  __extension)
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report(), __set_trace_path(), and __write_cost_factors().

Here is the caller graph for this function:

bool __gnu_profile::__profcxx_init ( )
inline

This function must be called by each instrumentation point.

The common path is inlined fully.

References __is_invalid(), __is_on(), and __profcxx_init_unconditional().

Referenced by __trace_hash_func_construct(), __trace_hashtable_size_construct(), __trace_list_to_slist_construct(), __trace_list_to_vector_construct(), __trace_map_to_unordered_map_construct(), __trace_vector_size_construct(), and __trace_vector_to_list_construct().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__read_cost_factors ( )
inline

References __remove(), and _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename _ForwardIterator , typename _Tp >
_ForwardIterator __gnu_profile::__remove ( _ForwardIterator  __first,
_ForwardIterator  __last,
const _Tp &  __value 
)

Referenced by __read_cost_factors().

Here is the caller graph for this function:

void __gnu_profile::__report ( )
inline

Final report method, registered with atexit.

This can also be called directly by user code, including signal handlers. It is protected against deadlocks by the reentrance guard in profiler.h. However, when called from a signal handler that triggers while within __gnu_profile (under the guarded zone), no output will be produced.

References __for_each(), __open_output_file(), __top_n(), __trace_hash_func_report(), __trace_hashtable_size_report(), __trace_list_to_slist_report(), __trace_list_to_vector_report(), __trace_map_to_unordered_map_report(), __trace_vector_size_report(), __trace_vector_to_list_report(), _GLIBCXX_PROFILE_DATA, and __gnu_parallel::min().

Referenced by __report_and_free().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__report_and_free ( )
inline
void __gnu_profile::__set_cost_factors ( )
inline

References __for_each(), and _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__set_max_mem ( )
inline

References __env_to_size_t(), _GLIBCXX_PROFILE_DATA, and _GLIBCXX_PROFILE_MEM_PER_DIAGNOSTIC_ENV_VAR.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__set_max_stack_trace_depth ( )
inline

References __env_to_size_t(), _GLIBCXX_PROFILE_DATA, and _GLIBCXX_PROFILE_MAX_STACK_DEPTH_ENV_VAR.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__set_max_warn_count ( )
inline

References _GLIBCXX_PROFILE_DATA, and _GLIBCXX_PROFILE_MAX_WARN_COUNT_ENV_VAR.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__set_trace_path ( )
inline

References __open_output_file(), _GLIBCXX_PROFILE_DATA, and _GLIBCXX_PROFILE_TRACE_ENV_VAR.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

std::size_t __gnu_profile::__stack_max_depth ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __get_stack().

Here is the caller graph for this function:

template<typename _Container >
void __gnu_profile::__top_n ( const _Container &  __input,
_Container &  __output,
typename _Container::size_type  __n 
)

References __insert_top_n().

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

__hashfunc_info * __gnu_profile::__trace_hash_func_construct ( )
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_hash_func_destruct ( __hashfunc_info __obj_info,
std::size_t  __chain,
std::size_t  __accesses,
std::size_t  __hops 
)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_hash_func_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_hash_func_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_hash_func_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

__container_size_info * __gnu_profile::__trace_hashtable_size_construct ( std::size_t  __num)
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_hashtable_size_destruct ( __container_size_info __obj_info,
std::size_t  __num,
std::size_t  __inum 
)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_hashtable_size_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_hashtable_size_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_hashtable_size_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__trace_hashtable_size_resize ( __container_size_info __obj_info,
std::size_t  __from,
std::size_t  __to 
)
inline

References __gnu_profile::__container_size_info::__resize().

Here is the call graph for this function:

__list2slist_info * __gnu_profile::__trace_list_to_slist_construct ( )
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_slist_destruct ( __list2slist_info __obj_info)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_list_to_slist_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_slist_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_slist_operation ( __list2slist_info __obj_info)
inline

References __gnu_profile::__list2slist_info::__record_operation().

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_slist_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_slist_rewind ( __list2slist_info __obj_info)
inline

References __gnu_profile::__list2slist_info::__opr_rewind().

Here is the call graph for this function:

__list2vector_info * __gnu_profile::__trace_list_to_vector_construct ( )
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_vector_destruct ( __list2vector_info __obj_info)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_list_to_vector_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_vector_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_vector_insert ( __list2vector_info __obj_info,
std::size_t  __shift,
std::size_t  __size 
)
inline

References __gnu_profile::__list2vector_info::__opr_insert().

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_vector_invalid_operator ( __list2vector_info __obj_info)
inline

References __gnu_profile::__object_info_base::__set_invalid().

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_vector_iterate ( __list2vector_info __obj_info,
int   
)
inline

References __gnu_profile::__list2vector_info::__opr_iterate().

Here is the call graph for this function:

void __gnu_profile::__trace_list_to_vector_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__trace_list_to_vector_resize ( __list2vector_info __obj_info,
std::size_t  __from,
std::size_t  __to 
)
inline

References __gnu_profile::__list2vector_info::__resize().

Here is the call graph for this function:

__map2umap_info * __gnu_profile::__trace_map_to_unordered_map_construct ( )
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_destruct ( __map2umap_info __info)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_map_to_unordered_map_erase ( __map2umap_info __info,
std::size_t  __size,
std::size_t  __count 
)
inline

References __gnu_profile::__map2umap_info::__record_erase().

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_find ( __map2umap_info __info,
std::size_t  __size 
)
inline

References __gnu_profile::__map2umap_info::__record_find().

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_insert ( __map2umap_info __info,
std::size_t  __size,
std::size_t  __count 
)
inline

References __gnu_profile::__map2umap_info::__record_insert().

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_invalidate ( __map2umap_info __info)
inline

References __gnu_profile::__object_info_base::__set_invalid().

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_iterate ( __map2umap_info ,
std::size_t   
)
void __gnu_profile::__trace_map_to_unordered_map_iterate ( __map2umap_info __info,
int   
)
inline

References __gnu_profile::__map2umap_info::__record_iterate().

Here is the call graph for this function:

void __gnu_profile::__trace_map_to_unordered_map_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename __object_info , typename __stack_info >
void __gnu_profile::__trace_report ( __trace_base< __object_info, __stack_info > *  __cont,
FILE *  __f,
__warning_vector_t __warnings 
)
inline
__container_size_info * __gnu_profile::__trace_vector_size_construct ( std::size_t  __num)
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_vector_size_destruct ( __container_size_info __obj_info,
std::size_t  __num,
std::size_t  __inum 
)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_vector_size_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_size_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_size_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_size_resize ( __container_size_info __obj_info,
std::size_t  __from,
std::size_t  __to 
)
inline

References __gnu_profile::__container_size_info::__resize().

Here is the call graph for this function:

__vector2list_info * __gnu_profile::__trace_vector_to_list_construct ( )
inline

References __gnu_profile::__reentrance_guard::__get_in(), __get_stack(), __profcxx_init(), and _GLIBCXX_PROFILE_DATA.

Here is the call graph for this function:

void __gnu_profile::__trace_vector_to_list_destruct ( __vector2list_info __obj_info)
inline

References _GLIBCXX_PROFILE_DATA.

void __gnu_profile::__trace_vector_to_list_free ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __report_and_free().

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_to_list_init ( )
inline

References _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_to_list_insert ( __vector2list_info __obj_info,
std::size_t  __pos,
std::size_t  __num 
)
inline

References __gnu_profile::__vector2list_info::__opr_insert().

Here is the call graph for this function:

void __gnu_profile::__trace_vector_to_list_invalid_operator ( __vector2list_info __obj_info)
inline

References __gnu_profile::__object_info_base::__set_invalid().

Here is the call graph for this function:

void __gnu_profile::__trace_vector_to_list_iterate ( __vector2list_info __obj_info,
int   
)
inline

References __gnu_profile::__vector2list_info::__opr_iterate().

Here is the call graph for this function:

void __gnu_profile::__trace_vector_to_list_report ( FILE *  __f,
__warning_vector_t __warnings 
)
inline

References __trace_report(), and _GLIBCXX_PROFILE_DATA.

Referenced by __report().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__trace_vector_to_list_resize ( __vector2list_info __obj_info,
std::size_t  __from,
std::size_t  __to 
)
inline

References __gnu_profile::__vector2list_info::__resize().

Here is the call graph for this function:

bool __gnu_profile::__turn ( __state_type  __s)
inline

References __INVALID, and _GLIBCXX_PROFILE_DATA.

Referenced by __turn_off(), and __turn_on().

Here is the caller graph for this function:

bool __gnu_profile::__turn_off ( )
inline

References __OFF, and __turn().

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

bool __gnu_profile::__turn_on ( )
inline

References __ON, and __turn().

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

void __gnu_profile::__write ( FILE *  __f,
__stack_t  __stack 
)
inline
void __gnu_profile::__write_cost_factors ( )
inline

References __for_each(), __open_output_file(), and _GLIBCXX_PROFILE_DATA.

Referenced by __profcxx_init_unconditional().

Here is the call graph for this function:

Here is the caller graph for this function:

__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __state_type  ,
__state  ,
__INVALID   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_hash_func ,
_S_hash_func  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_hashtable_size ,
_S_hashtable_size  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_map2umap ,
_S_map2umap  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_vector_size ,
_S_vector_size  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_vector_to_list ,
_S_vector_to_list  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_list_to_slist ,
_S_list_to_slist  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __trace_list_to_vector ,
_S_list_to_vector  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__vector_shift_cost_factor  ,
{"__vector_shift_cost_factor", 1.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__vector_iterate_cost_factor  ,
{"__vector_iterate_cost_factor", 1.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__vector_resize_cost_factor  ,
{"__vector_resize_cost_factor", 1.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__list_shift_cost_factor  ,
{"__list_shift_cost_factor", 0.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__list_iterate_cost_factor  ,
{"__list_iterate_cost_factor", 10.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__list_resize_cost_factor  ,
{"__list_resize_cost_factor", 0.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__map_insert_cost_factor  ,
{"__map_insert_cost_factor", 1.5}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__map_erase_cost_factor  ,
{"__map_erase_cost_factor", 1.5}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__map_find_cost_factor  ,
{"__map_find_cost_factor", 1}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__map_iterate_cost_factor  ,
{"__map_iterate_cost_factor", 2.3}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__umap_insert_cost_factor  ,
{"__umap_insert_cost_factor", 12.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__umap_erase_cost_factor  ,
{"__umap_erase_cost_factor", 12.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__umap_find_cost_factor  ,
{"__umap_find_cost_factor", 10.0}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor  ,
__umap_iterate_cost_factor  ,
{"__umap_iterate_cost_factor", 1.7}   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( __cost_factor_vector ,
__cost_factors  ,
 
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( const char *  ,
_S_trace_file_name  ,
_GLIBCXX_PROFILE_TRACE_PATH_ROOT   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( std::size_t  ,
_S_max_warn_count  ,
_GLIBCXX_PROFILE_MAX_WARN_COUNT   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( std::size_t  ,
_S_max_stack_depth  ,
_GLIBCXX_PROFILE_MAX_STACK_DEPTH   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA ( std::size_t  ,
_S_max_mem  ,
_GLIBCXX_PROFILE_MEM_PER_DIAGNOSTIC   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA ( __env_t  ,
__env   
)
__gnu_profile::_GLIBCXX_PROFILE_DEFINE_UNINIT_DATA ( __gnu_cxx::__mutex  ,
__global_mutex   
)

Master lock.