llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
28.66k stars 11.85k forks source link

clang++ 17.0.1: fatal error: error in backend: Do not know how to expand the result of this operator! #67735

Open justusranvier opened 1 year ago

justusranvier commented 1 year ago

When testing the 17.0.1 version I get similar crashes while compiling several unit tests that I've never seen before with earlier versions of clang.

fatal error: error in backend: Do not know how to expand the result of this operator!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /usr/lib/llvm/17/bin/clang++ -DBOOST_CONTAINER_DYN_LINK -DBOOST_CONTAINER_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_STACKTRACE_BASIC_DYN_LINK -DBOOST_STACKTRACE_BASIC_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THREAD_NO_LIB -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -DOT_QT=1 -DOT_STORAGE_FS=1 -DOT_STORAGE_LMDB=1 -DOT_STORAGE_SQLITE=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_QML_LIB -DTBB_USE_DEBUG -Dlibopentxs_EXPORTS -Dopentxs_testlib_EXPORTS -I/home/user/src/opentxs/generated/tests/xxd -I/home/user/src/opentxs/tests -I/home/user/build/opentxs-nopch-clang/include -I/home/user/src/opentxs/include -I/home/user/build/opentxs-nopch-clang/src -I/home/user/src/opentxs/src -I/home/user/src/opentxs/deps/secp256k1/include -isystem /home/user/src/opentxs/deps -isystem /home/user/src/opentxs/deps/cs_libguarded/src -isystem /home/user/src/opentxs/deps/frozen/include -isystem /home/user/src/opentxs/deps/robin-hood/src/include -isystem /home/user/src/opentxs/deps/unordered_dense/include -isystem /home/user/src/opentxs/deps/ChaiScript/include -isystem /home/user/build/opentxs-nopch-clang/generated/otprotob -isystem /home/user/build/opentxs-nopch-clang/generated/protobuf -isystem /home/user/src/opentxs/deps/argon2 -isystem /home/user/src/opentxs/deps/packetcrypt -isystem /home/user/src/opentxs/deps/packetcrypt/packetcrypt_rs/packetcrypt-sys/packetcrypt/include -isystem /home/user/src/opentxs/deps/lucre/include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem /home/user/src/opentxs/deps/bech32/ref/c++ -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtQml -isystem /usr/include/qt5/QtNetwork -Og -ggdb -g -std=c++20 -fPIC -W -Wall -Wextra -Wno-pragmas -Wno-unknown-pragmas -pedantic -Werror -pedantic-errors -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-inline-namespace-reopened-noninline -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-padded -Wno-undefined-func-template -Wno-unknown-warning-option -Wno-weak-template-vtables -Wno-weak-vtables -fno-char8_t -fwrapv -Wno-c++20-compat -Wno-deprecated-declarations -Wno-implicit-int-conversion -Wno-noexcept -Wno-return-std-move-in-c++11 -Wno-sign-conversion -Wno-switch-enum -Wno-unused-parameter -Wno-reserved-macro-identifier -Wno-unsafe-buffer-usage -Wno-suggest-destructor-override -fPIC -MD -MT CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o -MF CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o.d -o CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o -c /home/user/src/opentxs/tests/ottest/fixtures/ui/Qt.cpp
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module '/home/user/src/opentxs/tests/ottest/fixtures/ui/Qt.cpp'.
4.      Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZNKSt8__format14__formatter_fpIcE6formatIgNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_'
 #0 0x00003fc53b123a8c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb53a8c)
 #1 0x00003fc53b121050 llvm::sys::RunSignalHandlers() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb51050)
 #2 0x00003fc53b012e60 llvm::CrashRecoveryContext::HandleExit(int) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa42e60)
 #3 0x00003fc53b119d3c llvm::sys::Process::Exit(int, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb49d3c)
 #4 0x0000008adc556338 (/usr/lib/llvm/17/bin/clang+++0x16338)
 #5 0x00003fc53b02aa64 llvm::report_fatal_error(llvm::Twine const&, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa5aa64)
 #6 0x00003fc53b02acdc llvm::report_fatal_error(char const*, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa5acdc)
 #7 0x00003fc53bb4014c (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x157014c)
 #8 0x00003fc53bb94484 (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x15c4484)
 #9 0x00003fc53bb948c0 llvm::SelectionDAG::LegalizeTypes() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x15c48c0)
#10 0x00003fc53bcfaf58 llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172af58)
#11 0x00003fc53bcfd3b8 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172d3b8)
#12 0x00003fc53bcff854 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172f854)
#13 0x00003fc53f2256e0 (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x4c556e0)
#14 0x00003fc53b67e978 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x10ae978)
#15 0x00003fc53b2f4a30 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd24a30)
#16 0x00003fc53b2f4e24 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd24e24)
#17 0x00003fc53b2f5734 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd25734)
#18 0x00003fc5450d0594 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x20e0594)
#19 0x00003fc54553e724 (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x254e724)
#20 0x00003fc543abcb1c clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0xaccb1c)
#21 0x00003fc546060214 clang::ASTFrontendAction::ExecuteAction() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x3070214)
#22 0x00003fc54553eb3c clang::CodeGenAction::ExecuteAction() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x254eb3c)
#23 0x00003fc5460658c4 clang::FrontendAction::Execute() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x30758c4)
#24 0x00003fc545fefed0 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2fffed0)
#25 0x00003fc5460f9e68 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x3109e68)
#26 0x0000008adc558b3c cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm/17/bin/clang+++0x18b3c)
#27 0x0000008adc552aac (/usr/lib/llvm/17/bin/clang+++0x12aac)
#28 0x00003fc545be5758 (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bf5758)
#29 0x00003fc53b012cb8 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa42cb8)
#30 0x00003fc545be86f0 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bf86f0)
#31 0x00003fc545ba48fc clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bb48fc)
#32 0x00003fc545ba52e0 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bb52e0)
#33 0x00003fc545bbab48 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bcab48)
#34 0x0000008adc554ea4 clang_main(int, char**, llvm::ToolContext const&) (/usr/lib/llvm/17/bin/clang+++0x14ea4)
#35 0x0000008adc54e61c main (/usr/lib/llvm/17/bin/clang+++0xe61c)
#36 0x00003fc539fd4bac (/usr/lib64/libc.so.6+0x24bac)
#37 0x00003fc539fd4dec __libc_start_main (/usr/lib64/libc.so.6+0x24dec)
clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
clang version 17.0.1
Target: powerpc64le-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/17/bin
Configuration file: /etc/clang/powerpc64le-unknown-linux-gnu-clang++.cfg
clang++: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang++: note: diagnostic msg: /tmp/Qt-618e32.cpp
clang++: note: diagnostic msg: /tmp/Qt-618e32.sh
clang++: note: diagnostic msg: 

********************
justusranvier commented 1 year ago

files.tar.gz

llvmbot commented 1 year ago

@llvm/issue-subscribers-backend-powerpc

When testing the 17.0.1 version I get similar crashes while compiling several unit tests that I've never seen before with earlier versions of clang. ``` fatal error: error in backend: Do not know how to expand the result of this operator! PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script. Stack dump: 0. Program arguments: /usr/lib/llvm/17/bin/clang++ -DBOOST_CONTAINER_DYN_LINK -DBOOST_CONTAINER_NO_LIB -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_IOSTREAMS_NO_LIB -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_NO_LIB -DBOOST_STACKTRACE_BASIC_DYN_LINK -DBOOST_STACKTRACE_BASIC_NO_LIB -DBOOST_SYSTEM_DYN_LINK -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_DYN_LINK -DBOOST_THREAD_NO_LIB -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -DOT_QT=1 -DOT_STORAGE_FS=1 -DOT_STORAGE_LMDB=1 -DOT_STORAGE_SQLITE=1 -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_QML_LIB -DTBB_USE_DEBUG -Dlibopentxs_EXPORTS -Dopentxs_testlib_EXPORTS -I/home/user/src/opentxs/generated/tests/xxd -I/home/user/src/opentxs/tests -I/home/user/build/opentxs-nopch-clang/include -I/home/user/src/opentxs/include -I/home/user/build/opentxs-nopch-clang/src -I/home/user/src/opentxs/src -I/home/user/src/opentxs/deps/secp256k1/include -isystem /home/user/src/opentxs/deps -isystem /home/user/src/opentxs/deps/cs_libguarded/src -isystem /home/user/src/opentxs/deps/frozen/include -isystem /home/user/src/opentxs/deps/robin-hood/src/include -isystem /home/user/src/opentxs/deps/unordered_dense/include -isystem /home/user/src/opentxs/deps/ChaiScript/include -isystem /home/user/build/opentxs-nopch-clang/generated/otprotob -isystem /home/user/build/opentxs-nopch-clang/generated/protobuf -isystem /home/user/src/opentxs/deps/argon2 -isystem /home/user/src/opentxs/deps/packetcrypt -isystem /home/user/src/opentxs/deps/packetcrypt/packetcrypt_rs/packetcrypt-sys/packetcrypt/include -isystem /home/user/src/opentxs/deps/lucre/include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem /home/user/src/opentxs/deps/bech32/ref/c++ -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtQml -isystem /usr/include/qt5/QtNetwork -Og -ggdb -g -std=c++20 -fPIC -W -Wall -Wextra -Wno-pragmas -Wno-unknown-pragmas -pedantic -Werror -pedantic-errors -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-inline-namespace-reopened-noninline -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-padded -Wno-undefined-func-template -Wno-unknown-warning-option -Wno-weak-template-vtables -Wno-weak-vtables -fno-char8_t -fwrapv -Wno-c++20-compat -Wno-deprecated-declarations -Wno-implicit-int-conversion -Wno-noexcept -Wno-return-std-move-in-c++11 -Wno-sign-conversion -Wno-switch-enum -Wno-unused-parameter -Wno-reserved-macro-identifier -Wno-unsafe-buffer-usage -Wno-suggest-destructor-override -fPIC -MD -MT CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o -MF CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o.d -o CMakeFiles/opentxs-testlib.dir/tests/ottest/fixtures/ui/Qt.cpp.o -c /home/user/src/opentxs/tests/ottest/fixtures/ui/Qt.cpp 1. <eof> parser at end of file 2. Code generation 3. Running pass 'Function Pass Manager' on module '/home/user/src/opentxs/tests/ottest/fixtures/ui/Qt.cpp'. 4. Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZNKSt8__format14__formatter_fpIcE6formatIgNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_' #0 0x00003fc53b123a8c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb53a8c) #1 0x00003fc53b121050 llvm::sys::RunSignalHandlers() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb51050) #2 0x00003fc53b012e60 llvm::CrashRecoveryContext::HandleExit(int) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa42e60) #3 0x00003fc53b119d3c llvm::sys::Process::Exit(int, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xb49d3c) #4 0x0000008adc556338 (/usr/lib/llvm/17/bin/clang+++0x16338) #5 0x00003fc53b02aa64 llvm::report_fatal_error(llvm::Twine const&, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa5aa64) #6 0x00003fc53b02acdc llvm::report_fatal_error(char const*, bool) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa5acdc) #7 0x00003fc53bb4014c (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x157014c) #8 0x00003fc53bb94484 (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x15c4484) #9 0x00003fc53bb948c0 llvm::SelectionDAG::LegalizeTypes() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x15c48c0) #10 0x00003fc53bcfaf58 llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172af58) #11 0x00003fc53bcfd3b8 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172d3b8) #12 0x00003fc53bcff854 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x172f854) #13 0x00003fc53f2256e0 (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x4c556e0) #14 0x00003fc53b67e978 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0x10ae978) #15 0x00003fc53b2f4a30 llvm::FPPassManager::runOnFunction(llvm::Function&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd24a30) #16 0x00003fc53b2f4e24 llvm::FPPassManager::runOnModule(llvm::Module&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd24e24) #17 0x00003fc53b2f5734 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xd25734) #18 0x00003fc5450d0594 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x20e0594) #19 0x00003fc54553e724 (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x254e724) #20 0x00003fc543abcb1c clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0xaccb1c) #21 0x00003fc546060214 clang::ASTFrontendAction::ExecuteAction() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x3070214) #22 0x00003fc54553eb3c clang::CodeGenAction::ExecuteAction() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x254eb3c) #23 0x00003fc5460658c4 clang::FrontendAction::Execute() (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x30758c4) #24 0x00003fc545fefed0 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2fffed0) #25 0x00003fc5460f9e68 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x3109e68) #26 0x0000008adc558b3c cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm/17/bin/clang+++0x18b3c) #27 0x0000008adc552aac (/usr/lib/llvm/17/bin/clang+++0x12aac) #28 0x00003fc545be5758 (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bf5758) #29 0x00003fc53b012cb8 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/lib/llvm/17/bin/../lib64/libLLVM-17.so+0xa42cb8) #30 0x00003fc545be86f0 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bf86f0) #31 0x00003fc545ba48fc clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bb48fc) #32 0x00003fc545ba52e0 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bb52e0) #33 0x00003fc545bbab48 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/lib/llvm/17/bin/../lib64/libclang-cpp.so.17+0x2bcab48) #34 0x0000008adc554ea4 clang_main(int, char**, llvm::ToolContext const&) (/usr/lib/llvm/17/bin/clang+++0x14ea4) #35 0x0000008adc54e61c main (/usr/lib/llvm/17/bin/clang+++0xe61c) #36 0x00003fc539fd4bac (/usr/lib64/libc.so.6+0x24bac) #37 0x00003fc539fd4dec __libc_start_main (/usr/lib64/libc.so.6+0x24dec) clang++: error: clang frontend command failed with exit code 70 (use -v to see invocation) clang version 17.0.1 Target: powerpc64le-unknown-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/17/bin Configuration file: /etc/clang/powerpc64le-unknown-linux-gnu-clang++.cfg clang++: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang++: note: diagnostic msg: /tmp/Qt-618e32.cpp clang++: note: diagnostic msg: /tmp/Qt-618e32.sh clang++: note: diagnostic msg: ******************** ```
DimitryAndric commented 1 year ago

This regressed between llvmorg-17-init-16183-g7b31a73ffe8 and llvmorg-17-init-16203-ga4521c25ae5; the most likely candidates are llvmorg-17-init-16187-g003b58f65bdd ("IR: Add llvm.frexp intrinsic") or llvmorg-17-init-16188-g85bdea023f51 ("clang: Use new frexp intrinsic for builtins and add f16 version"), both by @arsenm, due to the error I see here:

#### 2023-09-29T08:48:36: Testing with last version llvmorg-17-init-16203-ga4521c25ae5
ExpandFloatResult #0: t5: ppcf128,i32 = ffrexp t4

Do not know how to expand the result of this operator!
UNREACHABLE executed at /home/dim/src/llvm/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp:1231!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang -cc1 -triple powerpc64le-unknown-linux-gnu -S -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -mrelocation-model pic -pic-level 2 -fhalf-no-semantic-interposition -mframe-pointer=none -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu ppc64le -mfloat-abi hard -target-abi elfv2 -Og -W -Wall -Wextra -std=c++20 -fdeprecated-macro -fwrapv -stack-protector 2 -fstack-clash-protection -fno-signed-char -fno-char8_t -fgnuc-version=4.2.1 -fno-implicit-modules -fcxx-exceptions -fexceptions Qt-618e32.ii
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'Qt-618e32.cpp'.
4.      Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZNKSt8__format14__formatter_fpIcE6formatIgNS_10_Sink_iterIcEEEENSt20basic_format_contextIT0_cE8iteratorET_RS7_'
 #0 0x0000000004351dc7 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x4351dc7)
 #1 0x000000000434fba8 llvm::sys::RunSignalHandlers() (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x434fba8)
 #2 0x00000000043525a0 SignalHandler(int) Signals.cpp:0:0
 #3 0x0000000829546a3e handle_signal /usr/src/lib/libthr/thread/thr_sig.c:0:3
 #4 0x0000000829545ff9 thr_sighandler /usr/src/lib/libthr/thread/thr_sig.c:247:1
 #5 0x00000008288ab903 ([vdso]+0x2d3)
 #6 0x000000082de1697a __sys_thr_kill /usr/obj/usr/src/lib/libc/thr_kill.S:4:0
 #7 0x000000082dd8f954 __raise /usr/src/lib/libc/gen/raise.c:0:10
 #8 0x000000082de403e9 abort /usr/src/lib/libc/stdlib/abort.c:73:17
 #9 0x00000000042c9c51 (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x42c9c51)
#10 0x000000000541c7e4 (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x541c7e4)
#11 0x00000000053a326e llvm::DAGTypeLegalizer::run() LegalizeTypes.cpp:0:0
#12 0x00000000053a8360 llvm::SelectionDAG::LegalizeTypes() (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x53a8360)
#13 0x000000000536b130 llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x536b130)
#14 0x0000000005369d59 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x5369d59)
#15 0x0000000005366c3d llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x5366c3d)
#16 0x0000000002f98b43 (anonymous namespace)::PPCDAGToDAGISel::runOnMachineFunction(llvm::MachineFunction&) PPCISelDAGToDAG.cpp:0:0
#17 0x00000000038b5059 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x38b5059)
#18 0x0000000003e487d5 llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x3e487d5)
#19 0x0000000003e50a81 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x3e50a81)
#20 0x0000000003e49286 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x3e49286)
#21 0x0000000004a73a2f clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::__1::unique_ptr<llvm::raw_pwrite_stream, std::__1::default_delete<llvm::raw_pwrite_stream>>) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x4a73a2f)
#22 0x0000000004ec0538 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) CodeGenAction.cpp:0:0
#23 0x0000000005c5c6a5 clang::ParseAST(clang::Sema&, bool, bool) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x5c5c6a5)
#24 0x0000000004de5273 clang::FrontendAction::Execute() (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x4de5273)
#25 0x0000000004d6971f clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x4d6971f)
#26 0x0000000004eb8d94 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x4eb8d94)
#27 0x000000000290af5b cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x290af5b)
#28 0x0000000002906814 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#29 0x00000000029056aa clang_main(int, char**, llvm::ToolContext const&) (/home/dim/ins/llvmorg-17-init-16203-ga4521c25ae5/bin/clang+0x29056aa)
Abort trap
daltenty commented 1 year ago

This seems related to https://github.com/llvm/llvm-project/issues/64426