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 disassembly "decompiler" #50

Open
dougallj opened this issue Jul 14, 2022 · 2 comments
Open

Add disassembly "decompiler" #50

dougallj opened this issue Jul 14, 2022 · 2 comments
Labels
new-decompiler Adding support for new decompilers

Comments

@dougallj
Copy link

Currently if you have a dogbolt link where two tools disagree, there's no way to know which one is correct. (e.g. BinaryNinja vs Hex-Rays here)

Adding a "disassembly" pane would give a source of truth, to allow users to understand what the input to the decompilers actually was, and which one is correct.

@CouleeApps
Copy link
Collaborator

CouleeApps commented Jul 14, 2022

This is a good idea although it is more nuanced than "just slap objdump on it," considering there are many different disassemblers for many platforms and they often disagree. Also there's the eternal challenge of extracting the text segment and knowing which regions are actually code. We could add runners for many different disassemblers for comparison between them, or just use something generic like binja or ghidra.

@dougallj
Copy link
Author

Yeah - for now I'd lean towards "just slap objdump on it" (and call it objdump) as an easy and mostly-fine tradeoff? (Free for devs without binja licenses, and faster than ghidra)

On the other extreme, I did also prototype dumping out disassembly with decompilation line-number associations from Hex-Rays, displayed with godbolt style colouring of the disassembly and pseudocode, which might be possible with other tools too. (I think setting WITH_DISASM = True on line 5 of dump.py worked)

@CouleeApps CouleeApps added the new-decompiler Adding support for new decompilers label Aug 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new-decompiler Adding support for new decompilers
Projects
None yet
Development

No branches or pull requests

2 participants