From 3bb1184a1a67e516fad3f6d8a13928f7e8993f5e Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Thu, 5 Dec 2013 18:28:01 +0000 Subject: [PATCH] Fix non-deterministic behavior. We use CSEBlocks to initialize a worklist: SmallVector CSEWorkList(CSEBlocks.begin(), CSEBlocks.end()); so it must have a deterministic order. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196520 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Vectorize/SLPVectorizer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Transforms/Vectorize/SLPVectorizer.cpp b/lib/Transforms/Vectorize/SLPVectorizer.cpp index 2af3701b900..aa75101c61b 100644 --- a/lib/Transforms/Vectorize/SLPVectorizer.cpp +++ b/lib/Transforms/Vectorize/SLPVectorizer.cpp @@ -521,7 +521,7 @@ private: /// Holds all of the instructions that we gathered. SetVector GatherSeq; /// A list of blocks that we are going to CSE. - SmallSet CSEBlocks; + SetVector CSEBlocks; /// Numbers instructions in different blocks. DenseMap BlocksNumbers;