Hi, > I'm not familiar with the test suite in question, does it seem related to the > test issue addressed in https://github.com/llvm/llvm-project/pull/133128? > Or does it seem like it's caused by enabling the slp-vectorizer pass in the > O3 pipeline where it was not enabled previously?
Thank you for paying attention. It is caused by enabling the slp-vectorizer pass. Failing tests are the following. https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0105/0105_0223.f90 https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0631/0631_0051.f https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0631/0631_0054.f Compiler flags are the following. flang -O3 -mcpu=neoverse-v1 -msve-vector-bits=scalable -mllvm -scalable-vectorization=preferred -mllvm -treat-scalable-fixed-error-as-warning=false -mllvm -aarch64-enable-pipeliner -mllvm -pipeliner-mve-cg -DNDEBUG -fstack-arrays 0631_0051.f and 0631_0054.f seem to fail by miscompiling. Output of ot test execution differs form the expected one. 0105_0223.f90 fails by an assertion failure in the backend. flang: llvm/include/llvm/CodeGen/SlotIndexes.h:626: void llvm::SlotIndexes::insertMBBInMaps(llvm::MachineBasicBlock*): Assertion `unsigned(mbb->getNumber()) == MBBRanges.size() && "Blocks must be added in order"' failed. PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. Stack dump: 0. Program arguments: bin/flang -fc1 -triple aarch64-unknown-linux-gnu -emit-obj -D NDEBUG -fcolor-diagnostics -mrelocation-model pic -pic-level 2 -pic-is-pie -target-cpu neoverse-v1 -target-feature +outline-atomics -target-feature +v8.4a -target-feature +aes -target-feature +bf16 -target-feature +ccdp -target-feature +ccidx -target-feature +ccpp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fullfp16 -target-feature +i8mm -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +rand -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sha2 -target-feature +sha3 -target-feature +sm4 -target-feature +spe -target-feature +ssbs -target-feature +sve -fstack-arrays -vectorize-loops -vectorize-slp -fversion-loops-for-stride -resource-dir lib/clang/21 -mframe-pointer=non-leaf -mllvm -scalable-vectorization=preferred -mllvm -treat-scalable-fixed-error-as-warning=false -mllvm -aarch64-enable-pipeliner -mllvm -pipeliner-mve-cg -O3 -o /tmp/0105_0223-ecece4.o -x f95-cpp-input Fortran/0105/0105_0223.f90 1. Running pass 'Function Pass Manager' on module 'FIRModule'. 2. Running pass 'Modulo Software Pipelining' on function '@_QQmain' #0 0x0000ffff9245ba28 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (lib/libLLVMSupport.so.21.0git+0x25ba28) #1 0x0000ffff92459110 llvm::sys::RunSignalHandlers() (lib/libLLVMSupport.so.21.0git+0x259110) #2 0x0000ffff92459278 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0 #3 0x0000ffff947307a0 (linux-vdso.so.1+0x7a0) #4 0x0000ffff91e27608 (/lib/aarch64-linux-gnu/libc.so.6+0x87608) #5 0x0000ffff91ddcb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c) #6 0x0000ffff91dc7e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00) #7 0x0000ffff91dd5cc0 (/lib/aarch64-linux-gnu/libc.so.6+0x35cc0) #8 0x0000ffff91dd5d30 __assert_perror_fail (/lib/aarch64-linux-gnu/libc.so.6+0x35d30) #9 0x0000ffff90da2ccc llvm::SlotIndexes::insertMBBInMaps(llvm::MachineBasicBlock*) MachineBasicBlock.cpp:0:0 #10 0x0000ffff90fa7784 llvm::ModuloScheduleExpander::generateProlog(unsigned int, llvm::MachineBasicBlock*, llvm::DenseMap<llvm::Register, llvm::Register, llvm::DenseMapInfo<llvm::Register, void>, llvm::detail::DenseMapPair<llvm::Register, llvm::Register>>*, llvm::SmallVectorImpl<llvm::MachineBasicBlock*>&) (lib/libLLVMCodeGen.so.21.0git+0x787784) #11 0x0000ffff90fa80d8 llvm::ModuloScheduleExpander::generatePipelinedLoop() (lib/libLLVMCodeGen.so.21.0git+0x7880d8) #12 0x0000ffff90ed96c0 llvm::SwingSchedulerDAG::schedule() (lib/libLLVMCodeGen.so.21.0git+0x6b96c0) #13 0x0000ffff90ed9f94 llvm::MachinePipeliner::swingModuloScheduler(llvm::MachineLoop&) (lib/libLLVMCodeGen.so.21.0git+0x6b9f94) #14 0x0000ffff90eda498 llvm::MachinePipeliner::scheduleLoop(llvm::MachineLoop&) (lib/libLLVMCodeGen.so.21.0git+0x6ba498) #15 0x0000ffff90eda7bc llvm::MachinePipeliner::runOnMachineFunction(llvm::MachineFunction&) (lib/libLLVMCodeGen.so.21.0git+0x6ba7bc) #16 0x0000ffff90e3b1f0 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) MachineFunctionPass.cpp:0:0 #17 0x0000ffff8f5e48b8 llvm::FPPassManager::runOnFunction(llvm::Function&) (lib/libLLVMCore.so.21.0git+0x4948b8) #18 0x0000ffff8f5e4abc llvm::FPPassManager::runOnModule(llvm::Module&) (lib/libLLVMCore.so.21.0git+0x494abc) #19 0x0000ffff8f5e5720 llvm::legacy::PassManagerImpl::run(llvm::Module&) (lib/libLLVMCore.so.21.0git+0x495720) #20 0x0000ffff930ef0bc Fortran::frontend::CodeGenAction::executeAction() (lib/libflangFrontend.so.21.0git+0x12f0bc) #21 0x0000ffff930d977c Fortran::frontend::FrontendAction::execute() (lib/libflangFrontend.so.21.0git+0x11977c) #22 0x0000ffff9301426c Fortran::frontend::CompilerInstance::executeAction(Fortran::frontend::FrontendAction&) (lib/libflangFrontend.so.21.0git+0x5426c) #23 0x0000ffff93595934 Fortran::frontend::executeCompilerInvocation(Fortran::frontend::CompilerInstance*) (lib/libflangFrontendTool.so.21.0git+0x15934) #24 0x0000aaaadf8259f4 fc1_main(llvm::ArrayRef<char const*>, char const*) (bin/flang+0x159f4) #25 0x0000aaaadf8252f8 main (bin/flang+0x152f8) #26 0x0000ffff91dc84c4 (/lib/aarch64-linux-gnu/libc.so.6+0x284c4) #27 0x0000ffff91dc8598 __libc_start_main (/lib/aarch64-linux-gnu/libc.so.6+0x28598) #28 0x0000aaaadf8236b0 _start (bin/flang+0x136b0) I don't know where the root cause exists. Regards, Takahiro Kawashima, Fujitsu > ________________________________ > Von: ci_not...@linaro.org <ci_not...@linaro.org> > Gesendet: Freitag, März 28, 2025 1:21:30 AM > An: ohno.yasuy...@fujitsu.com <ohno.yasuy...@fujitsu.com>; > itou.tets...@fujitsu.com <itou.tets...@fujitsu.com>; t-kawash...@fujitsu.com > <t-kawash...@fujitsu.com> > Cc: Kajetan Puchalski <kajetan.puchal...@arm.com>; maxim.kuvyr...@linaro.org > <maxim.kuvyr...@linaro.org> > Betreff: [Linaro-TCWG-CI] llvmorg-21-init-6480-g529c5b71c608: 3 regressions 2 > improvements on aarch64 > > Dear contributor, > > Our automatic CI has detected problems related to your patch(es). Please find > some details below. > > In > tcwg_flang_test/main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays, > after: > | commit llvmorg-21-init-6480-g529c5b71c608 > | Author: Kajetan Puchalski <kajetan.puchal...@arm.com> > | Date: Wed Mar 26 16:10:35 2025 +0000 > | > | [flang] Add -f[no-]slp-vectorize flags (#132801) > | > | Add -f[no-]slp-vectorize to the flang driver. > | Add corresponding -fvectorize-slp to the flang frontend. > | > | ... 6 lines of the commit log omitted. > > Produces 3 regressions 2 improvements: > | > | regressions.sum: > | Running test-suite:Fujitsu/Fortran/0105 ... > | NOEXE: test-suite :: Fujitsu/Fortran/0105/Fujitsu-Fortran-0105_0223.test > | Running test-suite:Fujitsu/Fortran/0631 ... > | FAIL: test-suite :: Fujitsu/Fortran/0631/Fujitsu-Fortran-0631_0051.test > | FAIL: test-suite :: Fujitsu/Fortran/0631/Fujitsu-Fortran-0631_0054.test > | # "NOEXE" means : the test program cannot be compiled > | # "FAIL" means : the execution of the compiled binary failed / output of > the binary differs from the expected one > | > | improvements.sum: > | Running test-suite:Fujitsu/Fortran/0347 ... > | FAIL: test-suite :: Fujitsu/Fortran/0347/Fujitsu-Fortran-0347_0083.test > | Running test-suite:Fujitsu/Fortran/0675 ... > | FAIL: test-suite :: Fujitsu/Fortran/0675/Fujitsu-Fortran-0675_0315.test > | # "NOEXE" means : the test program cannot be compiled > | # "FAIL" means : the execution of the compiled binary failed / output of > the binary differs from the expected one > > Used configuration : > * 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 : export > LD_LIBRARY_PATH=$\WORKSPACE/llvm-install/lib/aarch64-unknown-linux-gnu$\{LD_LIBRARY_PATH:+:$\LD_LIBRARY_PATH} > 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 -mcpu=neoverse-v1 > -msve-vector-bits=scalable -mllvm -scalable-vectorization=preferred -mllvm > -treat-scalable-fixed-error-as-warning=false -mllvm -aarch64-enable-pipeliner > -mllvm -pipeliner-mve-cg -DNDEBUG" -DCMAKE_CXX_FLAGS_RELEASE="-O3 > -mcpu=neoverse-v1 -msve-vector-bits=scalable -mllvm > -scalable-vectorization=preferred -mllvm > -treat-scalable-fixed-error-as-warning=false -mllvm -aarch64-enable-pipeliner > -mllvm -pipeliner-mve-cg -DNDEBUG" -DCMAKE_Fortran_FLAGS_RELEASE="-O3 > -mcpu=neoverse-v1 -msve-vector-bits=scalable -mllvm > -scalable-vectorization=preferred -mllvm > -treat-scalable-fixed-error-as-warning=false -mllvm -aarch64-enable-pipeliner > -mllvm -pipeliner-mve-cg -DNDEBUG -fstack-arrays" -DTEST_SUITE_FORTRAN=ON > -DTEST_SUITE_SUBDIRS=Fujitsu "$\WORKSPACE/test/test-suite" > > We track this bug report under https://linaro.atlassian.net/browse/LLVM-1644. > Please let us know if you have a fix. > > If you have any questions regarding this report, please ask on > linaro-toolchain@lists.linaro.org 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 > * > https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays-build/668/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-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays-build/668/artifact/artifacts/notify/ > The list of [ignored] baseline and flaky failures are in > * > https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays-build/668/artifact/artifacts/sumfiles/xfails.xfail > > Fujitsu testsuite : https://github.com/fujitsu/compiler-test-suite/ > > Current build : > https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays-build/668/artifact/artifacts > Reference build : > https://ci.linaro.org/job/tcwg_flang_test--main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays-build/667/artifact/artifacts > > Instruction to reproduce the build : > https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/sha1/529c5b71c608c18141432e6fd0ae89242d5f309d/tcwg_flang_test/main-aarch64-O3-neoverse_v1-sve_vla-mpipeliner-stack_arrays/reproduction_instructions.txt > > Full commit : > https://github.com/llvm/llvm-project/commit/529c5b71c608c18141432e6fd0ae89242d5f309d > > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. _______________________________________________ linaro-toolchain mailing list -- linaro-toolchain@lists.linaro.org To unsubscribe send an email to linaro-toolchain-le...@lists.linaro.org