Using BinDiff to Compare Assembly Changes from Compiler Patches

Open
#65 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale

Research direction

Start by reading binExport2.proto and tracing how BinExport produces input for BinDiff from an IDA database. Determine whether assembly parsed for the closed architecture can provide the required data, and document the supported approach or the missing integration work.

Written by the indexing model from the issue text.

Description

enhancement

Hello,

I have a general question regarding BinDiff. My background is in compilers and compiler optimizations, and I’m exploring whether BinDiff can be used to analyze changes in generated assembly after applying a compiler patch.
I work on a closed architecture and I'm trying to see if I'm able to utilize BinDiff for this goal.

Since the architecture I work on is closed, I can’t rely on existing disassemblers like IDA. From what I understand, BinExport typically takes an IDA database as input and produces a protobuf file for BinDiff to analyze.
To support the architecture I'm working on, I assume I would need to parse the assembly files and convert them into a protobuf format according to binExport2.proto.

Am I understanding this correctly? Would this approach work for my use case?

Thanks in advance!

Dominant language
Java
Stars
3.2k
Forks
240
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from google/bindiff

All issues in google/bindiff

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.