Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
OTAWA-plugins
Polymalys
Commits
27897b52
Commit
27897b52
authored
May 29, 2020
by
Forget Julien
Browse files
Added intro, ref, author.
parent
97e9adfb
Changes
1
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
27897b52
# Polymalys
Polymalys: Polyhedra-based Memory Analysis.
*
Version XX for Otawa XX
----
## Author
Clement Ballabriga
<Clement.Ballabriga@nospamuniv-lille.fr>
License: GPL 2.1 or higher.
Please remove "nospam" from the email address.
----
## Introduction
Polymalys is a tool for static analysis of
*binary*
code. It discovers
linear relations between data locations (i.e. memory locations as well
as registers) of the code. The analysis relies on abstract
interpretation using a polyhedra-based abstract domain. The current
implementation exploits the discovered linear relations to compute upper
bounds to loop iterations. For more information on the underlying
theory, refer to [1].
## Requirements
*
Parma Polyhedra Library (PPL): http://bugseng.com/products/ppl/
...
...
@@ -87,17 +112,21 @@ cd tests
Read
`tests/poly.cpp`
##
Known limitations (f
uture works
):
##
F
uture works
*
No modular inter-procedural analysis
*
No support for integer wrap/overflow
*
Loops with equality (instead of inequality) in loop condition will have pessimistic bounds
*
We assume that each memory access has 32bits-size, and is 32bits-aligned
*
Use discovered linear relations for other static analyses:
out-of-stack accesses detection, dead-code detection, ...
*
Inter-procedural analysis
*
Support for integer wrap/overflow
*
Loops conditions with equality tests (instead of inequality)
currently have pessimistic bounds
*
We currently assume that each memory access has 32bits-size, and is 32bits-aligned
*
Lots of speed optimization needs to be done
----
## References
## Questions:
mail: Clement.Ballabriga@univ-lille1.fr
[1] Ballabriga, C., Forget, J., Gonnord, L., Lipari, G. and Ruiz, J.,
2019, January. Static Analysis Of Binary Code With Memory Indirections
Using Polyhedra. In International Conference on Verification, Model
Checking, and Abstract Interpretation (pp. 114-135).
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment