Skip to content

Faster Function Lookup and GUI-Consistent Decompilation

Choose a tag to compare

@symgraph symgraph released this 10 Jul 22:01
· 7 commits to master since this release
  • Much faster function lookup
    - Replaces repeated full-program function scans with indexed symbol-table lookups.
    - Benefits function resolution across code, comments, variables, structures, signatures, call graphs, and cross-reference tools.
    - Preserves qualified-name resolution, duplicate-name ordering, dynamic function names, and default/external thunk handling.
    - Thanks to @linted (https://github.com/linted) for the original contribution in PR #61 (#61).

    • Decompiler output now follows Ghidra’s configured options

      • MCP tools and prompts inherit the owning CodeBrowser’s Decompiler and Browser Fields settings.
      • Improves structure, array, pointer, cast, namespace, and formatting behavior relative to native defaults.
      • Supports the correct CodeBrowser when targeting programs across multiple windows.
      • Retains program-default behavior in headless mode.
      • Applies configured decompilation timeouts and invalidates cached code when relevant GUI options change.
      • Centralizes decompiler lifecycle management to ensure native resources are released reliably.
      • Addresses issue #59 (#59), reported by @RagingCactus (https://github.com/RagingCactus).
    • Modernized build toolchain

      • Targets the Ghidra 12.1 development environment.
      • Source builds now require Java 25 or newer.
      • Adds a verified Gradle 9.6.1 wrapper; use ./gradlew for builds and installation.
      • Adds JUnit test infrastructure covering function lookup and decompiler configuration.