macaw/macaw-ppc
Ryan Scott 98290062a7 macaw-ppc-symbolic: Add support for simulating syscalls
This adds the necessary changes to `macaw-ppc-symbolic` and `macaw-ppc` in
order to simulate system calls, similarly to how it is done when simulating
x86-64 and AArch32 code:

* In `macaw-ppc`, remove `PPCSyscall` from `TermStmt` and instead make it a
  constructor for `PPCPrimFn`. (Note that there are some minor discrepancies
  between which registers are used in PPC32 versus PPC64, which we explain in
  the Haddocks for the new `PPCSyscall` constructor.)
* Update `macaw-ppc`'s `ppcInstructionMatcher` function so that calls to the
  `sc` (system call) instruction make use of `PPCSyscall`.
* Update `macaw-ppc-symbolic`'s `ppcGenFn` function to make it possible to hook
  into PPC system calls using `MacawLookupSyscallHandle`.

Fixes #387.
2024-08-01 10:34:44 -04:00
..
src/Data/Macaw macaw-ppc-symbolic: Add support for simulating syscalls 2024-08-01 10:34:44 -04:00
tests macaw-base: Resolve PPC{32,64} relocations 2023-11-03 11:38:11 -04:00
ChangeLog.md first commit 2017-08-28 15:48:55 -07:00
LICENSE first commit 2017-08-28 15:48:55 -07:00
macaw-ppc.cabal ppc: Rename test modules 2022-06-09 13:07:30 -07:00
Setup.hs first commit 2017-08-28 15:48:55 -07:00