[llvm] r287135 - [LoopVectorize] Fix for non-determinism in codegen

Mandeep Singh Grang via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 16 10:53:18 PST 2016


Author: mgrang
Date: Wed Nov 16 12:53:17 2016
New Revision: 287135

URL: http://llvm.org/viewvc/llvm-project?rev=287135&view=rev
Log:
[LoopVectorize] Fix for non-determinism in codegen

Summary: This patch fixes issues in codegen uncovered due to https://reviews.llvm.org/D26718

Reviewers: mssimpso

Subscribers: llvm-commits, mzolotukhin

Differential Revision: https://reviews.llvm.org/D26727

Modified:
    llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp

Modified: llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp?rev=287135&r1=287134&r2=287135&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cpp Wed Nov 16 12:53:17 2016
@@ -5497,7 +5497,7 @@ void LoopVectorizationLegality::collectL
   // are pointers that are treated like consecutive pointers during
   // vectorization. The pointer operands of interleaved accesses are an
   // example.
-  SmallPtrSet<Instruction *, 8> ConsecutiveLikePtrs;
+  SmallSetVector<Instruction *, 8> ConsecutiveLikePtrs;
 
   // Holds pointer operands of instructions that are possibly non-uniform.
   SmallPtrSet<Instruction *, 8> PossibleNonUniformPtrs;




More information about the llvm-commits mailing list