RE: [Linaro-TCWG-CI] llvmorg-20-init-8878-g367c3c968eb8: FAIL: 2 regressions on aarch64
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 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 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 | 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
Re: [Linaro-TCWG-CI] llvmorg-20-init-8878-g367c3c968eb8: FAIL: 2 regressions on aarch64
Hi, Thanks for your explanation! I closed the issue. https://linaro.atlassian.net/browse/LLVM-1398 Takahiro Kawashima, Fujitsu > 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 > 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 > 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 > | 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<--
Re: [Linaro-TCWG-CI] llvmorg-20-init-8878-g367c3c968eb8: FAIL: 2 regressions on aarch64
Thanks, Jean for bringing this to our attention. David Truby is working on adding support on Aarch64 and we expect it to land before LLVM20. --Kiran From: Jean Perier Sent: 15 October 2024 09:25 To: linaro-toolchain@lists.linaro.org ; ohno.yasuy...@fujitsu.com ; itou.tets...@fujitsu.com ; t-kawash...@fujitsu.com Cc: maxim.kuvyr...@linaro.org ; Kiran Chandramohan Subject: RE: [Linaro-TCWG-CI] llvmorg-20-init-8878-g367c3c968eb8: FAIL: 2 regressions on aarch64 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 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 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 | 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/tc