1
0
mirror of https://github.com/angr/pyvex synced 2026-06-21 13:47:01 +00:00
Commit Graph

5 Commits

Author SHA1 Message Date
Kevin Phoenix 23503e7919 Use black (#291)
* Use black

* Fix the lint error
2023-01-13 14:23:57 -07:00
Zachary Wimer cd758543f1 Code Quality: trailing whitespace, pyupgrade, prefer builtin constructors (#288)
* trailing whitespace, pyupgrade, prefer builtin constructors

* lint
2022-12-20 21:12:37 -07:00
Fish 16bca4a915 Implement fallback logic for IRSB.exit_statements. Closes #153. (#154)
.
2018-08-23 23:26:21 -04:00
Fish 51a4121953 Make lifting faster. (#141)
See https://github.com/angr/angr/pull/1092 for more details.

* The initial commit.

* Redo the lifting logic to avoid redundant IRSB copying.

* Move get_defaultexit_target() from Python to C to speed things up.

* Add a check to make sure LibVEX_Lift() does not return NULL.

* Implement IRSB.instruction_addresses.

* Implement IRSB.has_statements.

* Fix IRSB.addr.

* Fix a NULL-deref in pyvex.c.

* Postprocessor: Do not remove NoOp statements.

Otherwise it will cause a mismatch between statement indices and the
indices in IRSB.exit_statements (which are generated in PyVEX C).

* FixesPostProcessor: Get the IRSB address correctly.

* Remove NoOp statements in the C world.

* Restore the IRSB size calculation.

* Make sure exit_statements is not None before accessing.

* Enable tests for PyVEX itself.

* Implement ARM call jumpkind fixer in C for a better performance.

* Implement MIPS32 post-processing in C world.

* Add a missing undefine.

* Fix test.py.

* Add stddef.h to pyvex.c.

* Implement data reference collection in pyvex_c.

* Lint the code.

* Expose PyVEXError.

* More linting.

* oops

* Expose get_type_size and get_type_spec_size.

* Expose IRTypeEnv.

* Postprocessor: Support NeedStatementsNotification.

* Reorganize lifting/__init__.py.

* Remove the IRSB.addr property, replace with raw attribute

* Make check against MAX_DATA_REFS more explicit

* Move from data ref tuples to a DataRef class

* Lint block.py: Define data_refs and _instruction_addresses in __init__

* Make pyvex.lift positional arguments match pyvex.IRSB

* The kosher way to do this is .lift()

* Split pyvex.c into several smaller C files

(committing as fish to preserve authorship)
2018-07-27 05:45:12 +08:00
Andrew Dutcher 3d72665f6d restructured the code into several files and no useless submodules 2016-03-22 17:27:02 -07:00