Commit Graph

665 Commits

Author SHA1 Message Date
tandasat aba6117c6c Replaced snprintf with cs_snprintf 2016-03-31 18:07:53 -07:00
Ammar Ben Khadra c7dcf9c9a0 Fix classification of ARM jump instructions
All jump instructions have been classified based on the direct
and indirect_branch flags instead of explicitly stating ARM_GRP_JUMP.
2015-12-17 12:36:48 +01:00
Wesley M 905556d6ef Refactoring conditional directives for incomplete if conditions. 2015-12-07 21:28:30 -03:00
kokole cd6a732c96 LOOP* branch fix for full x64 instructions
Sorry, since the file is very big I didn't realize there was a 2nd list.
2015-10-18 19:42:31 +02:00
kokole 9cdd2031ed LOOP* instructions are conditional branches
LOOP, LOOPE and LOOPNE are basically conditional branches http://x86.renejeschke.de/html/file_module_x86_id_161.html
2015-10-18 15:13:25 +02:00
Nguyen Anh Quynh 921904888d x86: coding style 2015-10-08 15:49:12 +08:00
bughoho 1a13338d13 fix comment 2015-10-08 08:49:00 +08:00
bughoho 2f0e215a57 add dedicated variables such as prefix2e, prefix36, prefix66, prefix67, etc 2015-10-07 14:47:24 +08:00
bughoho 3388167dbe fix:prefix 0x67 missed. 2015-10-06 11:42:32 +08:00
bughoho 7c74861085 https://github.com/aquynh/capstone/issues/483 2015-09-28 15:08:25 +08:00
Nguyen Anh Quynh 763ac62498 arm: another fix for #446. bug reported by @uxmal 2015-08-19 22:36:37 +08:00
Nguyen Anh Quynh f938424349 x86: another attempt to fix #456 2015-08-19 09:34:56 +08:00
Nguyen Anh Quynh b584a5041a x86: another attempt for #456 2015-08-16 18:43:49 +08:00
Nguyen Anh Quynh b6ae93d707 x86: more AT&T fixes for #458 reported by Ruslan Kabatsayev 2015-08-15 23:51:36 +08:00
Nguyen Anh Quynh d28a948635 x86: more fix for #458 2015-08-15 17:03:48 +08:00
Nguyen Anh Quynh f74e96c3a4 x86: fix issue #458 reported by Ruslan Kabatsayev 2015-08-15 15:05:27 +08:00
Nguyen Anh Quynh 01e87ae281 x86: fix issue #456 reported by Ruslan Kabatsayev 2015-08-15 14:46:51 +08:00
Nguyen Anh Quynh 8b012d5e7a arm: fix issue #459 reported by Ahmed Garhy 2015-08-15 14:16:39 +08:00
Nguyen Anh Quynh ad94e98682 x86: fix target addresses of CALL/JMP rel16. bug reported by Ruslan Kabatsayev 2015-08-15 13:25:13 +08:00
Nguyen Anh Quynh ac74b386ea x86: REPNE prefix is valid for LODSD. this fixes the bug reported by Ruslan Kabatsayev 2015-08-14 22:08:41 +08:00
Nguyen Anh Quynh 9dac4021dc x86: some AT&T instructions wrongly add one more operand in front (index 0). this fixes the issue reported by Ruslan Kabatsayev 2015-08-14 22:05:05 +08:00
Nguyen Anh Quynh 0f408c25f8 x86: repne prefix can come with INS/OUTS/LODS instructions. bug reported by Ruslan Kabatsayev 2015-08-14 21:34:09 +08:00
Nguyen Anh Quynh 4dda6c9f1b x86: rep* prefix read/write *CX register. bug reported by Ruslan Kabatsayev 2015-08-14 16:59:07 +08:00
Nguyen Anh Quynh f84a099d2a x86: fix operand size of farjmp/farcall. bug reported by Ruslan Kabatsayev 2015-08-14 10:46:55 +08:00
Nguyen Anh Quynh 60d40cf465 x86: loope/loopne read EFLAGS. bug reported by Ruslan Kabatsayev 2015-08-14 08:57:58 +08:00
Nguyen Anh Quynh f0c7da0151 sparc: fix POPC instruction. bug reported by @zonkzonk & @pancake 2015-08-14 00:27:07 +08:00
Nguyen Anh Quynh b1c54fe8dc x86: LOOP* instructions should read/write *CX registers. bug reported by Ruslan Kabatsayev 2015-08-14 00:16:26 +08:00
Nguyen Anh Quynh 981c201e3b x86: fix selector part of farjmp/farcall instructions. bug reported by Ruslan Kabatsayev 2015-08-13 23:38:01 +08:00
Nguyen Anh Quynh af806e06ba x86: truncat immediate for non-64bit. this fixes the disassembly of the code e9e9eeeeee in 32bit mode 2015-07-11 10:01:24 +08:00
Nguyen Anh Quynh 901f407c0c mips: remove alias_insns[] 2015-06-22 15:48:45 +08:00
Nguyen Anh Quynh ffb878ab53 mips: delete the alias map SUBU to NEGU. bug reported by @joelpx 2015-06-22 11:21:49 +08:00
Nguyen Anh Quynh 36d05945f9 x86: fix immediate operand of AND/OR/XOR instructions. bug reported by @yegord 2015-06-20 10:56:54 +08:00
Nguyen Anh Quynh 2ec0f814f9 mips: return Fail on assert failure in MipsDisassembler.c 2015-06-16 14:09:25 +08:00
Nguyen Anh Quynh 06eacaf4c8 ppc: return failure when Base>=32 in decodeMemRIOperands() 2015-06-16 14:03:22 +08:00
Nguyen Anh Quynh d49ec461ab ppc: handle invalid CR bits with more than 8 zeros in decodeCRBitMOperand(). bug reported by @felixgr 2015-06-16 13:59:10 +08:00
Nguyen Anh Quynh 3dcad960f6 x86: treat prefix-only sequences of bytes as invalid code. this fixes a NDP reported by @felixgr 2015-06-16 11:57:45 +08:00
Nguyen Anh Quynh c2bc152176 ppc: avoid potential memleak issue when alias mnemonic is empty in PPC_printInst() 2015-06-06 19:11:25 +08:00
Nguyen Anh Quynh c4dbf077da ppc: make sure alias mnememonic is not empty in PPC_printInst() 2015-06-06 16:10:07 +08:00
Nguyen Anh Quynh 2a8091beb4 xcore: increase op_count in set_mem_access() only on register operand. bug reported by Ben Nagy 2015-06-06 12:30:56 +08:00
Nguyen Anh Quynh 3dc31d298a x86: properly handle AL/AX/EAX operand of OUT instruction in AT&T syntax 2015-06-06 00:32:42 +08:00
Nguyen Anh Quynh 3f00a728eb x86: some algorithm instructions with immediate of 1 byte should be printed in positive form 2015-06-06 00:04:03 +08:00
Nguyen Anh Quynh 7c2f5b615a xcore: turn off doing_mem after each printing each instruction. this fixes a memory corruption reported by @felixgr 2015-06-05 18:06:22 +08:00
Nguyen Anh Quynh fbae42ed60 x86: revert the old change that check prefix location more strictly 2015-06-04 21:30:15 +08:00
Nikolay Igotti 4fcb31c9d3 Fix Thumb disassembler memory corruption with IT sequence (issue #385) 2015-06-03 15:38:45 +02:00
Nguyen Anh Quynh ded15775af arm: fix an warning on conversion from uint64_t to bool. issue reported by @yegord 2015-05-24 21:33:17 +08:00
Nguyen Anh Quynh 478595dc3a arm: remove ASRS, LSRS, SUBS & MOVS from mapping table insns[]. backported from the 'next' branch, but do not really remove these 'dead' instructions for compatibility reason 2015-05-08 15:08:35 +08:00
Nguyen Anh Quynh 5dba2c3742 arm: BLX should read PC & modify LR registers. bug reported by Zach Riggle 2015-05-08 15:04:09 +08:00
Nguyen Anh Quynh 27526f3850 x86: make all shifted instructions to support first operand in AT&T syntax 2015-05-08 14:23:08 +08:00
Ole André Vadla Ravnås 7c47be402e Fix handling of cmpxchg16b with lock prefix
This was discovered when Frida's Stalker encountered the following
x86-64 instruction while tracing code in ntdll: `f0 49 0f c7 0a`.
2015-04-23 20:44:21 +08:00
learn_more 9668b2641f Fix compiling with nmake 2015-04-14 15:36:10 +02:00