| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-09-05 | Remove some unnecessary properties for various derived HLIL Instructions, ↵ | Peter LaFosse | |
| add HLIL vars_read/vars_written Additional progress on HLILInstruction refactor | |||
| 2021-09-05 | Refactor Python Types | Peter LaFosse | |
| Remove _mutable types | |||
| 2021-09-05 | type hints for highlevelil.py, mediumlevelil.py and lowlevelil.py, workflow.py | Peter LaFosse | |
| Fix linter error in scriptingprovider.py Update workflow.py using updated paradigms and type hints | |||
| 2021-09-05 | Fix bug in unit tests. Fix vars_read, vars_written in Intrinsic instructions | Peter LaFosse | |
| 2021-09-05 | Refactor ILs for greater speed and utility | Peter LaFosse | |
| 2021-09-05 | Don't inherit from object anymore | Peter LaFosse | |
| 2021-09-05 | Convert the following to dataclasses: | Peter LaFosse | |
| AddressRange BoolWithConfidence ConstantReference EnumerationMember FunctionParameter ILFlag ILIntrinsic ILRegister ILRegisterStack ILSemanticFlagClass ILSemanticFlagGroup IndirectBranchInfo InstructionBranch InstructionInfo IntrinsicInfo IntrinsicInput LowLevelILExpr LowLevelILOperationAndSize PossibleValueSet RegisterInfo RegisterSet RegisterStackAdjustmentWithConfidence RegisterStackInfo SSAFlag SSARegister SSARegisterOrFlag SSARegisterStack SizeWithConfidence StackVariableReference StructureMember TypeFieldReference TypeParserResult ValueRange BasicBlockEdge | |||
| 2021-09-05 | Refactor RegisterValue class into multiple dataclasses which can be ↵ | Peter LaFosse | |
| instantiated directly | |||
| 2021-09-05 | Refactor Variable class | Peter LaFosse | |
| The Variable class is now broken into 3 separate classes with helper methods to convert between them. CoreVariable is implemented as a frozen dataclass and is analogous to BNVariable VariableNameAndType is analogous to BNVariableNameAndType Bothe the above are passive objects and can not be changed directly The new and improved Variable object is now an active object which can be operated on directly and changes will take effect immediately | |||
| 2021-09-05 | Add type hints to basicblock.py, lowlevelil.py, architecture.py | Peter LaFosse | |
| 2021-07-26 | Python API : Fix copyright year, add .vars to IL functions, remove ↵ | KyleMiles | |
| BNGetFunctionILVariables, prevent variables without types (from Mapped MLIL) from erroring out in function.Variable's __repr__, added BNGetLowLevel-Registers, RegisterStacks, Flags, MemoryVersions, and their respective SSA versions, added `LowLevelILFunction`- `.vars`, `.ssa_vars`, `.registers`, `.register_stacks`, `.flags`, `.memory_versions` and ssa versions. | |||
| 2021-07-07 | fixed type incides should be indices | Galen Williamson | |
| 2021-07-07 | Added slicing support to __getitem__ in all basic block classes | Galen Williamson | |
| 2021-04-16 | add a DisassemblySettings* parameter to MLIL/HLIL functions that retrieve ↵ | Xusheng | |
| instruction/expr text | |||
| 2021-01-27 | Finish HLIL expression mapping APIs. | Brian Potchik | |
| 2021-01-18 | updating copyright year | Jordan Wiens | |
| 2020-11-21 | Add improved instruction mapping APIs. | Brian Potchik | |
| 2020-09-27 | Add High Level IL Mappings. | Brian Potchik | |
| 2020-05-04 | Remove APIs that don't actually exist | Rusty Wagner | |
| 2020-05-03 | Fix up equality operators and had hash operators | Peter LaFosse | |
| 2020-01-27 | better reprs for llil and mlil functions | Jordan Wiens | |
| 2020-01-27 | add negative block indexing for fn, mlil, and llil | Jordan Wiens | |
| 2020-01-01 | update copyright year to 2020 | Jordan Wiens | |
| 2019-12-19 | Add data flow query options | Rusty Wagner | |
| 2019-12-19 | LLIL_JUMP_TO/MLIL_JUMP_TO now contain mappings from address to destination ↵ | Rusty Wagner | |
| instruction | |||
| 2019-11-15 | Remove useleess setters | Peter LaFosse | |
| 2019-09-14 | lots of small documentation updates, mostly around making sure parameters ↵ | Jordan Wiens | |
| are consistent and typed properly | |||
| 2019-09-03 | repr for llil and mlil blocks now uses decimal indexes to match the UI | Jordan Wiens | |
| 2019-08-16 | add hash method for RegisterValue, MediumLevelILOperationAndSize, and ↵ | Jordan Wiens | |
| MediumLevelILInstruction | |||
| 2019-07-03 | make get_var_definition and get_var_uses return instructions instead of indexes | KyleMiles | |
| Co-authored-by: verylazyguy <verylazyguy@hotmail.com> | |||
| 2019-07-01 | add contains for LLIL and MLIL basic blocks | Jordan Wiens | |
| 2019-06-27 | add comparators for MLIL and LLIL instructions | Jordan Wiens | |
| 2019-06-09 | remove two breaking changes | Jordan Wiens | |
| 2019-06-08 | final refactor for missing parameters | Jordan Wiens | |
| 2019-05-31 | improve API cross-reference linking | Jordan Wiens | |
| 2019-04-25 | add type checks for various comparators | Jordan Wiens | |
| 2019-04-23 | add eq for LLIL and MLIL instructions | Jordan Wiens | |
| 2019-04-22 | - make get_ssa family functions return instructions instead of indexes (#1315) | verylazyguy | |
| 2019-03-23 | Update python/mediumlevelil.py | Ryan Stortz | |
| Co-Authored-By: joshwatson <josh@joshwatson.com> | |||
| 2019-03-23 | Add __hash__ to IL Function objects | Josh Watson | |
| They didn't have a __hash__ method so I added one so I can use them in sets. It's really just the hash of the Function object plus a string to indicate it's MLIL or LLIL | |||
| 2019-01-30 | Fix rebase removing changes | Rusty Wagner | |
| 2019-01-30 | Prepare API for Python UI bindings | Rusty Wagner | |
| 2019-01-29 | Add short alises for low_level_il (llil) and medium_level_il (mlil) | Peter LaFosse | |
| 2019-01-17 | update company name and copyright date | Jordan Wiens | |
| 2019-01-03 | lots of spelling / typo fixes | Jordan Wiens | |
| 2018-12-13 | Commonize all InstructionTextToken generation | Peter LaFosse | |
| 2018-12-12 | deprecate current_function.medium_level_il in favor of .mlil and move ↵ | Jordan Wiens | |
| .instructions to mlil instead of main function -- likewise for llil | |||
| 2018-11-06 | Forgot the return False at the end | Josh Watson | |
| 2018-11-06 | Added __eq__ to MediumLevelILOperationAndSize as well | Josh Watson | |
| 2018-10-30 | Type check SSA variables in __eq__ | Eric Hennenfent | |
| Instantly bail if we try to compare a SSAVariable to something that isn't an SSA Variable. Prevents the following issue: ``` >>> bv.get_functions_at(here)[0].medium_level_il.ssa_form[96].src[0].src <ssa <var uint64_t rax_2> version 13> >>> type(bv.get_functions_at(here)[0].medium_level_il.ssa_form[96].src[0].src) <class 'binaryninja.mediumlevelil.SSAVariable'> >>> bv.get_functions_at(here)[0].medium_level_il.ssa_form[96].src[0].src == 'rax_2' Traceback (most recent call last): File "<console>", line 1, in <module> File "/Applications/Binary Ninja.app/Contents/MacOS/plugins/../../Resources/python/binaryninja/mediumlevelil.py", line 48, in __eq__ (other.var, other.version) AttributeError: 'str' object has no attribute 'var' ``` | |||
