Commit graph

74 commits

Author SHA1 Message Date
Ahmed Mohamed Abd El-MAwgood
4668bc5ea3 Adding nonull (#5441) 2016-08-05 13:35:44 +02:00
oblique
f06e11b6f4 Fix warnings (#5078)
* Fix gcc warnings

* Fix strtoull return
2016-06-06 00:33:11 +02:00
pancake
95b2e511f5 Fix some warnings 2016-06-01 12:23:10 +02:00
pancake
4de809061a Add MJMP optype, pxt command and enhance anal.jmptbl for x86-64 (wip) 2016-05-30 04:18:48 +02:00
Sushant
75adfbdc6c Fixes esil signed comparisons when size != 64 2016-05-27 15:21:03 +05:30
Sushant Dinesh
b7a81e88b2 Fixes esil comparison instructions and of computation (#5015)
- esil comparison functions esil_(bigger/smaller/bigger_eq/smaller_eq/cmp) are
now consistent in setting vars for flag computation as well as pushing the
result of a signed comparison onto esil stack.
2016-05-26 18:38:40 +02:00
Sushant Dinesh
2adcea4a85 Esil internal set (#5012)
* Generalizes set/unset

- This commit makes set/unset more generic by allowing any value to be assigned
to a register (as opposed to just 0/1 before) without any side effects.
- $[0-9]* represents a value to be set, in decimal representation, without
having any side effects of changing esil vars old, cur and lastsz and hence
not affecting the flag computations. Example: Set rax to 100. ("$100,rax,=").
2016-05-26 16:56:46 +02:00
@bezjaje
a38b176ba4 ESIL: poke_some bugfix (#5009)
* ESIL: poke_some bugfix

* + code style
2016-05-26 00:02:19 +02:00
@bezjaje
3b7ab317f6 ESIL: generic endian-agnostic memory write in poke (#5001) 2016-05-25 10:37:33 +02:00
Sushant Dinesh
cf456f4414 Fixes to ESIL (#4951)
- Reverted ADD and ADC to set flags based on internal variables
- Fixed calculation of carry and zero flags from internal vars
- Revert "ESIL: add floating point instructions (#4794)"
  This reverts commit 964d12b392. Since we
  decided that floating point operations will be implemented using separate
  ops, these unions are no longer needed. This commit introduced a regression
  in setting esil->old and esil->cur
- Style fixes
2016-05-23 16:39:54 +02:00
pancake
942e3e0da5 Fix #4862 - Fix all pending covs 2016-05-15 02:04:40 +02:00
Damien Zammit
79728e837d Fix #4879 - warnings in esil 2016-05-14 10:33:09 +02:00
pancake
919424f5ed Several bug fixes for the arm32 esil emulation and static analysis 2016-05-09 23:08:25 +02:00
Damien Zammit
964d12b392 ESIL: add floating point instructions (#4794) 2016-05-07 12:32:06 +02:00
Damien Zammit
632dccc217 Remove LIL_ENDIAN macro and configure option
TODO: Remove other endian cruft from:
- hashing algs
- judy
- squashfs
- grub
- tms320

Signed-off-by: Damien Zammit <damien@zamaudio.com>
2016-05-06 10:21:55 +02:00
pancake
adb70234ff Fixes for asm.fcnlines and endian issues for esil + disasm 2016-05-04 17:13:44 +02:00
Damien Zammit
af0a865d9f WIP - Totally remove host endianness dependence
- Adds endian aware functions
- Removes references to host endian
- Uses binary detected endianness else tries LE and restricts by RAsmPlugin
- Fixes gdb debugger endianness when debugging BE qemu gdbserver

Signed-off-by: Damien Zammit <damien@zamaudio.com>
2016-05-04 23:42:17 +10:00
Fabian Yamaguchi
122e1d55a8 Fix #4726 - Make sure that the destination register is not reported as "read" in an ESIL eq operation 2016-05-03 19:42:00 +02:00
Sergey Anufrienko
9956454135 don't add op to esil vm, use xor (#4729) 2016-04-27 17:18:54 -04:00
Sergey Anufrienko
5807c310fc add bitwise complement ops to ESIL; add NOT opcode to X86 (#4728) 2016-04-27 22:16:49 +02:00
NaveenBoggarapu
fabf7020fb Fix #4523 - Fix asm.emu + pd leaks 2016-04-07 11:11:46 +02:00
pancake
4b909bad9a Fix some asm.spacy and asm.flgoff glitches 2016-04-05 01:33:57 +02:00
pancake
449a13e24e Show trap code name in the esil dumpstack 2016-03-20 03:03:00 +01:00
pancake
84fc735501 Some enhancements for the MIPS ESIL emulation 2016-03-16 16:37:57 +01:00
pancake
1728566f75 Unify all err messages in esil emulation 2016-03-07 13:17:52 +01:00
pancake
2c049ad05e Better aaaa reports 2016-03-07 04:12:11 +01:00
Álvaro Felipe Melchor
212169afb1 fix oob read in r_anal_esil_parse 2016-02-27 18:01:45 +01:00
Anton Kochkov
d547ce90a8 Fix CID 134752 2016-02-25 13:24:36 +03:00
pancake
3e1590f4d9 More fixes for MIPS and ESIL emulation 2016-02-22 01:43:45 +01:00
pancake
f7fbbc419e Add dh in anal.x86-64.reg and fix some arm/x86 esil bugs 2016-02-22 01:14:06 +01:00
pancake
07ff9bb5fb Beautify aae and fix some arm32 esil 2016-02-22 00:22:52 +01:00
pancake
9f2ce614d3 Avoid null bytes in axt output 2016-02-09 11:38:55 -06:00
condret
ccab168cb5 fix a memleak and implement esil.stacksize for @crowell 2016-01-19 23:36:21 +00:00
Jeffrey Crowell
438071e8e1 add a directive for esil stack size
should eventually be configurable and allocated in vm init, but not
right now.
2016-01-19 15:33:33 -05:00
condret
5418e20432 fix dup and swap in esil 2016-01-19 21:17:09 +00:00
pancake
608f4f7296 Fix #3957 - Add NUM for the old DUP 2016-01-15 03:24:52 +01:00
pancake
94f822ebe7 Fix #3949 - aea command to list regs used in a range 2016-01-15 01:50:08 +01:00
Jaume Delclòs Coll
05c56ad2f2 esil: make DUP dup, add SWAP 2016-01-04 01:02:43 +01:00
pancake
965d789c4a Update indentation in some more random files 2015-12-14 14:32:18 +01:00
mrmacete
dac375c541 Delay slot simulation state in ESIL
+ added $ds, $jt, $js internal registers
+ added read / write capability for internal registers in ESIL instructions
+ esil_step 'aes' command ported to new delay slot state handling
2015-12-07 21:53:17 +01:00
pancake
e0de679118 Fix #3691 - Fix unitialized memory in 32bit esil write op 2015-11-16 10:29:03 +01:00
Sushant
63d94c5d37 Fix#3607. Fixes for x86 esil
- Use $b rather than $c for computing carry flag for sub
- Adds operations to set flags for add, inc, dec, sub
- Fixes parity flag computation
- Fixes x86 register profile
- Implements ROL/ROR/RCR/RCL
- Implements ADC,SBB

TODO: Set the bit 1 of eflags to be 1
2015-10-29 23:49:57 +01:00
jvoisin
420a5c41e0 Fix some minor compilation warnings 2015-10-15 12:36:34 +02:00
condret
440a0e9822 fix some esil-noise on mem_xxx_eq_n cbs 2015-10-11 22:35:30 +00:00
Ricardo Quesada
7e05f2d43e 6502 esil: add missing opcodes plus small refactor
- `BRK` works Ok
- `BIT` works Ok
- `ADC`, `SBC` work Ok
- group opcodes in 3 patterns
2015-09-29 11:27:14 +02:00
pancake
da3264250c Honor ^C in aae 2015-09-25 18:38:16 +02:00
jvoisin
0576be2359 Small optimizations and coverity-- 2015-09-25 01:51:29 +02:00
condret
27e99bc7c2 fix #3346 2015-09-22 22:17:32 +02:00
pancake
dfebd35de8 Fix #3250 - aed -> aei- 2015-09-19 19:54:49 +02:00
pancake
a3198522a4 Fix #3252 - Implement esil trap command callbacks 2015-09-19 19:39:25 +02:00