From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7259 invoked by alias); 5 Mar 2006 23:26:01 -0000 Received: (qmail 7243 invoked by uid 48); 5 Mar 2006 23:25:58 -0000 Date: Sun, 05 Mar 2006 23:26:00 -0000 Subject: [Bug tree-optimization/26570] New: -fprofile-generate -fprofile-use cause memory corruption immediately X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "ahu at ds9a dot nl" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2006-03/txt/msg00552.txt.bz2 List-Id: This is reported: recursor_cache.hh:58: warning: comparison between signed and unsigned integer expressions syncres.cc: In function â(static destructors for syncres.cc)â: syncres.cc:649: note: file syncres.gcda not found, execution counts estimated *** glibc detected *** corrupted double-linked list: 0xa7fba938 *** When compiling only with -fprofile-generate, no errors get emitted. When adding -fprofile-use later on when the program has been run once, the following happens: if g++ -DHAVE_CONFIG_H -I. -I. -I.. -Ibackends/bind -pthread -DSYSCONFDIR=\"/usr/local/etc\" -DLIBDIR=\"/usr/local/lib\" -DLOCALSTATEDIR=\"/var/run\" -Ibackends/bind -D_GNU_SOURCE -Wall -O2 -fprofile-generate -fprofile-use -MT syncres.o -MD -MP -MF ".deps/syncres.Tpo" -c -o syncres.o syncres.cc; \ then mv -f ".deps/syncres.Tpo" ".deps/syncres.Po"; else rm -f ".deps/syncres.Tpo"; exit 1; fi recursor_cache.hh: In member function âbool MemRecursorCache::predicate::operator()(const MemRecursorCache::StoredRecord&) constâ: recursor_cache.hh:58: warning: comparison between signed and unsigned integer expressions *** glibc detected *** corrupted double-linked list: 0xa7f55938 *** syncres.cc: In function â_EuclideanRingElement std::__gcd(_EuclideanRingElement, _EuclideanRingElement) [with _EuclideanRingElement = int]â: syncres.cc:649: internal compiler error: Aborted Please submit a full bug report, with preprocessed source if appropriate. See for instructions. make: *** [syncres.o] Error 1 To repeat, check out the latest revision of PowerDNS as described on http://wiki.powerdns.com, run ./configure, cd pdns, edit CXXFLAGS in Makefile so it includes -fprofile-generate and/or -fprofile-use, then run 'make pdns_recursor'. Error should appear immediately. Confirmed on Ubuntu Breezy, FreeBSD 6.0, Debian Sid crosscompiling to x86_64. -- Summary: -fprofile-generate -fprofile-use cause memory corruption immediately Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ahu at ds9a dot nl GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26570