about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #691 from commial/fix/start-ppcserpilliere2018-03-054-28/+61
|\ | | | | Fix/start ppc
| * Linux fake: __libc_start_main implementation for PPCAjax2018-03-052-9/+40
| | | | | | | | See glibc: 'sysdeps/unix/sysv/linux/powerpc/libc-start.c' for details
| * Sandbox: on Linux env import, also set the ABORT_ADDRAjax2018-03-052-19/+21
|/
* Merge pull request #690 from serpilliere/integrate_ppcCamille Mougey2018-03-0510-3/+46
|\ | | | | Integrate ppc
| * LLVM: fix rot 0Fabrice Desclaux2018-03-051-1/+3
| |
| * Test: add ppc32b testsFabrice Desclaux2018-03-042-0/+5
| |
| * Jitter/python: support little endianFabrice Desclaux2018-03-043-2/+21
| |
| * PPC32: integrationFabrice Desclaux2018-03-044-0/+17
|/
* Merge pull request #689 from a-vincent/fix-ppc-branchserpilliere2018-03-021-3/+3
|\ | | | | Fix semantics of conditional jumps
| * Fix semantics of conditional jumpsAymeric Vincent2018-03-021-3/+3
|/ | | | Spotted by @serpilliere
* Merge pull request #688 from a-vincent/arch_ppcserpilliere2018-03-0217-4/+2494
|\ | | | | Add support for PowerPC 32bit big-endian processors: "ppc32b"
| * Add support for PowerPC 32bit big-endian processors: "ppc32b"Aymeric Vincent2018-02-2617-4/+2494
|/
* Merge pull request #687 from a-vincent/fix-finish-addrCamille Mougey2018-02-221-3/+3
|\ | | | | Fix finish addr
| * Set CALL_FINISH_ADDR to 0x13371acc to be 4 bytes alignedAymeric Vincent2018-02-221-1/+1
| |
| * Rename CALL_FINNISH_ADDR to CALL_FINISH_ADDRAymeric Vincent2018-02-221-3/+3
| |
* | Merge pull request #684 from a-vincent/fix-lib-alignmentserpilliere2018-02-161-2/+2
|\ \ | | | | | | Align the arbitrary addresses of fake library functions to multiples …
| * | Align the arbitrary addresses of fake library functions to multiples of 4Aymeric Vincent2018-02-161-2/+2
| |/ | | | | | | | | | | | | | | Most processors can execute code only at aligned addresses, and some enforce this in their instruction set, e.g. powerpc. Without this patch, the addresses generated in the PLT will be truncated by the calling instruction and will thus not hit the breakpoint intended to catch them.
* | Merge pull request #685 from a-vincent/fix-preload_elf-endiannessserpilliere2018-02-161-2/+7
|\ \ | |/ |/| Enforce correct endianness of PLT entries
| * Enforce correct endianness of PLT entriesAymeric Vincent2018-02-161-2/+7
|/ | | | | If given by the ELF file, use its endianness to set the PLT entries accordingly.
* Merge pull request #683 from commial/refactor/remove-default-exprmem-sizeserpilliere2018-02-1512-61/+64
|\ | | | | Refactor/remove default exprmem size
| * Remove the default size of ExprMem expressionsAjax2018-02-1512-60/+63
| |
| * Complete the #676 by removing the default value in ExprId.__new__Ajax2018-02-151-1/+1
| |
* | Merge pull request #680 from commial/fix-simplificationsserpilliere2018-02-152-4/+27
|\ \ | | | | | | Fix a few simplifications
| * | 'simp_propag': avoid computing shifts when the size is tooAjax2018-02-152-3/+22
| | | | | | | | | | | | big (potential Python overflow)
| * | simp_compose: ensure the '/' is not rounded to 0, but really equals toAjax2018-02-152-1/+5
| |/
* | Merge pull request #681 from commial/fix/import-z3-on-demandserpilliere2018-02-151-1/+11
|\ \ | | | | | | Translator: import 'z3' only when it is really needed
| * | Translator: import 'z3' only when it is really neededAjax2018-02-151-1/+11
| |/ | | | | | | | | Avoid importing a pretty big module, and the side effects of z3, such as declaring the stack as unlimited
* | Merge pull request #682 from a-vincent/add_missing_prototypesCamille Mougey2018-02-151-0/+2
|\ \ | |/ |/| Add prototypes for x86_bsr() and x86_bsf()
| * Add prototypes for x86_bsr() and x86_bsf()Aymeric Vincent2018-02-151-0/+2
|/
* Merge pull request #679 from commial/refactor-expr-compserpilliere2018-02-147-77/+257
|\ | | | | Refactor expr simplifications tests
| * Lower the size of too long test to let z3 run in a human timeAjax2018-02-141-8/+9
| |
| * Remove int '**' int test to let z3 always translate exprs ('**' was notAjax2018-02-141-8/+1
| | | | | | | | really used in Miasm)
| * Update rot simplification, to avoid overflow casesAjax2018-02-142-21/+59
| |
| * ExpressionSimplification: Add a verbose modeAjax2018-02-142-1/+21
| |
| * 'simp_cond_factor' is wrong if << / >> / a>> has more than 2 argumentsAjax2018-02-141-1/+11
| |
| * A >> X >> Y => A >> (X+Y) ONLY IF X + Y does not overflowAjax2018-02-142-2/+16
| |
| * Use 3 arguments to highlight the recent #677 patchAjax2018-02-141-2/+2
| |
| * Check that expr_is_* are really computing the expected operationAjax2018-02-141-0/+30
| |
| * Add a check against z3 in simplifications regression testsAjax2018-02-142-12/+75
| |
| * Fix 'simp_op_cond_int' commentAjax2018-02-141-1/+1
| |
| * Fix z3 conversion of 'imod' and 'idiv' to follow the Miasm oneAjax2018-02-141-2/+15
| |
| * Deprecate expr_cmps/expr_cmpu for a more verbose / understandable APIAjax2018-02-143-29/+27
|/
* Merge pull request #678 from serpilliere/x86_fix_rclCamille Mougey2018-02-1414-180/+159
|\ | | | | X86 fix rcl
| * X86: remove c_rez/rcl_rez/rcr_rez special operatorFabrice Desclaux2018-02-137-148/+127
| |
| * Jitter: fix exit return codeFabrice Desclaux2018-02-139-32/+32
| |
* | Merge pull request #677 from GAJaloyan/patch-1serpilliere2018-02-122-1/+5
|\ \ | |/ |/| Changing index from 1 to -1.
| * changing index of simplification from 1 to -1 in A op 0 => 02018-02-122-1/+5
| | | | | | | | + adding testcases
* | Merge pull request #675 from serpilliere/fix_aarch64_shifta-vincent2018-02-124-9/+31
|\ \ | | | | | | Fix aarch64 shift
| * | Aarch64: add svcFabrice Desclaux2018-02-091-1/+8
| | |
| * | Aarch64: add interrupt num & cpu accessesFabrice Desclaux2018-02-094-1/+14
| | |