Skip to content

Add PE/COFF parsing support#4

Merged
tmcgilchrist merged 11 commits into
masterfrom
pe_coff
May 27, 2026
Merged

Add PE/COFF parsing support#4
tmcgilchrist merged 11 commits into
masterfrom
pe_coff

Conversation

@tmcgilchrist

Copy link
Copy Markdown
Owner

No description provided.

Object_format integration is for detecting file formats and extending
this into the OCaml versions of objdump and nm to be implemented
later. Debug_directory and code_view are for reading Debug Information
produced by OCaml.
Parse the .pdata section into RUNTIME_FUNCTION entries and serialize them
back. Unwind interpretation (x64/ARM64 UNWIND_INFO) lives in ocaml-pdb;
Object keeps only the low-level PE format understanding.
Extend the reader from PE images to relocatable COFF object files and
the COFF symbol/string tables.
Parse the minimal amount of PE to extract exports and do first level
transformation of the data into types. Anything that cross-links to
other information is left to resolve/lookup functions. Minimal tests
covering manually constructed binary files.
@tmcgilchrist tmcgilchrist force-pushed the pe_coff branch 2 times, most recently from 4c7a932 to cdfd74f Compare May 27, 2026 03:56
@tmcgilchrist tmcgilchrist merged commit 2099b8e into master May 27, 2026
5 checks passed
@tmcgilchrist tmcgilchrist deleted the pe_coff branch May 27, 2026 06:25
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