Commit Graph

16 Commits

Author SHA1 Message Date
Rot127
34a239b3e6 Handle system operands in way more detail.
- Differentiates between banked and non-banked registers.
- Saves the MSR mask.
- PSR field bits are saved separately.
- SYSm value is saved if possible.
2023-07-24 02:44:59 -05:00
Rot127
47cf68e312 Return firs the system register name.
Note: System registers and banked register encodings overlap.
So this might lead to problems. But cstool only asks for system registers.
So it should be fine for now.
2023-07-22 13:07:59 -05:00
Rot127
6511ca8b1f Use OS independent printf formatting. 2023-07-22 04:19:22 -05:00
Rot127
104f693c11 Architecture updater (auto-sync) - Updating ARM (#1949)
* Add auto-sync updater.

* Update Capstone core with auto-sync changes.

* Update ARM via auto-sync.

* Make changes to arch modules which are introduced by auto-sync.

* Update tests for ARM.

* Fix build warnings for make

* Remove meson.build

* Print shift amount in decimal

* Patch non LLVM register alias.

* Change type of immediate operand to unsiged (due to: #771)

* Replace all occurances of a register with its alias.

* Fix printing of signed imms

* Print rotate amount in decimal

* CHange imm type to int64_t to match LLVM imm type.

* Fix search for register names, by completing string first.

* Print ModImm operands always in decimal

* Use number format of previous capstone version.

* Correct implicit writes and update_flags according to SBit.

* Add missing test for RegImmShift

* Reverse incorrect comparision.

* Set shift information for move instructions.

* Set mem access for all memory operands

* Set subtracted flag if offset is negative.

* Add flag for post-index memory operands.

* Add detail op for BX_RET and MOVPCLR

* Use instruction post_index operand.

* Add VPOP and VPUSH as unique CS IDs.

* Add shifting info for MOVsr.

* Add TODOs.

* Add in LLVM hardcoded operands to detail.

* Move detail editing from InstPrinter to Mapping

* Formatting

* Add removed check.

* Add writeback register and constraints to RFEI instructions.

* Translate shift immediate

* Print negative immediates

* Remove duplicate invalid entry

* Add CS groups to instructions

* Fix write attriutes of stores.

* Add missing names of added instructions

* Fix LLVM bug

* Add more post_index flags

* http -> https

* Make generated functions static

* Remove tab prefix for alias instructions.

* Set ValidateMCOperand to NULL.

* Fix AddrMode3Operand operands

* Allow getting system and banked register name via API

* Add writeback to STC/LDC instructions.

* Fix (hopefully) last case where disp is negative and subtracted = true

* Remove accidentially introduced regressions
2023-07-19 17:56:27 +08:00
billow
404edd5772 Fix compilation warnings related to TriCore. (#2012)
* fix tricore compiler warn `-Wmissing-prototypes`

* include cstool.h
2023-05-09 20:46:10 +08:00
Nguyen Anh Quynh
0783e3fa38 wasm: silence some compilation warnings 2019-02-02 00:13:52 +08:00
Spike
55f242d498 Add webassembly arch (#1359)
* add wasm arch

* fix bug

* delete todo & add wasm into readme
2019-02-01 23:03:47 +08:00
Nguyen Anh Quynh
5cf65cf1bd cstool: print mem.scale as int, not uint. bug reported by @hardtobelieve 2019-01-28 12:38:57 +08:00
Nguyen Anh Quynh
c9a2148b05 cstool: print out insn groups 2016-11-05 00:47:14 +08:00
Nguyen Anh Quynh
835042587f cleanup 2016-10-28 16:12:05 +08:00
YUHANG TANG
1d7dcad473 cstool: delete tab 2016-10-28 15:32:50 +08:00
YUHANG TANG
5e0a15521b cstool: add m68k and change cstool_x86 2016-10-27 12:12:59 +08:00
Nguyen Anh Quynh
2f92635af9 cstool: fix compilation bug 2016-10-21 17:03:27 +08:00
Nguyen Anh Quynh
c194aeeab4 cstool: cleanup 2016-10-21 16:57:23 +08:00
YUHANG TANG
6423e59f25 Delete platform.h and fix wrong identation. 2016-10-21 16:56:43 +08:00
YUHANG TANG
bb66912b28 cstool : print all debug information for all arch. 2016-10-21 16:55:28 +08:00