Commit Graph

77 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
cf89cf60db cosmetic fix for capstone.h 2014-01-06 09:08:35 +08:00
Nguyen Anh Quynh
c52352d6d9 add new error code CS_ERR_MEMSETUP to report error when user-defined dynamic mem management is uninitialized 2014-01-06 09:06:30 +08:00
Nguyen Anh Quynh
57aa8eca05 change argument type of cs_support() API from cs_arch to int. this is to give us more flexibility to use this API to check other stuffs in future 2014-01-06 00:03:29 +08:00
Nguyen Anh Quynh
a60ed8b044 more instructions on CS_OPT_MEM 2014-01-05 23:52:30 +08:00
Nguyen Anh Quynh
ac9c076fdf minor fix for instruction on CS_OPT_MEM 2014-01-05 23:42:50 +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
af6ca7e20a ppc: add branch hint support to cs_ppc struct 2014-01-05 01:05:22 +08:00
Nguyen Anh Quynh
f1d489b949 ppc: support details information 2014-01-05 00:00:05 +08:00
Nguyen Anh Quynh
34f96389a9 add new API: cs_strerror() return a string describing a given error code. this should be used together with cs_errno() 2014-01-03 22:49:07 +08:00
Nguyen Anh Quynh
ee143c8c6c fix a crashed bug in cs_close(): call destroy function before freeing handle's memory 2014-01-03 21:51:59 +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
ae3649ff71 rename some C header guards to be without _ as prefix to follow naming convention of C language. suggested by Markus Elfring 2014-01-02 13:15:07 +08:00
Nguyen Anh Quynh
0b4c1237df ppc: change type @disp to int32_t, and add @update_cr0 to cs_ppc struct 2014-01-02 12:02:59 +08:00
Nguyen Anh Quynh
4d22779f1c add the missing include/ppc.h 2013-12-31 21:01:01 +08:00
Nguyen Anh Quynh
42c6b1acc7 initial support for PPC 2013-12-30 00:15:25 +08:00
Nguyen Anh Quynh
0cb3d6cb24 we broke compatibility of bunch of important APIs, so bump API version to 2.0 rather than 1.1 2013-12-28 14:00:18 +08:00
Nguyen Anh Quynh
b90cb993ed API cs_version_ex(): since we already broke API compatibility, we are not afraid to break cs_version() too. this replaces cs_version() with cs_version_ex() 2013-12-28 13:59:09 +08:00
Nguyen Anh Quynh
04c19beefe rename API cs_disasm_dyn() to cs_disasm_ex(), and intentionally breaks compatibility with 1.0 2013-12-25 13:26:22 +08:00
Nguyen Anh Quynh
4fe224b1ed change API cs_disasm_dyn(): break cs_insn into 2 structures, and put all details into new structure cs_detail. this break API compatibility 2013-12-24 16:49:36 +08:00
Nguyen Anh Quynh
2296d5e926 add macro CS_MAKE_VERSION, which is handy to create combined version from major & minor version so that can be compared to the result of cs_version_ex() 2013-12-22 21:01:17 +08:00
Nguyen Anh Quynh
b880678a25 old cs_version() and new cs_version() are not compatible, so revert old one, and create new separate API cs_version_ex() 2013-12-22 15:20:07 +08:00
Nguyen Anh Quynh
0877747bcd cs_version() can accept NULL arguments. this is useful if you dont care about major/minor, but only want to get returned combined version 2013-12-22 14:16:28 +08:00
Nguyen Anh Quynh
39a42eddfb Change the way of supporting arch modularization
- Always use libapstone.so as library name, no matter which archs are compiled in.

- Add new API cs_support() to check if a particular arch is supported.

- Change cs_version(): return hexical version which encodes both major & minor version.
    the return value can be comparable.

- Bump API version to 1.1
2013-12-22 10:40:58 +08:00
Nguyen Anh Quynh
f185180436 cleaner implementation for arch modularization 2013-12-21 12:16:47 +08:00
Nguyen Anh Quynh
7008356bc5 change cs_insn struct to follow the commit 18103e4a. fixed Python & Java bindings accordingly. attn: bindings 2013-12-20 22:02:20 +08:00
Nguyen Anh Quynh
1bdb23a76d add CS_OPT_MODE option. this allows us to change engine's mode at run-time 2013-12-20 00:04:26 +08:00
Nguyen Anh Quynh
d06e2f5ac1 arm: expose alias registers SB, SL, FP & IP. attn: bindings 2013-12-19 16:50:57 +08:00
Nguyen Anh Quynh
df3fb00ed7 arm: add comments to arm.h for coprocessor register types 2013-12-19 12:41:50 +08:00
Nguyen Anh Quynh
7957ed1def arm64: add some alias registers. attn: bindings 2013-12-15 00:32:20 +08:00
Nguyen Anh Quynh
46a5afd810 add comment to clarify which information in cs_insn is available when CS_OPT_DETAIL = OFF 2013-12-14 11:52:06 +08:00
Nguyen Anh Quynh
4994c587ad bindings: support new 'detail' option for java & python 2013-12-14 11:39:33 +08:00
Nguyen Anh Quynh
4d3e852fbb detail option: provide instruction id even when detail option is OFF 2013-12-14 10:45:09 +08:00
Nguyen Anh Quynh
a209e67f8a support to turn on/off building instruction details 2013-12-14 00:23:41 +08:00
pancake
f0e4eed89d Use const on all read-only buffers 2013-12-11 22:14:42 +01:00
Nguyen Anh Quynh
ad89d25d05 mips: optimize Mips_map_register() to O(1). suggested by Pancake 2013-12-11 23:20:34 +08:00
Nguyen Anh Quynh
66f6c2283e mips: fix NEGU alias instruction. bug reported by Pancake 2013-12-11 21:37:24 +08:00
Nguyen Anh Quynh
36df4bb6a7 revert the cs_version() API 2013-12-10 13:31:20 +08:00
Nguyen Anh Quynh
bb64b0bdca more API version to capstone.h, and remove cs_version(). reset API back to 1.0 for public release 2013-12-10 07:56:17 +08:00
Nguyen Anh Quynh
bdaf3b5089 x86: delete useless constant values assigned for instructions in x86.h 2013-12-09 00:55:49 +08:00
Nguyen Anh Quynh
162409e730 mips: upgrade core engine 2013-12-08 20:17:28 +08:00
Nguyen Anh Quynh
731bf2a714 arm64: update core engine 2013-12-08 15:13:47 +08:00
Nguyen Anh Quynh
041e25dd66 add CS_ERR_OPTION type. cs_option() returns this error code on invalid option 2013-12-06 00:37:32 +08:00
Nguyen Anh Quynh
a236902656 fix CS_INSN_OFFSET: calculate offset based on the address of related instruction only 2013-12-05 20:21:09 +08:00
Nguyen Anh Quynh
a84d747f7c fix typo in CS_INSN_OFFSET 2013-12-05 18:33:34 +08:00
Nguyen Anh Quynh
bb5460348b add CS_INSN_OFFSET macro, so we can easily calculate offset of one insn, given its position in its array 2013-12-05 18:29:51 +08:00
Nguyen Anh Quynh
4d70daf83d note that Intel is default syntax 2013-12-05 09:50:50 +08:00
Nguyen Anh Quynh
a2f825ff07 support comments in autogen files, so constant files are more friendly 2013-12-04 23:56:24 +08:00
Nguyen Anh Quynh
79976c1370 fix some comments in capstone.h 2013-12-04 23:03:13 +08:00
Nguyen Anh Quynh
8f13f3c6ab rename @hex_code to @bytes, and move it to next to @size 2013-12-04 22:57:04 +08:00
Nguyen Anh Quynh
c45b1588ef Merge branch 'master' of https://github.com/joxeankoret/capstone into hexcode 2013-12-04 19:28:54 +08:00