ms_print --threshold=10 massif.out -------------------------------------------------------------------------------- Command: ./ast_printer -nsf /usr/portage/eclass/versionator.eclass Massif arguments: --massif-out-file=massif.out ms_print arguments: --threshold=10 massif.out -------------------------------------------------------------------------------- MB 6.397^ # | ::# | :: # | ::::::: # | ::@:::: :::: # | ::@:::: :::: # | @@:::::@:::: :::: # | ::@ :::::@:::: :::: # | ::: @ :::::@:::: :::: # | ::::: @ :::::@:::: :::: # | ::::::: ::: @ :::::@:::: :::: # | :::::::: ::: @ :::::@:::: :::: # | ::@::::::::: ::: @ :::::@:::: :::: # | :::@::::::::: ::: @ :::::@:::: :::: # | ::::::@::::::::: ::: @ :::::@:::: :::: # | :::::: :::@::::::::: ::: @ :::::@:::: :::: # | @@: : : :::@::::::::: ::: @ :::::@:::: :::: # | :::::@ : : : :::@::::::::: ::: @ :::::@:::: :::: # | ::: @ : : : :::@::::::::: ::: @ :::::@:::: :::: # | ::: @ : : : :::@::::::::: ::: @ :::::@:::: :::: # 0 +----------------------------------------------------------------------->Mi 0 46.52 Number of snapshots: 50 Detailed snapshots: [2, 4, 8, 17, 32, 38, 48 (peak)] -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 1 4,294,928 40 28 12 0 2 4,830,653 63,168 61,974 1,194 0 98.11% (61,974B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->79.73% (50,362B) 0x1585E7: __gnu_cxx::new_allocator::allocate(unsigned long, void const*) (new_allocator.h:89) | ->79.73% (50,362B) 0x16D5BC: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (basic_string.tcc:607) | ->78.05% (49,304B) 0x16DDBC: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (basic_string.tcc:629) | | ->78.05% (49,304B) 0x1C3A8C: std::string::reserve(unsigned long) (basic_string.tcc:510) | | ->77.71% (49,088B) 0x53678C5: std::basic_stringbuf, std::allocator >::overflow(int) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | ->77.71% (49,088B) 0x536CBB5: std::basic_streambuf >::xsputn(char const*, long) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | ->77.71% (49,088B) 0x536E21B: long std::__copy_streambufs_eof >(std::basic_streambuf >*, std::basic_streambuf >*, bool&) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | ->77.71% (49,088B) 0x53609A1: std::ostream::operator<<(std::basic_streambuf >*) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | ->77.71% (49,088B) 0x2434CD: bash_ast::read_script(std::istream const&) (bash_ast.cpp:41) | | | ->77.71% (49,088B) 0x243649: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:49) | | | ->77.71% (49,088B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | ->77.71% (49,088B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | ->77.71% (49,088B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | ->77.71% (49,088B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | ->77.71% (49,088B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | ->77.71% (49,088B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | ->77.71% (49,088B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | ->00.34% (216B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->01.67% (1,058B) in 2+ places, all below ms_print's threshold (10.00%) | ->12.97% (8,192B) 0x5337D02: std::basic_filebuf >::_M_allocate_internal_buffer() (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->12.97% (8,192B) 0x5338BB8: std::basic_filebuf >::open(char const*, std::_Ios_Openmode) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->12.97% (8,192B) 0x5339C92: std::basic_ifstream >::basic_ifstream(char const*, std::_Ios_Openmode) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->12.97% (8,192B) 0x13B583: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:156) | ->12.97% (8,192B) 0x13BFF1: main (ast_printer.cpp:226) | ->05.41% (3,420B) in 2+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 3 8,043,301 71,432 70,230 1,202 0 4 12,870,772 71,952 70,742 1,210 0 98.32% (70,742B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->82.09% (59,066B) 0x1585E7: __gnu_cxx::new_allocator::allocate(unsigned long, void const*) (new_allocator.h:89) | ->81.38% (58,554B) 0x16D5BC: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (basic_string.tcc:607) | | ->45.80% (32,952B) 0x16DDBC: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (basic_string.tcc:629) | | | ->45.80% (32,952B) 0x1C3A8C: std::string::reserve(unsigned long) (basic_string.tcc:510) | | | ->45.50% (32,736B) 0x53678C5: std::basic_stringbuf, std::allocator >::overflow(int) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | | ->45.50% (32,736B) 0x536CBB5: std::basic_streambuf >::xsputn(char const*, long) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | | ->45.50% (32,736B) 0x536E21B: long std::__copy_streambufs_eof >(std::basic_streambuf >*, std::basic_streambuf >*, bool&) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | | ->45.50% (32,736B) 0x53609A1: std::ostream::operator<<(std::basic_streambuf >*) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | | ->45.50% (32,736B) 0x2434CD: bash_ast::read_script(std::istream const&) (bash_ast.cpp:41) | | | | ->45.50% (32,736B) 0x243649: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:49) | | | | ->45.50% (32,736B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | | ->45.50% (32,736B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | | ->45.50% (32,736B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | | ->45.50% (32,736B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | | ->45.50% (32,736B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | | ->45.50% (32,736B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | | ->45.50% (32,736B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | | | ->00.30% (216B) in 1+ places, all below ms_print's threshold (10.00%) | | | | | ->34.45% (24,787B) 0x211A9A: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) | | | ->34.45% (24,787B) 0x209EF6: char* std::string::_S_construct_aux(char*, char*, std::allocator const&, std::__false_type) (basic_string.h:1649) | | | ->34.45% (24,787B) 0x202DCA: char* std::string::_S_construct(char*, char*, std::allocator const&) (basic_string.h:1670) | | | ->34.11% (24,544B) 0x1FC4A8: std::basic_string, std::allocator >::basic_string(char*, char*, std::allocator const&) (basic_string.tcc:229) | | | | ->34.11% (24,544B) 0x5369ABC: std::basic_stringstream, std::allocator >::str() const (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | | | | ->34.11% (24,544B) 0x2434E6: bash_ast::read_script(std::istream const&) (bash_ast.cpp:42) | | | | ->34.11% (24,544B) 0x243649: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:49) | | | | ->34.11% (24,544B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | | ->34.11% (24,544B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | | ->34.11% (24,544B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | | ->34.11% (24,544B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | | ->34.11% (24,544B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | | ->34.11% (24,544B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | | ->34.11% (24,544B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | | | ->00.34% (243B) in 1+ places, all below ms_print's threshold (10.00%) | | | | | ->01.13% (815B) in 2+ places, all below ms_print's threshold (10.00%) | | | ->00.71% (512B) in 1+ places, all below ms_print's threshold (10.00%) | ->11.39% (8,192B) 0x5337D02: std::basic_filebuf >::_M_allocate_internal_buffer() (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->11.39% (8,192B) 0x5338BB8: std::basic_filebuf >::open(char const*, std::_Ios_Openmode) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->11.39% (8,192B) 0x5339C92: std::basic_ifstream >::basic_ifstream(char const*, std::_Ios_Openmode) (in /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6.0.14) | ->11.39% (8,192B) 0x13B583: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:156) | ->11.39% (8,192B) 0x13BFF1: main (ast_printer.cpp:226) | ->04.84% (3,484B) in 2+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 5 13,661,709 1,101,104 1,099,285 1,819 0 6 14,280,743 1,109,296 1,107,477 1,819 0 7 15,235,138 1,109,296 1,107,485 1,811 0 8 17,346,480 1,396,040 1,394,213 1,827 0 99.87% (1,394,213B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->58.09% (811,008B) 0x50A99D6: newPool (in /usr/lib64/libantlr3c.so) | ->38.73% (540,672B) 0x50A9D0A: antlr3TokenFactoryNew (in /usr/lib64/libantlr3c.so) | | ->19.36% (270,336B) 0x50AF05E: setCharStream (in /usr/lib64/libantlr3c.so) | | | ->19.36% (270,336B) 0x50AFB7A: antlr3LexerNewStream (in /usr/lib64/libantlr3c.so) | | | ->19.36% (270,336B) 0x251C8B: libbashLexerNewSSD (libbashLexer.cpp:449) | | | ->19.36% (270,336B) 0x251C1D: libbashLexerNew (libbashLexer.cpp:412) | | | ->19.36% (270,336B) 0x243D5A: bash_ast::init_parser(std::string const&) (bash_ast.cpp:102) | | | ->19.36% (270,336B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | | ->19.36% (270,336B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | ->19.36% (270,336B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | ->19.36% (270,336B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | ->19.36% (270,336B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | ->19.36% (270,336B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | ->19.36% (270,336B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | ->19.36% (270,336B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | ->19.36% (270,336B) 0x50AB3B6: ANTLR3_TREE_ADAPTORNew (in /usr/lib64/libantlr3c.so) | | ->19.36% (270,336B) 0x25A730: libbashParserNewSSD (libbashParser.cpp:1434) | | ->19.36% (270,336B) 0x259681: libbashParserNew (libbashParser.cpp:1149) | | ->19.36% (270,336B) 0x243EF0: bash_ast::init_parser(std::string const&) (bash_ast.cpp:111) | | ->19.36% (270,336B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | ->19.36% (270,336B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | ->19.36% (270,336B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | ->19.36% (270,336B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | ->19.36% (270,336B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | ->19.36% (270,336B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | ->19.36% (270,336B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | ->19.36% (270,336B) 0x13BFF1: main (ast_printer.cpp:226) | | | ->19.36% (270,336B) 0x50A9DEB: newPoolToken (in /usr/lib64/libantlr3c.so) | ->19.36% (270,336B) 0x50AEA2C: emit (in /usr/lib64/libantlr3c.so) | ->19.36% (270,336B) 0x50AF8A3: nextToken (in /usr/lib64/libantlr3c.so) | ->19.36% (270,336B) 0x50B368D: fillBuffer (in /usr/lib64/libantlr3c.so) | ->19.36% (270,336B) 0x50B3B54: tokLT (in /usr/lib64/libantlr3c.so) | ->19.36% (270,336B) 0x26E3CE: start(libbashParser_Ctx_struct*) (libbashParser.cpp:16772) | ->19.36% (270,336B) 0x244BD4: bash_ast::parser_start(libbashParser_Ctx_struct*) (bash_ast.cpp:227) | ->19.36% (270,336B) 0x14583A: std::_Function_handler::_M_invoke(std::_Any_data const&, libbashParser_Ctx_struct*) (functional:1699) | ->19.36% (270,336B) 0x245988: std::function::operator()(libbashParser_Ctx_struct*) const (functional:2116) | ->19.36% (270,336B) 0x243FC2: bash_ast::init_parser(std::string const&) (bash_ast.cpp:115) | ->19.36% (270,336B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | ->19.36% (270,336B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | ->19.36% (270,336B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | ->19.36% (270,336B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | ->19.36% (270,336B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | ->19.36% (270,336B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | ->19.36% (270,336B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | ->19.36% (270,336B) 0x13BFF1: main (ast_printer.cpp:226) | ->22.89% (319,488B) 0x50AA5C6: newPool (in /usr/lib64/libantlr3c.so) | ->22.89% (319,488B) 0x50AA7D0: antlr3ArboretumNew (in /usr/lib64/libantlr3c.so) | ->22.89% (319,488B) 0x50AB3A8: ANTLR3_TREE_ADAPTORNew (in /usr/lib64/libantlr3c.so) | ->22.89% (319,488B) 0x25A730: libbashParserNewSSD (libbashParser.cpp:1434) | ->22.89% (319,488B) 0x259681: libbashParserNew (libbashParser.cpp:1149) | ->22.89% (319,488B) 0x243EF0: bash_ast::init_parser(std::string const&) (bash_ast.cpp:111) | ->22.89% (319,488B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | ->22.89% (319,488B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | ->22.89% (319,488B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | ->22.89% (319,488B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | ->22.89% (319,488B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | ->22.89% (319,488B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | ->22.89% (319,488B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | ->22.89% (319,488B) 0x13BFF1: main (ast_printer.cpp:226) | ->12.91% (180,224B) 0x50A8376: newPool (in /usr/lib64/libantlr3c.so) | ->12.91% (180,224B) 0x50A906B: antlr3VectorFactoryNew (in /usr/lib64/libantlr3c.so) | ->12.91% (180,224B) in 2+ places, all below ms_print's threshold (10.00%) | ->05.98% (83,493B) in 3+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 9 18,911,443 1,699,152 1,697,325 1,827 0 10 20,678,540 1,969,512 1,967,669 1,843 0 11 22,181,431 2,305,392 2,303,549 1,843 0 12 24,012,362 2,575,752 2,573,893 1,859 0 13 24,393,442 2,850,120 2,847,973 2,147 0 14 24,907,006 2,853,792 2,851,357 2,435 0 15 25,235,757 2,853,976 2,851,525 2,451 0 16 25,761,151 2,946,152 2,943,693 2,459 0 17 26,260,576 2,946,208 2,943,719 2,489 0 99.92% (2,943,719B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->73.41% (2,162,688B) 0x50A99D6: newPool (in /usr/lib64/libantlr3c.so) | ->55.05% (1,622,016B) 0x50A9DEB: newPoolToken (in /usr/lib64/libantlr3c.so) | | ->55.05% (1,622,016B) 0x50AEA2C: emit (in /usr/lib64/libantlr3c.so) | | ->55.05% (1,622,016B) 0x50AF8A3: nextToken (in /usr/lib64/libantlr3c.so) | | ->55.05% (1,622,016B) 0x50B368D: fillBuffer (in /usr/lib64/libantlr3c.so) | | ->55.05% (1,622,016B) 0x50B3B54: tokLT (in /usr/lib64/libantlr3c.so) | | ->55.05% (1,622,016B) 0x26E3CE: start(libbashParser_Ctx_struct*) (libbashParser.cpp:16772) | | ->55.05% (1,622,016B) 0x244BD4: bash_ast::parser_start(libbashParser_Ctx_struct*) (bash_ast.cpp:227) | | ->55.05% (1,622,016B) 0x14583A: std::_Function_handler::_M_invoke(std::_Any_data const&, libbashParser_Ctx_struct*) (functional:1699) | | ->55.05% (1,622,016B) 0x245988: std::function::operator()(libbashParser_Ctx_struct*) const (functional:2116) | | ->55.05% (1,622,016B) 0x243FC2: bash_ast::init_parser(std::string const&) (bash_ast.cpp:115) | | ->55.05% (1,622,016B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | ->55.05% (1,622,016B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | ->55.05% (1,622,016B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | ->55.05% (1,622,016B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | ->55.05% (1,622,016B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | ->55.05% (1,622,016B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | ->55.05% (1,622,016B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | ->55.05% (1,622,016B) 0x13BFF1: main (ast_printer.cpp:226) | | | ->18.35% (540,672B) 0x50A9D0A: antlr3TokenFactoryNew (in /usr/lib64/libantlr3c.so) | ->18.35% (540,672B) in 2+ places, all below ms_print's threshold (10.00%) | ->10.84% (319,488B) 0x50AA5C6: newPool (in /usr/lib64/libantlr3c.so) | ->10.84% (319,488B) 0x50AA7D0: antlr3ArboretumNew (in /usr/lib64/libantlr3c.so) | ->10.84% (319,488B) 0x50AB3A8: ANTLR3_TREE_ADAPTORNew (in /usr/lib64/libantlr3c.so) | ->10.84% (319,488B) 0x25A730: libbashParserNewSSD (libbashParser.cpp:1434) | ->10.84% (319,488B) 0x259681: libbashParserNew (libbashParser.cpp:1149) | ->10.84% (319,488B) 0x243EF0: bash_ast::init_parser(std::string const&) (bash_ast.cpp:111) | ->10.84% (319,488B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | ->10.84% (319,488B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | ->10.84% (319,488B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | ->10.84% (319,488B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | ->10.84% (319,488B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | ->10.84% (319,488B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | ->10.84% (319,488B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | ->10.84% (319,488B) 0x13BFF1: main (ast_printer.cpp:226) | ->15.67% (461,543B) in 3+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 18 26,807,218 2,946,184 2,943,701 2,483 0 19 27,708,765 3,036,304 3,033,821 2,483 0 20 28,236,543 3,446,104 3,443,597 2,507 0 21 28,759,833 3,447,208 3,444,605 2,603 0 22 29,466,713 3,447,208 3,444,613 2,595 0 23 30,122,628 3,537,848 3,535,237 2,611 0 24 30,714,663 3,538,368 3,535,757 2,611 0 25 31,257,213 3,628,504 3,625,877 2,627 0 26 31,995,642 3,948,016 3,945,373 2,643 0 27 33,411,781 4,038,136 4,035,493 2,643 0 28 33,871,676 4,128,776 4,126,117 2,659 0 29 34,267,705 4,128,776 4,126,125 2,651 0 30 34,887,647 4,399,136 4,396,469 2,667 0 31 35,119,488 4,489,256 4,486,589 2,667 0 32 36,354,043 4,808,752 4,806,085 2,667 0 99.94% (4,806,085B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->50.60% (2,433,024B) 0x50A99D6: newPool (in /usr/lib64/libantlr3c.so) | ->39.35% (1,892,352B) 0x50A9DEB: newPoolToken (in /usr/lib64/libantlr3c.so) | | ->33.73% (1,622,016B) 0x50AEA2C: emit (in /usr/lib64/libantlr3c.so) | | | ->33.73% (1,622,016B) 0x50AF8A3: nextToken (in /usr/lib64/libantlr3c.so) | | | ->33.73% (1,622,016B) 0x50B368D: fillBuffer (in /usr/lib64/libantlr3c.so) | | | ->33.73% (1,622,016B) 0x50B3B54: tokLT (in /usr/lib64/libantlr3c.so) | | | ->33.73% (1,622,016B) 0x26E3CE: start(libbashParser_Ctx_struct*) (libbashParser.cpp:16772) | | | ->33.73% (1,622,016B) 0x244BD4: bash_ast::parser_start(libbashParser_Ctx_struct*) (bash_ast.cpp:227) | | | ->33.73% (1,622,016B) 0x14583A: std::_Function_handler::_M_invoke(std::_Any_data const&, libbashParser_Ctx_struct*) (functional:1699) | | | ->33.73% (1,622,016B) 0x245988: std::function::operator()(libbashParser_Ctx_struct*) const (functional:2116) | | | ->33.73% (1,622,016B) 0x243FC2: bash_ast::init_parser(std::string const&) (bash_ast.cpp:115) | | | ->33.73% (1,622,016B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | | ->33.73% (1,622,016B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | ->33.73% (1,622,016B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | ->33.73% (1,622,016B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | ->33.73% (1,622,016B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | ->33.73% (1,622,016B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | ->33.73% (1,622,016B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | ->33.73% (1,622,016B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | ->05.62% (270,336B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->11.24% (540,672B) 0x50A9D0A: antlr3TokenFactoryNew (in /usr/lib64/libantlr3c.so) | ->11.24% (540,672B) in 2+ places, all below ms_print's threshold (10.00%) | ->26.58% (1,277,952B) 0x50AA5C6: newPool (in /usr/lib64/libantlr3c.so) | ->19.93% (958,464B) 0x50AA8B6: newPoolTree (in /usr/lib64/libantlr3c.so) | | ->19.93% (958,464B) 0x50A9EFF: newFromToken (in /usr/lib64/libantlr3c.so) | | ->19.93% (958,464B) in 3+ places, all below ms_print's threshold (10.00%) | | | ->06.64% (319,488B) in 1+ places, all below ms_print's threshold (10.00%) | ->18.74% (901,120B) 0x50A8376: newPool (in /usr/lib64/libantlr3c.so) | ->14.99% (720,896B) 0x50A8EFE: newVector (in /usr/lib64/libantlr3c.so) | | ->13.12% (630,784B) 0x50A9F5D: createChildrenList (in /usr/lib64/libantlr3c.so) | | | ->13.12% (630,784B) 0x50A49AE: addChild (in /usr/lib64/libantlr3c.so) | | | ->13.12% (630,784B) in 7+ places, all below ms_print's threshold (10.00%) | | | | | ->01.87% (90,112B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->03.75% (180,224B) in 1+ places, all below ms_print's threshold (10.00%) | ->04.03% (193,989B) in 2+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 33 37,803,635 4,899,392 4,896,709 2,683 0 34 38,117,829 4,989,584 4,986,855 2,729 0 35 39,078,754 4,989,544 4,986,837 2,707 0 36 39,560,030 5,399,680 5,396,957 2,723 0 37 40,182,811 5,407,360 5,404,637 2,723 0 38 40,811,210 5,415,552 5,412,829 2,723 0 99.95% (5,412,829B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->44.93% (2,433,024B) 0x50A99D6: newPool (in /usr/lib64/libantlr3c.so) | ->34.94% (1,892,352B) 0x50A9DEB: newPoolToken (in /usr/lib64/libantlr3c.so) | | ->29.95% (1,622,016B) 0x50AEA2C: emit (in /usr/lib64/libantlr3c.so) | | | ->29.95% (1,622,016B) 0x50AF8A3: nextToken (in /usr/lib64/libantlr3c.so) | | | ->29.95% (1,622,016B) 0x50B368D: fillBuffer (in /usr/lib64/libantlr3c.so) | | | ->29.95% (1,622,016B) 0x50B3B54: tokLT (in /usr/lib64/libantlr3c.so) | | | ->29.95% (1,622,016B) 0x26E3CE: start(libbashParser_Ctx_struct*) (libbashParser.cpp:16772) | | | ->29.95% (1,622,016B) 0x244BD4: bash_ast::parser_start(libbashParser_Ctx_struct*) (bash_ast.cpp:227) | | | ->29.95% (1,622,016B) 0x14583A: std::_Function_handler::_M_invoke(std::_Any_data const&, libbashParser_Ctx_struct*) (functional:1699) | | | ->29.95% (1,622,016B) 0x245988: std::function::operator()(libbashParser_Ctx_struct*) const (functional:2116) | | | ->29.95% (1,622,016B) 0x243FC2: bash_ast::init_parser(std::string const&) (bash_ast.cpp:115) | | | ->29.95% (1,622,016B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | | ->29.95% (1,622,016B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | ->29.95% (1,622,016B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | ->29.95% (1,622,016B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | ->29.95% (1,622,016B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | ->29.95% (1,622,016B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | ->29.95% (1,622,016B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | ->29.95% (1,622,016B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | ->04.99% (270,336B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->09.98% (540,672B) in 1+ places, all below ms_print's threshold (10.00%) | ->29.50% (1,597,440B) 0x50AA5C6: newPool (in /usr/lib64/libantlr3c.so) | ->23.60% (1,277,952B) 0x50AA8B6: newPoolTree (in /usr/lib64/libantlr3c.so) | | ->23.60% (1,277,952B) 0x50A9EFF: newFromToken (in /usr/lib64/libantlr3c.so) | | ->23.60% (1,277,952B) in 4+ places, all below ms_print's threshold (10.00%) | | | ->05.90% (319,488B) in 1+ places, all below ms_print's threshold (10.00%) | ->21.63% (1,171,456B) 0x50A8376: newPool (in /usr/lib64/libantlr3c.so) | ->18.30% (991,232B) 0x50A8EFE: newVector (in /usr/lib64/libantlr3c.so) | | ->16.64% (901,120B) 0x50A9F5D: createChildrenList (in /usr/lib64/libantlr3c.so) | | | ->16.64% (901,120B) 0x50A49AE: addChild (in /usr/lib64/libantlr3c.so) | | | ->16.64% (901,120B) in 10+ places, all below ms_print's threshold (10.00%) | | | | | ->01.66% (90,112B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->03.33% (180,224B) in 1+ places, all below ms_print's threshold (10.00%) | ->03.89% (210,909B) in 2+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 39 41,432,365 5,431,960 5,429,221 2,739 0 40 42,129,702 5,522,080 5,519,341 2,739 0 41 43,071,089 5,842,096 5,839,341 2,755 0 42 43,496,062 5,932,736 5,929,973 2,763 0 43 44,795,034 5,933,256 5,930,485 2,771 0 44 45,578,706 6,023,408 6,020,613 2,795 0 45 46,128,328 6,294,296 6,291,469 2,827 0 46 46,874,093 6,613,792 6,610,965 2,827 0 47 48,285,382 6,704,936 6,702,101 2,835 0 48 48,540,188 6,708,032 6,705,173 2,859 0 99.96% (6,705,173B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. ->40.30% (2,703,360B) 0x50A99D6: newPool (in /usr/lib64/libantlr3c.so) | ->32.24% (2,162,688B) 0x50A9DEB: newPoolToken (in /usr/lib64/libantlr3c.so) | | ->24.18% (1,622,016B) 0x50AEA2C: emit (in /usr/lib64/libantlr3c.so) | | | ->24.18% (1,622,016B) 0x50AF8A3: nextToken (in /usr/lib64/libantlr3c.so) | | | ->24.18% (1,622,016B) 0x50B368D: fillBuffer (in /usr/lib64/libantlr3c.so) | | | ->24.18% (1,622,016B) 0x50B3B54: tokLT (in /usr/lib64/libantlr3c.so) | | | ->24.18% (1,622,016B) 0x26E3CE: start(libbashParser_Ctx_struct*) (libbashParser.cpp:16772) | | | ->24.18% (1,622,016B) 0x244BD4: bash_ast::parser_start(libbashParser_Ctx_struct*) (bash_ast.cpp:227) | | | ->24.18% (1,622,016B) 0x14583A: std::_Function_handler::_M_invoke(std::_Any_data const&, libbashParser_Ctx_struct*) (functional:1699) | | | ->24.18% (1,622,016B) 0x245988: std::function::operator()(libbashParser_Ctx_struct*) const (functional:2116) | | | ->24.18% (1,622,016B) 0x243FC2: bash_ast::init_parser(std::string const&) (bash_ast.cpp:115) | | | ->24.18% (1,622,016B) 0x24367F: bash_ast::bash_ast(std::istream const&, std::function) (bash_ast.cpp:50) | | | ->24.18% (1,622,016B) 0x13A4F2: print_ast(std::istream&, bool, bool) (ast_printer.cpp:57) | | | ->24.18% (1,622,016B) 0x153A76: _ZNSt5_BindIFPFvRSibbESt12_PlaceholderILi1EEmmEE6__callIvIS0_EILi0ELi1ELi2EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE (functional:1115) | | | ->24.18% (1,622,016B) 0x15155C: void std::_Bind, unsigned long, unsigned long))(std::istream&, bool, bool)>::operator()(std::istream&&&) (functional:1165) | | | ->24.18% (1,622,016B) 0x14DB6F: std::_Function_handler, unsigned long, unsigned long))(std::istream&, bool, bool)> >::_M_invoke(std::_Any_data const&, std::istream&) (functional:1713) | | | ->24.18% (1,622,016B) 0x1438A8: std::function::operator()(std::istream&) const (functional:2116) | | | ->24.18% (1,622,016B) 0x13B59C: print_files(std::vector > const&, bool, std::function) (ast_printer.cpp:157) | | | ->24.18% (1,622,016B) 0x13BFF1: main (ast_printer.cpp:226) | | | | | ->08.06% (540,672B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->08.06% (540,672B) in 1+ places, all below ms_print's threshold (10.00%) | ->33.34% (2,236,416B) 0x50AA5C6: newPool (in /usr/lib64/libantlr3c.so) | ->28.58% (1,916,928B) 0x50AA8B6: newPoolTree (in /usr/lib64/libantlr3c.so) | | ->28.58% (1,916,928B) 0x50A9EFF: newFromToken (in /usr/lib64/libantlr3c.so) | | ->28.58% (1,916,928B) in 6+ places, all below ms_print's threshold (10.00%) | | | ->04.76% (319,488B) in 1+ places, all below ms_print's threshold (10.00%) | ->22.84% (1,531,904B) 0x50A8376: newPool (in /usr/lib64/libantlr3c.so) | ->20.15% (1,351,680B) 0x50A8EFE: newVector (in /usr/lib64/libantlr3c.so) | | ->17.46% (1,171,456B) 0x50A9F5D: createChildrenList (in /usr/lib64/libantlr3c.so) | | | ->17.46% (1,171,456B) 0x50A49AE: addChild (in /usr/lib64/libantlr3c.so) | | | ->17.46% (1,171,456B) in 12+ places, all below ms_print's threshold (10.00%) | | | | | ->02.69% (180,224B) in 1+ places, all below ms_print's threshold (10.00%) | | | ->02.69% (180,224B) in 1+ places, all below ms_print's threshold (10.00%) | ->03.48% (233,493B) in 2+ places, all below ms_print's threshold (10.00%) -------------------------------------------------------------------------------- n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 49 48,782,118 2,081,872 2,079,590 2,282 0