Hi Tobias! On 2023-02-23T17:42:08+0100, Tobias Burnus <tob...@codesourcery.com> wrote: > (Side note: this patch has been committed to OG12 as > http://gcc.gnu.org/g:55a18d47442 )
I see og12 commit 55a18d4744258e3909568e425f9f473c49f9d13f "Fortran/OpenMP: Fix mapping of array descriptors and deferred-length strings" regress existing test cases as follows: [-PASS:-]{+FAIL:+} gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times gimple "(?n)#pragma omp target oacc_exit_data map\\(delete:MEM <[^>]+> \\[\\(integer\\(kind=.\\)\\[0:\\] \\*\\)_[0-9]+\\] \\[len: [^\\]]+\\]\\) map\\(to:del_f_p \\[pointer set, len: [0-9]+\\]\\) map\\(alloc:del_f_p\\.data \\[pointer assign, bias: [^\\]]+\\]\\) finalize$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times gimple "(?n)#pragma omp target oacc_exit_data map\\(delete:del_f \\[len: [0-9]+\\]\\) finalize$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times gimple "(?n)#pragma omp target oacc_exit_data map\\(force_from:MEM <[^>]+> \\[\\(integer\\(kind=.\\)\\[0:\\] \\*\\)_[0-9]+\\] \\[len: [^\\]]+\\]\\) map\\(to:cpo_f_p \\[pointer set, len: [0-9]+\\]\\) map\\(alloc:cpo_f_p\\.data \\[pointer assign, bias: [^\\]]+\\]\\) finalize$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times gimple "(?n)#pragma omp target oacc_exit_data map\\(force_from:cpo_f \\[len: [0-9]+\\]\\) finalize$" 1 @@ -54679,7 +54679,7 @@ PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times gimple "(?n)#pr PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(from:\\*\\(integer\\(kind=.\\)\\[0:\\] \\*\\) parm\\.1\\.data \\[len: [^\\]]+\\]\\) map\\(to:cpo_f_p \\[pointer set, len: [0-9]+\\]\\) map\\(alloc:\\(integer\\(kind=1\\)\\[0:\\] \\* restrict\\) cpo_f_p\\.data \\[pointer assign, bias: \\(.*int.*\\) parm\\.1\\.data - \\(.*int.*\\) cpo_f_p\\.data\\]\\) finalize;$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(from:cpo_f\\) finalize;$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(from:cpo_r\\);$" 1 [-PASS:-]{+FAIL:+} gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(release:\\*\\(integer\\(kind=.\\)\\[0:\\] \\*\\) parm\\.0\\.data \\[len: [^\\]]+\\]\\) map\\(to:del_f_p \\[pointer set, len: [0-9]+\\]\\) map\\(alloc:\\(integer\\(kind=1\\)\\[0:\\] \\* restrict\\) del_f_p\\.data \\[pointer assign, bias: \\(.*int.*\\) parm\\.0\\.data - \\(.*int.*\\) del_f_p\\.data\\]\\) finalize;$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(release:del_f\\) finalize;$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O scan-tree-dump-times original "(?n)#pragma acc exit data map\\(release:del_r\\);$" 1 PASS: gfortran.dg/goacc/finalize-1.f -O (test for excess errors) [-PASS:-]{+FAIL:+} gfortran.dg/gomp/pr78260-2.f90 -O scan-tree-dump-times original "#pragma omp target data map\\(tofrom:\\*\\(integer\\(kind=4\\)\\[0:\\] \\* restrict\\) __result->data \\[len: D.[0-9]+ \\* 4\\]\\) map\\(to:\\*__result \\[pointer set, len: ..\\]\\) map\\(alloc:\\(integer\\(kind=4\\)\\[0:\\] \\* restrict\\) __result->data \\[pointer assign, bias: 0\\]\\) map\\(alloc:__result \\[pointer assign, bias: 0\\]\\)" 1 [-PASS:-]{+FAIL:+} gfortran.dg/gomp/pr78260-2.f90 -O scan-tree-dump-times original "#pragma omp target data map\\(tofrom:\\*\\(integer\\(kind=4\\)\\[0:\\] \\* restrict\\) arr.data \\[len: D.[0-9]+ \\* 4\\]\\) map\\(to:arr \\[pointer set, len: ..\\]\\) map\\(alloc:\\(integer\\(kind=4\\)\\[0:\\] \\* restrict\\) arr.data \\[pointer assign, bias: 0\\]\\)" 1 PASS: gfortran.dg/gomp/pr78260-2.f90 -O scan-tree-dump-times original "#pragma omp target data map\\(tofrom:\\*__result.0\\) map\\(alloc:__result.0 \\[pointer assign, bias: 0\\]\\)" 2 PASS: gfortran.dg/gomp/pr78260-2.f90 -O scan-tree-dump-times original "#pragma omp target data map\\(tofrom:__result_f1\\)" 1 PASS: gfortran.dg/gomp/pr78260-2.f90 -O scan-tree-dump-times original "#pragma omp target update to\\(\\*\\(integer\\(kind=4\\)\\[0:\\] \\* restrict\\) __result->data \\[len: D.[0-9]+ \\* 4\\]\\)" 1 Do to the scan patterns need adjusting, or is something wrong? Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955