| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-06-05 | Add abs, min, and max instructions | Mark Rowe | |
| 2026-06-04 | Add bswap, popcnt, clz, ctz, cls, and rbit instructions | Mark Rowe | |
| 2026-05-22 | Refactor calling conventions to support correct representation of structures | Rusty Wagner | |
| 2025-12-24 | Fix crash when displaying variable with null type in pseudo-c and pseudo-rust | Josh Ferrell | |
| 2025-12-20 | Fix many of the warnings that show up when compiling with GCC 15.2 | Mark Rowe | |
| 2025-11-10 | Fix crash for psuedo views (C/Obj-C/Rust) with unknown array access expr type | Mason Reed | |
| Fixes https://github.com/Vector35/binaryninja-api/issues/7603 | |||
| 2025-11-04 | Fix incorrect dereferencing in HLIL_STRUCT_FIELD rendering, and fix ignoring ↵ | Rusty Wagner | |
| of signed hints in casts | |||
| 2025-10-11 | Fix demo ifdefs | Josh Ferrell | |
| 2025-08-13 | Fix round and single-operand uses of COMBINE in Pseudo-C | Galen Williamson | |
| 2025-07-30 | [CMake] Specify CONFIGURE_DEPENDS for all file(GLOB ..) | Mark Rowe | |
| This ensures that CMake detects when files that match the glob are added or removed. | |||
| 2025-07-16 | [PseudoC] Fix handling of struct field accesses at offset 0 | Mark Rowe | |
| 2025-07-16 | pseudo-c/rust: fix member index hint in field resolution | Ryan Snyder | |
| 2025-07-15 | Expose analysis' system call type and name retrieval | Mason Reed | |
| Previously we only really had a way to access the platform system call information, this was missing the system call information found in type libraries Fixes https://github.com/Vector35/binaryninja-api/issues/7089 | |||
| 2025-07-02 | Add outlining support for wmemcpy. | Brian Potchik | |
| 2025-06-28 | Fix psuedo-c semicolon highlighting in ternary operations | Alexander Khosrowshahi | |
| 2025-06-28 | Add support for ternary simplification in Psuedo C and disable in graph view | Alexander Khosrowshahi | |
| 2025-06-25 | Update CXX_STANDARD to 20. | Alexander Taylor | |
| Also update minimum CMake version. | |||
| 2025-06-25 | Remove implicit conversions from Confidence to underlying type, these can ↵ | Rusty Wagner | |
| cause bugs and also issues with C++20 | |||
| 2025-06-18 | [ObjC] Improve how [super ...] calls are displayed | Mark Rowe | |
| 1. Skip displaying the declaration and initialization of the objc_super struct since that's an artifact of how objc_msgSendSuper is called. 2. Display the message receiver as `super` rather than `&super` | |||
| 2025-06-18 | [ObjC] Prefer displaying id rather than objc_object* | Mark Rowe | |
| 2025-06-18 | Have PseudoCFunction use its language's type printer | Mark Rowe | |
| It was previously explicitly using the default. Retreiving it from the language will make it possible for PseudoObjCFunction to provide its own type printer. | |||
| 2025-06-18 | [ObjC] Rewrite a couple of additional runtime calls | Mark Rowe | |
| objc_opt_self -> [... self], objc_opt_isKindOfClass -> [... isKindOfClass:...], objc_opt_respondsToSelector -> [... respondsToSelector:...] | |||
| 2025-06-18 | [ObjC] Display selectors as @selector(...) | Mark Rowe | |
| 2025-05-29 | Light unused variable cleanup in Psuedo C/Obj-C Plugin | kat | |
| 2025-05-29 | [PseudoObjC] Handle named type references to types that don't exist | Mark Rowe | |
| 2025-05-29 | Detect calls that the Objective-C workflow has rewritten directly to an ↵ | Mark Rowe | |
| implementation These are detected by their function names having the characteristic `-[ClassName methodName:]` format. Calls to functions with this naming pattern that accept a selector as a second argument are assumed to be `objc_msgSend` calls that the Objective-C workflow rewrote. These calls are formatted identically to other `objc_msgSend` calls with the exception that the selector tokens reference the address of the call target rather than the selector string, so double-clicking on them takes you to the fixed destination of the rewritten call. | |||
| 2025-05-29 | Implement a Pseudo Objective-C language representation | Mark Rowe | |
| This is implemented in the Pseudo C plug-in as it shares 99% of the logic. The Objective-C support is implemented in a subclass of `PseudoCFunction`. The handling of instruction types that the Objective-C representation needs to customize is extracted into virtual functions that the Objective-C subclass overrides. This currently supports: * Rewriting `objc_msgSend` / `objc_msgSendSuper2` with constant selectors to `[receiver message]` notation. * Rewriting calls to `objc_alloc` / `objc_alloc_init` / `objc_new` to the equivalent message send notation. * Rewriting `objc_retain` / `objc_release` and friends to the equivalent message send notation. * Displaying Objective-C class references as their class names rather than `_OBJC_CLASS_$_` symbol names. * Displaying Objective-C string literals as `@"..."`. This works best when used in conjunction with https://github.com/bdash/bn-objc-extras as the reference counting runtime calls add so much clutter. | |||
| 2025-05-21 | Fix HLIL_LABEL rendering | Glenn Smith | |
| 2025-05-13 | [CMake] Report compatibility with 3.15 to silence deprecation warnings | Glenn Smith | |
| 2025-05-06 | Add cast to partial var accesses in pseudo C/Rust | Brandon Miller | |
| Add casts to HLIL_STRUCT_FIELD expressions where the size of the source expression is greater than the size of access | |||
| 2025-04-15 | Cast on indexed array assignments in pseudo C/Rust | Brandon Miller | |
| 2025-04-15 | Fix pseudo C/Rust absent lhs on comparison | Brandon Miller | |
| This issue was caused because HLIL_SPLIT was not being handled on the left and right expressions of HLIL_IF instructions | |||
| 2025-04-15 | Handle var assign with split src in pseudo C/Rust | Brandon Miller | |
| Fixes issue with absent rhs when the instruction is HLIL_ASSIGN with a source expression of HLIL_SPLIT (var_60.q = r1:r0) | |||
| 2025-04-11 | Fix pseudo C and rust type cast on HLIL_DEREF | Brandon Miller | |
| Should be using the instruction size of the HLIL_DEREF instruction, not the size of the HLIL_DEREF's source expression | |||
| 2025-01-24 | Add line formatter API and a generic line formatter plugin | Rusty Wagner | |
| 2025-01-20 | Revert "Add line formatter API and a generic line formatter plugin" | Rusty Wagner | |
| This reverts commit 1699c71999d29d32aba5c9f8fea193a661a4b02b. | |||
| 2025-01-17 | Add line formatter API and a generic line formatter plugin | Rusty Wagner | |
| 2024-12-27 | One case of needing the type printer in pseudo rust | Glenn Smith | |
| 2024-12-27 | Make pseudo-c use the default type printer | Glenn Smith | |
| 2024-12-27 | Clean up langreps' opcode print switch | Glenn Smith | |
| 2024-11-04 | Fix opening/closing braces in PseudoRust | Peter LaFosse | |
| 2024-10-28 | Eliminate AST parameter in high level rendering APIs, as it is already part ↵ | Rusty Wagner | |
| of the HLIL instruction | |||
| 2024-10-28 | hlr: expose ability to claim line addresses | Ryan Snyder | |
| 2024-10-24 | Make PseudoRust collapsable | Peter LaFosse | |
| 2024-10-24 | Fix alignment of top level braces in PseudoC | Peter LaFosse | |
| 2024-10-23 | Linear view function regions collapse | Peter LaFosse | |
| Update collapse code to support PseudoC | |||
| 2024-10-21 | Allow multiple high level representations for display, add Pseudo Rust and a ↵ | Rusty Wagner | |
| Pseudo Python example plugin | |||
