You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To reproduce the failure, compile using a compiler that contains 9d37e61 and use the following options -O2 -g -ffast-math -std=c++20 --target=x86_64-sie-ps5:
$ ~/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang -c -O2 -g -ffast-math repro1.cpp -std=c++20 --target=x86_64-sie-ps5
repro1.cpp:205:28: warning: binding reference member 'm_rhs' to stack allocated parameter 'aRhs' [-Wdangling-field]
205 | : m_lhs(aLhs), m_rhs(aRhs) {}
| ^~~~ repro1.cpp:211:13: note: reference member declared here 211 | RhsNested m_rhs;
| ^
repro1.cpp:205:28: warning: binding reference member 'm_rhs' to stack allocated parameter 'aRhs' [-Wdangling-field]
205 | : m_lhs(aLhs), m_rhs(aRhs) {}
| ^~~~
repro1.cpp:123:12: note: in instantiation of member function 'bn<cg<at<float>, at<float>>, const bk<at<float>, 3, 0>, const bk<float, 3, 0>>::bn' requested here
123 | return bn<cg<ch, ch>, const q, const ct>(bi(), bi());
| ^
repro1.cpp:297:13: note: in instantiation of function template specialization 'u<bk<at<float>, 3, 0>>::operator-<bk<float, 3, 0>>' requested here
297 | return (x - run_y).cu().cq() <= cc(__trans_tmp_5.cq(), 0); | ^
repro1.cpp:211:13: note: reference member declared here 211 | RhsNested m_rhs;
| ^ repro1.cpp:228:28: warning: arithmetic between different enumeration types ('redux_evaluator<bm<ci<at<float>>, bn<cg<at<float>, at<float>>, bk<at<float>, 3, 0>, bk<at<float>, 3, 0>>>
>::(unnamed enum at repro1.cpp:280:3)' and 'cw<bm<ci<at<float>>, bn<cg<at<float>, at<float>>, bk<at<float>, 3, 0>, bk<at<float>, 3, 0>>>>::(unnamed enum at repro1.cpp:147:3)') is deprecated [-Wdeprecated-anon-enum-enum-conversion]
228 | enum { y = Evaluator::cm * Evaluator::dd, UnrollingLimit = 110 }; | ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~
repro1.cpp:252:17: note: in instantiation of template class 'redux_traits<redux_evaluator<bm<ci<at<float>>, bn<cg<at<float>, at<float>>, bk<at<float>, 3, 0>, bk<at<float>, 3, 0>>>>>' requested here
252 | int = redux_traits<Evaluator>::Unrolling>
| ^
repro1.cpp:291:10: note: in instantiation of default argument for 'redux_impl<cd, ThisEvaluator>' required here
291 | return redux_impl<Func, ThisEvaluator>::run(thisEval, func, __trans_tmp_16);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
repro1.cpp:116:20: note: in instantiation of function template specialization 'DenseBase<bm<ci<at<float>>, bn<cg<at<float>, at<float>>, bk<at<float>, 3, 0>, bk<at<float>, 3, 0>>>>::c
r<cd>' requested here
116 | ch cq() { return cr(cd()); }
| ^
repro1.cpp:297:27: note: in instantiation of member function 'DenseBase<bm<ci<at<float>>, bn<cg<at<float>, at<float>>, bk<at<float>, 3, 0>, bk<at<float>, 3, 0>>>>::cq' requested here
297 | return (x - run_y).cu().cq() <= cc(__trans_tmp_5.cq(), 0);
| ^
repro1.cpp:228:28: warning: arithmetic between different enumeration types ('redux_evaluator<bm<ci<at<float>>, bk<at<float>, 3, 0>>>::(unnamed enum at repro1.cpp:280:3)' and 'cw<bm<c
i<at<float>>, bk<at<float>, 3, 0>>>::(unnamed enum at repro1.cpp:147:3)') is deprecated [-Wdeprecated-anon-enum-enum-conversion]
228 | enum { y = Evaluator::cm * Evaluator::dd, UnrollingLimit = 110 };
| ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~
repro1.cpp:252:17: note: in instantiation of template class 'redux_traits<redux_evaluator<bm<ci<at<float>>, bk<at<float>, 3, 0>>>>' requested here
252 | int = redux_traits<Evaluator>::Unrolling>
| ^
repro1.cpp:291:10: note: in instantiation of default argument for 'redux_impl<cd, ThisEvaluator>' required here [0/1594]
291 | return redux_impl<Func, ThisEvaluator>::run(thisEval, func, __trans_tmp_16);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
repro1.cpp:116:20: note: in instantiation of function template specialization 'DenseBase<bm<ci<at<float>>, bk<at<float>, 3, 0>>>::cr<cd>' requested here
116 | ch cq() { return cr(cd()); }
| ^
repro1.cpp:297:52: note: in instantiation of member function 'DenseBase<bm<ci<at<float>>, bk<at<float>, 3, 0>>>::cq' requested here
297 | return (x - run_y).cu().cq() <= cc(__trans_tmp_5.cq(), 0);
| ^
Instruction does not dominate all uses!
%49 = shufflevector <8 x float> %47, <8 x float> %48, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 9>, !dbg !1331
%41 = shufflevector <8 x float> %49, <8 x float> poison, <24 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison, i32 poison>, !dbg !1331
in function _Z3runv
fatal error: error in backend: Broken function found, compilation aborted!
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/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang -c -O2 -g -ffast-math repro1.cpp -std=c++20 --target=x86_64-sie-ps5
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module 'repro1.cpp'.
4. Running pass 'Module Verifier' on function '@_Z3runv'
#0 0x000055885dc766cf llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x22546cf)
#1 0x000055885dc741e4 llvm::sys::CleanupOnSignal(unsigned long) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x22521e4)
#2 0x000055885dbc4e0a llvm::CrashRecoveryContext::HandleExit(int) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x21a2e0a)
#3 0x000055885dc6b132 llvm::sys::Process::Exit(int, bool) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2249132)
#4 0x000055885c760a04 LLVMErrorHandler(void*, char const*, bool) cc1_main.cpp:0:0
#5 0x000055885dbce3ca llvm::report_fatal_error(llvm::Twine const&, bool) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x21ac3ca)
#6 0x000055885dbce54e (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x21ac54e)
#7 0x000055885d77b836 (anonymous namespace)::VerifierLegacyPass::runOnFunction(llvm::Function&) Verifier.cpp:0:0
#8 0x000055885d6c2697 llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x1ca0697)
#9 0x000055885d6c2a59 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x1ca0a59)
#10 0x000055885d6c3361 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x1ca1361)
#11 0x000055885df1c675 clang::emitBackendOutput(clang::CompilerInstance&, clang::CodeGenOptions&, 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>>, clang::BackendConsumer*) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x24fa675)
#12 0x000055885e660071 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2c3e071)
#13 0x000055886008cf4c clang::ParseAST(clang::Sema&, bool, bool) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x466af4c)
#14 0x000055885e660498 clang::CodeGenAction::ExecuteAction() (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2c3e498)
#15 0x000055885e9375f9 clang::FrontendAction::Execute() (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2f155f9)
#16 0x000055885e8b844e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2e9644e)
#17 0x000055885ea2c906 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x300a906)
#18 0x000055885c762f8d cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0xd40f8d)
#19 0x000055885c75a88a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#20 0x000055885e6aa4fd void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#21 0x000055885dbc4d40 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x21a2d40)
#22 0x000055885e6aab1f clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#23 0x000055885e66b914 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2c49914)
#24 0x000055885e66c9ae clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2c4a9ae)
#25 0x000055885e675155 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0x2c53155)
#26 0x000055885c75fd6b clang_main(int, char**, llvm::ToolContext const&) (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0xd3dd6b)
#27 0x000055885c69195b main (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0xc6f95b)
#28 0x00007f80fda21083 __libc_start_main /build/glibc-FcRMwW/glibc-2.31/csu/../csu/libc-start.c:342:3
#29 0x000055885c75a31e _start (/home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin/clang+0xd3831e)
clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
clang version 21.0.0 (https://github.com/llvm/llvm-project.git 9d37e61fc77d3d6de891c30630f1c0227522031d)
Target: x86_64-sie-ps5
Thread model: posix
InstalledDir: /home/dyung/src/upstream/9d37e61fc77d3d6de891c30630f1c0227522031d-linux/bin
Build config: +assertions
The text was updated successfully, but these errors were encountered:
Recently one of our internal tests started failing with an error:
I was able to reduce the test to the following (although admittedly still pretty large) repro:
To reproduce the failure, compile using a compiler that contains 9d37e61 and use the following options
-O2 -g -ffast-math -std=c++20 --target=x86_64-sie-ps5
:The text was updated successfully, but these errors were encountered: