Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 08-Dec-2020 | - | ||||
strinforeduce/ | H | 08-Dec-2020 | - | 267 | 184 | |
tablegen/ | H | 08-Dec-2020 | - | 243,836 | 217,406 | |
.gitignore | H A D | 08-Dec-2020 | 145 | 10 | 7 | |
Makefile | H A D | 08-Dec-2020 | 399 | 15 | 8 | |
README | H A D | 08-Dec-2020 | 2.4 KiB | 58 | 40 | |
X86DisassemblerDecoderCommon.h | H A D | 08-Dec-2020 | 28.9 KiB | 484 | 381 | |
arm64_gen_vreg.c | H A D | 08-Dec-2020 | 766 | 39 | 28 | |
asmwriter.py | H A D | 08-Dec-2020 | 32.5 KiB | 749 | 664 | |
compare_mapping_insn.py | H A D | 08-Dec-2020 | 835 | 39 | 25 | |
disassemblertables-arch.py | H A D | 08-Dec-2020 | 8.7 KiB | 259 | 201 | |
disassemblertables.py | H A D | 08-Dec-2020 | 1.2 KiB | 46 | 25 | |
disassemblertables2.c | H A D | 08-Dec-2020 | 5.3 KiB | 177 | 125 | |
disassemblertables_reduce.py | H A D | 08-Dec-2020 | 1.3 KiB | 51 | 27 | |
genall-arch.sh | H A D | 08-Dec-2020 | 3.3 KiB | 71 | 46 | |
genall-full.sh | H A D | 08-Dec-2020 | 1.4 KiB | 34 | 17 | |
genall-reduce.sh | H A D | 08-Dec-2020 | 1.4 KiB | 29 | 14 | |
insn.py | H A D | 08-Dec-2020 | 12.3 KiB | 325 | 242 | |
insn3.py | H A D | 08-Dec-2020 | 3 KiB | 105 | 61 | |
insn_check.py | H A D | 08-Dec-2020 | 720 | 26 | 17 | |
instrinfo-arch.py | H A D | 08-Dec-2020 | 4.1 KiB | 162 | 102 | |
instrinfo.py | H A D | 08-Dec-2020 | 2.9 KiB | 116 | 76 | |
mapping_insn-arch.py | H A D | 08-Dec-2020 | 13.2 KiB | 363 | 269 | |
mapping_insn.py | H A D | 08-Dec-2020 | 12.2 KiB | 333 | 253 | |
mapping_insn_name-arch.py | H A D | 08-Dec-2020 | 3.1 KiB | 105 | 61 | |
mapping_insn_name.py | H A D | 08-Dec-2020 | 12 KiB | 315 | 236 | |
mapping_insn_op-arch.py | H A D | 08-Dec-2020 | 13.9 KiB | 380 | 287 | |
mapping_insn_op.py | H A D | 08-Dec-2020 | 12.1 KiB | 319 | 242 | |
mapping_reg.py | H A D | 08-Dec-2020 | 1.6 KiB | 54 | 35 | |
register.py | H A D | 08-Dec-2020 | 1.4 KiB | 49 | 31 | |
registerinfo.py | H A D | 08-Dec-2020 | 6.9 KiB | 287 | 202 | |
subtargetinfo.py | H A D | 08-Dec-2020 | 1.4 KiB | 54 | 34 | |
systemoperand.py | H A D | 08-Dec-2020 | 23.3 KiB | 988 | 698 | |
systemregister.py | H A D | 08-Dec-2020 | 5.3 KiB | 214 | 148 |
README
1Sync tools to port LLVM inc files to Capstone. 2 3For X86 4======= 50. cd tablegen/, then follow its README. 6 71. Run genall-{full|reduce}.sh, then copy generated .inc files to arch/<ARCH>/ directory 8 9 $ ./genall-full.sh tablegen ~/projects/tmp/capstone777.git/arch/X86 10 $ ./genall-reduce.sh tablegen ~/projects/tmp/capstone777.git/arch/X86 11 122. Run disassemblertables_reduce2 & disassemblertables_reduce2 to generate optimized (index table) X86GenDisassemblerTables2.inc & X86GenDisassemblerTables_reduce2.inc 13 14 # use 2x name to avoid overwritting X86GenDisassemblerTables2.inc & X86GenDisassemblerTables_reduce2.inc 15 16 $ make 17 $ ./disassemblertables2 > X86GenDisassemblerTables2x.inc 18 $ ./disassemblertables_reduce2 > X86GenDisassemblerTables_reduce2x.inc 19 203. cd strinforeduce/, and follow its README. 21 224. Copy all generated .inc files to arch/X86/ 23 24 $ cp X86GenAsmWriter_reduce.inc ~/projects/capstone.git/arch/X86 25 $ cp X86GenAsmWriter1_reduce.inc ~/projects/capstone.git/arch/X86 26 $ cp X86MappingInsnName_reduce.inc ~/projects/capstone.git/arch/X86 27 $ cp X86MappingInsn_reduce.inc ~/projects/capstone.git/arch/X86 28 $ cp X86MappingInsnOp_reduce.inc ~/projects/capstone.git/arch/X86 29 $ cp X86GenInstrInfo_reduce.inc ~/projects/capstone.git/arch/X86 30 $ cp X86GenDisassemblerTables_reduce.inc ~/projects/capstone.git/arch/X86 31 $ cp X86GenDisassemblerTables_reduce2x.inc ~/projects/capstone.git/arch/X86/X86GenDisassemblerTables_reduce2.inc 32 33 $ cp X86GenAsmWriter.inc ~/projects/capstone.git/arch/X86 34 $ cp X86GenAsmWriter1.inc ~/projects/capstone.git/arch/X86 35 $ cp X86MappingInsnName.inc ~/projects/capstone.git/arch/X86 36 $ cp X86MappingInsn.inc ~/projects/capstone.git/arch/X86 37 $ cp X86MappingInsnOp.inc ~/projects/capstone.git/arch/X86 38 $ cp X86GenInstrInfo.inc ~/projects/capstone.git/arch/X86 39 $ cp X86GenDisassemblerTables.inc ~/projects/capstone.git/arch/X86 40 $ cp X86GenDisassemblerTables2x.inc ~/projects/capstone.git/arch/X86/X86GenDisassemblerTables2.inc 41 425. copy insn_list.txt to include/capstone/<arch.h> 43 44For non-X86 45=========== 46 470. cd tablegen/, then follow its README. 48 49 1. Run gen-tablegen-arch.sh 50 512. Run genall-arch.sh 52 53 ./genall-arch.sh tablegen ~/projects/capstone.git/arch/ARM ARM 54 ./genall-arch.sh tablegen ~/projects/capstone.git/arch/ARM AArch64 55 ./genall-arch.sh tablegen ~/projects/capstone.git/arch/ARM PowerPC 56 573. Copy generated *.inc files to arch/<arch>/ 58