From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2839 invoked by alias); 12 Dec 2004 15:16:21 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 2803 invoked from network); 12 Dec 2004 15:16:16 -0000 Received: from unknown (HELO mtagate4.de.ibm.com) (195.212.29.153) by sourceware.org with SMTP; 12 Dec 2004 15:16:16 -0000 Received: from d12nrmr1607.megacenter.de.ibm.com (d12nrmr1607.megacenter.de.ibm.com [9.149.167.49]) by mtagate4.de.ibm.com (8.12.10/8.12.10) with ESMTP id iBCFGFvU154812 for ; Sun, 12 Dec 2004 15:16:15 GMT Received: from d12av02.megacenter.de.ibm.com (d12av02.megacenter.de.ibm.com [9.149.165.228]) by d12nrmr1607.megacenter.de.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id iBCFGUor149304 for ; Sun, 12 Dec 2004 16:16:30 +0100 Received: from d12av02.megacenter.de.ibm.com (loopback [127.0.0.1]) by d12av02.megacenter.de.ibm.com (8.12.11/8.12.11) with ESMTP id iBCFGEZb008258 for ; Sun, 12 Dec 2004 16:16:15 +0100 Received: from d12ml102.megacenter.de.ibm.com (d12ml102.megacenter.de.ibm.com [9.149.166.138]) by d12av02.megacenter.de.ibm.com (8.12.11/8.12.11) with ESMTP id iBCFGEfA008255; Sun, 12 Dec 2004 16:16:14 +0100 Subject: Re: [autovect][PATCH]: Re: Simple loops not interchanged? To: Daniel Berlin Cc: gcc@gcc.gnu.org, Richard Guenther , Sebastian Pop Message-ID: From: Dorit Naishlos Date: Sun, 12 Dec 2004 15:16:00 -0000 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII X-SW-Source: 2004-12/txt/msg00424.txt.bz2 > i'd like to > apply this to the autovect branch (Feel free to use > evolution_function_is_invariant_p in the tests in the vectorizer. It > should let you catch some more loops than the simple constant test, if > you can transform them properly) sure. thanks, dorit Daniel Berlin , Sebastian Pop org> , Dorit Naishlos/Haifa/IBM@IBMIL Sent by: cc: gcc@gcc.gnu.org gcc-owner@gcc.gnu Subject: [autovect][PATCH]: Re: Simple loops not interchanged? .org 12/12/2004 05:58 I've attached a patch that lets us interchange this. It does two things: 1. It lets the chrec code consider variables invariant in the loop that matches the chrec variable (loop number) as constant for purposes for the chrec. 2. It informs the data dependence tester that chrecs that are equal (ie the same chrec) overlap on every iteration. This is enough to get this loop to interchange. Sebastian, unless you have a problem with this, then Dorit, i'd like to apply this to the autovect branch (Feel free to use evolution_function_is_invariant_p in the tests in the vectorizer. It should let you catch some more loops than the simple constant test, if you can transform them properly) It includes Richard's testcase in order to make sure we don't regress here later on. :) #### dataref.diff has been removed from this note on December 12, 2004 by Dorit Naishlos