Hi there!

These are legitimate regressions: the code compiled to bogus BIND(C) ABI that 
only worked when using with Fortran to Fortran. A TODO is now correctly emitted 
until the proper ABI is implemented.

In Fujitsu-Fortran-0379_0074

```
function strfunc() bind(C)
    type,bind(C) :: str
      integer :: iii
    end type
    type(str) :: strfunc
  end function
end interface
type,bind(C) :: str
  integer :: iii
end type
````

Previously, the result was passed in as a hidden extra argument, like it is 
done in normal Fortran ABI. On ARM, the equivalent C code is returned in 
registered as far as I can see: https://godbolt.org/z/nec6jbhYM

0384_0028.f90 also has BIND(C) function returning such BIND(C) types.

So, both tests should not be run on ARM, or should expect a TODO error message 
until the feature is implemented on ARM.

Jean



-----Original Message-----
From: ci_not...@linaro.org <ci_not...@linaro.org>
Sent: Monday, October 14, 2024 11:23 PM
To: ohno.yasuy...@fujitsu.com; itou.tets...@fujitsu.com; t-kawash...@fujitsu.com
Cc: maxim.kuvyr...@linaro.org; Jean Perier <jper...@nvidia.com>
Subject: [Linaro-TCWG-CI] llvmorg-20-init-8878-g367c3c968eb8: FAIL: 2 
regressions on aarch64

External email: Use caution opening links or attachments


Dear contributor, our automatic CI has detected problems related to your 
patch(es).  Please find some details below.  If you have any questions, please 
follow up on linaro-toolchain@lists.linaro.org mailing list, Libera's 
#linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the 
usual project channel.

We understand that it might be difficult to find the necessary logs or 
reproduce the issue locally. If you can't get what you need from our CI within 
minutes, let us know and we will be happy to help.

We track this report status in https://linaro.atlassian.net/browse/LLVM-1398 , 
please let us know if you are looking at the problem and/or when you have a fix.

In CI config tcwg_flang_test/main-aarch64-Ofast-sve_vls-lto-lld after:

  | commit llvmorg-20-init-8878-g367c3c968eb8
  | Author: jeanPerier <jper...@nvidia.com>
  | Date:   Mon Oct 14 09:35:29 2024 +0200
  |
  |     [flang] correctly deal with bind(c) derived type result ABI (#111969)
  |
  |     Derived type results of BIND(C) function should be returned according
  |     the the C ABI for returning the related C struct type.
  |
  | ... 15 lines of the commit log omitted.

FAIL: 2 regressions
The configuration of this build is:
 * Toolchain : cmake -G Ninja  ../llvm/llvm 
"-DLLVM_ENABLE_PROJECTS=clang;lld;flang;openmp;clang-tools-extra"     
-DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=True        
-DCMAKE_INSTALL_PREFIX=../llvm-install          
"-DLLVM_TARGETS_TO_BUILD=AArch64" -DCLANG_DEFAULT_LINKER=lld
 * Testsuite : cmake -GNinja    
-DCMAKE_C_COMPILER="$WORKSPACE/llvm-install/bin/clang"  
-DCMAKE_CXX_COMPILER="$WORKSPACE/llvm-install/bin/clang++"      
-DCMAKE_Fortran_COMPILER="$WORKSPACE/llvm-install/bin/flang-new"        
-DCMAKE_BUILD_TYPE=Release      -DCMAKE_C_FLAGS= -DCMAKE_CXX_FLAGS= 
-DCMAKE_Fortran_FLAGS=      -DCMAKE_C_FLAGS_RELEASE="-O3 -ffast-math 
-march=armv8.4-a+sve -msve-vector-bits=256 -mllvm 
-treat-scalable-fixed-error-as-warning=false -flto -DNDEBUG"         
-DCMAKE_CXX_FLAGS_RELEASE="-O3 -ffast-math -march=armv8.4-a+sve 
-msve-vector-bits=256 -mllvm -treat-scalable-fixed-error-as-warning=false -flto 
-DNDEBUG"       -DCMAKE_Fortran_FLAGS_RELEASE="-O3 -ffast-math 
-march=armv8.4-a+sve -msve-vector-bits=256 -mllvm 
-treat-scalable-fixed-error-as-warning=false -flto -DNDEBUG"   
-DTEST_SUITE_FORTRAN=ON         -DTEST_SUITE_SUBDIRS=Fujitsu    
"$WORKSPACE/test/test-suite"

regressions.sum:
  |             === test-suite tests ===
  |
  | Running test-suite:Fujitsu/Fortran/0379 ...
  | NOEXE: test-suite :: Fujitsu/Fortran/0379/Fujitsu-Fortran-0379_0074.test
  |
  | Running test-suite:Fujitsu/Fortran/0384 ...
  | NOEXE: test-suite :: Fujitsu/Fortran/0384/Fujitsu-Fortran-0384_0028.test
  |
  | # "NOEXE" means : the test program cannot be compiled

You can find the failure logs in *.log.1.xz files in
 * 
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vls-lto-lld-build/938/artifact/artifacts/00-sumfiles/
The full lists of regressions and improvements as well as configure and make 
commands are in
 * 
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vls-lto-lld-build/938/artifact/artifacts/notify/
The list of [ignored] baseline and flaky failures are in
 * 
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vls-lto-lld-build/938/artifact/artifacts/sumfiles/xfails.xfail

-----------------8<--------------------------8<--------------------------8<--------------------------
The information below can be used to reproduce a debug environment:

Current build   : 
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vls-lto-lld-build/938/artifact/artifacts
Reference build : 
https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-Ofast-sve_vls-lto-lld-build/937/artifact/artifacts

Fujitsu testsuite : https://github.com/fujitsu/compiler-test-suite/

Instruction to reproduce the build : 
https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/367c3c968eb8f29b55fb8019b2464c7ff6307ca8/tcwg_flang_test/main-aarch64-Ofast-sve_vls-lto-lld/reproduction_instructions.txt

Full commit : 
https://github.com/llvm/llvm-project/commit/367c3c968eb8f29b55fb8019b2464c7ff6307ca8
_______________________________________________
linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org
To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org

Reply via email to