On 9/8/26 9:44 AM, Jerry D wrote:
I have been getting regression reports from the linaro testing bots.

My last commit was a oneliner.  Seems these are issues with alignment on other platforms.

I am working on these.


I plan to commit the attached patch which fixes a couple of test cases to be less restrictive in the scan checks.

Regards,

Jerry

---
    fortran: [PR126964] Do not expect span addressing of a target

    Adjust test cases so they do not fail on some platforms by
    dropping the span addressing.

            PR fortran/126964

    gcc/testsuite/ChangeLog:

            * gfortran.dg/c_loc_test_22.f90: Do not expect span addressing
            where the spacing is not known to be folded.
            * gfortran.dg/gomp/target-span-1.f90: Likewise.


Here is the latest:

Dear contributor,

Our automatic CI has detected problems related to your patch(es). Please find some details below.

In  armv8l-unknown-linux-gnueabihf native, after:
   | commit gcc-17-3980-g81092921c639
   | Author: Jerry DeLisle <[email protected]>
   | Date:   Mon Sep 7 14:24:57 2026 -0700
   |
   |     fortran: [PR126964] Fold the element spacing on the field alignment
   |
   |     A target can align a component less strictly than its type: the i386
   |     ABI aligns a real(8) component to 4, so the spacing of one is not 
always a
   |     multiple of 8.  Compare against min_align_of_type instead.
   | ... 19 lines of the commit log omitted.

Produces 1 regression:
   |
   | regressions.sum:
   | Running gfortran:gfortran.dg/gomp/gomp.exp ...
  | FAIL: gfortran.dg/gomp/target-span-1.f90 -O   scan-tree-dump original "t. [0-9]+ \\+ \\(sizetype\\) \\(\\(offset.[0-9]+ \\+ [^)]*stride.[0-9]+[^)]*\\) \\* span.[0-9]+\\)"

Used configuration :
  *CI config* tcwg_gcc_check armv8l-unknown-linux-gnueabihf
 *configure and test flags:* none, autodetected on armv8l-unknown-linux- gnueabihf--disable-multilib --with-float=hard --with-mode=thumb --with- tune=cortex-a9 --with-arch=armv7-a --with-fpu=neon-fp-armv8

We track this bug report under https://linaro.atlassian.net/browse/GNU-2026. (Require Linaro login) Please let us know if you have a fix.

If you have any questions regarding this report, please ask on linaro- [email protected] mailing list.

-----------------8<--------------------------8<--------------------------8<--------------------------

The information below contains the details of the failures, and the ways to reproduce a debug environment:

You can find the failure logs in *.log.1.xz files in
 * http://54.172.246.49:9090/jobs/tcwg_gcc_check--master-arm-build/ builds/10639/archive/artifacts/00-sumfiles/ The full lists of regressions and improvements as well as configure and make commands are in  * http://54.172.246.49:9090/jobs/tcwg_gcc_check--master-arm-build/ builds/10639/archive/artifacts/notify/
The list of [ignored] baseline and flaky failures are in
 * http://54.172.246.49:9090/jobs/tcwg_gcc_check--master-arm-build/ builds/10639/archive/artifacts/sumfiles/xfails.xfail

Current build   : http://54.172.246.49:9090/jobs/tcwg_gcc_check--master-arm- build/builds/10639/archive/artifacts/ Reference build : http://54.172.246.49:9090/jobs/tcwg_gcc_check--master-arm- build/builds/10638/archive/artifacts/

Instruction to reproduce the build : https://gitlab.com/LinaroLtd/tcwg/ci/ interesting-commits/-/raw/master/gcc/ sha1/81092921c6393d4ed39aacb354228c55fc406d52/tcwg_gcc_check/master-arm/ reproduction_instructions.txt

Full commit : See in git+ssh://[email protected]/git/gcc.git

commit e5a350a16258bdbfa49c8ae10d40aa4226ccc424
Author: Jerry DeLisle <[email protected]>
Date:   Tue Sep 8 09:57:23 2026 -0700

    fortran: [PR126964] Do not expect span addressing of a target
    
    Adjust test cases so they do not fail on some platforms by
    dropping the span addressing.
    
            PR fortran/126964
    
    gcc/testsuite/ChangeLog:
    
            * gfortran.dg/c_loc_test_22.f90: Do not expect span addressing
            where the spacing is not known to be folded.
            * gfortran.dg/gomp/target-span-1.f90: Likewise.

diff --git a/gcc/testsuite/gfortran.dg/c_loc_test_22.f90 b/gcc/testsuite/gfortran.dg/c_loc_test_22.f90
index 5a7172d952c..ba2e38e3fb3 100644
--- a/gcc/testsuite/gfortran.dg/c_loc_test_22.f90
+++ b/gcc/testsuite/gfortran.dg/c_loc_test_22.f90
@@ -25,8 +25,5 @@ end
 ! { dg-final { scan-tree-dump-not "span.\[0-9\]+ = yyy->span;" "original" { target natural_alignment_32 } } }
 ! { dg-final { scan-tree-dump-times "parm.\[0-9\]+.data = \\(void .\\) yyy.\[0-9\]+;" 1 "original" { target natural_alignment_32 } } }
 ! { dg-final { scan-tree-dump-times "parm.\[0-9\]+.data = \\(void .\\) yyy.\[0-9\]+ \\+ \\(sizetype\\) \\(D.\[0-9\]+ \\* 16\\);" 1 "original" { target natural_alignment_32 } } }
-! { dg-final { scan-tree-dump-times "parm.\[0-9\]+.data = \\(void .\\) &\\(.yyy.\[0-9\]+\\)\\\[0\\\];" 1 "original" { target { ! natural_alignment_32 } } } }
-! { dg-final { scan-tree-dump-times "span.\[0-9\]+ = yyy->span;" 1 "original" { target { ! natural_alignment_32 } } } }
-! { dg-final { scan-tree-dump-times "parm.\[0-9\]+.data = \\(void .\\) yyy.\[0-9\]+ \\+ \\(sizetype\\) \\(\\(D.\[0-9\]+ \\* span.\[0-9\]+\\) \\* 4\\);" 1 "original" { target { ! natural_alignment_32 } } } }
 
 ! { dg-final { scan-tree-dump-times "D.\[0-9\]+ = parm.\[0-9\]+.data;\[^;]+ptr\[1-4\] = D.\[0-9\]+;" 4 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/gomp/target-span-1.f90 b/gcc/testsuite/gfortran.dg/gomp/target-span-1.f90
index 27a9de573a6..c0d9d7e7da1 100644
--- a/gcc/testsuite/gfortran.dg/gomp/target-span-1.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/target-span-1.f90
@@ -30,6 +30,4 @@ end module m
 ! { dg-final { scan-tree-dump-times "= t->span;" 1 "original" } }
 ! { dg-final { scan-tree-dump "stride\.\[0-9\]+ = \[^;\]* != 8 \\? stride\.\[0-9\]+ \\* \[^;\]* : stride\.\[0-9\]+;" "original" { target natural_alignment_64 } } }
 ! { dg-final { scan-tree-dump "t\.\[0-9\]+ \\+ \\(sizetype\\) \\(\\(offset\.\[0-9\]+ \\+ \[^)\]*stride\.\[0-9\]+\[^)\]*\\) \\* 8\\)" "original" { target natural_alignment_64 } } }
-! Elsewhere the reference uses that local span, not the descriptor.
-! { dg-final { scan-tree-dump "t\.\[0-9\]+ \\+ \\(sizetype\\) \\(\\(offset\.\[0-9\]+ \\+ \[^)\]*stride\.\[0-9\]+\[^)\]*\\) \\* span\.\[0-9\]+\\)" "original" { target { ! natural_alignment_64 } } } }
 ! { dg-final { scan-tree-dump-not "\\* t->span" "original" } }

Reply via email to