From patchwork Thu Mar 20 10:22:59 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 332065 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 984FE2C00A0 for ; Thu, 20 Mar 2014 21:23:23 +1100 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; q=dns; s=default; b=lVTbi30Bn3RV41DQ fLnJ2AOCgGu+/pkoHZ/nA1nyOdZ5HfT5WMEzdDb6E2hBiQNJyzh+cUsuzjdtUJ2E N1B0nMeZuC3tMB0xhZOsyKrOzTVuy8faVUb9JRpQsUanx8gzK++uK/YxwkcMy+k7 GGhKq9NsFxSZvnl895hFde9Ycyo= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; s=default; bh=a3JUKgDXSviLEhSfaUnXIX X9L/w=; b=hWQQkrzFzS7O/nRK1tp++q+EOgrpWZB8wl63ZLpj7FxuZpmj1lcGP9 h3smaSqiiKG9Y5EhOUJcoJkIIK/jRlBmrHkIvLZPd5HVsek1cQ8J195TiiwkDbZO lE5h9C5ygl5RzNolHn8cBMjnaWwORArRxOpUeTLyf5jxjGzxaiv9g= Received: (qmail 1118 invoked by alias); 20 Mar 2014 10:23:15 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 1099 invoked by uid 89); 20 Mar 2014 10:23:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL, BAYES_00 autolearn=ham version=3.3.2 X-Spam-User: qpsmtpd, 2 recipients X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 20 Mar 2014 10:23:12 +0000 Received: from svr-orw-fem-01.mgc.mentorg.com ([147.34.98.93]) by relay1.mentorg.com with esmtp id 1WQa7u-00022U-Kf from Thomas_Schwinge@mentor.com ; Thu, 20 Mar 2014 03:23:06 -0700 Received: from SVR-IES-FEM-01.mgc.mentorg.com ([137.202.0.104]) by svr-orw-fem-01.mgc.mentorg.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Thu, 20 Mar 2014 03:23:06 -0700 Received: from feldtkeller.schwinge.homeip.net (137.202.0.76) by SVR-IES-FEM-01.mgc.mentorg.com (137.202.0.104) with Microsoft SMTP Server id 14.2.247.3; Thu, 20 Mar 2014 10:23:03 +0000 From: Thomas Schwinge To: Ilmir Usmanov , Tobias Burnus CC: Evgeny Gavrin , GarbuzovViacheslav , Dmitri Botcharnikov , , , Subject: Re: [PATCH 4/4] [GOMP4] [Fortran] OpenACC 1.0+ support in fortran front-end In-Reply-To: <5319A3B2.103@samsung.com> References: <52E158EF.9050009@samsung.com> <877g9pqmt2.fsf@schwinge.name> <52E65B24.9070403@samsung.com> <87iot5pgqb.fsf@schwinge.name> <52EB8437.3060602@samsung.com> <52EB84C3.4010407@samsung.com> <52F7FFAA.9020702@net-b.de> <5304CEFC.4000602@samsung.com> <53054370.2030802@net-b.de> <5305BA82.5060804@samsung.com> <53158715.1090908@samsung.com> <5315873E.4010203@samsung.com> <53160B41.3060501@net-b.de> <5319A309.40004@samsung.com> <5319A335.2090202@samsung.com> <5319A358.7040207@samsung.com> <5319A37E.4080709@samsung.com> <5319A3B2.103@samsung.com> User-Agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/23.4.1 (x86_64-pc-linux-gnu) Date: Thu, 20 Mar 2014 11:22:59 +0100 Message-ID: <87lhw5f9to.fsf@schwinge.name> MIME-Version: 1.0 Hi Ilmir! On Fri, 7 Mar 2014 14:47:14 +0400, Ilmir Usmanov wrote: > OpenACC 1.0 fortran FE support -- tests. > --- /dev/null > +++ b/gcc/testsuite/gfortran.dg/goacc/coarray.f95 > @@ -0,0 +1,35 @@ > +! { dg-do compile } > +! { dg-excess-errors "Unimplemented" } > +! { dg-excess-errors "ACC LOOP" } > \ No newline at end of file As in , this is wrong usage of the dg-excess-errors directive, for this one will absorb *all* remaining errors, whereas you just wanted to mask out any »sorry, unimplemented: [...]« ones. OK to fix as follows? commit 6d27a0605bd914a1b51e467e340221c5b018e129 Author: Thomas Schwinge Date: Thu Mar 20 11:04:30 2014 +0100 Replace dg-excess-errors usage with dg-prune-output. gcc/testsuite/ * gfortran.dg/goacc/cache-1.f95: Replace dg-excess-errors usage with dg-prune-output. * gfortran.dg/goacc/coarray.f95: Likewise. * gfortran.dg/goacc/cray.f95: Likewise. * gfortran.dg/goacc/data-tree.f95: Likewise. * gfortran.dg/goacc/declare-1.f95: Likewise. * gfortran.dg/goacc/host_data-tree.f95: Likewise. * gfortran.dg/goacc/kernels-tree.f95: Likewise. * gfortran.dg/goacc/loop-1.f95: Likewise. * gfortran.dg/goacc/parallel-kernels-regions.f95: Likewise. * gfortran.dg/goacc/parallel-tree.f95: Likewise. * gfortran.dg/goacc/parameter.f95: Likewise. This changes the test results as follows: @@ -30,8 +30,8 @@ PASS: gfortran.dg/goacc/branch.f95 -O (test for errors, line 16) PASS: gfortran.dg/goacc/branch.f95 -O (test for errors, line 22) PASS: gfortran.dg/goacc/branch.f95 -O (test for errors, line 28) PASS: gfortran.dg/goacc/branch.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/cache-1.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/coarray.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/cache-1.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/coarray.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/continuation-free-form.f95 -O (test for errors, line 19) PASS: gfortran.dg/goacc/continuation-free-form.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/cray.f95 -O (test for errors, line 13) @@ -44,7 +44,7 @@ PASS: gfortran.dg/goacc/cray.f95 -O (test for errors, line 32) PASS: gfortran.dg/goacc/cray.f95 -O (test for errors, line 35) PASS: gfortran.dg/goacc/cray.f95 -O (test for errors, line 39) PASS: gfortran.dg/goacc/cray.f95 -O (test for errors, line 41) -XFAIL: gfortran.dg/goacc/cray.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/cray.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/critical.f95 -O (test for errors, line 11) PASS: gfortran.dg/goacc/critical.f95 -O (test for errors, line 22) PASS: gfortran.dg/goacc/critical.f95 -O (test for excess errors) @@ -115,7 +115,7 @@ PASS: gfortran.dg/goacc/data-clauses.f95 -O (test for errors, line 244) PASS: gfortran.dg/goacc/data-clauses.f95 -O (test for errors, line 246) PASS: gfortran.dg/goacc/data-clauses.f95 -O (test for errors, line 248) PASS: gfortran.dg/goacc/data-clauses.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/data-tree.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/data-tree.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "pragma acc data" 1 PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "if" 1 PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "map\\(force_tofrom:i\\)" 1 @@ -128,7 +128,7 @@ PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "map\\ PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "map\\(from:s\\)" 1 PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "map\\(alloc:t\\)" 1 PASS: gfortran.dg/goacc/data-tree.f95 -O scan-tree-dump-times original "map\\(force_deviceptr:u\\)" 1 -XFAIL: gfortran.dg/goacc/declare-1.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/declare-1.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/declare-1.f95 -O scan-tree-dump-times original "pragma acc declare map\\(force_tofrom:i\\)" 2 PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for errors, line 31) PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for errors, line 32) @@ -176,7 +176,7 @@ PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for errors, line 84) PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for errors, line 85) PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for errors, line 86) PASS: gfortran.dg/goacc/enter-exit-data.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/host_data-tree.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/host_data-tree.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/host_data-tree.f95 -O scan-tree-dump-times original "pragma acc host_data use_device\\(i\\)" 1 PASS: gfortran.dg/goacc/if.f95 -O (test for errors, line 9) PASS: gfortran.dg/goacc/if.f95 -O (test for errors, line 10) @@ -194,7 +194,7 @@ PASS: gfortran.dg/goacc/if.f95 -O (test for errors, line 29) PASS: gfortran.dg/goacc/if.f95 -O (test for errors, line 30) PASS: gfortran.dg/goacc/if.f95 -O (test for errors, line 31) PASS: gfortran.dg/goacc/if.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/kernels-tree.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/kernels-tree.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/kernels-tree.f95 -O scan-tree-dump-times original "pragma acc kernels" 1 PASS: gfortran.dg/goacc/kernels-tree.f95 -O scan-tree-dump-times original "if" 1 PASS: gfortran.dg/goacc/kernels-tree.f95 -O scan-tree-dump-times original "async" 1 @@ -264,7 +264,7 @@ PASS: gfortran.dg/goacc/loop-1.f95 -O (test for errors, line 142) PASS: gfortran.dg/goacc/loop-1.f95 -O (test for errors, line 147) PASS: gfortran.dg/goacc/loop-1.f95 -O (test for errors, line 152) PASS: gfortran.dg/goacc/loop-1.f95 -O (test for errors, line 157) -XFAIL: gfortran.dg/goacc/loop-1.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/loop-1.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/loop-2.f95 -O (test for errors, line 37) PASS: gfortran.dg/goacc/loop-2.f95 -O (test for errors, line 41) PASS: gfortran.dg/goacc/loop-2.f95 -O (test for errors, line 59) @@ -393,8 +393,8 @@ PASS: gfortran.dg/goacc/parallel-kernels-clauses.f95 -O (test for excess error PASS: gfortran.dg/goacc/parallel-kernels-regions.f95 -O (test for errors, line 17) PASS: gfortran.dg/goacc/parallel-kernels-regions.f95 -O (test for errors, line 22) PASS: gfortran.dg/goacc/parallel-kernels-regions.f95 -O (test for errors, line 46) -XFAIL: gfortran.dg/goacc/parallel-kernels-regions.f95 -O (test for excess errors) -XFAIL: gfortran.dg/goacc/parallel-tree.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/parallel-kernels-regions.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/parallel-tree.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/parallel-tree.f95 -O scan-tree-dump-times original "pragma acc parallel" 1 PASS: gfortran.dg/goacc/parallel-tree.f95 -O scan-tree-dump-times original "if" 1 PASS: gfortran.dg/goacc/parallel-tree.f95 -O scan-tree-dump-times original "async" 1 @@ -422,7 +422,7 @@ PASS: gfortran.dg/goacc/parameter.f95 -O (test for errors, line 16) PASS: gfortran.dg/goacc/parameter.f95 -O (test for errors, line 18) PASS: gfortran.dg/goacc/parameter.f95 -O (test for errors, line 27) PASS: gfortran.dg/goacc/parameter.f95 -O (test for errors, line 28) -XFAIL: gfortran.dg/goacc/parameter.f95 -O (test for excess errors) +PASS: gfortran.dg/goacc/parameter.f95 -O (test for excess errors) PASS: gfortran.dg/goacc/pure-elemental-procedures.f95 -O (test for errors, line 8) PASS: gfortran.dg/goacc/pure-elemental-procedures.f95 -O (test for errors, line 12) PASS: gfortran.dg/goacc/pure-elemental-procedures.f95 -O (test for errors, line 18) Grüße, Thomas diff --git gcc/testsuite/gfortran.dg/goacc/cache-1.f95 gcc/testsuite/gfortran.dg/goacc/cache-1.f95 index 6d7f60a..746cf02 100644 --- gcc/testsuite/gfortran.dg/goacc/cache-1.f95 +++ gcc/testsuite/gfortran.dg/goacc/cache-1.f95 @@ -9,4 +9,4 @@ program test !$acc cache (d) enddo end -! { dg-excess-errors "unimplemented" } \ No newline at end of file +! { dg-prune-output "unimplemented" } diff --git gcc/testsuite/gfortran.dg/goacc/coarray.f95 gcc/testsuite/gfortran.dg/goacc/coarray.f95 index 7afb4bc..ab13157 100644 --- gcc/testsuite/gfortran.dg/goacc/coarray.f95 +++ gcc/testsuite/gfortran.dg/goacc/coarray.f95 @@ -31,5 +31,4 @@ contains !$acc update device (a) end subroutine oacc1 end module test -! { dg-excess-errors "Unimplemented" } -! { dg-excess-errors "ACC LOOP" } \ No newline at end of file +! { dg-prune-output "ACC cache unimplemented" } diff --git gcc/testsuite/gfortran.dg/goacc/cray.f95 gcc/testsuite/gfortran.dg/goacc/cray.f95 index 509f61b..3225b28 100644 --- gcc/testsuite/gfortran.dg/goacc/cray.f95 +++ gcc/testsuite/gfortran.dg/goacc/cray.f95 @@ -51,4 +51,4 @@ contains !$acc update device (ptr) end subroutine oacc1 end module test -! { dg-excess-errors "unimplemented" } \ No newline at end of file +! { dg-prune-output "unimplemented" } diff --git gcc/testsuite/gfortran.dg/goacc/data-tree.f95 gcc/testsuite/gfortran.dg/goacc/data-tree.f95 index d29c060..a5c012a 100644 --- gcc/testsuite/gfortran.dg/goacc/data-tree.f95 +++ gcc/testsuite/gfortran.dg/goacc/data-tree.f95 @@ -12,7 +12,7 @@ program test !$acc end data end program test -! { dg-excess-errors "unimplemented" } +! { dg-prune-output "unimplemented" } ! { dg-final { scan-tree-dump-times "pragma acc data" 1 "original" } } ! { dg-final { scan-tree-dump-times "if" 1 "original" } } @@ -28,4 +28,4 @@ end program test ! { dg-final { scan-tree-dump-times "map\\(alloc:t\\)" 1 "original" } } ! { dg-final { scan-tree-dump-times "map\\(force_deviceptr:u\\)" 1 "original" } } -! { dg-final { cleanup-tree-dump "original" } } \ No newline at end of file +! { dg-final { cleanup-tree-dump "original" } } diff --git gcc/testsuite/gfortran.dg/goacc/declare-1.f95 gcc/testsuite/gfortran.dg/goacc/declare-1.f95 index aec3ae8..03540f1 100644 --- gcc/testsuite/gfortran.dg/goacc/declare-1.f95 +++ gcc/testsuite/gfortran.dg/goacc/declare-1.f95 @@ -15,6 +15,6 @@ contains END BLOCK end function foo end program test -! { dg-excess-errors "unimplemented" } +! { dg-prune-output "unimplemented" } ! { dg-final { scan-tree-dump-times "pragma acc declare map\\(force_tofrom:i\\)" 2 "original" } } ! { dg-final { cleanup-tree-dump "original" } } diff --git gcc/testsuite/gfortran.dg/goacc/host_data-tree.f95 gcc/testsuite/gfortran.dg/goacc/host_data-tree.f95 index 1c24fe7..19e7411 100644 --- gcc/testsuite/gfortran.dg/goacc/host_data-tree.f95 +++ gcc/testsuite/gfortran.dg/goacc/host_data-tree.f95 @@ -8,6 +8,6 @@ program test !$acc host_data use_device(i) !$acc end host_data end program test -! { dg-excess-errors "unimplemented" } +! { dg-prune-output "unimplemented" } ! { dg-final { scan-tree-dump-times "pragma acc host_data use_device\\(i\\)" 1 "original" } } ! { dg-final { cleanup-tree-dump "original" } } diff --git gcc/testsuite/gfortran.dg/goacc/kernels-tree.f95 gcc/testsuite/gfortran.dg/goacc/kernels-tree.f95 index 5c65d2a..73f172c 100644 --- gcc/testsuite/gfortran.dg/goacc/kernels-tree.f95 +++ gcc/testsuite/gfortran.dg/goacc/kernels-tree.f95 @@ -12,7 +12,7 @@ program test !$acc end kernels end program test -! { dg-excess-errors "unimplemented" } +! { dg-prune-output "unimplemented" } ! { dg-final { scan-tree-dump-times "pragma acc kernels" 1 "original" } } ! { dg-final { scan-tree-dump-times "if" 1 "original" } } diff --git gcc/testsuite/gfortran.dg/goacc/loop-1.f95 gcc/testsuite/gfortran.dg/goacc/loop-1.f95 index af4f537..e1b2dfd 100644 --- gcc/testsuite/gfortran.dg/goacc/loop-1.f95 +++ gcc/testsuite/gfortran.dg/goacc/loop-1.f95 @@ -167,4 +167,5 @@ subroutine test1 end subroutine test1 end module test -! { dg-excess-errors "Deleted" } +! { dg-prune-output "Deleted" } +! { dg-prune-output "ACC cache unimplemented" } diff --git gcc/testsuite/gfortran.dg/goacc/parallel-kernels-regions.f95 gcc/testsuite/gfortran.dg/goacc/parallel-kernels-regions.f95 index 5cd4d6c..f31aa54 100644 --- gcc/testsuite/gfortran.dg/goacc/parallel-kernels-regions.f95 +++ gcc/testsuite/gfortran.dg/goacc/parallel-kernels-regions.f95 @@ -53,4 +53,4 @@ program test !$acc end kernels end program test -! { dg-excess-errors "unimplemented" } \ No newline at end of file +! { dg-prune-output "error: may not be nested" } diff --git gcc/testsuite/gfortran.dg/goacc/parallel-tree.f95 gcc/testsuite/gfortran.dg/goacc/parallel-tree.f95 index a92de4e..f004702 100644 --- gcc/testsuite/gfortran.dg/goacc/parallel-tree.f95 +++ gcc/testsuite/gfortran.dg/goacc/parallel-tree.f95 @@ -15,7 +15,7 @@ program test !$acc end parallel end program test -! { dg-excess-errors "unimplemented" } +! { dg-prune-output "unimplemented" } ! { dg-final { scan-tree-dump-times "pragma acc parallel" 1 "original" } } ! { dg-final { scan-tree-dump-times "if" 1 "original" } } diff --git gcc/testsuite/gfortran.dg/goacc/parameter.f95 gcc/testsuite/gfortran.dg/goacc/parameter.f95 index 917f772..785d7f9 100644 --- gcc/testsuite/gfortran.dg/goacc/parameter.f95 +++ gcc/testsuite/gfortran.dg/goacc/parameter.f95 @@ -28,4 +28,4 @@ contains !$acc update device (a) ! { dg-error "not a variable" } end subroutine oacc1 end module test -! { dg-excess-errors "unimplemented" } \ No newline at end of file +! { dg-prune-output "unimplemented" }