Refactor and add documentation for mmio
goto-program pass
#7553
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR refactors and documents the
mmio
goto-program pass. I found it to be non-trivial to get an overview of what this transformation pass was doing to the goto-program. The refactoring and documentation in this PR is that which I carried out in order to further my own understanding. This PR is not intended to include any bugfixes or additional functionality, nor am I planning to carry out such work in the near future.The functionality implemented in the
mmio
pass is tested by theregression/cbmc/mm_io1
test. I suggest that reviewers review commit by commit as every step-wise refactor is in its own commit, with justification in the commit body. So it should be easier to see that there are no functional changes based on the individual commits rather than reading the change set of PR as a whole.