From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 77643 invoked by alias); 28 Mar 2017 12:17:07 -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 76627 invoked by uid 89); 28 Mar 2017 12:17:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy= X-HELO: mail-ot0-f179.google.com Received: from mail-ot0-f179.google.com (HELO mail-ot0-f179.google.com) (74.125.82.179) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 28 Mar 2017 12:17:05 +0000 Received: by mail-ot0-f179.google.com with SMTP id a5so50350179oth.1 for ; Tue, 28 Mar 2017 05:17:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=SQmqp4mwCFttBSAaRtQRB/SM5mnR7bD/1S0aum8515g=; b=AbpTSYO3JoLIItzichqjiKPAZzHgj1EIj5+bNK8o32CvCAGQ7BHLIVVip2KRPKvVRC JFkEBgV/WLykydLIGhT6pUDBpHy9/L57sNWeHmfeD2KDAauWShrm3aAATlxaeECry2Jq jcxP3Hud44LGMK7/lyZBV+nW/8tAj9ZFPG9UV2V24XTZMzeyuUgPz15be2dKFQf/hJ8T Zzu7VTfMXBMRszU1rc4lNuENCNy9hAwjVZg7tGeS+ayi9/0Z/XDH/6hmv7ljGS7Om0vc QVj8/YSnH3VUa/o0C9yK8ZWihH3A6NpoemjgZ6ndkHApr+aClTbS4PJK6qh9xN1iWXC4 TKyA== X-Gm-Message-State: AFeK/H11n0gZOtR1j6nMOeMM7upBs8UzIpGaUX/X3hpE44DBWaeQGH6y5lBAUuJA4wzr/FVmeB3RgEcXAiLwKg== X-Received: by 10.157.8.42 with SMTP id 39mr2083362oty.258.1490703424767; Tue, 28 Mar 2017 05:17:04 -0700 (PDT) MIME-Version: 1.0 Received: by 10.157.83.4 with HTTP; Tue, 28 Mar 2017 05:17:04 -0700 (PDT) In-Reply-To: References: From: Richard Biener Date: Tue, 28 Mar 2017 12:18:00 -0000 Message-ID: Subject: Re: [PATCH 01/2]Maintain irreducible region information in vectorizer peeling To: Bin Cheng Cc: "gcc-patches@gcc.gnu.org" , nd Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2017-03/txt/msg01444.txt.bz2 On Tue, Mar 28, 2017 at 2:01 PM, Bin Cheng wrote: > Hi, > This patch fixes a latent bug in vectorizer, specifically, vect_do_peeling doesn't mark newly created edge > with irreducible flag if the vectorized loop is in irreducible region. Function checking_verify_loop_structure > needs to be explicitly called in vectorizer otherwise the issue is covered, but I am okay if we should avoid > this call. > Bootstrap and test on x86_64 and AArch64. This patch causes new failure in gcc.dg/tree-ssa/pr71077.c, > which uncovers another latent bug in vectorizer. That will be fixed by next patch. Is this OK? Ok (please omit the checking_verify_loop_structure call for now). Thanks, Richard. > 2017-03-27 Bin Cheng > > * tree-vect-loop-manip.c (slpeel_add_loop_guard): New param and > mark new edge's irreducible flag accordign to it. > (vect_do_peeling): Check loop preheader edge's irreducible flag > and pass it to function slpeel_add_loop_guard. > * tree-vectorizer.c (vectorize_loops): Explicitly call function > checking_verify_loop_structure. > > gcc/testsuite/ChangeLog > 2017-03-27 Bin Cheng > > * gcc.c-torture/compile/irreducible-loop.c: New.