diff options
author | Josh Stone <jistone@redhat.com> | 2009-08-25 17:23:28 -0700 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-08-25 17:23:28 -0700 |
commit | d089f5b2932a473692f8c3e1badb883fabc55dee (patch) | |
tree | 55a2176ea9ea2b560f853fe785d6ecb402008c65 /dwflpp.h | |
parent | 54558065ee8428cfdc42135f151739fbc787d034 (diff) | |
download | systemtap-steved-d089f5b2932a473692f8c3e1badb883fabc55dee.tar.gz systemtap-steved-d089f5b2932a473692f8c3e1badb883fabc55dee.tar.xz systemtap-steved-d089f5b2932a473692f8c3e1badb883fabc55dee.zip |
Index cu_inl_function_cache_t by function->addr
Again, avoid needless string construction for map indexing.
* dwflpp.h (cu_inl_function_cache_t): Index by the void* function->addr.
* dwflpp.cxx (dwflpp::iterate_over_inline_instances): Index
cu_inl_function_cache by function->addr.
Diffstat (limited to 'dwflpp.h')
-rw-r--r-- | dwflpp.h | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -65,6 +65,9 @@ typedef stap_map<std::string, Dwarf_Die>::type cu_function_cache_t; // cu die -> (function -> die) typedef stap_map<void*, cu_function_cache_t*>::type mod_cu_function_cache_t; +// inline function die -> instance die[] +typedef stap_map<void*, std::vector<Dwarf_Die>*>::type cu_inl_function_cache_t; + typedef std::vector<func_info> func_info_map_t; typedef std::vector<inline_instance_info> inline_instance_map_t; @@ -289,7 +292,6 @@ private: typedef std::map<Dwarf*, std::vector<Dwarf_Die>*> module_cu_cache_t; module_cu_cache_t module_cu_cache; - typedef std::map<std::string, std::vector<Dwarf_Die>*> cu_inl_function_cache_t; cu_inl_function_cache_t cu_inl_function_cache; static int cu_inl_function_caching_callback (Dwarf_Die* func, void *arg); |