From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26992 invoked by alias); 2 Mar 2008 18:05:48 -0000 Received: (qmail 26878 invoked by uid 48); 2 Mar 2008 18:05:05 -0000 Date: Sun, 02 Mar 2008 18:05:00 -0000 Message-ID: <20080302180505.26877.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug target/35373] [4.4 Regression] bootstraping on powerpc-apple-darwin9 fails with revision 132578 In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "fxcoudert at gcc dot gnu dot org" 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: 2008-03/txt/msg00068.txt.bz2 ------- Comment #4 from fxcoudert at gcc dot gnu dot org 2008-03-02 18:05 ------- Here's the preprocessed source, reduced on ppc-darwin: void maxloc1_4_r16 () { int n, result, *dest; long double *src, maxval; for (n = 0; n < 10; n++, src++) if (*src > maxval) result++; *dest = result; } It compiles at -O0 but fails at -O1. The backtrace is: #0 fancy_abort (file=0x755644 "/var/tmp/gfortran-20080302/ibin/../gcc/gcc/explow.c", line=492, function=0x856e04 "memory_address") at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/diagnostic.c:664 #1 0x0025f428 in memory_address (mode=TFmode, x=0x40db2370) at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/explow.c:492 #2 0x0055410c in get_computation_cost_at (data=, use=, cand=, address_p=, depends_on=, at=) at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop-ivopts.c:3066 #3 0x00554850 in determine_use_iv_cost (data=0xbffff558, use=0x40c10070, cand=0x40c100d0) at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop-ivopts.c:3616 #4 0x00554e30 in determine_use_iv_costs (data=0xbffff558) at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop-ivopts.c:3888 #5 0x00558dac in tree_ssa_iv_optimize_loop (data=0xbffff558, loop=) at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop-ivopts.c:5453 #6 0x00559aa4 in tree_ssa_iv_optimize () at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop-ivopts.c:5501 #7 0x0056a9e8 in tree_ssa_loop_ivopts () at /var/tmp/gfortran-20080302/ibin/../gcc/gcc/tree-ssa-loop.c:550 and the lines around the failed assert: (gdb) l 490 485 the register is a valid address. */ 486 else 487 x = force_reg (Pmode, x); 488 } 489 490 done: 491 492 gcc_assert (memory_address_p (mode, x)); 493 /* If we didn't change the address, we are done. Otherwise, mark 494 a reg as a pointer if we have REG or REG + CONST_INT. */ (gdb) p mode $4 = TFmode (gdb) p debug_rtx(x) (plus:SI (reg:SI 119) (reg/f:SI 119)) $5 = void (gdb) p memory_address_p (mode, x) $6 = 0 -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fxcoudert at gcc dot gnu dot | |org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2008-03-02 18:05:04 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35373