[llvm] r323348 - [SLP] Fix for PR32086: Count InsertElementInstr of the same elements as shuffle.
Alexey Bataev via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 24 17:45:38 PST 2018
Hi Davide, I reverted this commit already and fixed the bug in the patch, fixed version will be committed tomorrow.
Best regards,
Alexey Bataev
> 24 янв. 2018 г., в 20:24, Davide Italiano <davide.italiano at gmail.com> написал(а):
>
> On Wed, Jan 24, 2018 at 9:50 AM, Alexey Bataev via llvm-commits
> <llvm-commits at lists.llvm.org> wrote:
>> Author: abataev
>> Date: Wed Jan 24 09:50:53 2018
>> New Revision: 323348
>>
>> URL: https://eur02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fllvm.org%2Fviewvc%2Fllvm-project%3Frev%3D323348%26view%3Drev&data=02%7C01%7C%7Cda19d89197fd4ba6a64008d563925b9d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C636524402599730729&sdata=Qfnr08p5QyU6ovP7Z9nYknM4r%2FxNFWJVkrmFiLrcqEg%3D&reserved=0
>> Log:
>> [SLP] Fix for PR32086: Count InsertElementInstr of the same elements as shuffle.
>>
>
> This change is very likely responsible for a crash which manifests
> when building the swift compiler.
> I'll try to come up with a repro for you, but, in the meanwhile, this
> is the assertion I'm seeing.
>
> ^~~~~~~
>
> Assertion failed: (idx < size()), function operator[], file
> /Users/dcci/work/swift-next/llvm/include/llvm/ADT/SmallVector.h, line
> 149.
>
> 0 swift 0x00000001127712e8
> llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40
>
> 1 swift 0x00000001127719f6 SignalHandler(int) + 694
>
> 2 libsystem_platform.dylib 0x00007fff6b878f5a _sigtramp + 26
>
> 3 libsystem_platform.dylib 0x0000000000003a28 _sigtramp + 2490936040
>
> 4 libsystem_c.dylib 0x00007fff6b6a3312 abort + 127
>
> 5 libsystem_c.dylib 0x00007fff6b66b368 basename_r + 0
>
> 6 swift 0x00000001115390a5
> llvm::slpvectorizer::BoUpSLP::buildTree_rec(llvm::ArrayRef<llvm::Value*>,
> unsigned int, int) + 19253
>
> 7 swift 0x000000011153841e
> llvm::slpvectorizer::BoUpSLP::buildTree_rec(llvm::ArrayRef<llvm::Value*>,
> unsigned int, int) + 16046
>
> 8 swift 0x0000000111533884
> llvm::slpvectorizer::BoUpSLP::buildTree(llvm::ArrayRef<llvm::Value*>,
> llvm::MapVector<llvm::Value*, llvm::SmallVector<llvm::Instruction*,
> 2u>, llvm::DenseMap<llvm::Value*, unsigned int,
> llvm::DenseMapInfo<llvm::Value*>,
> llvm::detail::DenseMapPair<llvm::Value*, unsigned int> >,
> std::__1::vector<std::__1::pair<llvm::Value*,
> llvm::SmallVector<llvm::Instruction*, 2u> >,
> std::__1::allocator<std::__1::pair<llvm::Value*,
> llvm::SmallVector<llvm::Instruction*, 2u> > > > >&,
> llvm::ArrayRef<llvm::Value*>) + 148
>
> 9 swift 0x000000011154eb79
> llvm::SLPVectorizerPass::tryToVectorizeList(llvm::ArrayRef<llvm::Value*>,
> llvm::slpvectorizer::BoUpSLP&, bool) + 4329
>
> 10 swift 0x000000011154b130
> llvm::SLPVectorizerPass::vectorizeChainsInBlock(llvm::BasicBlock*,
> llvm::slpvectorizer::BoUpSLP&) + 912
>
> 11 swift 0x000000011154a230
> llvm::SLPVectorizerPass::runImpl(llvm::Function&,
> llvm::ScalarEvolution*, llvm::TargetTransformInfo*,
> llvm::TargetLibraryInfo*, llvm::AAResults*, llvm::LoopInfo*,
> llvm::DominatorTree*, llvm::AssumptionCache*, llvm::DemandedBits*,
> llvm::OptimizationRemarkEmitter*) + 1696
>
> 12 swift 0x000000011155924f (anonymous
> namespace)::SLPVectorizer::runOnFunction(llvm::Function&) + 975
>
> 13 swift 0x000000011264a14d
> llvm::FPPassManager::runOnFunction(llvm::Function&) + 541
>
> 14 swift 0x000000011264a3c3
> llvm::FPPassManager::runOnModule(llvm::Module&) + 67
>
> 15 swift 0x000000011264a91b
> llvm::legacy::PassManagerImpl::run(llvm::Module&) + 971
>
> 16 swift 0x000000010f16e754
> swift::performLLVMOptimizations(swift::IRGenOptions&, llvm::Module*,
> llvm::TargetMachine*) + 1844
>
> 17 swift 0x000000010f16f117
> swift::performLLVM(swift::IRGenOptions&, swift::DiagnosticEngine*,
> llvm::sys::SmartMutex<false>*, llvm::GlobalVariable*, llvm::Module*,
> llvm::TargetMachine*, swift::version::Version const&, llvm::StringRef,
> swift::UnifiedStatsReporter*) + 2055
>
> 18 swift 0x000000010f00ca19
> performCompile(swift::CompilerInstance&, swift::CompilerInvocation&,
> llvm::ArrayRef<char const*>, int&, swift::FrontendObserver*,
> swift::UnifiedStatsReporter*) + 15497
>
> 19 swift 0x000000010f007e04
> swift::performFrontend(llvm::ArrayRef<char const*>, char const*,
> void*, swift::FrontendObserver*) + 3284
>
> 20 swift 0x000000010efc66d2 main + 3042
>
> 21 libdyld.dylib 0x00007fff6b5f7115 start + 1
>
> 22 libdyld.dylib 0x0000000000000059 start + 2493550405
>
> Stack dump:
>
>
> --
> Davide
More information about the llvm-commits
mailing list