This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c/3092: gcc fails to compile crtstuff.c for linux-m68k
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c/3092: gcc fails to compile crtstuff.c for linux-m68k
- From: Roman Zippel <zippel at linux-m68k dot org>
- Date: Sat, 09 Jun 2001 00:26:06 +0200
>Number: 3092
>Category: c
>Synopsis: gcc fails to compile crtstuff.c for linux-m68k
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Fri Jun 08 15:36:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: Roman Zippel
>Release: 3.0 20010606 (prerelease)
>Organization:
>Environment:
System: Linux sodom 2.2.10 #4 Sun Aug 1 14:25:38 CEST 1999 m68k unknown
Architecture: m68k
host: m68k-unknown-linux-gnu
build: m68k-unknown-linux-gnu
target: m68k-unknown-linux-gnu
configured with: ../gcc-3.0/configure --verbose --cache-file=../config.cache --prefix=/usr/local/egcs --enable-languages=c,c++
>Description:
simplify_rtx() returns either const0_rtx or const_true_rtx, but
expected_value_to_br_prob() is testing for const1_rtx and const0_rtx,
which fails for linux-m68k.
The same problem is already reported in PR 1795, but fixed with
patch below. Note that this depends on the fix in bootstrap/3090.
>How-To-Repeat:
Configure for linux-m68k and (cross) compile.
>Fix:
Index: gcc/predict.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/predict.c,v
retrieving revision 1.15.4.1
diff -u -r1.15.4.1 predict.c
--- predict.c 2001/05/12 20:32:37 1.15.4.1
+++ predict.c 2001/06/08 19:57:51
@@ -295,7 +295,7 @@
cond = simplify_rtx (cond);
/* Turn the condition into a scaled branch probability. */
- if (cond == const1_rtx)
+ if (cond == const_true_rtx)
cond = GEN_INT (PROB_VERY_LIKELY);
else if (cond == const0_rtx)
cond = GEN_INT (PROB_VERY_UNLIKELY);
>Release-Note:
>Audit-Trail:
>Unformatted: