From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24625 invoked by alias); 13 Dec 2002 13:56:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 24603 invoked by uid 71); 13 Dec 2002 13:56:01 -0000 Resent-Date: 13 Dec 2002 13:56:01 -0000 Resent-Message-ID: <20021213135601.24602.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, Harbeck Michael Received: (qmail 17148 invoked from network); 13 Dec 2002 13:50:02 -0000 Received: from unknown (HELO atlantis.erlm.siemens.de) (212.114.202.14) by sources.redhat.com with SMTP; 13 Dec 2002 13:50:02 -0000 Received: from scupi.erlm.siemens.de (scupi.erlm.siemens.de [146.254.160.13]) by atlantis.erlm.siemens.de (8.9.3/8.9.3) with ESMTP id OAA26442 for ; Fri, 13 Dec 2002 14:50:00 +0100 (MET) Received: from erlh910a.med.siemens.de (erlh910a.med.siemens.de [146.254.132.212] (may be forged)) by scupi.erlm.siemens.de (8.11.6/8.11.1) with ESMTP id gBDDnpj11563 for ; Fri, 13 Dec 2002 14:49:51 +0100 Received: by erlh910a.med.siemens.de with Internet Mail Service (5.5.2656.59) id ; Fri, 13 Dec 2002 14:49:50 +0100 Message-Id: <562990EC62A5A648A3089A37113C67C2270654@erlh901a.med.siemens.de> Date: Fri, 13 Dec 2002 05:56:00 -0000 From: Harbeck Michael To: "'gcc-gnats@gcc.gnu.org'" Subject: bootstrap/8926: Bootstrap comparison failure on linux pentiumpro System! X-SW-Source: 2002-12/txt/msg00750.txt.bz2 List-Id: >Number: 8926 >Category: bootstrap >Synopsis: Bootstrap comparison failure on linux pentiumpro System! >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: wrong-code >Submitter-Id: net >Arrival-Date: Fri Dec 13 05:56:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Michael Harbeck >Release: 3.2.1 >Organization: >Environment: System: Linux harbeck2 2.4.19-harbeck2 #1 Fri Oct 11 22:10:55 CEST 2002 i686 unknown Architecture: i686 Library: GNU C Library stable release version 2.3.1 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: CFLAGS="-g -O3 -march=i686" CXXFLAGS="-g -O3 -march=i686" ../gcc-3.2.1/configure --prefix=/usr/local --enable-threads --enable-version-specific-runtime-libs --program-suffix=-3.2.1 --verbose compiled with: make bootstrap BOOT_CFLAGS="-g -O3 -march=i686" >Description: Bootstrap fails with the following message: Bootstrap comparison failure! f/sta.o differs Further details: Compilation fails for a pentium pro linux single processor system. It is not necessary to specify -march=i686; -O3 is sufficient. >How-To-Repeat: (1) Configure as specified (4) make bootstrap as specified above (3) Copy the file f/sta.c to the gcc compilation directory (the directory where stage1 and stage2 can be found) (4) Generate the following directories: tst/stage1 tst/stage2 (5) Run the following compilation steps: stage2/xgcc -Bstage2/ -B/usr/local/i686-pc-linux-gnu/bin/ -S -da -DIN_GCC -g -O3 -march=i686 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -DHAVE_CONFIG_H -I. -If -I../../gcc-3.2.1/gcc -I../../gcc-3.2.1/gcc/f -I../../gcc-3.2.1/gcc/config -I../../gcc-3.2.1/gcc/../include sta.c -o tst/stage2/sta.s mv sta.c.* tst/stage2/ stage1/xgcc -Bstage1/ -B/usr/local/i686-pc-linux-gnu/bin/ -S -da -DIN_GCC -g -O3 -march=i686 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -DHAVE_CONFIG_H -I. -If -I../../gcc-3.2.1/gcc -I../../gcc-3.2.1/gcc/f -I../../gcc-3.2.1/gcc/config -I../../gcc-3.2.1/gcc/../include sta.c -o tst/stage1/sta.s mv sta.c.* tst/stage1/ diff -r -u tst/stage1 tst/stage2 (6) Expected output: diff -r -u tst/stage1/sta.c.15.life tst/stage2/sta.c.15.life --- tst/stage1/sta.c.15.life Wed Dec 11 16:53:43 2002 +++ tst/stage2/sta.c.15.life Wed Dec 11 16:53:12 2002 @@ -773,7 +773,7 @@ Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 Registers live at end: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 -Basic block 48: first insn 1152, last 593, loop_depth 0, count 0, freq 0. +Basic block 48: first insn 1152, last 593, loop_depth 0, count 0, freq 1. Predecessors: 47 [1.0%] (fallthru) Successors: Registers live at start: 7 [sp] 16 [] 20 [frame] @@ -785,7 +785,7 @@ Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 186 Registers live at end: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 -Basic block 50: first insn 615, last 648, loop_depth 5, count 0, freq 100. +Basic block 50: first insn 615, last 648, loop_depth 5, count 0, freq 99. Predecessors: 49 [100.0%] (fallthru) 47 [99.0%] Successors: 53 [100.0%] Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 diff -r -u tst/stage1/sta.c.20.lreg tst/stage2/sta.c.20.lreg --- tst/stage1/sta.c.20.lreg Wed Dec 11 16:53:46 2002 +++ tst/stage2/sta.c.20.lreg Wed Dec 11 16:53:14 2002 @@ -599,7 +599,7 @@ Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 Registers live at end: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 -Basic block 48: first insn 1152, last 593, loop_depth 0, count 0, freq 0. +Basic block 48: first insn 1152, last 593, loop_depth 0, count 0, freq 1. Predecessors: 47 [1.0%] (fallthru) Successors: Registers live at start: 7 [sp] 16 [] 20 [frame] @@ -611,7 +611,7 @@ Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 186 Registers live at end: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 -Basic block 50: first insn 615, last 648, loop_depth 5, count 0, freq 100. +Basic block 50: first insn 615, last 648, loop_depth 5, count 0, freq 99. Predecessors: 49 [100.0%] (fallthru) 47 [99.0%] Successors: 53 [100.0%] Registers live at start: 6 [bp] 7 [sp] 16 [] 20 [frame] 59 diff -r -u tst/stage1/sta.c.23.flow2 tst/stage2/sta.c.23.flow2 --- tst/stage1/sta.c.23.flow2 Wed Dec 11 16:53:49 2002 +++ tst/stage2/sta.c.23.flow2 Wed Dec 11 16:53:17 2002 @@ -339,7 +339,7 @@ Registers live at start: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] Registers live at end: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] -Basic block 47: first insn 1152, last 1318, loop_depth 0, count 0, freq 0. +Basic block 47: first insn 1152, last 1318, loop_depth 0, count 0, freq 1. Predecessors: 46 [1.0%] (fallthru) Successors: 75 [100.0%] Registers live at start: 7 [sp] @@ -351,7 +351,7 @@ Registers live at start: 1 [dx] 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] Registers live at end: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] -Basic block 49: first insn 615, last 648, loop_depth 5, count 0, freq 100. +Basic block 49: first insn 615, last 648, loop_depth 5, count 0, freq 99. Predecessors: 48 [100.0%] (fallthru) 46 [99.0%] Successors: 51 [100.0%] Registers live at start: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] @@ -507,13 +507,13 @@ Registers live at start: 7 [sp] Registers live at end: 7 [sp] -Basic block 75: first insn 1317, last 1050, loop_depth 0, count 0, freq 0. +Basic block 75: first insn 1317, last 1050, loop_depth 0, count 0, freq 1. Predecessors: 47 [100.0%] 74 [100.0%] (fallthru) Successors: 76 [100.0%] (fallthru) Registers live at start: 7 [sp] Registers live at end: 7 [sp] -Basic block 76: first insn 1309, last 1051, loop_depth 0, count 0, freq 1. +Basic block 76: first insn 1309, last 1051, loop_depth 0, count 0, freq 2. Predecessors: 4 [100.0%] 17 [100.0%] 27 [100.0%] 29 [100.0%] 71 [100.0%] 75 [100.0%] (fallthru) Successors: Registers live at start: 7 [sp] diff -r -u tst/stage1/sta.c.29.bbro tst/stage2/sta.c.29.bbro --- tst/stage1/sta.c.29.bbro Wed Dec 11 16:53:51 2002 +++ tst/stage2/sta.c.29.bbro Wed Dec 11 16:53:19 2002 @@ -327,7 +327,7 @@ Registers live at start: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] Registers live at end: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] -Basic block 47: first insn 1152, last 1318, loop_depth 0, count 0, freq 0. +Basic block 47: first insn 1152, last 1318, loop_depth 0, count 0, freq 1. Predecessors: 46 [1.0%] (fallthru) Successors: 75 [100.0%] Registers live at start: 7 [sp] @@ -339,7 +339,7 @@ Registers live at start: 1 [dx] 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] Registers live at end: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] -Basic block 49: first insn 615, last 648, loop_depth 5, count 0, freq 100. +Basic block 49: first insn 615, last 648, loop_depth 5, count 0, freq 99. Predecessors: 48 [100.0%] (fallthru) 46 [99.0%] Successors: 51 [100.0%] Registers live at start: 5 [di] 6 [bp] 7 [sp] 16 [] 20 [frame] @@ -495,13 +495,13 @@ Registers live at start: 7 [sp] Registers live at end: 7 [sp] -Basic block 75: first insn 1317, last 1050, loop_depth 0, count 0, freq 0. +Basic block 75: first insn 1317, last 1050, loop_depth 0, count 0, freq 1. Predecessors: 47 [100.0%] 74 [100.0%] (fallthru) Successors: 76 [100.0%] (fallthru) Registers live at start: 7 [sp] Registers live at end: 7 [sp] -Basic block 76: first insn 1309, last 1051, loop_depth 0, count 0, freq 1. +Basic block 76: first insn 1309, last 1051, loop_depth 0, count 0, freq 2. Predecessors: 4 [100.0%] 17 [100.0%] 27 [100.0%] 29 [100.0%] 71 [100.0%] 75 [100.0%] (fallthru) Successors: Registers live at start: 7 [sp] @@ -561,7 +561,7 @@ 32 bb 42 freq 50 33 bb 43 freq 41 34 bb 48 freq 50 - 35 bb 51 freq 100 + 35 bb 51 freq 99 36 bb 53 freq 187 37 bb 54 freq 1414 38 bb 55 freq 1203 @@ -580,8 +580,8 @@ 51 bb 74 freq 0 52 bb 76 freq 2 53 bb 77 freq 0 - 54 compensation bb 78 freq 0 - 55 compensation bb 79 freq 1 + 54 compensation bb 78 freq 1 + 55 compensation bb 79 freq 2 56 bb 65 freq 32 57 bb 66 freq 4 58 bb 67 freq 0 @@ -589,7 +589,7 @@ 60 bb 56 freq 349 61 bb 57 freq 211 62 bb 58 freq 105 - 63 bb 49 freq 0 + 63 bb 49 freq 1 64 bb 44 freq 10 65 bb 45 freq 5 66 bb 46 freq 4 diff -r -u tst/stage1/sta.s tst/stage2/sta.s --- tst/stage1/sta.s Wed Dec 11 16:53:52 2002 +++ tst/stage2/sta.s Wed Dec 11 16:53:19 2002 @@ -554,7 +554,6 @@ movl $.LC1, 12(%esp) movl $410, 8(%esp) jmp .L93 - .p2align 4,,7 .L44: .loc 1 403 0 cmpb $0, ffesta_seen_first_exec >Fix: Do not compile gcc with -O3 but -O2? May be this is neither a workaround nor a fix, because you cannot be sure, that there is no file where the error may occur. >Release-Note: >Audit-Trail: >Unformatted: X-send-pr-version: 3.113 X-GNATS-Notify: SEND-PR: Leave "Confidential" as "no"; all GCC PRs are public. SEND-PR: critical GCC is completely not operational; no work-around known. SEND-PR: serious GCC is not working properly; a work-around is possible. SEND-PR: non-critical Report indicates minor problem. SEND-PR: medium The problem should be solved in the next release. SEND-PR: low The problem should be solve in a future release. SEND-PR: doc-bug The documentation is incorrect. SEND-PR: accepts-illegal GCC fails to reject erroneous code. SEND-PR: rejects-legal GCC gives an error message for correct code. SEND-PR: wrong-code The machine code generated by gcc is incorrect. SEND-PR: ice-on-legal-code GCC gives an Internal Compiler Error (ICE) SEND-PR: for correct code SEND-PR: ice-on-illegal-code GCC gives an ICE instead of reporting an error SEND-PR: pessimizes-code GCC misses an important optimization opportunity SEND-PR: sw-bug Software bug of some other class than above SEND-PR: change-request A feature in GCC is missing. SEND-PR: support I need help with gcc.