mirror of https://github.com/zeldaret/botw.git
![]() Reimplements tools/check.py in a faster language (picked Rust to learn and play with the language and because installing dependencies is way easier than with C++) On my machine, a full run takes ~160ms with this new implementation and 49s (!) with check.py. The main performance improvements come from not having to use pyelftools and the Python bindings of Capstone (which are both insanely slow and perhaps less efficient than they could be). Function checking is now also performed in parallel rather than sequentially for yet another significant performance boost. Other tweaks include editing Capstone and the bindings to avoid computing expensive things that we don't actually need and avoiding dynamic memory allocations in hot paths as much as possible. check.py will be removed after the setup instructions are updated. |
||
---|---|---|
.. | ||
asm-differ@7cd33c4e7f | ||
nx-decomp-tools-binaries@011c369bc4 | ||
util | ||
viking | ||
add_missing_functions.py | ||
ai_generate_actions.py | ||
ai_generate_ais.py | ||
ai_generate_queries.py | ||
ai_identify_matching_stubs.py | ||
ai_progress.py | ||
ai_show_nontrivial_hierarchies.py | ||
check.py | ||
diff.py | ||
diff_settings.py | ||
generate_bgparamlist_struct.py | ||
generate_gdt_common_flags.py | ||
ida_ai_rename_action_vfns.py | ||
ida_ai_rename_ai_vfns.py | ||
ida_generate_gdt_common_flags_list.py | ||
ida_remove_function_tails.py | ||
identify_matching_functions.py | ||
identify_matching_functions_by_call.py | ||
identify_matching_rtti_functions.py | ||
print_decomp_symbols.py | ||
progress.py | ||
rename_functions_in_ida.py | ||
setup.py | ||
show_vtable.py | ||
suppress-gdt-flags-builds.sh | ||
translate_ida_types.py |