From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3313 invoked by alias); 4 Sep 2011 21:27:59 -0000 Received: (qmail 3303 invoked by uid 22791); 4 Sep 2011 21:27:58 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 04 Sep 2011 21:27:45 +0000 From: "NickParker at Eaton dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/50256] AVR GCC - several unnecessary register moves Date: Sun, 04 Sep 2011 21:27:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: normal X-Bugzilla-Who: NickParker at Eaton dot com X-Bugzilla-Status: WAITING X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 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: 2011-09/txt/msg00274.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50256 --- Comment #4 from NickParker at Eaton dot com 2011-09-04 21:27:43 UTC --- Hi, Thanks for your input and sorry to make a mess of reporting this. The arithmetic is fine and the code gives the results I expect. However, I have since discovered and corrected a 'bug'. I was not initialising my 'temporary result registers i.e. r2,r3,r4,r5,r6,r7. Regarding the arithmetic, the result is INTENTIONALLY accumulated from the lowest partial products to highest partial products so that at most only 3 additions are ever needed per partial product. Thanks, Nick