about summary refs log tree commit diff stats
path: root/miasm2/expression (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* IR: Improve dead code eliminationCaroline Leman2015-04-291-0/+8
| | | | | | Dead code analysis computed using Ken Kennedy Algorithm Ref: A survey of data flow analysis techniques, IBM Thomas J. Watson Research Division, 1979
* Expression/modint: set arg to long to canonize reprserpilliere2015-04-251-3/+1
|
* Expression: expression comparison are done using repr, not hash (prone to ↵Fabrice Desclaux2015-04-081-18/+68
| | | | collisions)
* Expr/Simplification: match code and comment for multiplication simplificationFabrice Desclaux2015-03-241-3/+2
|
* Expression: use __hash__ function instead of propertyFabrice Desclaux2015-02-231-9/+8
|
* Expression: use private attributes in expressionFabrice Desclaux2015-02-231-213/+211
|
* Expression: Exprcompose are now ordered by default; add sanitycheck for ↵Fabrice Desclaux2015-02-231-0/+8
| | | | contiguous slices
* Expression: fix autopep indentationFabrice Desclaux2015-02-231-2/+2
|
* Expression: remove code which uses expression modificationsserpilliere2015-02-221-2/+4
|
* Expression/Simplification: avoid code modificationsserpilliere2015-02-221-20/+9
|
* Expression: Make expressions really immutable.serpilliere2015-02-221-88/+137
|
* PyLint: Import errors, pointless statements (`fds`), bad indentationCamille Mougey2015-02-181-8/+8
|
* PyLint: Remove unused-importsCamille Mougey2015-02-161-1/+0
| | | | | | | | | | | | | | | | | | miasm2/jitter/jitload.py:4: [W0611(unused-import), ] Unused import asmbloc miasm2/jitter/jitload.py:3: [W0611(unused-import), ] Unused import os miasm2/jitter/loader/elf.py:4: [W0611(unused-import), ] Unused import pe miasm2/ir/ir.py:27: [W0611(unused-import), ] Unused import DiGraph miasm2/ir/translators/z3_ir.py:6: [W0611(unused-import), ] Unused import m2_expr miasm2/core/parse_asm.py:5: [W0611(unused-import), ] Unused import struct miasm2/analysis/sandbox.py:8: [W0611(unused-import), ] Unused import libimp miasm2/analysis/sandbox.py:1: [W0611(unused-import), ] Unused import os miasm2/analysis/sandbox.py:5: [W0611(unused-import), ] Unused import win_api_x86_32 miasm2/analysis/sandbox.py:1: [W0611(unused-import), ] Unused import sys miasm2/expression/simplifications_cond.py:17: [W0611(unused-import), ] Unused import itertools miasm2/arch/arm/arch.py:5: [W0611(unused-import), ] Unused import pm miasm2/arch/x86/sem.py:23: [W0611(unused-import), ] Unused import expr_is_int_or_label miasm2/arch/mips32/arch.py:12: [W0611(unused-import), ] Unused import pm miasm2/arch/mips32/disasm.py:1: [W0611(unused-import), ] Unused import asm_constraint
* Expression/Simplification: add op/compose simplificationFabrice Desclaux2015-02-131-0/+16
|
* Expression/Simplification: add shift/compose simplificationFabrice Desclaux2015-02-131-0/+49
|
* VariablesIdentifier: Handle corner cases (using var ident on already ↵Camille Mougey2015-02-101-2/+5
| | | | computed eq)
* VariableIdentifier: Less hacky way to identify sub vars, add a prefix featureCamille Mougey2015-02-101-9/+14
|
* Expression: fix ExprCond outputFabrice Desclaux2015-01-131-1/+1
|
* Merge branch 'feature-exprrandom' of https://github.com/commial/miasm into ↵Fabrice Desclaux2014-12-111-0/+171
|\ | | | | | | | | | | | | commial-feature-exprrandom Conflicts: miasm2/expression/expression_helper.py
| * ExpressionHelper: Introduce ExprRandom, an expression generation featureCamille Mougey2014-12-101-0/+172
| | | | | | | | | | ExprRandom is a customisable (by extending it) class for generating random expression.
* | Merge pull request #18 from commial/feature-vars-identserpilliere2014-12-111-0/+157
|\ \ | | | | | | Feature vars ident
| * | VariablesIdentifier: Use iterators (credits Pierre Lalet)Camille Mougey2014-12-101-6/+7
| | |
| * | ExpressionHelper: Introduce Variables_IdentifierCamille Mougey2014-12-091-0/+156
| |/ | | | | | | | | | | Variables_Identifier provides a way to identify redundant pattern (ie. variables) in an expression, replace them and obtain the variables list in a dependencies compliant order.
* / Expression: Fix ExprCompose:get_w (wrong copy/paste ?)Camille Mougey2014-12-091-1/+1
|/
* Expression: fix umod/udiv in expression simplificationFabrice Desclaux2014-10-312-2/+15
|
* expr_simpl: add shift simplificationFabrice Desclaux2014-09-111-0/+6
|
* Simplifications commons: Fix assert (avoid division by zero)Camille Mougey2014-09-051-2/+2
|
* x86 arch: fix some mnemonicserpilliere2014-08-051-4/+4
|
* Simplification: Fix 'A op 0' with op == '-' bug, add corresponding test caseajax2014-07-301-1/+6
|
* Fix operand unify irem/imodserpilliere2014-06-242-3/+3
|
* Simplification: fix bug in simplification (tx to Florent Monjalet)serpilliere2014-06-131-1/+1
|
* Simplification: detect and handle == conditionserpilliere2014-06-133-17/+32
| | | | Add corresponding regression tests
* merge; fix x86 ror/rolserpilliere2014-06-123-513/+742
|\ | | | | | | rol ror mask shifter in semantic instead of in expr_simpl
| * Simplifications: Add symetric cond catching + corresponding testsajax2014-06-121-2/+38
| |
| * Simplifications_cond: Fix size issue, add constructorajax2014-06-121-2/+21
| | | | | | | | | | | | | | | | | | I could have use a child class of ExprOp specific for conditions, but I prefer to keep a better modularity by just using "<s", "<u" as a new op I don't add the size issue in expression/expression.py (such as 'parity') because we don't want dependencies from this file to expression/simplifications_cond (for TOK_*)
| * Simplifications: Add basic conditions detectionajax2014-06-122-4/+175
| |
| * Simplifications: Export common simplifications to an extern fileajax2014-06-092-504/+508
| |
* | expression: fix rol/ror simplifications (fix by fperigaud)serpilliere2014-06-122-2/+8
|/
* Miasm v2serpilliere2014-06-036-0/+2364
* API has changed, so old scripts need updates * See example for API usage * Use tcc or llvm for jit emulation * Go to test and run test_all.py to check install Enjoy !