Commit Graph

25 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
1182d25759 simplify ARCH_group_name() by using lookup table as suggested by @learn_more. also added the missing group name for GRP_PRIVILEGE 2015-04-27 12:13:34 +08:00
reverser
160e198584 Add support to embed Capstone 3.x branch into OS X kernel extensions. 2015-04-09 18:28:19 +01:00
Nguyen Anh Quynh
58eb07355e x86: avoid duplicating registers returned by cs_regs_access(). also add *CX registers to regs_read[], regs_write[] for REP* instructions 2015-04-02 15:18:33 +08:00
Nguyen Anh Quynh
efffe787d1 Add new API and start to provide access information for instruction operands
- New API cs_regs_access() that provide registers being read & modified by instruction

- New field cs_x86_op.access provides access info (READ, WRITE) for each operand

- New field cs_x86.eflags provides EFLAGS affected by instruction

- Extend cs_detail.{regs_read, regs_write} from uint8_t to uint16_t type
2015-03-25 15:02:13 +08:00
Nguyen Anh Quynh
bfcaba5851 2015 2015-03-04 17:45:23 +08:00
Nguyen Anh Quynh
4b6b15fcb1 fix more MSVC warnings 2014-08-26 15:57:04 +08:00
Nguyen Anh Quynh
aaddb25453 no need to zeroout insn_cache in make_id2insn() 2014-06-17 13:32:37 +08:00
Nguyen Anh Quynh
fec5539f3a use calloc() to zerout insn_cache in make_id2insn. this makes sure uninitialized data zero 2014-06-16 17:31:43 +08:00
Nguyen Anh Quynh
12f93cba5e use malloc() rather than calloc() for handle->insn_cache in make_id2insn() 2014-06-09 07:16:55 +07:00
Nguyen Anh Quynh
583baba8c4 remove more dead code 2014-05-28 12:57:59 +08:00
Nguyen Anh Quynh
19146e91a3 replace strcasecmp() with strcmp(). this also simlifies MSVC support a bit 2014-05-28 12:41:31 +08:00
Nguyen Anh Quynh
6023ef7843 Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
Nguyen Anh Quynh
7f6db24a8f remove now redundant insn_reverse_id() after alias handling simplifications 2014-02-18 17:58:47 +08:00
Alex Ionescu
46018db884 Initial set of changes to support building with MSVC 2013. Right now there's a bunch fo assumptions in the .vcxproj file and some things are not as clean as they should be, but it does build a full build and works (at least the x86 side). The point of this initial checkpoint is to make sure that nothing breaks on the GCC side, that everyone is ok with the changes to the source (or if better fixes/typing can be done). 2014-01-22 09:45:00 -08:00
Nguyen Anh Quynh
a9ffb440f8 replace strdup() with our cs_strdup(), which call cs_mem_malloc() internally 2014-01-15 18:27:01 +08:00
Nguyen Anh Quynh
a8eb7a5ca5 rename memory function pointer types to have cs_ prefix. also rename internal function pointers my_* to have cs_mem_ prefix - suggested by Pancake 2014-01-11 12:55:31 +08:00
Nguyen Anh Quynh
0b93e19460 fix off-by-one error in make_id2insn. patch by Dang Hoang Vu 2014-01-06 11:41:01 +08:00
Nguyen Anh Quynh
24bf0d9079 add new option CS_OPT_MEM for cs_option(): this enable user-defined dynamic memory management. idea proposed by Pancake 2014-01-05 11:19:04 +08:00
Nguyen Anh Quynh
f1d489b949 ppc: support details information 2014-01-05 00:00:05 +08:00
Nguyen Anh Quynh
b265406960 cache insns for fast lookup in mapping.c. based on the idea of Dang Hoang Vu 2014-01-03 17:08:58 +08:00
Nguyen Anh Quynh
18103e4a22 size down insn_map structructure by reducing the size of some fields. this alone makes lib binary size 2.6MB smaller 2013-12-20 17:35:15 +08:00
Nguyen Anh Quynh
bed90914e2 x86: calculate op_size properly in special cases regarding rax, eax, ax, al registers 2013-12-13 18:28:38 +08:00
pancake
f0e4eed89d Use const on all read-only buffers 2013-12-11 22:14:42 +01:00
Nguyen Anh Quynh
f35e2ad35c add @regs_read_count, @regs_write_count, @groups_count to @cs_insn. bump API to 1.4 2013-12-03 11:10:26 +08:00
Nguyen Anh Quynh
26ee41aa67 initial import 2013-11-27 12:11:31 +08:00