| Commit message (Collapse) | Author | Age |
|
|
|
| |
inlining algorithm.
|
|
|
|
| |
unnecessarry "Contract.Assert"s from my porting of Boogie.
|
|
|
|
| |
'BoogiePL.Parser.Parse'.
|
| |
|
|
|
|
|
|
| |
renaming the .ssc files to .cs. They are being deleted because my porting work will be done completely on my local disc, until such time that I want to merge ported code into the project.
With regards to the renaming problem, Stephan Tobies has found that the logs are kept on the CodePlex server, and are just not provided to the SVN client. He has created a Codeplex work item at http://codeplex.codeplex.com/workitem/25490. If it gets voted up sufficiently, it may get CodePlex to provide that log information, and thus help with future work regarding the Boogie depot.
|
|
|
|
| |
Spec# Intellisense compiler during editing of a .cs file. So, in order to allow continued editing of Boogie, during my porting project I will not be renaming the .ssc files to .cs, but rather creating copies of, for example, the BoogieDriver project's files, naming them as .cs versions, and porting them the rest of the way into C#. I will build these projects and run the regression tests on them, and once (and only once) the reg tests are passed, I will commit the compiled C# output as the replacement for the Spec# component.
|
|
|
|
|
|
| |
need to rename the .ssc files to .cs. Unfortunately, using the Tortoise SVN Source Control software, the changelog of the files I rename is lost. (I welcome anyone's ideas on how to do a more efficient/useful rename.) I will then port using VS 2010, creating a duplicate project on my harddisk, and translating it to pure C#. When I have my code successfully compiling, I will replace the Spec# version with my C# porting, run regressions, and if successful, commit my changes.
Editing Boogie in Spec# should still function with the .ssc files renamed to .cs files.
|
|
|
|
|
|
| |
having them in this repository because of license issues. Instead, they must be downloaded from http://boogiepartners.codeplex.com/ and then copied into the appropriate directories.
Lots of code changes to compensate for the new frame files.
|
|
|
|
| |
option is activated by /lazyInline:2. The original method is activated by /lazyInline:1.
|
|
|
|
| |
/lazyInline:1. It is off by default. This option currently does not support loops and recursion and also does not allow assertions and specifications in inlined procedures. The usage is currently not documented.
|
|
|
|
| |
changed liveVarsBefore from Boogie.Set to Generics.Set
|
|
|
|
| |
expressions; they might not yet fully work for polymorphic maps.
|
|
|
|
|
|
|
| |
linear procedure call
2. Inlining requires two fields OriginalBlocks and OriginalLocVars in Implementation. These are set just before inlining is called and now I reset them to null afterwards to help garbage collection.
3. Clear live variables right after passification again to help garbage collection.
|
|
|
|
| |
Controlled by the option /coalesceBlocks (default is to perform the optimization).
|
| |
|
|
|
|
|
|
| |
2. Hoisted the call to inlining into BoogieDriver.ssc
3. Implemented a simple dead variable elimination
4. Perform inlining only for those procedures whose verification is not skipped
|
| |
|
| |
|
|
|
|
|
| |
* SscBoogie: changed default setting for /modifiesOnLoop
(we really should move this SscBoogie-specific code to the Spec# codeplex)
|
| |
|
|
|