| 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 | |
| 2026-05-22 | Extend MLIL call instruction outputs to be expressions | Rusty Wagner | |
| 2026-01-28 | Fix a fundamental problem with TypeBuilder.handle by deleting it | Peter LaFosse | |
| TypeBuilder.handle creates an immutable_type gets the handle and then deletes the object to which the handle belonged to. This was fundamentally a UAF. immutable_copy is an error prone api as its very easy to misuse. We should consider a re-architecture of this API. `TypeBuilder.immutable_copy().<anything>` or `Type.mutable_copy().<anything>` should be considered sketchy and immutable_copy().handle is just a straight up UAF. Prior to this commit the following would cause a crash: current_data_variable.type = PointerBuilder.create(FunctionType.create()) | |||
| 2026-01-22 | [Python] Support MLIL_SEPARATE_PARAM_LIST and MLIL_SHARED_PARAM_SLOT in ↵ | Mark Rowe | |
| copy_expr_to | |||
| 2026-01-01 | update copyrights for 2026 | Jordan Wiens | |
| 2025-12-11 | Specify fixed underlying types for enums exposed by core | Mark Rowe | |
| This allows a few widely-used enums to be shrunk from 4 bytes to 1 byte, improving packing when they're used as struct members. To remain compatible with C, we follow CoreFoundation's approach and use a macro when defining the enum: ``` #if defined(__cplusplus) || __has_extension(c_fixed_enum) #define BN_ENUM(type, name) enum name : type #else #define BN_ENUM(type, name) typedef type name; enum #endif BN_ENUM(uint8_t, SomeEnum) { ... } ``` In C++ and C23 this will expand to an enum with a fixed underlying type. In older C language versions, this will result in the enum type being a typedef of the underlying type, with an unnamed enum providing the enum values. Minor changes were needed within the Python bindings to update places that made assumptions about the underlying type of the enums. | |||
| 2025-11-19 | Improve python api type hints | Josh Ferrell | |
| 2025-09-17 | [Python] Use IL-specific types in return type annotations for get_basic_block_at | tbodt | |
| 2025-09-09 | Python: Update docs for label / transformation functions | Glenn Smith | |
| 2025-07-16 | Docs for IL modification | Glenn Smith | |
| 2025-07-12 | Allow constructing MLILFunction with null LLILFunction/Function | Glenn Smith | |
| 2025-07-02 | fix warning for (m/l)lilfunction translate docs | Jordan Wiens | |
| 2025-07-01 | Python: Collect and pass mappings when copying MLIL functions | Glenn Smith | |
| 2025-07-01 | Python: MLILFunction translate() and instr copy_to | Glenn Smith | |
| 2025-07-01 | Python: Implement MLIL.copy_expr_to | Glenn Smith | |
| 2025-07-01 | Python: get_instruction_index_for_expr for all ILs | Glenn Smith | |
| 2025-07-01 | Make constructing an MLILFunction require an LLILFunction | Glenn Smith | |
| 2025-07-01 | Python: Update IL Function repr()s | Glenn Smith | |
| 2025-07-01 | Python: Report get_instruction_start returns InstructionIndex | Glenn Smith | |
| 2025-07-01 | Python: Fix detailed_operands on *callUntyped | Glenn Smith | |
| 2025-07-01 | Python: Fix MLIL add_label_map | Glenn Smith | |
| 2025-07-01 | Python: Fix various MLIL expr operand names and types | Glenn Smith | |
| 2025-07-01 | Python: Couple minor typing tweaks | Glenn Smith | |
| 2025-07-01 | Python: Fix indentation on some MLIL classes | Glenn Smith | |
| 2025-07-01 | Python: Fix MLIL call params types | Glenn Smith | |
| 2025-07-01 | Python: MLIL add assert_expr and force_ver | Glenn Smith | |
| 2025-06-11 | Fix doc and typing on ILFunction.append | Glenn Smith | |
| 2025-06-11 | API to create immediate function graphs | Glenn Smith | |
| 2025-06-10 | Ensure the ConstantData IL instructions in the Python bindings provide the ↵ | Brian Potchik | |
| 'constant' property. | |||
| 2025-03-28 | missed the older dates! | Jordan Wiens | |
| 2025-03-27 | Python: Fix a couple typoes in the IL builders | Glenn Smith | |
| 2025-03-13 | Python: Add ILSourceLocation to these functions too | Glenn Smith | |
| 2025-03-05 | Python: MLIL instruction builders | Glenn Smith | |
| 2025-03-05 | Python: Make copy_expr copy with location | Glenn Smith | |
| Co-Authored-By: ltlly <a1253213025@163.com> | |||
| 2025-03-05 | Python: Add ability to construct expressions with locations | Glenn Smith | |
| Co-Authored-By: ltlly <a1253213025@163.com> | |||
| 2025-02-14 | uidf refactor | Ryan Snyder | |
| 2025-02-06 | Add After variants for looking up variables at instructions | Glenn Smith | |
| Fixes #6397 | |||
| 2024-11-03 | Python API : Update .operands documentation | KyleMiles | |
| 2024-07-25 | Add MediumLevelILFunction.is_var_live_at | Zichuan Li | |
| 2024-07-25 | Add is_ssa_var_live_at into mlil | Zichuan Li | |
| 2024-05-24 | fix missing params in ILOperands and mark as deprecated in LLIL, HLIL | Jordan Wiens | |
| 2024-05-22 | cleanup all outstanding sphinx RST warnings | Jordan Wiens | |
| 2024-05-07 | fix def_sites and use_sites 👀 | KyleMiles | |
| 2024-05-07 | fix def_sites and use_sites | Jordan Wiens | |
| 2024-04-21 | Improve type hints for many __getitem__ impls | Josh Ferrell | |
| 2024-03-07 | Python: More IL expr functions | Glenn Smith | |
| - XLILFunction.get_expr: Get an expr by index - XLILFunction.copy_expr: Copy an IL expr to a new expr - XLILInstruction.raw_operands: the straight integers from the core - Extra accessors on XLILLabel | |||
| 2024-03-07 | Expose get_expr_count() on python llil and mlil | Sam Russell | |
| This is already exposed in the CPP interface, and is useful for workflows for enumerating all expressions in an ILFunction | |||
| 2024-03-02 | Add support for memory intrinsics. | Brian Potchik | |
