Skip to content

Conversation

ivg
Copy link
Member

@ivg ivg commented Jan 8, 2021

It is now possible to (ab)use BIL special statements to encode arbitrary semantics. The payload is still stored as a string, but it is now specially encoded and printed. Each kind of payload is represented by an attribute, e.g., Bil.call is used to encode calls, and Bil.intrinsic is used to encode intrinsics.

The Core Theory BIL parser, that enables reflection of the BIL programs into the CT terms, is moved to the library and is made available in Bil.Theory module. We might later extend this module with the actual BIL theory, though it is already could be instantiated via the Theory.instance function.

It is now possible to (ab)use BIL special statements to encode arbitrary
semantics. The payload is still stored as a string, but it is now
specially encoded and printed. Each kind of payload is represented by
an attribute, e.g., `Bil.call` is used to encode calls, and
`Bil.intrinsic` is used to encode intrinsics.

The Core Theory BIL parser, that enables reflection of the BIL
programs into the CT terms, is moved to the library and is made
available in `Bil.Theory` module. We might later extend this module
with the actual BIL theory, though it is already could be instantiated
via the `Theory.instance` function.
@ivg ivg merged commit 50c6781 into BinaryAnalysisPlatform:master Jan 8, 2021
@ivg ivg deleted the publishes-core-theory-bil-parser branch December 1, 2021 19:14
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