Commit Graph

22 Commits

Author SHA1 Message Date
Nguyen Anh Quynh
2dc77357e1 x86: update ISA & mapping tables 2019-03-01 01:05:52 +08:00
Nguyen Anh Quynh
3dcdcfa713 sync with LLVM 7.0.1. X86 is first 2019-02-26 15:19:51 +08:00
Nguyen Anh Quynh
b227825267 x86: fix X86_BEXTRI64ri in X86MappingInsnOp_reduce.inc 2019-02-22 23:58:33 +08:00
Ammar
4e1b8c49f9 x86: correct access mode for cmp instruction (#1309)
cmp instruction does not modify its operands. Currently, cmp
variants that accept a memory operand have CS_AC_WRITE access mode
set. This commit removes CS_AC_WRITE mode from cmp variants that
have it.
2018-12-18 23:22:30 +08:00
bezita
1790ccdb1e Fix EFLAGS for the stosb/stosd/stosq/stosw instructions (#1065) 2017-12-22 00:05:47 +08:00
echotyh
572d864b2f Next (#918)
* Add FPUFLAGS information.

* Change the structure insn_op: from uint64_t eflags to union{ uint64_t eflags, uint64_t fpuflags; }.

* Adjust the  modified structure insn_op.

* Add missing flags.

* Change flags information acorrding to xed files and instruction manual.

* Rename fpuflags to fpu_flags.

* Updating flags information accoring to manual and xed files.

* Changing the name eflags to flags.

* Printing the FPU_FLAGS information when it belongs to group X86_GRP_FPU.

* Defining new flags.

* Updating flags information according to manual and xed files.

* Adding X86_GRP_FPU to all the instructions which have modified fpu_flags.

* Solving the conflict problem when do git commit.

* Rectify the annotation within the structure insn_op.

* Supplement fpu flags information for floating-point instructions which missed fpu flags before.

* Print fpu group information when an instructure belongs to X86_GRP_FPU.

* Add two new groups ARM64_GRP_BASE(base instructions) and ARM64_GRP_FPSIMD(SIMD&FP instructions).

* Revert "Add two new groups ARM64_GRP_BASE(base instructions) and ARM64_GRP_FPSIMD(SIMD&FP instructions)."

This reverts commit 8ab50e80a3.

* X86 clean up.

* Clean up arch/X86/X86MappingInsn.inc.

* Double check.

* Delete files.

* Clean up x86.

* Clean up reduce file

* Fix btr

* fix x86
2017-05-29 22:43:47 +08:00
lucasg
0800d09912 Fix mov *ax, addr register access for CAPSTONE_REDUCE files 2016-07-10 08:28:42 +02:00
Nguyen Anh Quynh
e7e9670819 x86: fix similar bugs with issue #711 for MOV with *AX registers 2016-06-26 01:22:09 +08:00
fvrmatteo
93b8008f6b Fixed X86_INS_BTC/X86_INS_BTR/X86_INS_BTS 2016-06-20 17:03:37 +02:00
fvrmatteo
f1959bbed3 Fixed EFLAGS of BT/BTC/BTR/BTS 2016-06-20 12:51:43 +02:00
fvrmatteo
dc48e50724 Fixed EFLAGS of BT/BTC/BTR/BTS 2016-06-20 12:46:07 +02:00
fvrmatteo
074502daa2 Changed X86_INS_POP flags 2016-06-18 13:02:57 +02:00
unknown
527aea59da fixed MOVABS flags 2016-03-23 21:54:43 +01:00
fvrmatteo
4d1f51e68b x86: Fix access flags for SHR/SHL/SAL/SAR 2016-03-06 14:45:22 +01:00
fvrmatteo
e58f8783a2 x86: Fix access flags for SHR/SHL/SAL/SAR 2016-03-06 13:55:07 +01:00
fvrmatteo
7772716375 x86: Fix access flags for SHR/SHL/SAL/SAR 2016-03-06 13:10:14 +01:00
unknown
369a9cf955 Hope to have done it right. 2015-12-02 16:07:22 +01:00
Nguyen Anh Quynh
ed88b001f8 x86: XCHG instructions should read|write to both operands. this fixes issue #545 2015-11-16 19:50:26 +08:00
Nguyen Anh Quynh
3f1bfc97cc x86: fix operand access info of string instructions 2015-04-03 16:47:43 +08:00
Vincent Bénony
1f33733482 Same fix on the reduce table. 2015-04-02 17:34:25 +02:00
Nguyen Anh Quynh
228ec96de5 x86: LEA instruction should not access the second operand. bug reported by @chaplja 2015-03-30 08:24:12 +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