mirror of
https://github.com/GaloisInc/macaw.git
synced 2024-11-23 16:35:02 +03:00
46be7aa52b
The new registerUse analysis uses a three phase process: Phase 1 computes invariants about the start state of each block. It will indicate when registers/stack locations store stack offsets, and where callee saved registers are stashed. It also memoizes information about stack reads and writes to simplify later passes. Phase 2 is a demand analysis that computes which registers and stack locations must be available to execute the program. It then propagates those constraints across blocks in the function. Phase 3 combines the information into a form relevant for function recovery. |
||
---|---|---|
.. | ||
src/Data/Macaw | ||
support | ||
tests | ||
x86_tests | ||
.gitignore | ||
LICENSE | ||
macaw-x86.cabal |