From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16097 invoked by alias); 6 Mar 2005 09:31:03 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 16017 invoked by alias); 6 Mar 2005 09:30:56 -0000 Date: Sun, 06 Mar 2005 09:31:00 -0000 Message-ID: <20050306093056.16016.qmail@sourceware.org> From: "stevenb at suse dot de" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20050131123257.19721.steven@gcc.gnu.org> References: <20050131123257.19721.steven@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug middle-end/19721] [meta-bug] optimizations that CSE still catches X-Bugzilla-Reason: CC X-SW-Source: 2005-03/txt/msg00743.txt.bz2 List-Id: ------- Additional Comments From stevenb at suse dot de 2005-03-06 09:30 ------- Subject: Re: [meta-bug] optimizations that CSE still catches On Sunday 06 March 2005 06:59, law at redhat dot com wrote: > Ah. Yes. What did it look like in the tree dumps? Unless > one of the expanders is creating the negation I would think this > would be pretty easy to catch in fold-const.c This is PR20130. We don't fold -1*x to -x, ie. we never fold the MULT_EXPR to a NEGATE_EXPR. PR20130 has a patch. > expand_mult? Sigh. That's been in the back of my mind for a couple > years now -- it's probably one of the largest RTL expanders which > needs to have a lot of its functionality moved into trees. That'd be nice. In this case, Roger found out that for DImode negative constants it completely bypasses expand_mult_const. Fixing that would help for now. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19721