Commit Graph

91 Commits

Author SHA1 Message Date
Jason Dagit
c8a5f7abf5 add BoolConst case to joinAbsValue' 2017-07-13 17:17:28 -07:00
Jason Dagit
66b41f1d56 AbsState: Add missing casses to concretize and absValueSize 2017-07-12 16:34:11 -07:00
Joe Hendrix
0e66a3dfea
Convert macaw-symbolic to use CPS for CrucGen monad. 2017-07-10 14:42:26 -07:00
Joe Hendrix
876382fc0e
Additional support for symbolic translator. 2017-07-10 12:30:40 -07:00
Joe Hendrix
95a3721524
Merge branch 'master' of gitlab-ext.galois.com:macaw/macaw 2017-07-07 14:19:17 -07:00
Joe Hendrix
3fe64acd07
Refactor to support Boolean type; start mapping to Crucible. 2017-07-07 14:18:35 -07:00
Jason Dagit
501a24c47a Discovery: Rebuild segmented addr meta data in concretizeAbsCodePointers 2017-07-07 13:23:40 -07:00
Joe Hendrix
0c3c935b7b
Refactor modules. 2017-07-05 13:31:21 -07:00
Joe Hendrix
522c43e101
Fix typo in AbsEval. 2017-06-30 15:08:16 -07:00
Joe Hendrix
734534621a
Rename ParsedBlock/ParsedBlockRegion to StatementList/ParsedBlock.
This also adds stmtsAbsTate to StatementList.
2017-06-30 12:15:41 -07:00
Joe Hendrix
e6bcd134f5
Add better optimization and dead code elimination for conditions. 2017-06-30 10:56:46 -07:00
Joe Hendrix
ed1fa93e38
Minor updates. 2017-06-27 14:13:58 -07:00
Ben Selfridge
d8ff07b6c2 added a few more exports to Memory.hs 2017-06-27 11:22:26 -07:00
Joe Hendrix
2993d721a2
Add operations for reading bytestring and words from addresses. 2017-06-23 09:50:10 -07:00
Joe Hendrix
49580deb0e
Add opt pass; Improve comments. 2017-06-22 10:03:43 -07:00
Joe Hendrix
35d08c96bc
Change RelocatableValue to support segments; remove block label 2017-06-21 14:44:31 -07:00
Joe Hendrix
f8b9fe25f6
Harden discovery to gracefully fail if disassembler returns empty listof blocks. 2017-06-20 17:05:02 -07:00
Joe Hendrix
60bee7d5bc
Switch to using ParsedIte over ParsedBranch. 2017-06-20 16:23:33 -07:00
Joe Hendrix
1d0623e34e
Introduce ParsedIte 2017-06-20 14:47:29 -07:00
Joe Hendrix
49d5aefb4e
Simplify DiscoveryFunInfo 2017-06-20 09:01:26 -07:00
Joe Hendrix
172cf7e863
Improve discovery comments. 2017-06-19 16:30:24 -07:00
Joe Hendrix
8075bad9f9
Revise discovery to so that lookupFunction removes unexplored functions. 2017-06-19 07:45:02 -07:00
Joe Hendrix
e09e37fab4
Switch to use elfclass over relawidth 2017-06-14 16:49:09 -07:00
Joe Hendrix
45b5c181e3
Update to support new elf-edit changes. 2017-06-14 16:03:04 -07:00
Joe Hendrix
1e2b47f015
Add additional flag to control discovery; improve return checking. 2017-06-13 17:34:39 -07:00
Joe Hendrix
43f4cd95f9
Cleanups to remove redundent class constraints; simplify interface invariants. 2017-06-07 15:16:08 -07:00
Joe Hendrix
b6997100c3
Cleanups to fix haddock documentation, rename types to be more accurate. 2017-06-04 11:09:07 -07:00
Joe Hendrix
7a805e6be4
Export additional functions from discovery to allow more fine-grained clients. 2017-06-03 22:17:33 -07:00
Joe Hendrix
4b7c2bd6f7
Update DiscoveryInfo to remove ids parameter. 2017-06-02 16:30:36 -07:00
Joe Hendrix
2261c40486
Remove UpperHalf; generalize runCFGM 2017-06-02 13:03:17 -07:00
Joe Hendrix
51ac2e53a2
Separate App/remove ConcatV. 2017-06-02 11:10:58 -07:00
Joe Hendrix
4a145f6b49
Fix identifyCall 2017-05-31 16:35:53 -07:00
Joe Hendrix
1d6573deb2
Migrate architecture independent code from reopt to here. 2017-05-29 23:25:51 -07:00
Joe Hendrix
735d41e119
Update memory accesses.
This adds endianess anotations and ensure types align with byte bounda.
2017-05-24 15:55:48 -07:00
Joe Hendrix
84e302c41e
Fix comment; minor style changes. 2017-05-15 11:43:49 -07:00
Joe Hendrix
5b3d1aa58e
Cleanup dwarf type information. 2017-05-15 10:47:08 -07:00
Joe Hendrix
a243f556ae
Simplify class constraints for discovery. 2017-05-10 22:23:12 -04:00
Joe Hendrix
19c0274682
Remove script for building just these dependencies 2017-05-05 00:13:54 -07:00
Joe Hendrix
88c4017c3f
Remove flexdis86 dependency; use macaw-x86 2017-05-04 16:17:51 -07:00
Joe Hendrix
6e10aaa447
Add comment to GlobalDataInfo 2017-04-28 13:54:25 -07:00
Ben Davis
177812fdc1 Expose additional DWARF types 2017-04-04 16:19:47 -04:00
Ben Davis
d9a516f09f Replace error on duplicate symbol names with just a warning
Symbol names are not always unique (multiple addresses are associated with same
name) on code we want to analyze, so just continue anyway.
2017-03-29 10:50:23 -04:00
Tristan Ravitch
9f684541dc Fix a typo in the README 2017-03-22 11:39:18 -07:00
Tristan Ravitch
f4309f0c0f Add a README describing what the library is and a little bit about how to use it 2017-03-22 11:38:24 -07:00
Tristan Ravitch
e29d94be06 Change the representation of RelocatableValue
It used to hold a SegmentedAddr.  This caused issues in semantics that require
the ability to perform addition and subtraction operations on RelocatableValues.
Addition or subtraction operations on SegmentedAddrs are not well defined,
because these operations can push a value from one segment into another, and
there is no way for them to compute the new segment.

The new representation is just a MemWord, whose interpretation is now decided
later (in `transferValue'` in AbsState).
2017-03-21 14:32:30 -07:00
Tristan Ravitch
ae02239342 Merge branch 'master' of gitlab-ext.galois.com:macaw/macaw 2017-03-20 09:57:09 -07:00
Joe Hendrix
1e0c10787f
Remove tryGetStaticSyscallNo 2017-03-20 00:07:29 -07:00
Tristan Ravitch
823677d4ea Merge branch 'master' of gitlab-ext.galois.com:macaw/macaw 2017-03-17 14:22:22 -07:00
Joe Hendrix
eb547022d8
Minor cleanups to macaw 2017-03-16 02:44:33 -04:00
Joe Hendrix
5b8d1798bf
Add symbol names to DiscoveredFunInfo. 2017-03-10 22:01:44 -08:00