GNU g++  v5.2.1
GNU Standard C++
profiler_trace.h File Reference

Data structures to represent profiling traces. More...

#include <cstdio>
#include <cerrno>
#include <cstdlib>
#include <tr1/unordered_map>
#include <ext/concurrence.h>
#include <fstream>
#include <string>
#include <utility>
#include <vector>
#include "profile/impl/profiler_algos.h"
#include "profile/impl/profiler_state.h"
#include "profile/impl/profiler_node.h"
Include dependency graph for profiler_trace.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  __gnu_profile::__cost_factor
 
struct  __gnu_profile::__cost_factor_setter
 
struct  __gnu_profile::__cost_factor_writer
 
class  __gnu_profile::__trace_base< __object_info, __stack_info >
 Base class for all trace producers. More...
 
struct  __gnu_profile::__warn
 
struct  __gnu_profile::__warning_data
 Representation of a warning. More...
 

Namespaces

 __gnu_profile
 GNU profile code for public use.
 

Macros

#define _GLIBCXX_IMPL_UNORDERED_MAP   std::tr1::unordered_map
 

Typedefs

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. More...
 
typedef std::_GLIBCXX_STD_C::vector< __warning_data > __gnu_profile::__warning_vector_t
 

Functions

std::size_t __gnu_profile::__env_to_size_t (const char *__env_var, std::size_t __default_value)
 
int __gnu_profile::__log_magnitude (float __f)
 
std::size_t __gnu_profile::__max_mem ()
 
FILE * __gnu_profile::__open_output_file (const char *__extension)
 
bool __gnu_profile::__profcxx_init ()
 This function must be called by each instrumentation point. More...
 
void __gnu_profile::__profcxx_init_unconditional ()
 
void __gnu_profile::__read_cost_factors ()
 
void __gnu_profile::__report ()
 Final report method, registered with atexit. More...
 
void __gnu_profile::__report_and_free ()
 
void __gnu_profile::__set_cost_factors ()
 
void __gnu_profile::__set_max_mem ()
 
void __gnu_profile::__set_max_stack_trace_depth ()
 
void __gnu_profile::__set_max_warn_count ()
 
void __gnu_profile::__set_trace_path ()
 
std::size_t __gnu_profile::__stack_max_depth ()
 
void __gnu_profile::__trace_hash_func_free ()
 
void __gnu_profile::__trace_hash_func_init ()
 
void __gnu_profile::__trace_hash_func_report (FILE *__f, __warning_vector_t &__warnings)
 
void __gnu_profile::__trace_hashtable_size_free ()
 
void __gnu_profile::__trace_hashtable_size_init ()
 
void __gnu_profile::__trace_hashtable_size_report (FILE *__f, __warning_vector_t &__warnings)
 
void __gnu_profile::__trace_list_to_slist_free ()
 
void __gnu_profile::__trace_list_to_slist_init ()
 
void __gnu_profile::__trace_list_to_slist_report (FILE *__f, __warning_vector_t &__warnings)
 
void __gnu_profile::__trace_list_to_vector_free ()
 
void __gnu_profile::__trace_list_to_vector_init ()
 
void __gnu_profile::__trace_list_to_vector_report (FILE *__f, __warning_vector_t &__warnings)
 
void __gnu_profile::__trace_map_to_unordered_map_free ()
 
void __gnu_profile::__trace_map_to_unordered_map_init ()
 
void __gnu_profile::__trace_map_to_unordered_map_report (FILE *__f, __warning_vector_t &__warnings)
 
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)
 
void __gnu_profile::__trace_vector_size_free ()
 
void __gnu_profile::__trace_vector_size_init ()
 
void __gnu_profile::__trace_vector_size_report (FILE *, __warning_vector_t &)
 
void __gnu_profile::__trace_vector_to_list_free ()
 
void __gnu_profile::__trace_vector_to_list_init ()
 
void __gnu_profile::__trace_vector_to_list_report (FILE *, __warning_vector_t &)
 
void __gnu_profile::__write_cost_factors ()
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_hash_func *, _S_hash_func, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_hashtable_size *, _S_hashtable_size, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_map2umap *, _S_map2umap, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_vector_size *, _S_vector_size, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_vector_to_list *, _S_vector_to_list, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_list_to_slist *, _S_list_to_slist, 0)
 
 __gnu_profile::_GLIBCXX_PROFILE_DEFINE_DATA (__trace_list_to_vector *, _S_list_to_vector, 0)
 
 __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, 0)
 
 __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. More...
 

Detailed Description

Data structures to represent profiling traces.

Macro Definition Documentation

#define _GLIBCXX_IMPL_UNORDERED_MAP   std::tr1::unordered_map