-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Labels
crashPrefer [crash-on-valid] or [crash-on-invalid]Prefer [crash-on-valid] or [crash-on-invalid]generated by fuzzerllvm:transforms
Description
llvm commit: 2ab02b6
Reproduce with:
opt -passes="dfa-jump-threading" bbi-110818.ll -o /dev/null
Result:
opt: ../include/llvm/IR/Instructions.h:2795: Value *llvm::PHINode::removeIncomingValue(const BasicBlock *, bool): Assertion `Idx >= 0 && "Invalid basic block argument to remove!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
Stack dump:
0. Program arguments: build-all/bin/opt -passes=dfa-jump-threading bbi-110818.ll -o /dev/null
1. Running pass "function(dfa-jump-threading)" on module "bbi-110818.ll"
2. Running pass "dfa-jump-threading" on function "func_2"
#0 0x000055a37c34f4a6 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (build-all/bin/opt+0x4b714a6)
#1 0x000055a37c34ca35 llvm::sys::RunSignalHandlers() (build-all/bin/opt+0x4b6ea35)
#2 0x000055a37c350629 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
#3 0x00007f3c662e2990 __restore_rt (/lib64/libpthread.so.0+0x12990)
#4 0x00007f3c63c8252f raise (/lib64/libc.so.6+0x4e52f)
#5 0x00007f3c63c55e65 abort (/lib64/libc.so.6+0x21e65)
#6 0x00007f3c63c55d39 _nl_load_domain.cold.0 (/lib64/libc.so.6+0x21d39)
#7 0x00007f3c63c7ae86 (/lib64/libc.so.6+0x46e86)
#8 0x000055a37dc07096 (anonymous namespace)::DFAJumpThreading::run(llvm::Function&) DFAJumpThreading.cpp:0:0
#9 0x000055a37dc00b60 llvm::DFAJumpThreadingPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (build-all/bin/opt+0x6422b60)
#10 0x000055a37d81b81d llvm::detail::PassModel<llvm::Function, llvm::DFAJumpThreadingPass, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) PassBuilderPipelines.cpp:0:0
#11 0x000055a37c56c965 llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (build-all/bin/opt+0x4d8e965)
#12 0x000055a37d81bc5d llvm::detail::PassModel<llvm::Function, llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) PassBuilderPipelines.cpp:0:0
#13 0x000055a37c57126e llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (build-all/bin/opt+0x4d9326e)
#14 0x000055a37d7aa6ad llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) NewPMDriver.cpp:0:0
#15 0x000055a37c56b635 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (build-all/bin/opt+0x4d8d635)
#16 0x000055a37d7a33f0 llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::ArrayRef<std::function<void (llvm::PassBuilder&)>>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool, bool) (build-all/bin/opt+0x5fc53f0)
#17 0x000055a37c2f0718 optMain (build-all/bin/opt+0x4b12718)
#18 0x00007f3c63c6e7e5 __libc_start_main (/lib64/libc.so.6+0x3a7e5)
#19 0x000055a37c2ee12e _start (build-all/bin/opt+0x4b1012e)
Abort (core dumped)
Metadata
Metadata
Assignees
Labels
crashPrefer [crash-on-valid] or [crash-on-invalid]Prefer [crash-on-valid] or [crash-on-invalid]generated by fuzzerllvm:transforms