summaryrefslogtreecommitdiff
path: root/python/mediumlevelil.py
AgeCommit message (Collapse)Author
2021-09-05Add type hints to basicblock.py, lowlevelil.py, architecture.pyPeter LaFosse
2021-07-26Python 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-07fixed type incides should be indicesGalen Williamson
2021-07-07Added slicing support to __getitem__ in all basic block classesGalen Williamson
2021-04-16add a DisassemblySettings* parameter to MLIL/HLIL functions that retrieve ↵Xusheng
instruction/expr text
2021-01-27Finish HLIL expression mapping APIs.Brian Potchik
2021-01-18updating copyright yearJordan Wiens
2020-11-21Add improved instruction mapping APIs.Brian Potchik
2020-09-27Add High Level IL Mappings.Brian Potchik
2020-05-04Remove APIs that don't actually existRusty Wagner
2020-05-03Fix up equality operators and had hash operatorsPeter LaFosse
2020-01-27better reprs for llil and mlil functionsJordan Wiens
2020-01-27add negative block indexing for fn, mlil, and llilJordan Wiens
2020-01-01update copyright year to 2020Jordan Wiens
2019-12-19Add data flow query optionsRusty Wagner
2019-12-19LLIL_JUMP_TO/MLIL_JUMP_TO now contain mappings from address to destination ↵Rusty Wagner
instruction
2019-11-15Remove useleess settersPeter LaFosse
2019-09-14lots of small documentation updates, mostly around making sure parameters ↵Jordan Wiens
are consistent and typed properly
2019-09-03repr for llil and mlil blocks now uses decimal indexes to match the UIJordan Wiens
2019-08-16add hash method for RegisterValue, MediumLevelILOperationAndSize, and ↵Jordan Wiens
MediumLevelILInstruction
2019-07-03make get_var_definition and get_var_uses return instructions instead of indexesKyleMiles
Co-authored-by: verylazyguy <verylazyguy@hotmail.com>
2019-07-01add contains for LLIL and MLIL basic blocksJordan Wiens
2019-06-27add comparators for MLIL and LLIL instructionsJordan Wiens
2019-06-09remove two breaking changesJordan Wiens
2019-06-08final refactor for missing parametersJordan Wiens
2019-05-31improve API cross-reference linkingJordan Wiens
2019-04-25add type checks for various comparatorsJordan Wiens
2019-04-23add eq for LLIL and MLIL instructionsJordan Wiens
2019-04-22- make get_ssa family functions return instructions instead of indexes (#1315)verylazyguy
2019-03-23Update python/mediumlevelil.pyRyan Stortz
Co-Authored-By: joshwatson <josh@joshwatson.com>
2019-03-23Add __hash__ to IL Function objectsJosh 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-30Fix rebase removing changesRusty Wagner
2019-01-30Prepare API for Python UI bindingsRusty Wagner
2019-01-29Add short alises for low_level_il (llil) and medium_level_il (mlil)Peter LaFosse
2019-01-17update company name and copyright dateJordan Wiens
2019-01-03lots of spelling / typo fixesJordan Wiens
2018-12-13Commonize all InstructionTextToken generationPeter LaFosse
2018-12-12deprecate 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-06Forgot the return False at the endJosh Watson
2018-11-06Added __eq__ to MediumLevelILOperationAndSize as wellJosh Watson
2018-10-30Type 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' ```
2018-09-12Merging with devPeter LaFosse
2018-09-04Add API to create graphs of IL functionsRusty Wagner
2018-08-31Merging with devPeter LaFosse
2018-08-30Fix signed constants in Python ILRusty Wagner
2018-08-28Merge branch 'dev' into test_stack_adjustRusty Wagner
2018-08-21Add return hint MLIL instruction (used in intermediate stages, not emitted ↵Rusty Wagner
in final forms)
2018-08-20api: add methods to get basic block objects from IL instrsRyan Snyder
2018-08-16Adding EXTERN_PTR typePeter LaFosse
2018-07-10Various Python 3 support changesKyleMiles