Skip to content

Allow architecture plugins to perform basic block analysis #6792

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

Open
wants to merge 6 commits into
base: dev
Choose a base branch
from

Conversation

zznop
Copy link
Member

@zznop zznop commented May 5, 2025

Moves Function::AnalyzeBasicBlocks from the core to the API and allows it to be overridden in architecture plugins for custom implementations, if desired. This PR addresses #742 and #551 by allowing architecture plugins to override Architecture::AnalyzeBasicBlocks to perform control flow analysis at the function level.

zznop added 6 commits May 5, 2025 13:00
This commit moves AnalyzeBasicBlocks from the binary ninja core to the
API and allows architecture plugins to optionally override
AnalyzeBasicBlocks for a custom implementation
This allows the nanomips and rust core architecture plugins to work
again while using the C++ API DefaultAnalyzeBasicBlocks
@zznop zznop added Type: Enhancement Issue is a small enhancement to existing functionality Component: Architecture Issue needs changes to an architecture plugin labels May 5, 2025
@zznop zznop added this to the Helion milestone May 5, 2025
@zznop zznop requested a review from rssor May 5, 2025 19:09
@zznop zznop self-assigned this May 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Architecture Issue needs changes to an architecture plugin Type: Enhancement Issue is a small enhancement to existing functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant