[PATCH] D137505: [SCEV] Cache ZExt SCEV expressions.
Mikael Holmén via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 19 23:57:42 PST 2022
uabelho added a comment.
Hi,
We see a verifier error with this patch:
opt -verify-scev -passes="require<iv-users>" bbi-77099.ll -o /dev/null
results in
Entry in FoldCache doesn't match FoldCacheUser: (1 + (zext i16 {-4,+,4}<nsw><%for.body919.i> to i32))<nuw><nsw> != {65533,+,4}<nuw><nsw><%for.body919.i>!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: ../../main-github/llvm/build-all/bin/opt -verify-scev -passes=require<iv-users> bbi-77099.ll -o /dev/null
#0 0x0000000002ef65a3 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (../../main-github/llvm/build-all/bin/opt+0x2ef65a3)
#1 0x0000000002ef42ce llvm::sys::RunSignalHandlers() (../../main-github/llvm/build-all/bin/opt+0x2ef42ce)
#2 0x0000000002ef6926 SignalHandler(int) Signals.cpp:0:0
#3 0x00007f6e840f4630 __restore_rt sigaction.c:0:0
#4 0x00007f6e8183b387 raise (/lib64/libc.so.6+0x36387)
#5 0x00007f6e8183ca78 abort (/lib64/libc.so.6+0x37a78)
#6 0x0000000001ef311d llvm::ScalarEvolution::verify() const (../../main-github/llvm/build-all/bin/opt+0x1ef311d)
#7 0x00000000038d666b llvm::FunctionToLoopPassAdaptor::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (../../main-github/llvm/build-all/bin/opt+0x38d666b)
#8 0x000000000326cc1d llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) crtstuff.c:0:0
#9 0x0000000002700edc llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (../../main-github/llvm/build-all/bin/opt+0x2700edc)
#10 0x0000000000b0ff1d 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>&) crtstuff.c:0:0
#11 0x000000000270516e llvm::ModuleToFunctionPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (../../main-github/llvm/build-all/bin/opt+0x270516e)
#12 0x0000000000b0fcfd llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor, llvm::PreservedAnalyses, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) crtstuff.c:0:0
#13 0x000000000270018c llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (../../main-github/llvm/build-all/bin/opt+0x270018c)
#14 0x0000000000729aa3 llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool) (../../main-github/llvm/build-all/bin/opt+0x729aa3)
#15 0x0000000000738cc7 main (../../main-github/llvm/build-all/bin/opt+0x738cc7)
#16 0x00007f6e81827555 __libc_start_main (/lib64/libc.so.6+0x22555)
#17 0x0000000000722b10 _start (../../main-github/llvm/build-all/bin/opt+0x722b10)
Abort (core dumped)
F25754635: bbi-77099.ll <https://reviews.llvm.org/F25754635>
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D137505/new/
https://reviews.llvm.org/D137505
More information about the llvm-commits
mailing list