From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25936 invoked by alias); 3 Nov 2007 14:59:41 -0000 Received: (qmail 25927 invoked by uid 22791); 3 Nov 2007 14:59:40 -0000 X-Spam-Check-By: sourceware.org Received: from wx-out-0506.google.com (HELO wx-out-0506.google.com) (66.249.82.225) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sat, 03 Nov 2007 14:59:39 +0000 Received: by wx-out-0506.google.com with SMTP id i31so1009766wxd for ; Sat, 03 Nov 2007 07:59:37 -0700 (PDT) Received: by 10.70.77.2 with SMTP id z2mr4607325wxa.1194101977071; Sat, 03 Nov 2007 07:59:37 -0700 (PDT) Received: by 10.70.17.20 with HTTP; Sat, 3 Nov 2007 07:59:37 -0700 (PDT) Message-ID: <998d0e4a0711030759l523a2bf0m99e79cdd2694ef55@mail.gmail.com> Date: Sat, 03 Nov 2007 14:59:00 -0000 From: "J.C. Pizarro" To: "Kenneth Zadeck" , gcc@gcc.gnu.org Subject: Re: Tree-SSA and POST_INC address mode inompatible in GCC4? In-Reply-To: <472C8BBA.40806@naturalbridge.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <998d0e4a0711030746ke8ab1c8w2ea33d9d004f411@mail.gmail.com> <472C8BBA.40806@naturalbridge.com> Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2007-11/txt/msg00077.txt.bz2 2007/11/3, Kenneth Zadeck wrote: > J.C. Pizarro wrote: > > They need to add an algorithm post-SSA that the code reuse the variables > > converting a_j <- phi(a_i,...) to a_k <- phi(a_k,...). > > > > The algorithms of POST_INC and POST_DEC are very specific, so an above > > general algorithm is sufficient. > > This is a little too simple. It assumes that the tree passes did > nothing. In fact you want to try to discover what the induction > variables are and rewrite them into a canonical form that auto-inc-dec > can then pick up on. The general algorithm is not simple, it has to explore and to reorganize the complex graph, and can fall to conflicts. J.C. Pizarro