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

Add the heapster_define_opaque_llvmshape command #1355

Closed
eddywestbrook opened this issue Jun 25, 2021 · 0 comments · Fixed by #1356
Closed

Add the heapster_define_opaque_llvmshape command #1355

eddywestbrook opened this issue Jun 25, 2021 · 0 comments · Fixed by #1356
Labels
subsystem: heapster Issues specifically related to memory verification using Heapster

Comments

@eddywestbrook
Copy link
Contributor

This command will define an opaque named LLVM shape. This is like a "shape axiom", where Heapster does not know or care about the contents of memory of this shape but instead treats that memory as an opaque object, defined only by its length. The user also specifies a SAW core type-level function from (the translations of) the arguments of this new named shape to a SAW core type that is used as the translation of the shape.

The syntax for this command will be:

heapster_define_opaque_llvmshape henv nm w args len tp_fun

where:

  • henv is a Heapster environment
  • nm is the name of the new shape being defined
  • w is the pointer width used for the shape
  • args is a context of argument types for the shape
  • len is the length in bytes of the shape as an expression of type bv w over the variables in args
  • tp_fun is a SAW core expression for a type over the translations of the variables in args
@eddywestbrook eddywestbrook added the subsystem: heapster Issues specifically related to memory verification using Heapster label Jun 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
subsystem: heapster Issues specifically related to memory verification using Heapster
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant