| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Expr: Fix default size | Fabrice Desclaux | 2018-04-26 | 1 | -1/+7 | |
| | | ||||||
| * | Merge pull request #683 from commial/refactor/remove-default-exprmem-size | serpilliere | 2018-02-15 | 1 | -3/+6 | |
| |\ | | | | | Refactor/remove default exprmem size | |||||
| | * | Remove the default size of ExprMem expressions | Ajax | 2018-02-15 | 1 | -2/+5 | |
| | | | ||||||
| | * | Complete the #676 by removing the default value in ExprId.__new__ | Ajax | 2018-02-15 | 1 | -1/+1 | |
| | | | ||||||
| * | | 'simp_propag': avoid computing shifts when the size is too | Ajax | 2018-02-15 | 1 | -3/+16 | |
| | | | | | | | | | big (potential Python overflow) | |||||
| * | | simp_compose: ensure the '/' is not rounded to 0, but really equals to | Ajax | 2018-02-15 | 1 | -1/+1 | |
| |/ | ||||||
| * | Update rot simplification, to avoid overflow cases | Ajax | 2018-02-14 | 1 | -11/+24 | |
| | | ||||||
| * | ExpressionSimplification: Add a verbose mode | Ajax | 2018-02-14 | 1 | -0/+14 | |
| | | ||||||
| * | 'simp_cond_factor' is wrong if << / >> / a>> has more than 2 arguments | Ajax | 2018-02-14 | 1 | -1/+11 | |
| | | ||||||
| * | A >> X >> Y => A >> (X+Y) ONLY IF X + Y does not overflow | Ajax | 2018-02-14 | 1 | -2/+7 | |
| | | ||||||
| * | Fix 'simp_op_cond_int' comment | Ajax | 2018-02-14 | 1 | -1/+1 | |
| | | ||||||
| * | Deprecate expr_cmps/expr_cmpu for a more verbose / understandable API | Ajax | 2018-02-14 | 1 | -5/+5 | |
| | | ||||||
| * | Merge pull request #678 from serpilliere/x86_fix_rcl | Camille Mougey | 2018-02-14 | 1 | -36/+4 | |
| |\ | | | | | X86 fix rcl | |||||
| | * | X86: remove c_rez/rcl_rez/rcr_rez special operator | Fabrice Desclaux | 2018-02-13 | 1 | -36/+4 | |
| | | | ||||||
| * | | Merge pull request #677 from GAJaloyan/patch-1 | serpilliere | 2018-02-12 | 1 | -1/+1 | |
| |\ \ | |/ |/| | Changing index from 1 to -1. | |||||
| | * | changing index of simplification from 1 to -1 in A op 0 => 0 | 2018-02-12 | 1 | -1/+1 | ||
| | | | | | | | | | + adding testcases | |||||
| * | | Expression: no default size for ExprId | Fabrice Desclaux | 2018-02-09 | 2 | -4/+7 | |
| |/ | ||||||
| * | adding ucomisd | GAJaloyan | 2018-01-12 | 1 | -1/+2 | |
| | | ||||||
| * | Expression: use stp translator | Fabrice Desclaux | 2018-01-11 | 1 | -68/+0 | |
| | | ||||||
| * | Remove some unnecessary parentheses when str()'ing expressions | Aymeric Vincent | 2017-12-12 | 1 | -16/+46 | |
| | | | | | | | | | This patch removes quite a few useless parentheses from expressions thanks to the usual priorities between operators. It is conservative in the sense that not all such parentheses are removed when we felt the priorities won't be known by most users. | |||||
| * | Expression: add expression comparison generators | Fabrice Desclaux | 2017-09-04 | 1 | -0/+182 | |
| | | ||||||
| * | Expression/Simplifications: modify x?b:c + d | Fabrice Desclaux | 2017-08-10 | 1 | -15/+21 | |
| | | ||||||
| * | Expression/Simplifications: clean code | Fabrice Desclaux | 2017-08-10 | 1 | -279/+269 | |
| | | ||||||
| * | Simplifications: ExprMem(a?b:c) and {x?a:b, x?c:d} | Fabrice Desclaux | 2017-08-10 | 2 | -31/+28 | |
| | | ||||||
| * | ExprReducer: add kwargs arguments for reductions | Fabrice Desclaux | 2017-08-07 | 1 | -13/+14 | |
| | | ||||||
| * | A defined 'size' is mandatory for `Expr` to work | Ajax | 2017-08-03 | 1 | -24/+16 | |
| | | ||||||
| * | Avoid breaking potential overriding of ExprInt | Ajax | 2017-08-03 | 1 | -1/+1 | |
| | | ||||||
| * | Avoid racing ._size assignment in ExprInt | Ajax | 2017-08-03 | 1 | -3/+6 | |
| | | | | | | | | | | | With Singleton behavior activated, ._size can be set during __new__, and reset to None during __init__. During unpickling, attributes fixes and __init__ / __new__ call order can also result in a weird behavior Actually, as _size is not modified during __new__, ExprInt behavior is now homogeneous with others Expr's __init__ | |||||
| * | Remove now useless property | Ajax | 2017-08-03 | 1 | -8/+0 | |
| | | ||||||
| * | Expr: move class-dependent attributes to protected one | Ajax | 2017-08-03 | 1 | -187/+187 | |
| | | ||||||
| * | Avoid potential (but unlikely) hash collision | Ajax | 2017-08-01 | 1 | -2/+2 | |
| | | ||||||
| * | Expression: add an Expression parser | Fabrice Desclaux | 2017-06-14 | 1 | -0/+70 | |
| | | ||||||
| * | Add a new simplification: {@X[base + i] 0 X, @Y[base + i + X] X (X + Y)} => ↵ | Ajax | 2017-06-01 | 1 | -0/+11 | |
| | | | | | @(X+Y)[base + i] | |||||
| * | Expression: Forbid mix between Expr and int/long | Fabrice Desclaux | 2017-05-01 | 1 | -1/+24 | |
| | | | | | | | | | | A classic error in Miasm is to confuse ExprInt with int, for example: ExprId('a') + 3 We could return ExprOp('+', ExprId('a') + ExprInt(3, 32)), but this may (and often) mask a problem in the source, so we forbid such a construction (and assert this to clarify the error) | |||||
| * | Remove deprecated use of MatchExpr | Ajax | 2017-04-21 | 2 | -21/+20 | |
| | | ||||||
| * | Expression: clean | Fabrice Desclaux | 2017-04-21 | 1 | -232/+240 | |
| | | ||||||
| * | Errata: fix exprmatch names | Fabrice Desclaux | 2017-04-21 | 1 | -50/+50 | |
| | | ||||||
| * | Expression: remove unused SearchExpr | Fabrice Desclaux | 2017-04-21 | 1 | -14/+0 | |
| | | ||||||
| * | Expression: clean MatchExpr | Fabrice Desclaux | 2017-04-21 | 1 | -51/+45 | |
| | | ||||||
| * | Expr: fix singleton; add reg test | Fabrice Desclaux | 2017-03-31 | 1 | -67/+43 | |
| | | ||||||
| * | Replace ExprInt[num](x) -> ExprInt(x, num) | Ajax | 2017-03-30 | 5 | -12/+13 | |
| | | ||||||
| * | Deprecate ExprInt[num] and ExprInt_from(expr, num) | Ajax | 2017-03-30 | 1 | -0/+12 | |
| | | ||||||
| * | Let ExprInt always use its Singleton capabilities | Ajax | 2017-03-30 | 2 | -48/+45 | |
| | | | | | | Remove the optionnal 'size' argument form, use pointer equality to speed up comparision | |||||
| * | ExprReduce: fix exprnode str | Fabrice Desclaux | 2017-03-28 | 1 | -11/+11 | |
| | | ||||||
| * | Right operator of a>> is unsigned | Ajax | 2017-02-15 | 1 | -1/+1 | |
| | | ||||||
| * | Expression: add ExprReduce | Fabrice Desclaux | 2017-02-13 | 1 | -0/+177 | |
| | | ||||||
| * | Expression: REPLACE IS_OP_SEGM | Fabrice Desclaux | 2017-02-12 | 1 | -2/+14 | |
| | | | | | | | | /!\ API MODIFICATION: is_op_segm becomes is_mem_segm is_op_segm: Returns True if is ExprOp and op == 'segm' is_mem_segm: Returns True if is ExprMem and ptr is_op_segm | |||||
| * | Merge pull request #476 from commial/fix/repr-expr | serpilliere | 2017-01-14 | 1 | -1/+2 | |
| |\ | | | | | Fix/repr expr | |||||
| | * | Fix ExprInt repr to include size | Ajax | 2017-01-13 | 1 | -1/+2 | |
| | | | ||||||
| * | | Div: fix modint operation | Ajax | 2017-01-13 | 1 | -6/+10 | |
| |/ | ||||||