Commit Graph

74 Commits

Author SHA1 Message Date
Léo Lam a303d6e1b7
tools: Show line number when CSV parsing fails 2021-02-07 15:42:56 +01:00
Léo Lam eaa0f651ef
tools/diff: Rebuild on library changes as well 2021-01-31 22:30:38 +01:00
Léo Lam 5c6cc59214
tools: Update asm-differ and add support for -mw (make, watch) 2021-01-25 14:41:33 +01:00
Léo Lam 5410a56d20
tools: Sort decomp symbols by address
Makes it less tedious to add several decompiled functions to the
function list
2021-01-22 14:20:01 +01:00
Léo Lam 3b996a212c
Track AI class decompilation macro progress 2021-01-21 12:52:56 +01:00
Léo Lam d5a9f2bc82
identify_matching_functions_by_call: Add support for matching one fn 2021-01-01 18:58:39 +01:00
Léo Lam 3dd4331fc9
Add more AI matches 2020-12-31 15:09:42 +01:00
Léo Lam 028ad38b41
Add matching AI functions to CSV 2020-12-31 14:35:21 +01:00
Léo Lam 3869e440e7
Generate AIs 2020-12-31 14:16:09 +01:00
Léo Lam a226027828
Add tool to rename AI virtual functions 2020-12-31 12:46:44 +01:00
Léo Lam 834f44e556
tools: Optimize symbol parsing 2020-12-29 15:04:45 +01:00
Léo Lam 8b41b83228
Add tool to identify matching sead RTTI functions 2020-12-29 14:18:25 +01:00
Léo Lam 81b1ec96bb
Add more missed matches 2020-12-29 01:38:07 +01:00
Léo Lam 27196eb945
Add more missed matches 2020-12-29 01:22:53 +01:00
Léo Lam 56e1c0cfd2
Action: Fix incorrect handling of inherited virtual functions 2020-12-28 23:49:15 +01:00
Léo Lam fcc062ec30
tools: Add unknown call hook to FunctionChecker 2020-12-28 20:51:34 +01:00
Léo Lam 1b89dc7024
tools: Fix base action classes being ignored by the function matcher 2020-12-28 17:20:48 +01:00
Léo Lam 19e0f9a81c
Add more matching functions to the list 2020-12-28 10:54:51 +01:00
Léo Lam 02c583ca4d
Generate actions 2020-12-28 01:26:51 +01:00
Léo Lam d9f6166ed0
tools: Deduplicate AI tool code 2020-12-27 00:59:37 +01:00
Léo Lam 60b457c522
Add script to rename Action virtual functions
Useful to keep function names synchronised between decomp, IDA and the
function CSV
2020-12-26 02:41:01 +01:00
Léo Lam b1d59ba594
tools: Add script to show non-trivial AI class hierarchies 2020-12-25 18:39:03 +01:00
Léo Lam eba2713653
Generate query factories as well 2020-12-23 14:22:24 +01:00
Léo Lam f98d3ee758
Generate stubs for queries 2020-12-22 01:50:49 +01:00
Léo Lam cd6bf1e821
tools/rename_functions_in_ida: Drop support for IDA <7.4 2020-12-18 19:24:35 +01:00
Léo Lam 72e8d72ad2
tools: Remove AI class progress counter
It won't be accurate because the factory functions can and will be
automatically generated.
2020-12-10 00:20:30 +01:00
Léo Lam 3da63099f6
tools: Update asm-differ 2020-12-02 23:02:15 +01:00
Léo Lam a4ea87cb88
tools/util: Ignore unknown data symbols 2020-11-22 20:39:24 +01:00
Léo Lam 601ecd92a1
tools/progress: Add option to print CSV line 2020-11-22 11:54:00 +01:00
Léo Lam 68c9ffeede
tools: Add support for data symbol checking for GOT entries 2020-11-11 17:31:52 +01:00
Léo Lam b53135a885
tools/check: Improve error reporting 2020-11-11 17:00:25 +01:00
Léo Lam 96a8bb104e
tools: Read entire ELF ahead of time to reduce seek/read overhead 2020-11-11 13:54:01 +01:00
Léo Lam 27afd0aa6a
ksys/gdt: Implement Manager increase functions 2020-11-11 12:35:59 +01:00
Léo Lam fc4536b0d3
ksys/gdt: Add reset wrappers to Manager and CommonFlags 2020-11-11 02:04:17 +01:00
Léo Lam b4178ad2b9
tools/check: Only print mismatch details if they exist 2020-11-11 00:58:58 +01:00
Léo Lam d2eab6d2a4
tools: Add IDA script to get rid of function tails 2020-11-11 00:30:24 +01:00
Léo Lam 93b1b17979
Fix matching errors 2020-11-10 21:52:48 +01:00
Léo Lam 7e7a76f926
tools: Print mismatch cause
Makes it easier to identify what's wrong.
2020-11-10 21:35:58 +01:00
Léo Lam dc9b346d7e
tools: Add function call checking 2020-11-10 21:25:45 +01:00
Léo Lam 0a16b78855
data: Add functions that were missed because of IDA's function tail system 2020-11-10 18:48:52 +01:00
Léo Lam 42c9511b11
tools: Update asm-differ 2020-11-10 15:49:55 +01:00
Léo Lam ce5ff17666
tools: Add script to automatically identify matches
Given a list L of functions to identify and a small list of
candidates C, this tool will attempt to automatically identify matches
by checking each function in L against each function in C.

Very slow, but this should work well enough for small lists.
2020-11-09 23:46:57 +01:00
Léo Lam 844db4220c
tools: Do not use a global capstone disassembler instance
Instead, use one instance per function checker.
2020-11-09 21:23:23 +01:00
Léo Lam 5d09d99b1b
tools: Deduplicate code 2020-11-09 19:16:37 +01:00
Léo Lam d5bdc23ef5
ksys/gdt: Fix array getters/setters being generated incorrectly
They were treated as non-array flags.
2020-11-09 17:30:51 +01:00
Léo Lam 607389e86e
ksys/gdt: Fix several issues in the gdtCommonFlags generation script 2020-11-09 16:35:35 +01:00
Léo Lam 441b98a31e
ksys/gdt: Add getFlagGenericBool/S32 2020-11-09 16:22:59 +01:00
Léo Lam f2927c1de8
ksys/gdt: Do not inline gdtCommonFlagsUtils functions 2020-11-09 16:02:22 +01:00
Léo Lam f242ce69ee
ksys/gdt: Add more flag utilities 2020-11-09 15:40:30 +01:00
Léo Lam d87343fd8d
tools: Add a script to print vtables 2020-11-08 22:45:23 +01:00