summaryrefslogtreecommitdiff
path: root/Source/ExecutionEngine
diff options
context:
space:
mode:
authorGravatar qadeer <unknown>2015-03-02 12:31:28 -0800
committerGravatar qadeer <unknown>2015-03-02 12:31:28 -0800
commit1550a8112d172a37a168b048b5c78642bc39bf90 (patch)
tree1fe124834d4c54e564940c19896a7992ea0be4ab /Source/ExecutionEngine
parent7f7e70772d04b1c574609a5504c9160ca01aca67 (diff)
fixed crash reported by Dan.
DoModSetAnalysis needs to run before the linear and mover type checking.
Diffstat (limited to 'Source/ExecutionEngine')
-rw-r--r--Source/ExecutionEngine/ExecutionEngine.cs12
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/ExecutionEngine/ExecutionEngine.cs b/Source/ExecutionEngine/ExecutionEngine.cs
index ab1e185c..7756973d 100644
--- a/Source/ExecutionEngine/ExecutionEngine.cs
+++ b/Source/ExecutionEngine/ExecutionEngine.cs
@@ -505,12 +505,6 @@ namespace Microsoft.Boogie
}
}
- EliminateDeadVariables(program);
-
- CollectModSets(program);
-
- CoalesceBlocks(program);
-
if (CommandLineOptions.Clo.StratifiedInlining == 0)
{
Concurrency.Transform(linearTypeChecker, moverTypeChecker);
@@ -524,6 +518,10 @@ namespace Microsoft.Boogie
}
}
+ EliminateDeadVariables(program);
+
+ CoalesceBlocks(program);
+
Inline(program);
var stats = new PipelineStatistics();
@@ -742,6 +740,8 @@ namespace Microsoft.Boogie
CommandLineOptions.Clo.TypeEncodingMethod = CommandLineOptions.TypeEncoding.Monomorphic;
}
+ CollectModSets(program);
+
moverTypeChecker = new MoverTypeChecker(program);
moverTypeChecker.TypeCheck();
if (moverTypeChecker.errorCount != 0)