[polly] r360723 - [polly] Fix non-determinism in IslNodeBuilder.

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Tue May 14 16:01:20 PDT 2019


Author: efriedma
Date: Tue May 14 16:01:19 2019
New Revision: 360723

URL: http://llvm.org/viewvc/llvm-project?rev=360723&view=rev
Log:
[polly] Fix non-determinism in IslNodeBuilder.

The iteration order of OutsideLoopIterations matters for
IslNodeBuilder::getReferencesInSubtree, which inserts the values from
the map into a SetVector, which is eventually used to construct the
type of the context for parallel loops.


Modified:
    polly/trunk/include/polly/CodeGen/IslNodeBuilder.h

Modified: polly/trunk/include/polly/CodeGen/IslNodeBuilder.h
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/include/polly/CodeGen/IslNodeBuilder.h?rev=360723&r1=360722&r2=360723&view=diff
==============================================================================
--- polly/trunk/include/polly/CodeGen/IslNodeBuilder.h (original)
+++ polly/trunk/include/polly/CodeGen/IslNodeBuilder.h Tue May 14 16:01:19 2019
@@ -160,7 +160,7 @@ protected:
   ///
   /// This map provides for a given loop a llvm::Value that contains the current
   /// loop iteration.
-  LoopToScevMapT OutsideLoopIterations;
+  MapVector<const Loop *, const SCEV *> OutsideLoopIterations;
 
   // This maps an isl_id* to the Value* it has in the generated program. For now
   // on, the only isl_ids that are stored here are the newly calculated loop




More information about the llvm-commits mailing list