From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32324 invoked by alias); 23 Apr 2010 15:56:09 -0000 Received: (qmail 30399 invoked by uid 48); 23 Apr 2010 15:55:25 -0000 Date: Fri, 23 Apr 2010 15:56:00 -0000 Subject: [Bug regression/43867] New: ICE on valid with PGO and -fwhole-program options on small example (istringstream) with gcc 4.5.0 only X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "martin dot audet at imi dot cnrc-nrc dot gc dot ca" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-04/txt/msg02502.txt.bz2 The following little program: #include int main(int argc, char *argv[]) { int nn; return (argc != 2) || !(std::istringstream(argv[1]) >> nn); } when compiled with gcc 4.5.0 with both -fwhole-program and -fprofile-use options generate an ICE. Note that this doesn't happen with gcc 4.4.3 or if I don't use -fwhole-program option. There is no problem when compiling and running the above little program with gcc 4.5.0 with -fwhole-program and -fprogram-generate options. The ICE happens when trying to use the feedback information. For example, the command (the small program is in a file named mv.cpp): rm -f mv.gcda && g++ -Wall -fwhole-program -fprofile-generate mv.cpp && ./a.out 1000 && g++ -Wall -fwhole-program -fprofile-use mv.cpp Produce the following output during the second compilation (profile-use): mv.cpp:8:1: internal compiler error: in ipcp_iterate_stage, at ipa-cp.c:760 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Now here are some information about my gcc and my system: [audet@mc1 experiences]$ gcc --version gcc (GCC) 4.5.0 Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Note my gcc version is identical to the official except it include the following patch (r158484) to fix the problem 43771 I submited last week: --- trunk/gcc/tree-vect-slp.c 2010/04/18 10:52:26 158483 +++ trunk/gcc/tree-vect-slp.c 2010/04/18 12:20:34 158484 @@ -844,7 +844,11 @@ SET_BIT (load_index, prev); } - + + for (j = 0; j < group_size; j++) + if (!TEST_BIT (load_index, j)) + return false; + sbitmap_free (load_index); if (supported && i == group_size * group_size [audet@mc1 experiences]$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/home/publique/gcc45/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/lto-wrapper Target: x86_64-unknown-linux-gnu Configured with: ../gcc-4.5.0/configure --prefix=/usr/local/gcc45 --enable-shared --enable-threads=posix --with-system-zlib --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1 --with-ppl=/usr/local/ppl-0.10.2 --with-cloog=/usr/local/cloog-ppl-0.15.9 --with-libelf=/usr/local/libelf-0.8.12 --enable-__cxa_atexit --enable-languages=c,c++,fortran Thread model: posix gcc version 4.5.0 (GCC) [audet@mc1 experiences]$ uname -a Linux mc1 2.6.22.9-91.fc7 #1 SMP Thu Jun 18 16:01:22 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux [audet@mc1 experiences]$ As you can see my system uses Fedora Linux 7 distribution. gcc was compiled and tested (make -k check) on this machine. Only a small fraction of the tests failled. Regards, Martin Audet -- Summary: ICE on valid with PGO and -fwhole-program options on small example (istringstream) with gcc 4.5.0 only Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: regression AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: martin dot audet at imi dot cnrc-nrc dot gc dot ca http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43867