Vector35 / Vector35/binaryninja-api
Support for generic or arch-specific size suffixes in IL
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 1.3k
- Forks
- 298
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 19
Description
What is the feature you'd like to have?
Ability to customize the suffix notation (.b, .w, .d, ...) displayed in BNIL listings to match a given architecture. Alternatively, a universal suffix notation that just uses the bit width, e.g. .8, .16, .32, etc.
Is your feature request related to a problem?
When working with many architectures other than x86, the notation used by Binary Ninja (w = 16-bit, d = 32-bit, q = 64-bit) presents a mismatch with the notation used by the architecture's assembly (e.g. h = 16-bit, w = 32-bit). It can be confusing when looking at both the disassembly and the IL on such architectures.
Are any alternative solutions acceptable?
An alternative is to modify the disassembly to match BNIL style, but that means the disassembled code is no longer valid as far as an architecture-native assembler is concerned, so I don't consider this a reasonable solution.
Additional Information:
Example screenshot showing LLIL on the left, disassembly on the right:
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by locating the BNIL listing code that formats size suffixes and the architecture-specific display logic; done means supporting architecture-matched or bit-width suffixes without altering valid native disassembly.
Written by the indexing model from the issue text.
Assessment
- Domain
- reverse-engineering
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100