Finn Wilkinson
6d5a3b1a44
Updated AArch64 Instruction Printer to support new Armv9.2 instructions.
...
Implemented new functions present in LLVM 14.0.5 for any new instruction
type in Armv9.2; mainly SME / Matrix printing functions.
New set_sme_index function added (called from AArch64GenAsmWriter.inc)
to correctly add operands to new sme_index operand type. Doing_SME_Index
bool added to cs_struct to indicate when operands should be added to
sme_index type.
Functionality added to support SMSTART/SMSTOP aliases.
2022-09-30 16:34:09 +01:00
Finn Wilkinson
dfa8c60c91
Updated arm64.h to refelct changes to architecture in Armv9.2 and LLVM
...
14.0.5, and introduced new arm64 operand types.
New operand type for svcr MSR/MRS/SMSTART/SMSTOP instructions to
facilitate easier cstool printing.
New operand type for SME instructions with a matrix register that is
indexed.
2022-09-30 16:21:58 +01:00
Finn Wilkinson
222a8b4278
Updated AArch64 BaseInfo.h and Mapping.c to refelct Armv9.2 architectural changes and .inc file changes.
2022-09-30 16:14:37 +01:00
Finn Wilkinson
b60d0df0d8
Updated AArch64 Disassembler.
...
Added new decode functions, mainly for SME matrix operands and SVCR sys
register, as well as updating existing decode functions which have seen
changes in LLVM 14.0.5.
The _getInstruction function has also been updated to its LLVM 14.0.5
counterpart; with a new switch case for adding implicit operands to the
relevant SME instructions.
2022-09-30 16:07:07 +01:00
Finn Wilkinson
4a5e69f69e
Generated new Armv9.2 AArch64 .inc files from LLVM 14.0.5
2022-09-30 15:51:03 +01:00
Finn Wilkinson
3ef5bb6b79
Updated synctool scripts to extract new functions and match type/formatting changes in LLVM 14.0.5 tablegen files.
...
- asmwriter.py : As well as new functions, recognition of new SME index printing was added. The printAliasInstr function also required a re-write to match its counter-part and changes in logic in LLVM 14.0.5
- disassemblertables-arch.py : Minor type changes for some functions, as well as adding support for new SME decode functions.
- mapping_insn-arch.py : Minor change to correct incorrect instruction aliasing in generated AArch64MappingInsn.inc etc.
- registerinfo.py : minor change to reflect change in LLVM 14.0.5
- systemoperand.py : corrected minor type changes made in LLVM 14.0.5 and added extraction of SVCR, BTI, DBnXS lists and encoding functions.
2022-09-30 15:34:50 +01:00
Finn Wilkinson
437a7fc469
Updated suite/synctools/.gitignore to ignore generated insn_list.txt file.
2022-09-30 15:27:36 +01:00
Finn Wilkinson
ed175c8b72
Changed AArch64 filegen order to resepct inter-file dependancies.
...
make arm64 needs to be performed before AArch64GenRegisterV.inc is generated.
2022-09-30 15:25:36 +01:00
Finn Wilkinson
e385fc5267
Updated synctools/tablegen/AArch64 files to LLVM 14.0.5.
2022-09-30 15:21:50 +01:00
Finn Wilkinson
62fee65c54
Updated include/llvm files in synctools to LLVM 14.0.5.
2022-09-30 13:43:09 +01:00
Wu ChenXu
3fd4712b0b
Merge pull request #1886 from terorie/ebpf-callx
2022-06-09 21:37:40 +08:00
Wu ChenXu
82b2084279
Merge pull request #1885 from terorie/fix-ebpf-ld-class
2022-06-09 21:37:02 +08:00
Richard Patel
fb34475a1f
Add eBPF callx instruction
2022-06-06 11:56:40 +02:00
Richard Patel
26999b6df5
Fix eBPF lddw opcode
2022-06-06 10:51:48 +02:00
Wu ChenXu
efa78c8c8e
Merge pull request #1878 from hamarituc/pkgconfig
...
Fix pkg-config template
2022-05-05 18:56:34 +08:00
Wu ChenXu
845da4b2f4
Merge pull request #1877 from adamjseitz/aarch64-comprehensive-alias-vas
2022-05-02 15:37:33 +08:00
Mario Haustein
8479233b64
Fix pkg-config template
2022-04-30 13:06:30 +02:00
Adam Seitz
b27f3df27e
Comprehensively add vas specifiers to ARM aliases
2022-04-29 13:49:52 -04:00
Adam Seitz
9998268b93
Fix AArch64InstPrinter indentation
2022-04-28 17:41:14 -04:00
Wu ChenXu
c52e5ae543
Merge pull request #1870 from theblackunknown/fix-install-pkgconfig
2022-04-16 12:15:21 +08:00
MACHIZAUD Andréa
72e16ccefe
Merge branch 'next' into fix-install-pkgconfig
2022-04-15 11:17:20 +02:00
Wu ChenXu
5bdf6a3a76
Merge pull request #1867 from theblackunknown/cmake-config-next
...
Add `cstool` in CMake Package Config + CMake Github Workflow
2022-04-14 14:39:31 +08:00
MACHIZAUD Andréa
1aec01a715
Fix pkgconfig not installed when CAPSTONE_BUILD_CSTOOL is false
2022-04-13 11:39:30 +02:00
MACHIZAUD Andréa
61ed12c4f2
Merge cmake.yml into CITest.yml
2022-04-11 09:35:10 +02:00
MACHIZAUD Andréa
e16fd004cd
CMake presets + simple CMake Workflow
2022-04-03 11:34:00 +02:00
MACHIZAUD Andréa
acb9c24b99
Add cstool
to the capstone-targets
2022-04-03 11:33:47 +02:00
Wu ChenXu
c647eec6a3
Merge pull request #1860 from adamjseitz/aarch64-alias-vas-specifiers
2022-03-23 15:16:32 +08:00
Wu ChenXu
2bd6f00b53
Merge branch 'next' into aarch64-alias-vas-specifiers
2022-03-22 22:58:06 +08:00
Wu ChenXu
065317746d
Merge pull request #1859 from adamjseitz/aarch64-sys-instruction-operands
...
AArch64 SYS instruction operands
2022-03-22 22:56:27 +08:00
Adam Seitz
82c6e17068
Add SYS ops test to cstest
2022-03-22 09:31:49 -04:00
Adam Seitz
42dedb6158
Add AArch64 mov VAS specifier tests to cstest
...
Add four tests to the cstest suite to validate issue #1843 does not
regress. Additionally, update the way VAS specifiers are printed so
that the correct operand is verified.
2022-03-22 09:23:55 -04:00
Adam Seitz
514ef89a87
Add regression tests for missing vas specifier
2022-03-21 13:31:37 -04:00
Adam Seitz
ee689c4512
Set .vas for aliased AArch64 instructions
2022-03-21 13:24:57 -04:00
Adam Seitz
50535d9477
Update test for all aarch64 sys operand variants
2022-03-18 14:15:46 -04:00
Adam Seitz
d729d88e87
Combine aarch64 sys operand enums
2022-03-18 14:15:46 -04:00
Adam Seitz
2465cb044f
Add test for ARM64 sys operands
2022-03-18 13:20:51 -04:00
Adam Seitz
6687276cad
Build SYS operand for AArch64 sys operations
2022-03-18 09:43:13 -04:00
David Zimmer
b81c64999b
vb6 bindings: clarify license as Apache v2.0 ( #1850 )
2022-03-03 17:39:13 +08:00
Wu ChenXu
15cb0b686d
Merge pull request #1847 from kabeor/next
...
update pkgconfig version
2022-02-28 23:40:52 +08:00
Wu ChenXu
c82e938045
Merge branch 'capstone-engine:next' into next
2022-02-28 23:40:32 +08:00
kabeor
9cd7470046
Merge branch 'next' of https://github.com/kabeor/capstone into next
2022-02-28 23:38:05 +08:00
kabeor
6dfa60661a
update pkgconfig version
2022-02-28 23:37:10 +08:00
Nguyen Anh Quynh
240ce14f17
update pkgconfig.mk
2022-02-28 23:28:58 +08:00
Wu ChenXu
e695f690ef
Merge pull request #1846 from kabeor/next
...
Update ChangeLog for v5.0.0-rc2
2022-02-28 22:14:14 +08:00
Wu ChenXu
a6afa9f5c2
Merge branch 'capstone-engine:next' into next
2022-02-28 22:13:50 +08:00
kabeor
e6aa4850cf
Update ChangeLog for v5.0.0-rc2
2022-02-28 22:13:21 +08:00
Wu ChenXu
524e863ad1
Merge pull request #1840 from stevielavern/fix_ldr
...
Fix AArch64 ldapr detailed information #1839
2022-02-28 14:23:55 +08:00
Wu ChenXu
335571a618
Merge pull request #1845 from kabeor/next
...
fixed incorrect MI->ac_idx leading to wrong AArch64 InsnOp access printing
2022-02-28 14:23:32 +08:00
Wu ChenXu
ec07087ba8
Merge branch 'capstone-engine:next' into next
2022-02-28 14:06:01 +08:00
kabeor
f9bf1e9b20
add ldr operands access issue testcase
2022-02-28 14:02:57 +08:00