]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
OpenMP/Fortran: Fix map-subarray testcases [PR120505]
authorPaul-Antoine Arras <parras@baylibre.com>
Mon, 23 Feb 2026 17:55:16 +0000 (18:55 +0100)
committerPaul-Antoine Arras <parras@baylibre.com>
Mon, 23 Feb 2026 18:03:36 +0000 (19:03 +0100)
The fix for PR120505 introduced two test failures on some configurations.

This patch update the scan dump pattern in map-subarray-4.f90 to allow for
differing pointer sizes, and disable map-subarray-16.f90 when no offload device
is available.

PR fortran/120505

libgomp/ChangeLog:

* testsuite/libgomp.fortran/map-subarray-16.f90: Enable test only for
offload device.

gcc/testsuite/ChangeLog:

* gfortran.dg/gomp/map-subarray-4.f90: Update scan dumps for -m32.

gcc/testsuite/gfortran.dg/gomp/map-subarray-4.f90
libgomp/testsuite/libgomp.fortran/map-subarray-16.f90

index 31db184733bcc92645160d29b8626f2fbf5e558d..848953fd6b1bd573aaf5f7ae3f6dae51dbbc9022 100644 (file)
@@ -25,10 +25,10 @@ var%tiles(1)%den2 = reshape([11,22,33,44],[2,2])
 
 !$omp target enter data map(var%tiles(1)%den2, var%tiles(1)%den1)
 
-! { dg-final { scan-tree-dump { map\(struct_unord:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\] \[len: 2\]\) map\(to:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den1 \[pointer set, len: 88\]\) map\(to:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den2 \[pointer set, len: 88\]\) } "gimple" } }
+! { dg-final { scan-tree-dump { map\(struct_unord:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\] \[len: 2\]\) map\(to:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den[12] \[pointer set, len: (?:48|88)]\) map\(to:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den[12] \[pointer set, len: (?:48|88)\]\) } "gimple" } }
 
 !$omp target exit data map(var%tiles(1)%den2, var%tiles(1)%den1)
 
-! { dg-final { scan-tree-dump { map\(release:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den1 \[pointer set, len: 88\]\) map\(release:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den2 \[pointer set, len: 88\]\) } "gimple" } }
+! { dg-final { scan-tree-dump { map\(release:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den[12] \[pointer set, len: (?:48|88)\]\) map\(release:MEM <struct t\[0:\]> \[\(struct t\[0:\] \*\)_[0-9]+\]\[_[0-9]+\]\.den[12] \[pointer set, len: (?:48|88)\]\) } "gimple" } }
 
 end
index bbf452e34b8221b9ade4d3b75d2b5c53a0798340..4d78561796c100577db49f4f2b4ce92b3d179b5f 100644 (file)
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target { offload_device } } }
 ! { dg-shouldfail "PR124178 TODO" }
 
 ! PR fortran/120505