From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 8040E3858C83 for ; Tue, 26 Apr 2022 16:02:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 8040E3858C83 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-248-LZ5yNeYCM72CGYIpDWevGQ-1; Tue, 26 Apr 2022 12:02:41 -0400 X-MC-Unique: LZ5yNeYCM72CGYIpDWevGQ-1 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 7165E1014A60; Tue, 26 Apr 2022 16:02:41 +0000 (UTC) Received: from tucnak.zalov.cz (unknown [10.39.192.16]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 2CE05416146; Tue, 26 Apr 2022 16:02:41 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.16.1/8.16.1) with ESMTPS id 23QG2cuW087831 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 26 Apr 2022 18:02:39 +0200 Received: (from jakub@localhost) by tucnak.zalov.cz (8.16.1/8.16.1/Submit) id 23QG2bBD087651; Tue, 26 Apr 2022 18:02:37 +0200 Date: Tue, 26 Apr 2022 18:02:37 +0200 From: Jakub Jelinek To: "Andre Vieira (lists)" Cc: "gcc-patches@gcc.gnu.org" , Richard Biener , richard.sandiford@arm.com Subject: Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment Message-ID: Reply-To: Jakub Jelinek References: <8462f41b-895f-9aca-499e-7713ec161673@arm.com> <4a0809ef-5b68-9459-ad47-153e642b3125@arm.com> MIME-Version: 1.0 In-Reply-To: <4a0809ef-5b68-9459-ad47-153e642b3125@arm.com> X-Scanned-By: MIMEDefang 2.85 on 10.11.54.10 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Apr 2022 16:02:56 -0000 On Tue, Apr 26, 2022 at 04:45:14PM +0100, Andre Vieira (lists) wrote: > For some reason I thought richi wasn't able to reproduce this on other > targets, but from my last read of the PR I think he was... Regardless Note, it isn't strictly needed that a test added as generic test fails before fixes on all arches or many of them, when a test is itself not target specific, it can be useful to run it on all targets, while it will catch regressing the same bug again on the originally failing target, sometimes it can catch other bugs on other targets (happened many times in the past). > probably worth testing it for all targets for sure. > Question is how do I make it run for all targets but use target specific > options for each to try and trigger the original issue? Multiple > dg-additional-options with different target selectors? Yes. But they really need to be guarded also by effective targets which guarantee hw support. Say if you /* { dg-additional-options "-mavx2" } then it would need to be /* { dg-additional-options "-mavx2" { target { { i?86-* x86_64-* } && avx2_runtime } } } */ or so where that effective target ensures both that assembler can assemble avx2 instructions and that the hw it is tested on does support them too. No idea about aarch64/arm effective targets. Another way sometimes used is to place just normal test without magic options into gcc.dg/vect/ , i.e. test that with whatever options user configured gcc with or asks through RUNTESTFLAGS, and when needed add gcc.target/*/ additional test that has extra dg-options and renames main to something else and calls that only after checking hw capabilities. grep ../../gcc.dg/vect testsuite/gcc.target/i386/*.c for some examples. Jakub