[Bug middle-end/56461] [4.8 Regression] GCC is leaking lots of memory
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Feb 27 17:26:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56461
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-02-27 17:25:10 UTC ---
Some more patches have been posted to gcc-patches and I'm going to post even
more.
There are two issues I don't have a solution for if anybody is interested.
Testcase:
cd gcc/testsuite/gcc.dg/vect
valgrind --leak-check=full /usr/src/gcc/obj/gcc/cc1 -O3 -mavx -ftree-vectorize
\ -isystem /usr/src/gcc/obj/gcc/include/ -quiet -o slp-reduc-6.c
==4841== 368 bytes in 2 blocks are definitely lost in loss record 533 of 626
==4841== at 0x4A06B0F: calloc (vg_replace_malloc.c:593)
==4841== by 0x111D788: xcalloc (xmalloc.c:162)
==4841== by 0xC4742D: new_stmt_vec_info(gimple_statement_d*,
_loop_vec_info*, _bb_vec_info*) (tree-vect-stmts.c:5930)
==4841== by 0xC5452B: vect_create_epilog_for_reduction(vec<tree_node*,
va_heap, vl_ptr>, gimple_statement_d*, int, tree_code, vec<gimple_statement_d*,
va_heap, vl_ptr>, int, bool, _slp_tree*) (tree-vect-loop.c:3867)
==4841== by 0xC57FDB: vectorizable_reduction(gimple_statement_d*,
gimple_stmt_iterator*, gimple_statement_d**, _slp_tree*)
(tree-vect-loop.c:5209)
==4841== by 0xC470D1: vect_transform_stmt(gimple_statement_d*,
gimple_stmt_iterator*, bool*, _slp_tree*, _slp_instance*)
(tree-vect-stmts.c:5823)
==4841== by 0xC594F1: vect_transform_loop(_loop_vec_info*)
(tree-vect-loop.c:5736)
==4841== by 0xC6B249: vectorize_loops() (tree-vectorizer.c:123)
==4841== by 0xB91101: tree_vectorize() (tree-ssa-loop.c:222)
==4841== by 0x963835: execute_one_pass(opt_pass*) (passes.c:2330)
==4841== by 0x963A29: execute_pass_list(opt_pass*) (passes.c:2378)
==4841== by 0x963A5A: execute_pass_list(opt_pass*) (passes.c:2379)
==4841==
==4841== 13,678 bytes in 1 blocks are definitely lost in loss record 619 of 626
==4841== at 0x4A0881C: malloc (vg_replace_malloc.c:270)
==4841== by 0x111D747: xmalloc (xmalloc.c:147)
==4841== by 0x10E6CD4: read_file(cpp_reader*, _cpp_file*) (files.c:693)
==4841== by 0x10E787A: _cpp_stack_file (files.c:794)
==4841== by 0x10DF510: do_include_common(cpp_reader*, include_type)
(directives.c:793)
==4841== by 0x10E0320: _cpp_handle_directive (directives.c:492)
==4841== by 0x10ECC6C: _cpp_lex_token (lex.c:1990)
==4841== by 0x10F1967: cpp_get_token_1(cpp_reader*, unsigned int*)
(macro.c:2355)
==4841== by 0x5CE3AA: c_lex_with_flags(tree_node**, unsigned int*, unsigned
char*, int) (c-lex.c:300)
==4841== by 0x568908: c_lex_one_token(c_parser*, c_token*) (c-parser.c:218)
==4841== by 0x568D07: c_parser_peek_token(c_parser*) (c-parser.c:398)
==4841== by 0x568D32: c_parser_next_token_is(c_parser*, cpp_ttype)
(c-parser.c:410)
More information about the Gcc-bugs
mailing list