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

Command tweaks #81

Merged
merged 12 commits into from
Jan 6, 2021
Merged

Command tweaks #81

merged 12 commits into from
Jan 6, 2021

Conversation

travitch
Copy link
Contributor

@travitch travitch commented Jan 5, 2021

Start cleaning up some commands and keymaps to improve the user experience

Make continue/step/interrupt easier to access, leaving the other commands
accessible via the minibuffer.
One of the helpers in Commands.hs took the quantified state while the other used
the unquantified state.  Make them both take the unquantified state (which makes
more type variables visible).
This will ensure that exceptions are propagated
Audit some commands to better specify when they are valid (e.g., stepping
execution is only possible when there is a current symbolic execution context).

This commit also moves some command helpers (predicates as well as value
extractors) to the core state module.
When resuming symbolic execution, send the symbolic execution session to
"Executing" mode, which displays collected statistics.  This affects both
stepping and continuing.  As part of that, add the profiling feature to the
crux-dbg frontend (so metrics can be shown while execution proceeds).

Also:
- Removes some calls to error by adding an empty metrics value
- Adds a more precise predicate to the "interrupt" command (only available
during "execution" mode
This includes compiled bitcode (for now)
This also exports the overrides so that they could be reused elsewhere
This means that any failed assertion will trigger the debugger without the user
having to change to crucible_debug_assert.  This might be something that needs
to change in practice (to be more configurable).
@travitch travitch merged commit 0686fda into master Jan 6, 2021
@travitch travitch deleted the command-tweaks branch January 6, 2021 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant