From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17764 invoked by alias); 9 Oct 2007 13:50:13 -0000 Received: (qmail 17664 invoked by uid 48); 9 Oct 2007 13:49:59 -0000 Date: Tue, 09 Oct 2007 13:50:00 -0000 Message-ID: <20071009134959.17663.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/33711] Missed optimization: reduction by subtraction (vectorizer) In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "eres at il dot ibm dot com" 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: 2007-10/txt/msg00785.txt.bz2 ------- Comment #1 from eres at il dot ibm dot com 2007-10-09 13:49 ------- The loop in the above example does not get vectorized because of the subtraction in reduction; which is currently not supported. Taken from the vectorizer dump: test.c:19: note: worklist: examine stmt: udiff_7 = udiff_20 - D.2210_6 test.c:19: note: vect_is_simple_use: operand udiff_20 test.c:19: note: def_stmt: udiff_20 = PHI test.c:19: note: Unsupported pattern. test.c:19: note: not vectorized: unsupported use in stmt. test.c:19: note: unexpected pattern. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33711