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

Implementation #1

Open
theo-abel opened this issue Nov 14, 2024 · 0 comments
Open

Implementation #1

theo-abel opened this issue Nov 14, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@theo-abel
Copy link
Member

theo-abel commented Nov 14, 2024

The GrammaTech Intermediate Representation for Binaries (GTIRB) is a machine code analysis and rewriting data structure. It is intended to facilitate the communication of binary IR between programs performing binary disassembly, analysis, transformation, and pretty printing. GTIRB is modeled on LLVM-IR, and seeks to serve a similar functionality of encouraging communication and interoperability between tools.

All GTIRB Components are documented here. It serves two purposes :

  • A language-agnostic description of the representation components, with references to language-specific API implementations of these components.
  • A normative description of required API features for GTIRB. This API must satisfy all these requirements.

Here a dependency view of all protobuf structures (A → B = A depends on B) :

gtirb-programmatic-dependencies drawio

Those different components should be implemented from right to left. To get some inspiration, we can look at Python and C++ APIs.

@theo-abel theo-abel added the enhancement New feature or request label Nov 14, 2024
@theo-abel theo-abel self-assigned this Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant