30 #ifndef _GLIBCXX_PROFILE_PROFILER_MAP_TO_UNORDERED_MAP_H
31 #define _GLIBCXX_PROFILE_PROFILER_MAP_TO_UNORDERED_MAP_H 1
37 namespace __gnu_profile
42 for (
int __bit_count =
sizeof(
std::size_t) - 1; __bit_count >= 0;
44 if ((2 << __bit_count) & __size)
52 * static_cast<float>(
__log2(__size))); }
57 * static_cast<float>(
__log2(__size))); }
62 * static_cast<float>(
__log2(__size))); }
100 std::fprintf(__f,
"%Zu %Zu %Zu %Zu %.0f %.0f %s\n",
111 {
return "change std::map to std::unordered_map"; }
180 :
public __trace_base<__map2umap_info, __map2umap_stack_info>
185 {
__id =
"map-to-unordered-map"; }
__stack_t __get_stack()
Definition: profiler_node.h:50
void __record_invalidate()
Definition: profiler_map_to_unordered_map.h:154
std::size_t _M_iterate
Definition: profiler_map_to_unordered_map.h:161
void __trace_map_to_unordered_map_invalidate(const void *)
Definition: profiler_map_to_unordered_map.h:277
void __trace_map_to_unordered_map_insert(const void *, std::size_t, std::size_t)
Definition: profiler_map_to_unordered_map.h:223
float __magnitude() const
Definition: profiler_map_to_unordered_map.h:106
std::size_t __size(__stack_t __stack)
Definition: profiler_node.h:68
void __trace_map_to_unordered_map_construct(const void *)
Definition: profiler_map_to_unordered_map.h:204
A map-to-unordered_map instrumentation line in the object table.
Definition: profiler_map_to_unordered_map.h:66
Data structures to represent profiling traces.
__trace_map2umap()
Definition: profiler_map_to_unordered_map.h:183
#define true
Definition: stdbool.h:34
float __map_find_cost(std::size_t __size)
Definition: profiler_map_to_unordered_map.h:60
basic_string< char > string
Definition: string:1153
__stack_t __stack() const
Definition: profiler_node.h:141
std::_GLIBCXX_STD_C::vector< __warning_data > __warning_vector_t
Definition: profiler_trace.h:93
bool _M_valid
Definition: profiler_map_to_unordered_map.h:164
void __trace_map_to_unordered_map_destruct(const void *)
Definition: profiler_map_to_unordered_map.h:214
Base class for all trace producers.
Definition: profiler_trace.h:183
virtual ~__map2umap_info()
Definition: profiler_map_to_unordered_map.h:78
std::string __advice() const
Definition: profiler_map_to_unordered_map.h:110
void __record_find(std::size_t __size)
Definition: profiler_map_to_unordered_map.h:134
Interface of the profiling runtime library.
A map-to-unordered_map instrumentation line in the stack table.
Definition: profiler_map_to_unordered_map.h:170
bool __profcxx_init()
This function must be called by each instrumentation point.
Definition: profiler_trace.h:649
void __trace_map_to_unordered_map_init()
Definition: profiler_map_to_unordered_map.h:189
Map-to-unordered_map instrumentation producer.
Definition: profiler_map_to_unordered_map.h:179
#define _GLIBCXX_PROFILE_DATA(__name)
Definition: profiler.h:48
void __trace_map_to_unordered_map_iterate(const void *, std::size_t)
Definition: profiler_map_to_unordered_map.h:264
void __trace_map_to_unordered_map_report(FILE *__f, __warning_vector_t &__warnings)
Definition: profiler_map_to_unordered_map.h:193
__map2umap_info()
Definition: profiler_map_to_unordered_map.h:70
void __trace_map_to_unordered_map_find(const void *, std::size_t)
Definition: profiler_map_to_unordered_map.h:251
std::size_t _M_insert
Definition: profiler_map_to_unordered_map.h:158
__map2umap_info(const __map2umap_info &__o)
Definition: profiler_map_to_unordered_map.h:80
float __map_erase_cost(std::size_t __size)
Definition: profiler_map_to_unordered_map.h:55
__stack_npt * __stack_t
Definition: profiler_node.h:45
float _M_map_cost
Definition: profiler_map_to_unordered_map.h:163
__SIZE_TYPE__ size_t
Definition: stddef.h:212
Data structures to represent a single profiling event.
std::size_t _M_find
Definition: profiler_map_to_unordered_map.h:160
void __record_insert(std::size_t __size, std::size_t __count)
Definition: profiler_map_to_unordered_map.h:114
Base class for a line in the object table.
Definition: profiler_node.h:123
std::size_t _M_erase
Definition: profiler_map_to_unordered_map.h:159
void __merge(const __map2umap_info &__o)
Definition: profiler_map_to_unordered_map.h:87
void __write(FILE *__f) const
Definition: profiler_map_to_unordered_map.h:98
float _M_umap_cost
Definition: profiler_map_to_unordered_map.h:162
const char * __id
Definition: profiler_trace.h:213
float __map_insert_cost(std::size_t __size)
Definition: profiler_map_to_unordered_map.h:50
int __log2(std::size_t __size)
Definition: profiler_map_to_unordered_map.h:40
void __record_iterate(std::size_t __count)
Definition: profiler_map_to_unordered_map.h:142
void __record_erase(std::size_t __size, std::size_t __count)
Definition: profiler_map_to_unordered_map.h:124
__map2umap_info(__stack_t __stack)
Definition: profiler_map_to_unordered_map.h:74
__map2umap_stack_info(const __map2umap_info &__o)
Definition: profiler_map_to_unordered_map.h:174
void __trace_map_to_unordered_map_erase(const void *, std::size_t, std::size_t)
Definition: profiler_map_to_unordered_map.h:237