http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53904
Bug #: 53904 Summary: trunk has valgrind errors for c-c++-common/torture/complex-sign-mul.c on x86-64. Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: zad...@naturalbridge.com built the trunk on x86-64 under ubuntu. i know that this bug is at least as old as r 188999 because that is when i first saw it, but it is still there as of r 189386 from today. Bug shows up at all -O levels. shows up on my private port also, but i guess that is not really any use to anyone else. But it causes an ice there so that is how i found it. valgrind ../.././cc1 -quiet -v -iprefix /home/zadeck/gcc/gbBaseline/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.8.0/ -isystem ../.././include -isystem ../.././include-fixed -D NO_TRAMPOLINES -D NO_TRAMPOLINES /home/zadeck/gcc/c2wide/gcc/gcc/testsuite/c-c++-common/torture/complex-sign-mul.c -quiet -dumpbase complex-sign-mul.c -mtune=generic -march=x86-64 -auxbase complex-sign-mul -g -O3 -std=gnu99 -version -fno-diagnostics-show-caret -o /tmp/ccd2Ykcd.s ==13911== Memcheck, a memory error detector ==13911== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al. ==13911== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info ==13911== Command: ../.././cc1 -quiet -v -iprefix /home/zadeck/gcc/gbBaseline/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.8.0/ -isystem ../.././include -isystem ../.././include-fixed -D NO_TRAMPOLINES -D NO_TRAMPOLINES /home/zadeck/gcc/c2wide/gcc/gcc/testsuite/c-c++-common/torture/complex-sign-mul.c -quiet -dumpbase complex-sign-mul.c -mtune=generic -march=x86-64 -auxbase complex-sign-mul -g -O3 -std=gnu99 -version -fno-diagnostics-show-caret -o /tmp/ccd2Ykcd.s ==13911== GNU C (GCC) version 4.8.0 20120709 (experimental) [trunk revision 157801] (x86_64-unknown-linux-gnu) compiled by GNU C version 4.6.3, GMP version 5.0.2, MPFR version 3.1.0-p3, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 ignoring nonexistent directory "/home/zadeck/gcc/gbBaseline/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include" ignoring nonexistent directory "/home/zadeck/gcc/gbBaseline/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include-fixed" ignoring nonexistent directory "/home/zadeck/gcc/gbBaseline/gcc/../lib/gcc/x86_64-unknown-linux-gnu/4.8.0/../../../../x86_64-unknown-linux-gnu/include" ignoring nonexistent directory "/usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include" ignoring nonexistent directory "/usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/include-fixed" ignoring nonexistent directory "/usr/local/lib/../x86_64-unknown-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: ../.././include ../.././include-fixed /usr/local/include /usr/include End of search list. GNU C (GCC) version 4.8.0 20120709 (experimental) [trunk revision 157801] (x86_64-unknown-linux-gnu) compiled by GNU C version 4.6.3, GMP version 5.0.2, MPFR version 3.1.0-p3, MPC version 0.9 GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 91429a3f3152806ffebd3a415263526d ==13911== Invalid read of size 8 ==13911== at 0xD688C9: search_line_sse2 (lex.c:393) ==13911== by 0xD68AA1: _cpp_clean_line (lex.c:742) ==13911== by 0xD694C7: _cpp_get_fresh_line (lex.c:2035) ==13911== by 0xD6AD60: _cpp_lex_direct (lex.c:2100) ==13911== by 0xD6BB46: _cpp_lex_token (lex.c:1974) ==13911== by 0xD6FF7F: cpp_get_token_1 (macro.c:2357) ==13911== by 0x541EEF: c_lex_with_flags (c-lex.c:299) ==13911== by 0x4F27C3: c_lex_one_token (c-parser.c:218) ==13911== by 0x4F2B02: c_parser_peek_token (c-parser.c:400) ==13911== by 0x501E56: c_parser_compound_statement_nostart (c-parser.c:412) ==13911== by 0x503898: c_parser_compound_statement (c-parser.c:4072) ==13911== by 0x4FFA8B: c_parser_declaration_or_fndef (c-parser.c:1757) ==13911== Address 0x5b85b40 is 1,712 bytes inside a block of size 1,716 alloc'd ==13911== at 0x4C2B7B2: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==13911== by 0xD9691C: xrealloc (xmalloc.c:179) ==13911== by 0xD5D0CB: _cpp_convert_input (charset.c:1734) ==13911== by 0xD65F72: read_file (files.c:681) ==13911== by 0xD66A1A: _cpp_stack_file (files.c:756) ==13911== by 0xD68335: cpp_read_main_file (init.c:600) ==13911== by 0x5482B1: c_common_post_options (c-opts.c:1063) ==13911== by 0x89F218: toplev_main (toplev.c:1216) ==13911== by 0x573576C: (below main) (libc-start.c:226) ==13911== ==13911== Invalid read of size 8 ==13911== at 0xD688B3: search_line_sse2 (lex.c:381) ==13911== by 0xD68AA1: _cpp_clean_line (lex.c:742) ==13911== by 0xD694C7: _cpp_get_fresh_line (lex.c:2035) ==13911== by 0xD6AD60: _cpp_lex_direct (lex.c:2100) ==13911== by 0xD6BB46: _cpp_lex_token (lex.c:1974) ==13911== by 0xD6FF7F: cpp_get_token_1 (macro.c:2357) ==13911== by 0x541EEF: c_lex_with_flags (c-lex.c:299) ==13911== by 0x4F27C3: c_lex_one_token (c-parser.c:218) ==13911== by 0x4F2B02: c_parser_peek_token (c-parser.c:400) ==13911== by 0x501E56: c_parser_compound_statement_nostart (c-parser.c:412) ==13911== by 0x503898: c_parser_compound_statement (c-parser.c:4072) ==13911== by 0x4FFA8B: c_parser_declaration_or_fndef (c-parser.c:1757) ==13911== Address 0x5b85b40 is 1,712 bytes inside a block of size 1,716 alloc'd ==13911== at 0x4C2B7B2: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==13911== by 0xD9691C: xrealloc (xmalloc.c:179) ==13911== by 0xD5D0CB: _cpp_convert_input (charset.c:1734) ==13911== by 0xD65F72: read_file (files.c:681) ==13911== by 0xD66A1A: _cpp_stack_file (files.c:756) ==13911== by 0xD68335: cpp_read_main_file (init.c:600) ==13911== by 0x5482B1: c_common_post_options (c-opts.c:1063) ==13911== by 0x89F218: toplev_main (toplev.c:1216) ==13911== by 0x573576C: (below main) (libc-start.c:226) ==13911== ==13911== ==13911== HEAP SUMMARY: ==13911== in use at exit: 752,269 bytes in 3,592 blocks ==13911== total heap usage: 303,298 allocs, 299,706 frees, 195,292,752 bytes allocated ==13911== ==13911== LEAK SUMMARY: ==13911== definitely lost: 35 bytes in 2 blocks ==13911== indirectly lost: 0 bytes in 0 blocks ==13911== possibly lost: 30,776 bytes in 3 blocks ==13911== still reachable: 721,458 bytes in 3,587 blocks ==13911== suppressed: 0 bytes in 0 blocks ==13911== Rerun with --leak-check=full to see details of leaked memory ==13911== ==13911== For counts of detected and suppressed errors, rerun with: -v ==13911== ERROR SUMMARY: 4 errors from 2 contexts (suppressed: 2 from 2) moria:~/gcc/gbBaseline/gcc/testsuite/gcc(30)