[PATCH] D21772: New pass manager for LICM.
Ivan Krasin via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 11 19:42:17 PDT 2016
krasin added a subscriber: krasin.
krasin added a comment.
FYI: this seems to have broken sanitizers bot: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/14569
==13022==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 48 byte(s) in 1 object(s) allocated from:
#0 0x84b1b0 in operator new(unsigned long) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:78
#1 0x38a8df3 in collectAliasInfoForLoop /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:1105:14
#2 0x38a8df3 in (anonymous namespace)::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::TargetLibraryInfo*, llvm::ScalarEvolution*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:222
#3 0x38a818d in llvm::LICMPass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:192:13
#4 0x40f93f1 in llvm::detail::PassModel<llvm::Loop, llvm::LICMPass, llvm::PreservedAnalyses>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#5 0x4c78ee5 in llvm::PassManager<llvm::Loop>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#6 0x410108a in llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/LoopPassManager.h:106:39
#7 0x4100611 in llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >, llvm::PreservedAnalyses>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#8 0x316c921 in llvm::PassManager<llvm::Function>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#9 0x4092db5 in llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:900:39
#10 0x4092a01 in llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >, llvm::PreservedAnalyses>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#11 0x316aff8 in llvm::PassManager<llvm::Module>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#12 0x85311c in llvm::runPassPipeline(llvm::StringRef, llvm::LLVMContext&, llvm::Module&, llvm::TargetMachine*, llvm::tool_output_file*, llvm::StringRef, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/NewPMDriver.cpp:112:7
#13 0x87e701 in main /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/opt.cpp:469:12
#14 0x7effe31eaf44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21f44)
Indirect leak of 3072 byte(s) in 1 object(s) allocated from:
#0 0x84b1b0 in operator new(unsigned long) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:78
#1 0x2247e5a in allocateBuckets /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:731:37
#2 0x2247e5a in llvm::DenseMap<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*, llvm::AliasSetTracker::ASTCallbackVHDenseMapInfo, llvm::detail::DenseMapPair<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*> >::grow(unsigned int) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:671
#3 0x2247c51 in grow /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:425:36
#4 0x2247c51 in llvm::detail::DenseMapPair<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*>* llvm::DenseMapBase<llvm::DenseMap<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*, llvm::AliasSetTracker::ASTCallbackVHDenseMapInfo, llvm::detail::DenseMapPair<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*> >, llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*, llvm::AliasSetTracker::ASTCallbackVHDenseMapInfo, llvm::detail::DenseMapPair<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*> >::InsertIntoBucketImpl<llvm::AliasSetTracker::ASTCallbackVH>(llvm::AliasSetTracker::ASTCallbackVH const&, llvm::AliasSetTracker::ASTCallbackVH const&, llvm::detail::DenseMapPair<llvm::AliasSetTracker::ASTCallbackVH, llvm::AliasSet::PointerRec*>*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:486
#5 0x22408cc in InsertIntoBucket /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:452:17
#6 0x22408cc in FindAndConstruct /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:264
#7 0x22408cc in operator[] /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/DenseMap.h:268
#8 0x22408cc in llvm::AliasSetTracker::getEntryFor(llvm::Value*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/AliasSetTracker.h:420
#9 0x223fff6 in llvm::AliasSetTracker::getAliasSetForPointer(llvm::Value*, unsigned long, llvm::AAMDNodes const&, bool*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:272:33
#10 0x2241601 in addPointer /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/AliasSetTracker.h:430:20
#11 0x2241601 in llvm::AliasSetTracker::add(llvm::StoreInst*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:333
#12 0x2241f61 in llvm::AliasSetTracker::add(llvm::Instruction*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:391:12
#13 0x22421c2 in llvm::AliasSetTracker::add(llvm::BasicBlock&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:402:5
#14 0x38a917e in operator() /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:1113:17
#15 0x38a917e in collectAliasInfoForLoop /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:1121
#16 0x38a917e in (anonymous namespace)::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::TargetLibraryInfo*, llvm::ScalarEvolution*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:222
#17 0x38a818d in llvm::LICMPass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:192:13
#18 0x40f93f1 in llvm::detail::PassModel<llvm::Loop, llvm::LICMPass, llvm::PreservedAnalyses>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#19 0x4c78ee5 in llvm::PassManager<llvm::Loop>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#20 0x410108a in llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/LoopPassManager.h:106:39
#21 0x4100611 in llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >, llvm::PreservedAnalyses>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#22 0x316c921 in llvm::PassManager<llvm::Function>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#23 0x4092db5 in llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:900:39
#24 0x4092a01 in llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >, llvm::PreservedAnalyses>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#25 0x316aff8 in llvm::PassManager<llvm::Module>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#26 0x85311c in llvm::runPassPipeline(llvm::StringRef, llvm::LLVMContext&, llvm::Module&, llvm::TargetMachine*, llvm::tool_output_file*, llvm::StringRef, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/NewPMDriver.cpp:112:7
#27 0x87e701 in main /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/opt.cpp:469:12
#28 0x7effe31eaf44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21f44)
Indirect leak of 72 byte(s) in 1 object(s) allocated from:
#0 0x84b1b0 in operator new(unsigned long) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:78
#1 0x223f6e4 in createSentinel /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/ilist.h:78:44
#2 0x223f6e4 in ensureHead /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/ilist.h:93
#3 0x223f6e4 in CreateLazySentinel /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/ilist.h:324
#4 0x223f6e4 in begin /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/ADT/ilist.h:357
#5 0x223f6e4 in begin /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/AliasSetTracker.h:407
#6 0x223f6e4 in llvm::AliasSetTracker::mergeAliasSetsForPointer(llvm::Value const*, unsigned long, llvm::AAMDNodes const&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:218
#7 0x224006c in llvm::AliasSetTracker::getAliasSetForPointer(llvm::Value*, unsigned long, llvm::AAMDNodes const&, bool*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:287:22
#8 0x2241601 in addPointer /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/AliasSetTracker.h:430:20
#9 0x2241601 in llvm::AliasSetTracker::add(llvm::StoreInst*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:333
#10 0x2241f61 in llvm::AliasSetTracker::add(llvm::Instruction*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:391:12
#11 0x22421c2 in llvm::AliasSetTracker::add(llvm::BasicBlock&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Analysis/AliasSetTracker.cpp:402:5
#12 0x38a917e in operator() /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:1113:17
#13 0x38a917e in collectAliasInfoForLoop /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:1121
#14 0x38a917e in (anonymous namespace)::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::TargetLibraryInfo*, llvm::ScalarEvolution*) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:222
#15 0x38a818d in llvm::LICMPass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Transforms/Scalar/LICM.cpp:192:13
#16 0x40f93f1 in llvm::detail::PassModel<llvm::Loop, llvm::LICMPass, llvm::PreservedAnalyses>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#17 0x4c78ee5 in llvm::PassManager<llvm::Loop>::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#18 0x410108a in llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/Analysis/LoopPassManager.h:106:39
#19 0x4100611 in llvm::detail::PassModel<llvm::Function, llvm::FunctionToLoopPassAdaptor<llvm::PassManager<llvm::Loop> >, llvm::PreservedAnalyses>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#20 0x316c921 in llvm::PassManager<llvm::Function>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#21 0x4092db5 in llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:900:39
#22 0x4092a01 in llvm::detail::PassModel<llvm::Module, llvm::ModuleToFunctionPassAdaptor<llvm::PassManager<llvm::Function> >, llvm::PreservedAnalyses>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManagerInternal.h:72:17
#23 0x316aff8 in llvm::PassManager<llvm::Module>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/include/llvm/IR/PassManager.h:255:47
#24 0x85311c in llvm::runPassPipeline(llvm::StringRef, llvm::LLVMContext&, llvm::Module&, llvm::TargetMachine*, llvm::tool_output_file*, llvm::StringRef, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool) /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/NewPMDriver.cpp:112:7
#25 0x87e701 in main /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/opt/opt.cpp:469:12
#26 0x7effe31eaf44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21f44)
SUMMARY: AddressSanitizer: 3192 byte(s) leaked in 3 allocation(s).
http://reviews.llvm.org/D21772
More information about the llvm-commits
mailing list