-
Notifications
You must be signed in to change notification settings - Fork 63
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
llvm_extract support for functions that call other functions #90
Comments
One thing to consider during the crucible rewrite is handling undefined symbols. Currently SAW can't reason about code in the form:
For example, this code is identical to |
@TomMD If you want to assume that EDIT: I should add that you can obtain an uninterpreted function of whatever type you want in saw-script like this:
|
@brianhuffman But how can one extract the |
The original idea for
The process might be slightly different for equivalent functionality using Crucible, but probably not in any fundamental way. |
This is now done with |
Remove saw-core `bitvector` type synonym; use `Vec n Bool` instead.
Currently
llvm_extract
inlines all function calls into the top-level extracted function. This does not scale well for large programs with multiple levels of function calls.Ideally it should be able to use an override-like mechanism to put
define
d constants in the place of function calls. It would also be nicer if it returned a singledefine
d term with a function type, instead of an open term containing symbolic variables.The text was updated successfully, but these errors were encountered: