Commit Graph

1237 Commits

Author SHA1 Message Date
dx 4b263b3475 Fix a handful of boring leaks (#5518)
Valgrinding to get exp. Testing with "r2 -Aqcq /bin/ls"

Before:

       definitely lost: 22,735 bytes in 250 blocks
       indirectly lost: 23,542 bytes in 605 blocks
         possibly lost: 2,464 bytes in 7 blocks
       still reachable: 3,876,216 bytes in 80,761 blocks

After:

       definitely lost: 25,216 bytes in 58 blocks
       indirectly lost: 24,830 bytes in 739 blocks
         possibly lost: 0 bytes in 0 blocks
       still reachable: 20,105 bytes in 34 blocks

The "goto beach" (named like that for consistency) change resulted in
freeing most of the "still reachable" stuff on quit, which also moved
stuff out of "possibly lost", so.. it looks like it's leaking more now.
Yay.
2016-08-16 00:45:33 +02:00
pancake fe0530aa9c Fix OOB read in vax disassembler 2016-08-14 19:35:24 +02:00
Álvaro Felipe Melchor dc5673ec3a Fix regression with the arm/thumb changes (#5464)
Now we build a list of ranges (RAnalRange) based on anal hints to handle the
bits in a better way in the case of arm/thumb

Now instead of asm.bits that rules the whole binary we can define ranges with
anal hints
2016-08-10 18:49:44 +02:00
pancake 6d1d02024e Remove problematic asprintf defines from libiberty.h 2016-08-08 13:40:50 +02:00
Álvaro Felipe Melchor 0bc983027f improve arm/thumb in elf file format and disasm 2016-08-07 17:38:34 +02:00
pancake a211c48bd5 Update some indentation in asm.dalvik 2016-08-06 11:58:54 +02:00
pancake 744fad6418 Port to Termux (Android-Debian environment) 2016-08-06 05:12:58 +01:00
pancake cc01682132 Some playground with DEX 2016-08-05 13:11:30 +02:00
Sven Steinbauer ca96796268 Prevent possible max shift value (#5391)
Protect against shifts that might be bigger than 31
2016-07-27 13:21:36 +02:00
Álvaro Felipe Melchor 9e412a9048 fix again the crash in nz 2016-07-26 23:08:29 +02:00
Álvaro Felipe Melchor 5d493c1950 refix crash in nz assembler 2016-07-26 22:37:20 +02:00
Álvaro Felipe Melchor 3c8066ce57 fix crash in nz assembler 2016-07-26 22:08:25 +02:00
pancake 2dda628da1 Null terminate array of instructions in x86.nz to fix a crash 2016-07-26 18:46:48 +02:00
pancake b342358513 Fix x86.nz warnings from clang 2016-07-25 21:26:35 +02:00
Sven Steinbauer e436e66428 Kill dead code (#5378)
Fix dead code warnings from coverity scan
2016-07-25 21:24:29 +02:00
Sven Steinbauer c5635eec3c Fix error on invalid reg (#5374)
some instructions wouldn't error on invalid source or dest values.
Set valid reg to false by default and only set true if actually valid
2016-07-25 18:52:58 +02:00
Sven Steinbauer 887f5bfa8c Support extended 64bit registers [Fix #5364] 2016-07-25 18:02:46 +02:00
pancake 6c549b424a Remove x86.tab from r2 master (moved to extras) 2016-07-25 03:47:47 +02:00
pancake 845bfebc9e Fix null deref in x86.nz 2016-07-25 03:42:28 +02:00
pancake 91fe80f4ca Fix avr's rjmp disasm, analysis and esil 2016-07-25 03:19:16 +02:00
Maijin 22de895ef5 Rename CSR disasm/anal into XAP4 Fix #5355 2016-07-23 00:41:42 +02:00
Sven Steinbauer 996e767e0d Refactor nz assembler
Refactor nz assembler
2016-07-22 18:33:54 +02:00
Maijin e3a05bdb76 Kill libr/asm/t 2016-07-12 22:51:47 +02:00
Maijin c274afe748 Fix #3286 - Use stdbool.h 2016-07-12 22:15:19 +02:00
bsmiles32 622e828e1d Add basic support for N64 RSP processor. (#5269)
* Add basic support for N64 RSP processor.
This includes:
* a table driven instruction decoder (rsp_idec)
* a disassembler
* a very primitive anal plugin
2016-07-03 22:03:26 +02:00
pancake 2cc433cefa Fixes for avr to make travis green 2016-07-02 02:37:00 +02:00
pancake 9864ef8841 Lowercase all registers to match RReg rules in AVR 2016-07-01 15:22:23 +02:00
Álvaro Felipe Melchor 4396598081 Fix oob read reported by revskill on mk68 code 2016-06-30 23:15:25 +02:00
Álvaro Felipe Melchor d69a502eb5 fix indentation m68k_disasm 2016-06-30 23:01:24 +02:00
pancake 98e90dd3cf Implement RSyscall.IO in disasm loop for X86 and AVR 2016-06-29 17:02:43 +02:00
pancake fe644e60ff Fix crash in r2 -a arm -b32 -c'wa str r0' 2016-06-27 15:58:43 +02:00
Sven Steinbauer 2c086751b9 Add fsincos instruction [fix #5204] (#5205) 2016-06-24 15:08:52 +02:00
Sven Steinbauer 995c952c5d Fix #5097 : mov instruction with rex regs
sil, dil, spl, and bpl, registers now supported
2016-06-22 13:04:23 +02:00
Sven Steinbauer db76ef6497 Add `bt` instruction [fix #1277] (#5194) 2016-06-22 12:31:08 +02:00
Sylvain Pelissier 50aed82b66 Add lfence, mfence and sfence to x86.nz (#5193) 2016-06-22 10:29:26 +02:00
danielps 1b21628964 V810: Fix floating-point instructions (#5186) 2016-06-20 23:39:01 +02:00
pancake f96f00d62d Fix #5158 - Merge r_db into r_util 2016-06-17 12:19:16 +02:00
Sven Steinbauer d45101eebe Add offset support to `add` instruction (#5137)
support syntax for

add eax, [ecx]
add ecx, [eba +/- 3]
2016-06-15 15:33:14 +02:00
pancake e032a48cbe Fix latest 26 COVs 2016-06-14 23:47:58 +02:00
pancake 8a82e5cae6 Implement 'cbz' in armass-thumb 2016-06-13 11:12:20 +02:00
Sven Steinbauer deebcc5f46 Add check for 64bit overflow (#5116) 2016-06-10 17:02:51 +02:00
Jeffrey Crowell 3e8a0cc693 replace usage of killed r_str_trim 2016-06-10 01:12:07 +00:00
Sven Steinbauer 00e964e9b6 Add support to mov for negative immediates (#5090)
mov eax, -3
2016-06-07 12:23:44 +02:00
Sven Steinbauer 6e4a1b55b1 Error if moving 64bit val to 32bit reg (#5088)
mov eax, 0x1122334455667788 now errors if trying to assemble with -b64.
2016-06-07 11:01:35 +02:00
pancake eb9feef231 Fixes for powerpc endian in mach0 and other issues 2016-06-06 22:57:22 +02:00
pancake 608b79d2b4 Finally fix the build on osx-ppc 2016-06-06 17:30:07 +02:00
pancake 5903bc0d10 Fix #5083 - null deref in armass 2016-06-06 16:53:56 +02:00
pancake d3394d5a7a Fix latest 28 COVs 2016-06-02 03:19:31 +02:00
pancake 03294af32b Fix null deref in libr_asm and add lang-python r2pm pkg 2016-06-02 02:45:38 +02:00
pancake 95b2e511f5 Fix some warnings 2016-06-01 12:23:10 +02:00