public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option
@ 2011-10-12 22:29 nenad at intrepid dot com
  2011-10-13  9:29 ` [Bug bootstrap/50709] " rguenth at gcc dot gnu.org
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: nenad at intrepid dot com @ 2011-10-12 22:29 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

             Bug #: 50709
           Summary: stage3 bootstrap comparison fail on x86_64 with
                    --disable-checking config option
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: nenad@intrepid.com
            Target: x86_64


I was not able to build the latest GCC with --disable-checking specified. The
following errors from stage3 comparison phase are reported:

Bootstrap comparison failure!
gcc/tree-ssa-reassoc.o differs
gcc/ipa-inline-analysis.o differs
gcc/sel-sched.o differs
gcc/tree-ssa-ccp.o differs
gcc/ipa-cp.o differs
gcc/objc/objc-next-runtime-abi-02.o differs
gcc/tree-stdarg.o differs
gcc/fortran/dump-parse-tree.o differs
gcc/tree-inline.o differs
gcc/cfgexpand.o differs
gcc/tree-data-ref.o differs
gcc/ggc-page.o differs
gcc/build/genautomata.o differs
gcc/ipa-pure-const.o differs
gcc/dwarf2out.o differs
gcc/tree-vrp.o differs
gcc/java/expr.o differs
gcc/tree-ssa-ter.o differs
gcc/sched-rgn.o differs
gcc/haifa-sched.o differs
gcc/tree-ssa-sccvn.o differs
gcc/tree-loop-distribution.o differs
gcc/tree-ssa-math-opts.o differs
gcc/tree-ssa-structalias.o differs
libiberty/pic/cp-demangle.o differs
libiberty/cp-demangle.o differs
make[2]: *** [compare] Error 1

After checking on one of the files (ggc-page.c) I see the following differences
in the object file:

stage2:

_ZL10alloc_anonPcm.part.0:
.LFB1675:
    .cfi_startproc
    pushq    %rax
    .cfi_def_cfa_offset 16
    movl    $.LC0, %edi
    call    perror
    movl    $1, %edi
    call    exit
    .cfi_endproc
[...]
     call    _ZL10alloc_anonPcm.part.0

stage3:
[...] no procedure declared, and the this code is placed instead
      of the call statment in stage2

    .loc 1 670 0
    movl    $.LC3, %edi
    call    perror
.LVL149:
    .loc 1 671 0
    movl    $1, %edi
    call    exit

By looking at the source code I think that the above comes form this source
code.

656 static inline char *
 657 alloc_anon (char *pref ATTRIBUTE_UNUSED, size_t size)
 658 {
[...]
 668   if (page == (char *) MAP_FAILED)
 669     {
 670       perror ("virtual memory exhausted");
 671       exit (FATAL_EXIT_CODE);
 672     }
[...]
 682   return page;
 683 }


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] stage3 bootstrap comparison fail on x86_64 with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
@ 2011-10-13  9:29 ` rguenth at gcc dot gnu.org
  2011-10-13 15:14 ` [Bug bootstrap/50709] stage3 bootstrap comparison failure " belyshev at depni dot sinp.msu.ru
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-10-13  9:29 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu.org

--- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-10-13 09:28:58 UTC ---
So you are seeing an inline difference.  Maybe check compile of ggc-page.c
with the stage1/stage2 compilers with valgrind if there is some uninitialized
memory use.

Honza, anything obvious that could go wrong?  Side-effects in asserts?


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
  2011-10-13  9:29 ` [Bug bootstrap/50709] " rguenth at gcc dot gnu.org
@ 2011-10-13 15:14 ` belyshev at depni dot sinp.msu.ru
  2011-10-17 11:23 ` rguenth at gcc dot gnu.org
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: belyshev at depni dot sinp.msu.ru @ 2011-10-13 15:14 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

Serge Belyshev <belyshev at depni dot sinp.msu.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
             Target|x86_64                      |
                 CC|                            |belyshev at depni dot
                   |                            |sinp.msu.ru
             Blocks|                            |49740, 49246
            Summary|stage3 bootstrap comparison |stage3 bootstrap comparison
                   |fail on x86_64 with         |failure with
                   |--disable-checking config   |--disable-checking config
                   |option                      |option

--- Comment #2 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> 2011-10-13 15:14:22 UTC ---
Git bisect pointed at r173532 by Honza:

 2011-05-06  Jan Hubicka  <jh@suse.cz>

    * ipa-inline.c (update_callee_keys): Don't reset node growth cache.


--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -957,9 +957,9 @@ update_callee_keys (fibheap_t heap, struct cgraph_node
*node,
       e = e->callee->callees;
     else
       {
-    /* We inlined and thus callees might have different number of calls.
-       Reset their caches  */
-        reset_node_growth_cache (e->callee);
+    /* We do not reset callee growth cache here.  Since we added a new call,
+       growth chould have just increased and consequentely badness metric
+           don't need updating.  */
     if (e->inline_failed
         && inline_summary (e->callee)->inlinable
         && cgraph_function_body_availability (e->callee) >= AVAIL_AVAILABLE


Reverting this patch helps.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
  2011-10-13  9:29 ` [Bug bootstrap/50709] " rguenth at gcc dot gnu.org
  2011-10-13 15:14 ` [Bug bootstrap/50709] stage3 bootstrap comparison failure " belyshev at depni dot sinp.msu.ru
@ 2011-10-17 11:23 ` rguenth at gcc dot gnu.org
  2011-10-17 18:14 ` [Bug bootstrap/50709] [4.7 Regression] " pinskia at gcc dot gnu.org
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-10-17 11:23 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011-10-17
     Ever Confirmed|0                           |1

--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-10-17 11:21:55 UTC ---
      /* Be sure that caches are maintained consistent.  */
#ifdef ENABLE_CHECKING
      reset_edge_growth_cache (edge);
      reset_node_growth_cache (edge->callee);
#endif

in inline_small_functions - that for sure looks bogus (the conditional
on ENABLE_CHECKING).  If, then it should be an assert the caches are
empty.

Does making the above unconditional fix the issue?


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (2 preceding siblings ...)
  2011-10-17 11:23 ` rguenth at gcc dot gnu.org
@ 2011-10-17 18:14 ` pinskia at gcc dot gnu.org
  2011-10-17 18:37 ` nenad at intrepid dot com
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu.org @ 2011-10-17 18:14 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.7.0
            Summary|stage3 bootstrap comparison |[4.7 Regression] stage3
                   |failure with                |bootstrap comparison
                   |--disable-checking config   |failure with
                   |option                      |--disable-checking config
                   |                            |option


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (3 preceding siblings ...)
  2011-10-17 18:14 ` [Bug bootstrap/50709] [4.7 Regression] " pinskia at gcc dot gnu.org
@ 2011-10-17 18:37 ` nenad at intrepid dot com
  2011-10-20 11:46 ` hubicka at gcc dot gnu.org
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: nenad at intrepid dot com @ 2011-10-17 18:37 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

--- Comment #4 from Nenad Vukicevic <nenad at intrepid dot com> 2011-10-17 18:36:40 UTC ---
Richard's suggestion worked. I was able to build trunk R180072 with this
command:

.../configure --disable-checking --enable-languages=all


and this change:

Index: gcc/ipa-inline.c
===================================================================
--- gcc/ipa-inline.c    (revision 180072)
+++ gcc/ipa-inline.c    (working copy)
@@ -1393,10 +1393,8 @@
        continue;

       /* Be sure that caches are maintained consistent.  */
-#ifdef ENABLE_CHECKING
       reset_edge_growth_cache (edge);
       reset_node_growth_cache (edge->callee);
-#endif


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (4 preceding siblings ...)
  2011-10-17 18:37 ` nenad at intrepid dot com
@ 2011-10-20 11:46 ` hubicka at gcc dot gnu.org
  2011-10-21  2:23 ` gfunck at gcc dot gnu.org
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: hubicka at gcc dot gnu.org @ 2011-10-20 11:46 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

--- Comment #5 from Jan Hubicka <hubicka at gcc dot gnu.org> 2011-10-20 11:46:11 UTC ---
Author: hubicka
Date: Thu Oct 20 11:46:08 2011
New Revision: 180247

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=180247
Log:

    PR bootstrap/50709
    * ipa-inline.c (inline_small_functions): Fix checking code to not make
    effect on fibheap stability.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ipa-inline.c


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (5 preceding siblings ...)
  2011-10-20 11:46 ` hubicka at gcc dot gnu.org
@ 2011-10-21  2:23 ` gfunck at gcc dot gnu.org
  2011-10-21  2:45 ` belyshev at depni dot sinp.msu.ru
  2011-11-24 15:24 ` dnovillo at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: gfunck at gcc dot gnu.org @ 2011-10-21  2:23 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

--- Comment #6 from gfunck at gcc dot gnu.org 2011-10-21 02:23:30 UTC ---
Author: gfunck
Date: Fri Oct 21 02:23:26 2011
New Revision: 180285

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=180285
Log:
        Merge trunk version 180276 into gupc branch.
        Incorporate fix for PR bootstrap/50709.

Added:
    branches/gupc/gcc/testsuite/g++.dg/eh/partial1.C
      - copied unchanged from r180276, trunk/gcc/testsuite/g++.dg/eh/partial1.C
    branches/gupc/gcc/testsuite/gcc.target/i386/pr50766.c
      - copied unchanged from r180276,
trunk/gcc/testsuite/gcc.target/i386/pr50766.c
    branches/gupc/gcc/testsuite/gfortran.dg/format_string.f
      - copied unchanged from r180276,
trunk/gcc/testsuite/gfortran.dg/format_string.f
    branches/gupc/gcc/testsuite/gfortran.dg/substring_integer_index.f90
      - copied unchanged from r180276,
trunk/gcc/testsuite/gfortran.dg/substring_integer_index.f90
Modified:
    branches/gupc/   (props changed)
    branches/gupc/gcc/ChangeLog
    branches/gupc/gcc/ChangeLog.upc
    branches/gupc/gcc/config/i386/i386.c
    branches/gupc/gcc/config/i386/i386.h
    branches/gupc/gcc/config/i386/i386.md
    branches/gupc/gcc/config/i386/i386.opt
    branches/gupc/gcc/config/rs6000/rs6000.c
    branches/gupc/gcc/config/spu/spu.c
    branches/gupc/gcc/cp/ChangeLog
    branches/gupc/gcc/cp/typeck2.c
    branches/gupc/gcc/doc/cppopts.texi
    branches/gupc/gcc/doc/invoke.texi
    branches/gupc/gcc/doc/tm.texi
    branches/gupc/gcc/doc/tm.texi.in
    branches/gupc/gcc/fortran/ChangeLog
    branches/gupc/gcc/fortran/check.c
    branches/gupc/gcc/fortran/io.c
    branches/gupc/gcc/fortran/resolve.c
    branches/gupc/gcc/ggc-zone.c
    branches/gupc/gcc/ipa-inline.c
    branches/gupc/gcc/lto/ChangeLog
    branches/gupc/gcc/lto/lto.c
    branches/gupc/gcc/optabs.c
    branches/gupc/gcc/target.def
    branches/gupc/gcc/testsuite/ChangeLog
    branches/gupc/gcc/testsuite/gcc.dg/ipa/ipa-sra-2.c
    branches/gupc/gcc/testsuite/gcc.dg/ipa/ipa-sra-6.c
    branches/gupc/gcc/testsuite/gcc.dg/lto/pr46940_0.c
    branches/gupc/gcc/testsuite/gcc.dg/tree-prof/val-prof-7.c
    branches/gupc/gcc/testsuite/gcc.target/i386/pr40906-1.c
    branches/gupc/gcc/testsuite/gcc.target/i386/pr40906-2.c
    branches/gupc/gcc/testsuite/gcc.target/i386/pr46226.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v2df.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v2di.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v4sf-1.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v4sf-2.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v4si-1.c
    branches/gupc/gcc/testsuite/gcc.target/i386/vperm-v4si-2.c
    branches/gupc/gcc/testsuite/gfortran.dg/ishft_3.f90
    branches/gupc/gcc/testsuite/lib/lto.exp
    branches/gupc/libjava/ChangeLog
    branches/gupc/libjava/exception.cc
    branches/gupc/libobjc/ChangeLog
    branches/gupc/libobjc/exception.c

Propchange: branches/gupc/
            ('svn:mergeinfo' modified)


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (6 preceding siblings ...)
  2011-10-21  2:23 ` gfunck at gcc dot gnu.org
@ 2011-10-21  2:45 ` belyshev at depni dot sinp.msu.ru
  2011-11-24 15:24 ` dnovillo at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: belyshev at depni dot sinp.msu.ru @ 2011-10-21  2:45 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

Serge Belyshev <belyshev at depni dot sinp.msu.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #7 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> 2011-10-21 02:44:00 UTC ---
Fixed.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug bootstrap/50709] [4.7 Regression] stage3 bootstrap comparison failure with --disable-checking config option
  2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
                   ` (7 preceding siblings ...)
  2011-10-21  2:45 ` belyshev at depni dot sinp.msu.ru
@ 2011-11-24 15:24 ` dnovillo at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: dnovillo at gcc dot gnu.org @ 2011-11-24 15:24 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50709

--- Comment #8 from Diego Novillo <dnovillo at gcc dot gnu.org> 2011-11-24 14:51:02 UTC ---
Author: dnovillo
Date: Thu Nov 24 14:50:56 2011
New Revision: 181692

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181692
Log:
    Revert

    PR bootstrap/50709
    * ipa-inline.c (inline_small_functions):
    Fix checking code to not make effect on fibheap stability.

Modified:
    branches/pph/gcc/ChangeLog
    branches/pph/gcc/ChangeLog.pph
    branches/pph/gcc/ipa-inline.c


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2011-11-24 14:51 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-12 22:29 [Bug bootstrap/50709] New: stage3 bootstrap comparison fail on x86_64 with --disable-checking config option nenad at intrepid dot com
2011-10-13  9:29 ` [Bug bootstrap/50709] " rguenth at gcc dot gnu.org
2011-10-13 15:14 ` [Bug bootstrap/50709] stage3 bootstrap comparison failure " belyshev at depni dot sinp.msu.ru
2011-10-17 11:23 ` rguenth at gcc dot gnu.org
2011-10-17 18:14 ` [Bug bootstrap/50709] [4.7 Regression] " pinskia at gcc dot gnu.org
2011-10-17 18:37 ` nenad at intrepid dot com
2011-10-20 11:46 ` hubicka at gcc dot gnu.org
2011-10-21  2:23 ` gfunck at gcc dot gnu.org
2011-10-21  2:45 ` belyshev at depni dot sinp.msu.ru
2011-11-24 15:24 ` dnovillo at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).