From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22716 invoked by alias); 8 Jun 2010 11:24:04 -0000 Received: (qmail 22635 invoked by uid 48); 8 Jun 2010 11:23:48 -0000 Date: Tue, 08 Jun 2010 11:24:00 -0000 Message-ID: <20100608112348.22634.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug target/44364] Wrong code with e500 double floating point In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "gcc at breakpoint dot cc" 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-06/txt/msg00872.txt.bz2 ------- Comment #34 from gcc at breakpoint dot cc 2010-06-08 11:23 ------- (In reply to comment #28) > #define HARD_REGNO_CALLER_SAVE_MODE(REGNO, NREGS, MODE) \ > (TARGET_E500_DOUBLE && ((MODE) == VOIDmode || (MODE) == DFmode) \ > ? DFmode \ > : choose_hard_reg_mode ((REGNO), (NREGS), false)) > I applied it on 4.4 branch. The big Perl thing is passes its testsuite with this. Also I don't see evldd X, stw X, ld X constructs, there is just one evldd. It looks good so far. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44364