From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 109044 invoked by alias); 17 May 2015 13:32:32 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 109032 invoked by uid 89); 17 May 2015 13:32:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 X-HELO: arjuna.pair.com Received: from arjuna.pair.com (HELO arjuna.pair.com) (209.68.5.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Sun, 17 May 2015 13:32:30 +0000 Received: by arjuna.pair.com (Postfix, from userid 3006) id 02ADC8A27C; Sun, 17 May 2015 09:32:27 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by arjuna.pair.com (Postfix) with ESMTP id 020DD8A1FC; Sun, 17 May 2015 09:32:27 -0400 (EDT) Date: Sun, 17 May 2015 13:48:00 -0000 From: Hans-Peter Nilsson To: Segher Boessenkool cc: "Kumar, Venkataramanan" , "Jeff Law (law@redhat.com)" , "gcc-patches@gcc.gnu.org" , "maxim.kuvyrkov@linaro.org" Subject: Re: [RFC]: Remove Mem/address type assumption in combiner In-Reply-To: <20150517123147.GA14002@gate.crashing.org> Message-ID: References: <7794A52CE4D579448B959EED7DD0A4723DCE9F34@satlexdag06.amd.com> <20150429170335.GB21715@gate.crashing.org> <20150501151758.GA1182@gate.crashing.org> <20150516143238.GE7531@gate.crashing.org> <20150516170120.GA897@gate.crashing.org> <20150517123147.GA14002@gate.crashing.org> User-Agent: Alpine 2.02 (BSF 1266 2009-07-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg01506.txt.bz2 On Sun, 17 May 2015, Segher Boessenkool wrote: > I used ; it has > a README. I see that doc is a little out of date, I'll update. ("git:" not "http:" for cloning) Thanks, looks useful. Hm, maybe we already mention this in the wiki... > > - add a preferred canonicalization function to do conversion > > to/from memory-address-canonical RTL. Like > > fwprop.c:canonicalize_address (just not static :) and maybe also > > a canonicalize_nonaddress. At the moment, ports call > > replace_equiv_address (family of functions) when changing > > address RTL, but that code-path (at a glance) doesn't > > canonicalize whatever non-address-canonical RTL you throw at it. > > Maybe it should? > > Maybe validize_mem is nicer? It depends much what you really > want to change. I'd had made use of a function that'd automatically rewrite an ASHIFT into a MULT. No, validize_mem is kind-of a sibling to replace_equiv_address with just the containing MEM and will just call it, says the code. A call to replace_equiv_address (& Co.) will *break out* invalid expressions like an ASHIFT - or at least is supposed to do that. But that'd be mostly for convenience of other ports; I've coped now, I think. > Does simplify_rtx not do what you want for "nonaddress"? Oh, right, that's already what we have, thanks. brgds, H-P