Joe Hendrix
a276dbaea4
Update to work with latest elf-edit.
2020-11-06 14:01:04 -08:00
Joe Hendrix
f2c0f00075
Allow functions to be explicitly marked as no-return.
2020-11-06 14:01:04 -08:00
Joe Hendrix
ab2bf08946
Merge subprograms with abstract origin.
2020-11-06 14:01:04 -08:00
Joe Hendrix
402f99071f
Fix warnings and ensure travis uses werror on some packages.
2020-11-06 13:58:39 -08:00
Joe Hendrix
cbd16ed481
Update dwarf parsing to increase laziness and robustness.
2020-11-06 13:56:37 -08:00
Joe Hendrix
c9218a9284
Fix undefined MkTuple typeRepr
2020-11-06 13:48:26 -08:00
Joe Hendrix
da3d43d805
Update elf-edit; export additional capabilities for Reopt.
...
This adds a mechanism for filtering out function addressses. Used by
Reopt for the PLT table.
2020-11-06 13:48:26 -08:00
Joe Hendrix
c356694627
Update to work with latest elf-edit.
2020-11-06 13:48:26 -08:00
Joe Hendrix
1510c247e3
Add MkTuple primitive.
2020-11-06 13:02:09 -08:00
Jared Weakly
b8eb2e0e8a
Merge pull request #171 from GaloisInc/lisanna/ci-init-8.10.2
...
Init CI for 8.10.2
2020-11-05 14:30:00 -08:00
Lisanna Dettwyler
e4b4ba26cf
Merge remote-tracking branch 'origin/master' into lisanna/ci-init-8.10.2
2020-11-04 11:20:56 -08:00
Tristan Ravitch
37861df8c7
Support for mixed ARM/Thumb binaries ( #174 )
...
aarch32: Support mixed ARM/Thumb1 binaries
This updates the aarch32 backend to decode Thumb instructions and generate the Thumb semantics. The major implementation change is to use the `ArchBlockPrecond` feature of macaw to track the Thumb state (`PSTATE_T`) across block boundaries.
The ARM code discovery decides whether or not a function entry point should be decoded as Thumb by examining the low bit of the function address. If the low bit is set, it is a Thumb entry point. This has the slightly odd effect of causing macaw to say that the function is at the address with the low bit set, which is not technically true. This is documented in the README, but not obvious on inspection. Most use cases should not care, and can in any case account for it. In the future, it should be possible to fix this (though it will require some changes to the core of macaw).
2020-11-02 12:48:01 -08:00
Daniel Matichuk
a1c3e4e099
Merge pull request #158 from GaloisInc/memgen
...
macaw-symbolic: Support alternative memory models in ArchInfo
2020-10-28 14:12:33 -07:00
Daniel Matichuk
adeeac988a
Merge branch 'master' into memgen
2020-10-28 10:47:21 -07:00
Daniel Matichuk
7154518da5
Merge pull request #170 from GaloisInc/thfix
...
compatibility fix for template-haskell-2.16
2020-10-22 12:02:06 -07:00
Daniel Matichuk
e02ecdb89e
Merge branch 'master' into thfix
2020-10-21 10:59:03 -07:00
Lisanna Dettwyler
906cef407d
Merge remote-tracking branch 'origin/master' into lisanna/ci-init-8.10.2
2020-10-21 10:20:04 -07:00
Kevin Quick
e7c9d2ea00
Merge pull request #172 from GaloisInc/redundant_unpack_cases
...
Extract single Assignment element without redundant pattern case
2020-10-21 10:00:16 -07:00
Kevin Quick
7d497c1f46
Merge branch 'master' into redundant_unpack_cases
2020-10-21 09:59:34 -07:00
LisannaAtGalois
5adf154a62
Merge pull request #168 from GaloisInc/lisanna/ci-more-ghc
...
Init 8.6.5 testing
2020-10-21 09:40:18 -07:00
Kevin Quick
923089d767
Extract single Assignment element without redundant pattern case
2020-10-20 21:09:15 -07:00
Lisanna Dettwyler
31c2217a9d
Annotate known issues
2020-10-20 14:08:36 -07:00
Lisanna Dettwyler
47544e4b2d
Fix warnings in GHC 8.10
2020-10-20 13:53:22 -07:00
Lisanna Dettwyler
e12f71e5be
Init CI for 8.10.2
2020-10-20 13:53:09 -07:00
Lisanna Dettwyler
a5f11c114d
remove 8.10
2020-10-20 13:44:37 -07:00
Lisanna Dettwyler
a38ec82fda
Remove 8.10 from this PR
2020-10-20 13:44:37 -07:00
Lisanna Dettwyler
f0790505cc
Invalidate cabal cache when dependencies change
2020-10-20 13:44:37 -07:00
Lisanna Dettwyler
66c41039a6
Init [8.6.5 8.10.1] testing
2020-10-20 13:44:37 -07:00
LisannaAtGalois
5a22913f2a
Merge pull request #169 from GaloisInc/lisanna/gha-dep-fns
...
Replace deprecated GitHub Actions functions
2020-10-19 14:13:12 -07:00
Daniel Matichuk
c8d057b715
compatibility fix for template-haskell-2.16
...
See: https://gitlab.haskell.org/ghc/ghc/-/issues/15843
2020-10-15 16:32:46 -07:00
Lisanna Dettwyler
5ca4f4e501
Replace deprecated GitHub Actions functions
2020-10-15 09:56:29 -07:00
Sam Breese
3a071e317b
symbolic: Fix PackBits and UnpackBits ( #166 )
2020-10-12 14:20:05 -04:00
Sam Breese
34e7394c14
x86: Implement semantics for a few instructions ( #167 )
...
* x86: Add aesenc, aesenclast, aesdec, aesdeclast
* x86: Add vpcmpgtd
* WIP
* Implement Pshufb
* Fix AESNI_AESEncLast.
* Fix PtCmpGt.
* Refactor AESNI instructions a bit
* Finish refactoring
* Forgot MultiWayIf
* Reduce duplication a bit
* Address comments
Co-authored-by: Andrei Stefanescu <andrei@stefanescu.io>
2020-10-08 19:37:17 -04:00
Sam Breese
5fdfdb2eaa
x86: Add some entries to the export list of Data.Macaw.X86 ( #164 )
2020-10-08 18:25:30 -04:00
Sam Breese
00d8530255
symbolic: Add special cases for null pointers in doPtrEq ( #165 )
2020-10-08 14:38:46 -04:00
Daniel Matichuk
11ceebb592
more haddock fixes
2020-10-06 16:52:21 -07:00
Daniel Matichuk
aab0010d0a
more haddock fixes
2020-10-06 14:57:43 -07:00
Daniel Matichuk
a595bdc6a4
fix haddocks
2020-10-06 11:20:59 -07:00
Daniel Matichuk
3765c5eaab
remove 'constraints' dependency
2020-10-06 11:20:40 -07:00
Daniel Matichuk
8f9ee8624e
fixup GenArchInfo instance
2020-10-05 12:54:22 -07:00
Daniel Matichuk
d0349a7af3
Merge remote-tracking branch 'origin/master' into memgen
2020-10-05 12:41:36 -07:00
Tristan Ravitch
cbc7a3ca31
Feature/aarch32 symbolic backend ( #162 )
...
aarch32-symbolic: Implement most of the remaining macaw-aarch32-symbolic bits
It should be usable now, modulo some execution-time semantics for the floating
point operations. There will be a separate ticket covering the changes required
for them (some refactoring of how they are handled during translation is required).
2020-10-05 12:31:39 -07:00
Daniel Matichuk
af7758032c
Merge branch 'master' into memgen
2020-10-05 12:23:36 -07:00
Daniel Matichuk
b04e0a2fa6
fix ArchInfo instance for macaw-aarch32-symbolic
2020-10-05 12:22:07 -07:00
Joe Hendrix
6a83d23989
Merge pull request #161 from GaloisInc/jhx/github-actions
...
Switch to GitHub actions
2020-09-29 14:55:54 -07:00
Joe Hendrix
0baa499c2a
Migrate from Travis to Github Actions
2020-09-29 13:47:34 -07:00
robdockins
3c2d237a59
Merge pull request #159 from GaloisInc/crucible-mem-fix
...
Update to use new `HasLLVMAnn` API
2020-09-16 10:31:36 -07:00
Rob Dockins
e9b960c6d5
Bump semmc submodule
2020-09-15 16:24:24 -07:00
Rob Dockins
99f8cb0bdf
Update to use new HasLLVMAnn
API, which requires an action for
...
recording (or discarding) annotations rather than a map.
2020-09-11 14:40:02 -07:00
Daniel Matichuk
70d35d44e4
parameterize ArchInfo and ArchVals over mem type
2020-09-02 10:21:39 -07:00