Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion failure in SCEVExpanderCleaner::cleanup() during LoopIdiomRecognizePass #67269

Closed
Ltian-C opened this issue Sep 24, 2023 · 2 comments
Closed
Labels
crash Prefer [crash-on-valid] or [crash-on-invalid] incomplete Issue not complete (e.g. missing a reproducer, build arguments, etc.) llvm:SCEV Scalar Evolution

Comments

@Ltian-C
Copy link

Ltian-C commented Sep 24, 2023

While compiling a file (likely MLIRContext.cpp) with LLVM 17.0.0, I encountered an assertion failure in SCEVExpanderCleaner::cleanup(). This occurred when running the LoopIdiomRecognize pass.
The pass detected a store instruction using the result of a load, and tried to expand the SCEV values for those instructions using SCEVExpander. During the cleanup phase after expansion, the assertion:

"removed instruction should only be used by instructions inserted during expansion"

failed, indicating the expanded instructions were not fully cleaned up.

The preprocessed source file and reproduction script are located at:
/tmp/MLIRContext-97a25e.cpp
/tmp/MLIRContext-97a25e.sh

clang: /software/llvm/llvm/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp:2678: void llvm::SCEVExpanderCleaner::cleanup(): Assertion `all_of(I->users(), [&InsertedSet](Value *U) { return InsertedSet.contains(cast<Instruction>(U)); }) && "removed instruction should only be used by instructions inserted " "during expansion"' failed.
Stack dump:
0.	Program arguments: /software/llvm/17.0.0-cuda11.8/bin/clang -MD -MF bazel-out/k8-opt/bin/external/llvm-project/mlir/_objs/IR/MLIRContext.pic.d -frandom-seed=bazel-out/k8-opt/bin/external/llvm-project/mlir/_objs/IR/MLIRContext.pic.o -DLLVM_ON_UNIX=1 -DHAVE_BACKTRACE=1 -DBACKTRACE_HEADER=<execinfo.h> -DLTDL_SHLIB_EXT=\".so\" -DLLVM_PLUGIN_EXT=\".so\" -DLLVM_ENABLE_THREADS=1 -DHAVE_DEREGISTER_FRAME=1 -DHAVE_LIBPTHREAD=1 -DHAVE_PTHREAD_GETNAME_NP=1 -DHAVE_PTHREAD_H=1 -DHAVE_PTHREAD_SETNAME_NP=1 -DHAVE_REGISTER_FRAME=1 -DHAVE_SETENV_R=1 -DHAVE_STRERROR_R=1 -DHAVE_SYSEXITS_H=1 -DHAVE_UNISTD_H=1 -D_GNU_SOURCE -DHAVE_LINK_H=1 -DHAVE_MALLINFO=1 -DHAVE_SBRK=1 -DHAVE_STRUCT_STAT_ST_MTIM_TV_NSEC=1 -DLLVM_NATIVE_ARCH=\"X86\" -DLLVM_NATIVE_ASMPARSER=LLVMInitializeX86AsmParser -DLLVM_NATIVE_ASMPRINTER=LLVMInitializeX86AsmPrinter -DLLVM_NATIVE_DISASSEMBLER=LLVMInitializeX86Disassembler -DLLVM_NATIVE_TARGET=LLVMInitializeX86Target -DLLVM_NATIVE_TARGETINFO=LLVMInitializeX86TargetInfo -DLLVM_NATIVE_TARGETMC=LLVMInitializeX86TargetMC -DLLVM_NATIVE_TARGETMCA=LLVMInitializeX86TargetMCA -DLLVM_HOST_TRIPLE=\"x86_64-unknown-linux-gnu\" -DLLVM_DEFAULT_TARGET_TRIPLE=\"x86_64-unknown-linux-gnu\" -DLLVM_VERSION_MAJOR=17 -DLLVM_VERSION_MINOR=0 -DLLVM_VERSION_PATCH=0 -DLLVM_VERSION_STRING=\"17.0.0git\" -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DBLAKE3_USE_NEON=0 -DBLAKE3_NO_AVX2 -DBLAKE3_NO_AVX512 -DBLAKE3_NO_SSE2 -DBLAKE3_NO_SSE41 -DBAZEL_CURRENT_REPOSITORY=\"llvm-project\" -iquote external/llvm-project -iquote bazel-out/k8-opt/bin/external/llvm-project -iquote external/llvm_terminfo -iquote bazel-out/k8-opt/bin/external/llvm_terminfo -iquote external/llvm_zlib -iquote bazel-out/k8-opt/bin/external/llvm_zlib -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinAttributeInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinAttributesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinDialectBytecodeGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinDialectIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinLocationAttributesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinOpsIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinTypeInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/BuiltinTypesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/CallOpInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/CastOpInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/FunctionInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/InferTypeOpInterfaceIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/OpAsmInterfaceIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/RegionKindInterfaceIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/SideEffectInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/SymbolInterfacesIncGen -Ibazel-out/k8-opt/bin/external/llvm-project/mlir/_virtual_includes/TensorEncodingIncGen -isystem external/llvm-project/mlir/include -isystem bazel-out/k8-opt/bin/external/llvm-project/mlir/include -isystem external/llvm-project/llvm/include -isystem bazel-out/k8-opt/bin/external/llvm-project/llvm/include -fmerge-all-constants -Wno-builtin-macro-redefined -D__DATE__=\"redacted\" -D__TIMESTAMP__=\"redacted\" -D__TIME__=\"redacted\" -fPIC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -fstack-protector -Wall -Wno-invalid-partial-specialization -fno-omit-frame-pointer -no-canonical-prefixes -DNDEBUG -g0 -O2 -ffunction-sections -fdata-sections --cuda-path=/software/nvhpc/Linux_x86_64/23.3/cuda/11.8 -Wno-all -Wno-extra -Wno-deprecated -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-array-bounds -Wunused-result -Werror=unused-result -Wswitch -Werror=switch -Wno-error=unused-but-set-variable -DAUTOLOAD_DYNAMIC_KERNELS -Wno-sign-compare -Wno-error=unused-command-line-argument -Wno-error=gnu-offsetof-extensions -Wno-error=unknown-cuda-version -std=c++17 -Wno-error=unused-command-line-argument -Wno-error=gnu-offsetof-extensions -Wno-error=unknown-cuda-version -c external/llvm-project/mlir/lib/IR/MLIRContext.cpp -o bazel-out/k8-opt/bin/external/llvm-project/mlir/_objs/IR/MLIRContext.pic.o
1.	<eof> parser at end of file
2.	Optimizer
 #0 0x00005555bc30bb7d llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /software/llvm/llvm/llvm/lib/Support/Unix/Signals.inc:602:11
 #1 0x00005555bc30c00b PrintStackTraceSignalHandler(void*) /software/llvm/llvm/llvm/lib/Support/Unix/Signals.inc:676:1
 #2 0x00005555bc30a2d6 llvm::sys::RunSignalHandlers() /software/llvm/llvm/llvm/lib/Support/Signals.cpp:104:5
 #3 0x00005555bc30b3fe llvm::sys::CleanupOnSignal(unsigned long) /software/llvm/llvm/llvm/lib/Support/Unix/Signals.inc:368:1
 #4 0x00005555bc237cb8 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) /software/llvm/llvm/llvm/lib/Support/CrashRecoveryContext.cpp:0:7
 #5 0x00005555bc238055 CrashRecoverySignalHandler(int) /software/llvm/llvm/llvm/lib/Support/CrashRecoveryContext.cpp:391:1
 #6 0x00002b28c24be630 __restore_rt sigaction.c:0:0
 #7 0x00002b28c3641387 raise (/lib64/libc.so.6+0x36387)
 #8 0x00002b28c3642a78 abort (/lib64/libc.so.6+0x37a78)
 #9 0x00002b28c363a1a6 __assert_fail_base (/lib64/libc.so.6+0x2f1a6)
#10 0x00002b28c363a252 (/lib64/libc.so.6+0x2f252)
#11 0x00005555bc45da7c llvm::SCEVExpanderCleaner::cleanup() /software/llvm/llvm/llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp:2680:5
#12 0x00005555bc0dd2f5 llvm::SCEVExpanderCleaner::~SCEVExpanderCleaner() /software/llvm/llvm/llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h:523:39
#13 0x00005555bed26583 (anonymous namespace)::LoopIdiomRecognize::processLoopStoreOfLoopLoad(llvm::Value*, llvm::Value*, llvm::SCEV const*, llvm::MaybeAlign, llvm::MaybeAlign, llvm::Instruction*, llvm::Instruction*, llvm::SCEVAddRecExpr const*, llvm::SCEVAddRecExpr const*, llvm::SCEV const*) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:1450:1
#14 0x00005555bed225da (anonymous namespace)::LoopIdiomRecognize::processLoopStoreOfLoopLoad(llvm::StoreInst*, llvm::SCEV const*) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:1176:3
#15 0x00005555bed212df (anonymous namespace)::LoopIdiomRecognize::runOnLoopBlock(llvm::BasicBlock*, llvm::SCEV const*, llvm::SmallVectorImpl<llvm::BasicBlock*>&) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:579:19
#16 0x00005555bed20eba (anonymous namespace)::LoopIdiomRecognize::runOnCountableLoop() /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:353:19
#17 0x00005555bed20b65 (anonymous namespace)::LoopIdiomRecognize::runOnLoop(llvm::Loop*) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:313:7
#18 0x00005555bed207de llvm::LoopIdiomRecognizePass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp:271:7
#19 0x00005555be67dda4 llvm::detail::PassModel<llvm::Loop, llvm::LoopIdiomRecognizePass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#20 0x00005555be395c92 std::optional<llvm::PreservedAnalyses> llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::runSinglePass<llvm::Loop, std::unique_ptr<llvm::detail::PassConcept<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>, std::default_delete<llvm::detail::PassConcept<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>>>>(llvm::Loop&, std::unique_ptr<llvm::detail::PassConcept<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>, std::default_delete<llvm::detail::PassConcept<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>>>&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&, llvm::PassInstrumentation&) /software/llvm/llvm/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h:411:7
#21 0x00005555be394817 llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::runWithoutLoopNestPasses(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopPassManager.cpp:166:10
#22 0x00005555be3941d1 llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopPassManager.cpp:0:32
#23 0x00005555be37feb4 llvm::detail::PassModel<llvm::Loop, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#24 0x00005555be395118 llvm::FunctionToLoopPassAdaptor::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /software/llvm/llvm/llvm/lib/Transforms/Scalar/LoopPassManager.cpp:308:17
#25 0x00005555be384eb4 llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#26 0x00005555bbb3e7d7 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManager.h:521:7
#27 0x00005555bac28024 llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#28 0x00005555bbc2c91d llvm::CGSCCToFunctionPassAdaptor::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/lib/Analysis/CGSCCPassManager.cpp:535:38
#29 0x00005555be680764 llvm::detail::PassModel<llvm::LazyCallGraph::SCC, llvm::CGSCCToFunctionPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#30 0x00005555bbc2ac06 llvm::PassManager<llvm::LazyCallGraph::SCC, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/lib/Analysis/CGSCCPassManager.cpp:90:9
#31 0x00005555be393664 llvm::detail::PassModel<llvm::LazyCallGraph::SCC, llvm::PassManager<llvm::LazyCallGraph::SCC, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#32 0x00005555bbc2b986 llvm::DevirtSCCRepeatedPass::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/lib/Analysis/CGSCCPassManager.cpp:405:38
#33 0x00005555be393e44 llvm::detail::PassModel<llvm::LazyCallGraph::SCC, llvm::DevirtSCCRepeatedPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#34 0x00005555bbc2b4f4 llvm::ModuleToPostOrderCGSCCPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/lib/Analysis/CGSCCPassManager.cpp:278:15
#35 0x00005555be3939e4 llvm::detail::PassModel<llvm::Module, llvm::ModuleToPostOrderCGSCCPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#36 0x00005555bbb3d917 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManager.h:521:7
#37 0x00005555be387942 llvm::ModuleInlinerWrapperPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/lib/Transforms/IPO/Inliner.cpp:630:3
#38 0x00005555be385294 llvm::detail::PassModel<llvm::Module, llvm::ModuleInlinerWrapperPass, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManagerInternal.h:89:17
#39 0x00005555bbb3d917 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /software/llvm/llvm/llvm/include/llvm/IR/PassManager.h:521:7
#40 0x00005555bd0d0d24 (anonymous namespace)::EmitAssemblyHelper::RunOptimizationPipeline(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>&, std::unique_ptr<llvm::ToolOutputFile, std::default_delete<llvm::ToolOutputFile>>&) /software/llvm/llvm/clang/lib/CodeGen/BackendUtil.cpp:1055:5
#41 0x00005555bd0cb9c9 (anonymous namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>) /software/llvm/llvm/clang/lib/CodeGen/BackendUtil.cpp:1112:3
#42 0x00005555bd0caf1f 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>>) /software/llvm/llvm/clang/lib/CodeGen/BackendUtil.cpp:1274:3
#43 0x00005555bd7307ed clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) /software/llvm/llvm/clang/lib/CodeGen/CodeGenAction.cpp:383:7
#44 0x00005555c099eca3 clang::ParseAST(clang::Sema&, bool, bool) /software/llvm/llvm/clang/lib/Parse/ParseAST.cpp:182:12
#45 0x00005555bd54dbf6 clang::ASTFrontendAction::ExecuteAction() /software/llvm/llvm/clang/lib/Frontend/FrontendAction.cpp:1168:1
#46 0x00005555bd72c5b4 clang::CodeGenAction::ExecuteAction() /software/llvm/llvm/clang/lib/CodeGen/CodeGenAction.cpp:1173:5
#47 0x00005555bd54d61c clang::FrontendAction::Execute() /software/llvm/llvm/clang/lib/Frontend/FrontendAction.cpp:1060:7
#48 0x00005555bd47be8d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /software/llvm/llvm/clang/lib/Frontend/CompilerInstance.cpp:1049:23
#49 0x00005555bd716ca7 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /software/llvm/llvm/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:264:8
#50 0x00005555ba42e480 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /software/llvm/llvm/clang/tools/driver/cc1_main.cpp:251:13
#51 0x00005555ba41acb2 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) /software/llvm/llvm/clang/tools/driver/driver.cpp:366:5
#52 0x00005555ba41c62d clang_main(int, char**, llvm::ToolContext const&)::$_0::operator()(llvm::SmallVectorImpl<char const*>&) const /software/llvm/llvm/clang/tools/driver/driver.cpp:506:7
#53 0x00005555ba41c5fd int llvm::function_ref<int (llvm::SmallVectorImpl<char const*>&)>::callback_fn<clang_main(int, char**, llvm::ToolContext const&)::$_0>(long, llvm::SmallVectorImpl<char const*>&) /software/llvm/llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:5
#54 0x00005555bd338c61 llvm::function_ref<int (llvm::SmallVectorImpl<char const*>&)>::operator()(llvm::SmallVectorImpl<char const*>&) const /software/llvm/llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:5
#55 0x00005555bd3357a8 clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::$_0::operator()() const /software/llvm/llvm/clang/lib/Driver/Job.cpp:439:34
#56 0x00005555bd335775 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::$_0>(long) /software/llvm/llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:45:5
#57 0x00005555bb072699 llvm::function_ref<void ()>::operator()() const /software/llvm/llvm/llvm/include/llvm/ADT/STLFunctionalExtras.h:68:5
#58 0x00005555bc237adb llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) /software/llvm/llvm/llvm/lib/Support/CrashRecoveryContext.cpp:427:3
#59 0x00005555bd334f4b clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const /software/llvm/llvm/clang/lib/Driver/Job.cpp:439:7
#60 0x00005555bd2d314f clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const /software/llvm/llvm/clang/lib/Driver/Compilation.cpp:199:15
#61 0x00005555bd2d3337 clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const /software/llvm/llvm/clang/lib/Driver/Compilation.cpp:253:13
#62 0x00005555bd2ecba8 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) /software/llvm/llvm/clang/lib/Driver/Driver.cpp:1866:7
#63 0x00005555ba41a77c clang_main(int, char**, llvm::ToolContext const&) /software/llvm/llvm/clang/tools/driver/driver.cpp:542:9
#64 0x00005555ba44f9bd main /software/llvm/llvm/build/tools/clang/tools/driver/clang-driver.cpp:15:3
#65 0x00002b28c362d555 __libc_start_main (/lib64/libc.so.6+0x22555)
#66 0x00005555ba419429 _start (/software/llvm/17.0.0-cuda11.8/bin/clang+0x59ee429)
clang: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 17.0.0
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /software/llvm/17.0.0-cuda11.8/bin
clang: note: diagnostic msg
@nikic
Copy link
Contributor

nikic commented Sep 24, 2023

Please upload the preprocessed source and reproducer script.

@EugeneZelenko EugeneZelenko added llvm:SCEV Scalar Evolution crash Prefer [crash-on-valid] or [crash-on-invalid] and removed new issue labels Sep 25, 2023
@dtcxzyw dtcxzyw added the incomplete Issue not complete (e.g. missing a reproducer, build arguments, etc.) label Oct 22, 2023
@nikic
Copy link
Contributor

nikic commented Mar 13, 2024

Closing this as there is no reproducer.

@nikic nikic closed this as not planned Won't fix, can't repro, duplicate, stale Mar 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crash Prefer [crash-on-valid] or [crash-on-invalid] incomplete Issue not complete (e.g. missing a reproducer, build arguments, etc.) llvm:SCEV Scalar Evolution
Projects
None yet
Development

No branches or pull requests

4 participants