From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31695 invoked by alias); 15 Nov 2019 11:08:39 -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 31687 invoked by uid 89); 15 Nov 2019 11:08:39 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-9.7 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_ASCII_DIVIDERS,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy= X-HELO: mail-lf1-f44.google.com Received: from mail-lf1-f44.google.com (HELO mail-lf1-f44.google.com) (209.85.167.44) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 15 Nov 2019 11:08:37 +0000 Received: by mail-lf1-f44.google.com with SMTP id r14so1085693lff.3 for ; Fri, 15 Nov 2019 03:08:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=c6+d5cqNBhQa58jd6SSvXIDJDYvTwWcRqI0Ru/UTxTE=; b=ikkRQnFVcBiY9d3UeUG4Ey+KANMrErcqQO1uVRDNP1L3VkcxQldfW2+38BajjCy4QB dWSbscr6ZBLYbISr4Vz5E0Oxe6DYRRIy/k3lxY4qeiw2JGXOxt2+wUSTllfL1nTnAn00 XSy0Vz/7De7ENRerZGLJSEHDSmhjBo+dhWFXOm84wAL9RHaLPz+Slp34KLQdwRJyYq4d KLTR163TB/Uipm8d3o+EcuRX+Exbbzts0ey6HyJTZQgKbju4FhH0xTO9od4Wc0v1fLnh 7QAZm6dVGMLMMVbHEP3IMElicjuqApNWPLp07SALN5TgnIw1jnTf3zZZtAtrQi7/xqUa LB/A== MIME-Version: 1.0 References: In-Reply-To: From: Richard Biener Date: Fri, 15 Nov 2019 11:09:00 -0000 Message-ID: Subject: Re: [6/8] Print the type of alias check in a dump message To: GCC Patches , Richard Sandiford Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-11/txt/msg01367.txt.bz2 On Mon, Nov 11, 2019 at 7:50 PM Richard Sandiford wrote: > > This patch prints a message to say how an alias check is being > implemented. OK. > > 2019-11-11 Richard Sandiford > > gcc/ > * tree-data-ref.c (create_intersect_range_checks_index) > (create_intersect_range_checks): Print dump messages. > > gcc/testsuite/ > * gcc.dg/vect/vect-alias-check-1.c: Test for the type of alias check. > * gcc.dg/vect/vect-alias-check-8.c: Likewise. > * gcc.dg/vect/vect-alias-check-9.c: Likewise. > * gcc.dg/vect/vect-alias-check-10.c: Likewise. > * gcc.dg/vect/vect-alias-check-11.c: Likewise. > * gcc.dg/vect/vect-alias-check-12.c: Likewise. > * gcc.dg/vect/vect-alias-check-13.c: Likewise. > * gcc.dg/vect/vect-alias-check-14.c: Likewise. > * gcc.dg/vect/vect-alias-check-15.c: Likewise. > * gcc.dg/vect/vect-alias-check-16.c: Likewise. > * gcc.dg/vect/vect-alias-check-17.c: Likewise. > > Index: gcc/tree-data-ref.c > =================================================================== > --- gcc/tree-data-ref.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/tree-data-ref.c 2019-11-11 18:31:01.263118514 +0000 > @@ -1890,6 +1890,8 @@ create_intersect_range_checks_index (cla > else > *cond_expr = part_cond_expr; > } > + if (dump_enabled_p ()) > + dump_printf (MSG_NOTE, "using an index-based overlap test\n"); > return true; > } > > @@ -2037,6 +2039,8 @@ create_intersect_range_checks (class loo > = fold_build2 (TRUTH_OR_EXPR, boolean_type_node, > fold_build2 (cmp_code, boolean_type_node, seg_a_max, seg_b_min), > fold_build2 (cmp_code, boolean_type_node, seg_b_max, seg_a_min)); > + if (dump_enabled_p ()) > + dump_printf (MSG_NOTE, "using an address-based overlap test\n"); > } > > /* Create a conditional expression that represents the run-time checks for > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c 2019-03-08 18:15:02.304871094 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-1.c 2019-11-11 18:31:01.247118627 +0000 > @@ -15,3 +15,5 @@ fn1 () > } > > /* { dg-final { scan-tree-dump "improved number of alias checks from \[0-9\]* to 1" "vect" } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-8.c 2019-11-11 18:31:01.251118599 +0000 > @@ -60,3 +60,5 @@ main (void) > } > > /* { dg-final { scan-tree-dump {flags: *WAR\n} "vect" { target vect_int } } } */ > +/* { dg-final { scan-tree-dump "using an index-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-9.c 2019-11-11 18:31:01.251118599 +0000 > @@ -53,3 +53,5 @@ main (void) > } > > /* { dg-final { scan-tree-dump {flags: [^\n]*ARBITRARY\n} "vect" { target vect_int } } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c 2019-03-08 18:15:02.248871307 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-10.c 2019-11-11 18:31:01.251118599 +0000 > @@ -65,3 +65,6 @@ main (void) > FOR_EACH_TYPE (DO_TEST) > return 0; > } > + > +/* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c 2019-03-08 18:15:02.292871138 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-11.c 2019-11-11 18:31:01.251118599 +0000 > @@ -95,3 +95,6 @@ main (void) > /* { dg-final { scan-tree-dump {no alias between [^\n]* when [^\n]* step[^ ]* \* 8[)]* is outside \(-24, 24\)} "vect" { target vect_double } } } */ > /* { dg-final { scan-tree-dump {no alias between [^\n]* when [^\n]* step[^ ]* \* 8[)]* is outside \(-32, 32\)} "vect" { target vect_double } } } */ > /* { dg-final { scan-tree-dump {run-time check [^\n]* abs \([^*]* \* 8[)]* >= 32} "vect" { target vect_double } } } */ > + > +/* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c 2019-03-08 18:15:02.252871290 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-12.c 2019-11-11 18:31:01.251118599 +0000 > @@ -95,3 +95,6 @@ main (void) > /* { dg-final { scan-tree-dump {no alias between [^\n]* when [^\n]* [_a-z][^ ]* \* 8[)]* is outside \[0, 24\)} "vect" { target vect_double } } } */ > /* { dg-final { scan-tree-dump {no alias between [^\n]* when [^\n]* [_a-z][^ ]* \* 8[)]* is outside \[0, 32\)} "vect" { target vect_double } } } */ > /* { dg-final { scan-tree-dump {run-time check [^\n]* unsigned \([^*]* \* 8[)]* >= 32} "vect" { target vect_double } } } */ > + > +/* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-13.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-13.c 2019-03-08 18:15:02.296871124 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-13.c 2019-11-11 18:31:01.251118599 +0000 > @@ -18,4 +18,6 @@ f2 (int *x, long step2, int n) > > /* { dg-final { scan-tree-dump {need run-time check that [^\n]*step1[^\n]* is nonzero} "vect" } } */ > /* { dg-final { scan-tree-dump-not {need run-time check that [^\n]*step2[^\n]* is nonzero} "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an address-based" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > /* { dg-final { scan-tree-dump-times {LOOP VECTORIZED} 2 "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-14.c 2019-11-11 18:31:01.251118599 +0000 > @@ -60,3 +60,5 @@ main (void) > > /* { dg-final { scan-tree-dump {flags: *WAR\n} "vect" { target vect_int } } } */ > /* { dg-final { scan-tree-dump-not {flags: [^\n]*ARBITRARY\n} "vect" } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-15.c 2019-11-11 18:31:01.251118599 +0000 > @@ -57,3 +57,5 @@ main (void) > } > > /* { dg-final { scan-tree-dump {flags: *WAW\n} "vect" { target vect_int } } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-16.c 2019-11-11 18:31:01.251118599 +0000 > @@ -62,3 +62,5 @@ main (void) > } > > /* { dg-final { scan-tree-dump {flags: *RAW\n} "vect" { target vect_int } } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */ > Index: gcc/testsuite/gcc.dg/vect/vect-alias-check-17.c > =================================================================== > --- gcc/testsuite/gcc.dg/vect/vect-alias-check-17.c 2019-11-11 18:30:57.167147102 +0000 > +++ gcc/testsuite/gcc.dg/vect/vect-alias-check-17.c 2019-11-11 18:31:01.251118599 +0000 > @@ -11,3 +11,5 @@ f (struct s *s1, int a, int b) > } > > /* { dg-final { scan-tree-dump {flags: *[^\n]*MIXED_STEPS} "vect" } } */ > +/* { dg-final { scan-tree-dump "using an address-based overlap test" "vect" } } */ > +/* { dg-final { scan-tree-dump-not "using an index-based" "vect" } } */