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
Joe Hendrix
1ce1547e6e
Add check to ensure jumps to start of function are self-loops
2017-03-08 16:57:12 -08:00
Joe Hendrix
e4061d370c
Remove DiscoveryInfo blocks field as parsedBlocks replaces it.
2017-03-08 13:40:40 -08:00
Joe Hendrix
26f68bf003
Migrate away from global blocks in discovery.
2017-03-08 13:21:41 -08:00
Joe Hendrix
2d23dba229
Add foldAppl
2017-03-05 23:56:37 -08:00
Joe Hendrix
40b92c901d
Make return address unmodifiable for analysis purposes.
2017-03-01 12:08:10 -08:00
Joe Hendrix
8dee23f9eb
Remove unneeded reason information from frontier.
2017-02-27 19:14:25 -08:00
Tristan Ravitch
38aa71d033
Merge branch 'master' of gitlab-ext.galois.com:macaw/macaw
2017-02-27 08:50:48 -08:00
Joe Hendrix
9518348ea1
Updates to resolve infinite loop due to abstract domains iteration.
2017-02-25 19:31:14 -08:00
Joe Hendrix
e97e7c7f49
Replace diassemble error with trace
2017-02-24 01:54:44 -05:00
Joe Hendrix
953e607e0e
Update classifyfailure
2017-02-24 01:53:11 -05:00
Joe Hendrix
fde2db4726
Fix bug in discovery; Remove unused commented out code.
2017-02-16 13:20:55 -05:00