[Simplify] Do not setInstructions() of region stmts. NFC.
authorMichael Kruse <llvm@meinersbur.de>
Wed, 26 Jul 2017 22:01:28 +0000 (22:01 +0000)
committerMichael Kruse <llvm@meinersbur.de>
Wed, 26 Jul 2017 22:01:28 +0000 (22:01 +0000)
The instruction list is ignored for region statements, there
is no reason to set it.

llvm-svn: 309196

polly/include/polly/ScopInfo.h
polly/lib/Transform/Simplify.cpp

index e016a2b..b8fa7dc 100644 (file)
@@ -1566,6 +1566,8 @@ public:
   /// Set the list of instructions for this statement. It replaces the current
   /// list.
   void setInstructions(ArrayRef<Instruction *> Range) {
+    assert(isBlockStmt() &&
+           "The instruction list only matters for block-statements");
     Instructions.assign(Range.begin(), Range.end());
   }
 
index 4f1f016..6f9a334 100644 (file)
@@ -380,6 +380,9 @@ private:
 
     // Remove all non-reachable instructions.
     for (ScopStmt &Stmt : *S) {
+      if (!Stmt.isBlockStmt())
+        continue;
+
       SmallVector<Instruction *, 32> AllInsts(Stmt.insts_begin(),
                                               Stmt.insts_end());
       SmallVector<Instruction *, 32> RemainInsts;