| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | adding ucomisd | GAJaloyan | 2018-01-12 | 1 | -1/+2 |
| | | |||||
| * | 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 |
| | | |||||
| * | 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: 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 | 1 | -10/+10 |
| | | |||||
| * | 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 | 1 | -2/+3 |
| | | |||||
| * | 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 | 1 | -46/+42 |
| | | | | | | Remove the optionnal 'size' argument form, use pointer equality to speed up comparision | ||||
| * | 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 | ||||
| * | Fix ExprInt repr to include size | Ajax | 2017-01-13 | 1 | -1/+2 |
| | | |||||
| * | Expr: add type accessors | Fabrice Desclaux | 2016-12-23 | 1 | -0/+57 |
| | | |||||
| * | Introduce ExprInt of any size (like others Expr) | Ajax | 2016-12-14 | 1 | -0/+2 |
| | | |||||
| * | Expr: Fix expr pickling | Fabrice Desclaux | 2016-11-20 | 1 | -3/+6 |
| | | |||||
| * | Expr: missing warning import | Fabrice Desclaux | 2016-11-20 | 1 | -0/+1 |
| | | |||||
| * | Add compatibility with copy.deepcopy for Expr | Ajax | 2016-11-08 | 1 | -0/+3 |
| | | |||||
| * | ExprCompose: updt internal struct | Fabrice Desclaux | 2016-11-04 | 1 | -71/+21 |
| | | |||||
| * | ExprCompose: update api | Fabrice Desclaux | 2016-11-04 | 1 | -7/+13 |
| | | |||||
| * | ExprCompose: add new api | Fabrice Desclaux | 2016-11-04 | 1 | -19/+28 |
| | | | | | | | | The ExprComposes uses directly its arguments sizes to guess the slices locations. Old api: ExprCompose([(a, 0, 32), (b, 32, 64)]) becomes: ExprCompose(a, b) | ||||
| * | Expression: add pickling | Fabrice Desclaux | 2016-11-04 | 1 | -0/+49 |
| | | |||||
| * | IR: is_simp in the simplifier class | Fabrice Desclaux | 2016-11-04 | 1 | -10/+0 |
| | | |||||
| * | Expression: slot expressions | Fabrice Desclaux | 2016-11-04 | 1 | -0/+11 |
| | | |||||
| * | Expression: remove is_term attribute | serpilliere | 2016-11-04 | 1 | -132/+116 |
| | | |||||
| * | Expression: Use singleton pattern for Expression | serpilliere | 2016-11-04 | 1 | -104/+164 |
| | | | | | | | | | | Start the transformation of Expression into immutable. Multiple problems were present in Expression class. One of them was comparison done through hash, which could generate collisions. The attributes is_simp/is_canon where linked to the instance, and could not survive to expression simplification. | ||||
| * | Expression/IR: Fix mem_read parameter in 'get_r' | Caroline Leman | 2016-10-06 | 1 | -1/+1 |
| | | |||||
| * | ExprInt: add shortcut for int, long | Ajax | 2016-09-16 | 1 | -0/+6 |
| | | |||||
| * | Add ** (pow) operator | JB Cayrou | 2016-06-29 | 1 | -0/+3 |
| | | |||||
| * | Merge pull request #330 from serpilliere/assignblock | Camille Mougey | 2016-02-26 | 1 | -3/+0 |
| |\ | | | | | Assignblock | ||||
| | * | AssignBlock | Fabrice Desclaux | 2016-02-26 | 1 | -3/+0 |
| | | | |||||
| * | | Handle ExprAff in MatchExpr | Camille Mougey | 2016-02-25 | 1 | -0/+11 |
| |/ | |||||
| * | Tipo: dictionary | Fabrice Desclaux | 2016-01-30 | 1 | -4/+4 |
| | | |||||
| * | Expression: slots | Fabrice Desclaux | 2016-01-15 | 1 | -17/+45 |
| | | |||||
| * | Expression: repr cpuid op | Fabrice Desclaux | 2015-11-22 | 1 | -0/+1 |
| | | |||||
| * | Merge pull request #250 from serpilliere/ExprInt_api | Florent | 2015-10-29 | 1 | -19/+19 |
| |\ | | | | | Expression: normalize ExprInt api | ||||
| | * | Expression: fix api | Fabrice Desclaux | 2015-10-29 | 1 | -10/+4 |
| | | | |||||
| | * | Expression: normalize ExprInt api | Fabrice Desclaux | 2015-10-29 | 1 | -9/+15 |
| | | | |||||
| * | | Expression: autopep8 | serpilliere | 2015-10-28 | 1 | -4/+2 |
| | | | |||||
| * | | Expression: enhance exprop repr | serpilliere | 2015-10-28 | 1 | -2/+4 |
| |/ | |||||
| * | Expression/expression: fix op len sanitycheck | serpilliere | 2015-10-23 | 1 | -4/+12 |
| | | |||||
| * | Expression: move is_func_call to expr scr | Fabrice Desclaux | 2015-09-23 | 1 | -3/+3 |
| | | |||||