This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/26570] New: -fprofile-generate -fprofile-use cause memory corruption immediately


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 <URL:http://gcc.gnu.org/bugs.html> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]