macaw/deps
Ryan Scott 049096c506 Support building with GHC 9.0
This contains a variety of fixes needed to make the packages in the `macaw`
repo compile with GHC 9.0:

* GHC 9.0 implements simplified subsumption (see
  [here](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0?version_id=5fcd0a50e0872efb3c38a32db140506da8310d87#simplified-subsumption)).
  In most cases, adapting to this is a matter of manually eta expanding
  definitions, such as in `base:Data.Macaw.Analysis.RegisterUse`. In the case
  of `macaw-x86-symbolic:Data.Macaw.X86.Crucible`, the type signature of
  `evalExt` had to be made more specific to adapt to the loss of contravariance
  when typechecking `(->)`.
* GHC's constraint solver now solves constraints in each top-level group
  sooner (see
  [here](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.0?version_id=5fcd0a50e0872efb3c38a32db140506da8310d87#the-order-of-th-splices-is-more-important)).
  This affects `macaw-aarch32` and `macaw-symbolic`, as they separate top-level
  groups with `$(return [])` Template Haskell splices. The previous locations
  of these splices made it so that the TH-generated instances in that package
  were not available to any code before the splice, resulting in type errors
  when compiled with GHC 9.0.

  To overcome this, I rearranged the TH-generated instances so that they appear
  before the top-level groups that make use of them.
* GHC 9.0 now enables `-Wstar-is-type` in `-Wall`, so this patch replaces some
  uses of `*` with `Data.Kind.Type`. `Data.Kind` requires the use of GHC 8.0 or
  later, so this patch also updates thes lower bounds on `base` to `>= 4.9` in
  the appropriate `.cabal` files. (I'm fairly certain that this requirement was
  already present implicity, but better to be explicit about it.)
* The `asl-translator`, `crucible`, and `semmc` submodules were updated to
  allow them to build with GHC 9.0. The `llvm-pretty` and
  `llvm-pretty-bc-parser` submodules were also bumped to accommodate unrelated
  changes in `crucible` that were brought in.
* The upper version bounds on `doctest` in `macaw-symbolic`'s test suite were
  raised to allow it to build with GHC 9.0.
2022-01-10 16:40:23 -05:00
..
arm-asl-parser@afbeff2db4 Rename macaw-asl to macaw-aarch32 2020-04-05 15:16:39 -07:00
asl-translator@dcdf5e5f4a Support building with GHC 9.0 2022-01-10 16:40:23 -05:00
crucible@d16aabc28b Support building with GHC 9.0 2022-01-10 16:40:23 -05:00
dismantle@4573f4654c Update the aarch32 disassembler 2021-11-05 20:01:11 -07:00
dwarf@ad6043e398 Update submodules 2021-06-14 15:41:32 -07:00
elf-edit@fb4699a2bb Update submodules 2021-06-14 15:41:32 -07:00
flexdis86@9b899ed652 macaw-x86: Handle sign-extended immediates in def_push 2021-10-12 16:37:21 -04:00
llvm-pretty@ed904c679d Support building with GHC 9.0 2022-01-10 16:40:23 -05:00
llvm-pretty-bc-parser@062dc02b2e Support building with GHC 9.0 2022-01-10 16:40:23 -05:00
macaw-loader@f69f3a835a Fix the default ppc32 ABI (#222) 2021-08-19 07:41:29 -07:00
semmc@17f3ac6238 Support building with GHC 9.0 2022-01-10 16:40:23 -05:00
what4@042a8112b1 Submodule updates 2021-11-18 21:40:09 -08:00
what4-serialize@35f2877a3c Update submodules 2021-07-15 21:22:30 -07:00