From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 117433 invoked by alias); 22 Apr 2015 17:36:23 -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 117421 invoked by uid 89); 22 Apr 2015 17:36:23 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.2 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (207.82.80.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 22 Apr 2015 17:36:21 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.140]) by uk-mta-26.uk.mimecast.lan; Wed, 22 Apr 2015 18:36:19 +0100 Received: from [10.2.207.65] ([10.1.2.79]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 22 Apr 2015 18:36:19 +0100 Message-ID: <5537DC12.1050201@arm.com> Date: Wed, 22 Apr 2015 17:36:00 -0000 From: Alan Lawrence User-Agent: Thunderbird 2.0.0.24 (X11/20101213) MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org" CC: Christophe Lyon Subject: [PATCH 13/14][ARM/AArch64 testsuite] Use gcc-dg-runtest in advsimd-intrinsics.exp In-Reply-To: <5537D241.1000606@arm.com> X-MC-Unique: bSEpao9iSe6Tbm_3k6rI4Q-1 Content-Type: multipart/mixed; boundary="------------050503090709030906020407" X-IsSubscribed: yes X-SW-Source: 2015-04/txt/msg01348.txt.bz2 This is a multi-part message in MIME format. --------------050503090709030906020407 Content-Type: text/plain; charset=WINDOWS-1252; format=flowed Content-Transfer-Encoding: quoted-printable Content-length: 1906 In the first revision of Christophe Lyon's advsimd-intrinsics tests,=20 https://gcc.gnu.org/ml/gcc-patches/2014-06/msg00532.html , both gcc-dg-runt= est=20 (to assemble only) and c-torture-execute were used. In review the gcc-dg-ru= ntest=20 part was then dropped, and execution tests continued using c-torture-execut= e.=20 However, c-torture-execute ignores e.g. dg-options directives in the indivi= dual=20 test files, whereas gcc-dg-runtest does not. This patch switches to gcc-dg-runtest (with dg-do-what-default =3D "run") f= or all=20 tests, allowing use of e.g. dg-options (in testsuite patch 3/3). This gener= ally=20 seems to work OK - indeed I also dropped the parallelization-disabling code= -=20 and the new advsimd-intrinsics.exp now follows gcc.c-torture/compile/compil= e.exp=20 and gcc.c-torture/execute/execute.exp very closely. However, there are side= =20 effects, of which we should be aware, but with which I think we can live,=20 specifically: (1) the lines in the test log change from... PASS: gcc.target/aarch64/advsimd-intrinsics/vcombine.c compilation, -O1 PASS: gcc.target/aarch64/advsimd-intrinsics/vcombine.c execution, -O1 ...to... PASS: gcc.target/aarch64/advsimd-intrinsics/vcombine.c -O1 execution test (that is, the compilation line disappears, but the (test for excess errors)= =20 remains unchanged) (2) The "-Og -g" variant is no longer tested; all of -O0, -O1, -O2, -O2 -f= lto=20 -fno-use-linker-plugin -flto-partition=3Dnone, -O2 -flto -fuse-linker-plugi= n=20 -fno-fat-lto-objects, -O3 -fomit-frame-pointer, -O3 -g, -Os still are. My=20 feeling is that this set of options is exhaustive enough. Cross-tested arm-none-eabi, aarch64-none-elf, aarch64_be-none-elf; natively= =20 tested arm-none-linux-gnueabihf and aarch64-none-linux-gnu. gcc/testsuite/ChangeLog: * gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp: Use gcc-dg-runtest. --------------050503090709030906020407 Content-Type: text/x-patch; name=13_advsimd_gcc-dg-runtest.patch Content-Transfer-Encoding: quoted-printable Content-Disposition: inline; filename="13_advsimd_gcc-dg-runtest.patch" Content-length: 1852 diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-in= trinsics.exp b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-= intrinsics.exp index 551299ef5634b7fea68d2e2f813ab61270b59e35..aa5d4d5ec2f45fa745fac152125= e1badc2f2df43 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsic= s.exp +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsic= s.exp @@ -26,10 +26,6 @@ if {![istarget arm*-*-*] load_lib gcc-dg.exp =20 # Initialize `dg'. -load_lib c-torture.exp -load_lib target-supports.exp -load_lib torture-options.exp - dg-init =20 if {[istarget arm*-*-*] @@ -37,29 +33,14 @@ if {[istarget arm*-*-*] return } =20 -torture-init -set-torture-options $C_TORTURE_OPTIONS {{}} $LTO_TORTURE_OPTIONS - # Make sure Neon flags are provided, if necessary. -set additional_flags [add_options_for_arm_neon ""] +set additional_flags [add_options_for_arm_neon "-w"] =20 # Main loop. -foreach src [lsort [glob -nocomplain $srcdir/$subdir/*.c]] { - # If we're only testing specific files and this isn't one of them, ski= p it. - if ![runtest_file_p $runtests $src] then { - continue - } - - # runtest_file_p is already run above, and the code below can run - # runtest_file_p again, make sure everything for this test is - # performed if the above runtest_file_p decided this runtest - # instance should execute the test - gcc_parallel_test_enable 0 - c-torture-execute $src $additional_flags - gcc-dg-runtest $src "" $additional_flags - gcc_parallel_test_enable 1 -} +set saved-dg-do-what-default ${dg-do-what-default} +set dg-do-what-default "run" +gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] "" ${ad= ditional_flags} +set dg-do-what-default ${saved-dg-do-what-default} =20 # All done. -torture-finish dg-finish --------------050503090709030906020407--