Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow multiple harnesses with harness selection #17

Closed
2 tasks
novafacing opened this issue Sep 15, 2023 · 0 comments
Closed
2 tasks

Allow multiple harnesses with harness selection #17

novafacing opened this issue Sep 15, 2023 · 0 comments
Labels
enhancement A new feature or enhancement to an existing feature. low-priority Low priority tasks that still need to be completed for an upcoming release. minor A minor change, bug, or feature requiring low effort.

Comments

@novafacing
Copy link
Contributor

For some use cases, it would be nice to allow having multiple harnesses compiled into the same target software and selectively enable them at run-time. There are a few ways we can do this:

  • Encode it into n of the magic instruction. This is problematic on some architectures, for example ARM Thumb-2, n <= 12.
  • Encode it into yet another magic register. This is an OK approach but it does further increase the harness code complexity. If enabled with MAGIC_START_SELECT (4) this will be OK. Extended stop harnesses already include a way to communicate a value back to the fuzzer, so only start harnesses need to be extended.
@novafacing novafacing added minor A minor change, bug, or feature requiring low effort. low-priority Low priority tasks that still need to be completed for an upcoming release. enhancement A new feature or enhancement to an existing feature. labels Sep 15, 2023
novafacing pushed a commit to novafacing/tsffs that referenced this issue Mar 12, 2024
…ngs-6-0-165

Update SIMICS API bindings to 6.0.165
novafacing pushed a commit to novafacing/tsffs that referenced this issue Mar 12, 2024
…ngs-6-0-165

Update SIMICS API bindings to 6.0.165
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement A new feature or enhancement to an existing feature. low-priority Low priority tasks that still need to be completed for an upcoming release. minor A minor change, bug, or feature requiring low effort.
Projects
None yet
Development

No branches or pull requests

1 participant