Commit graph

16 commits

Author SHA1 Message Date
doctashay 9410e01aaf
Implement logging features for decompiler (#78)
* Begin spdlog integration for decompiler

* Replace old prints with spdlog equivalents

* clang-format

* Fixes

* Log output to /logs/decompiler.log.

The console now prints that the disassembly has begun and it may take a few minutes to complete. This will reduce the amount of verbose logging output directly to a console stream.

* Update .gitignore

Ignore decompiler output for now

* Resolve more issues

Fixed percentage printing and various other issues

* Fixed stuff I broke (sorry)

* Fix more broke stuff
2020-10-15 20:59:30 -04:00
water b1759dbd13 Merge branch 'doctashay-logging2' 2020-10-11 19:12:14 -04:00
water111 1e1b5e7c00
Make decompiler more successful (#66)
* w/early-return-and-break

* more edge cases

* all instructions in non asm functions now convert to ir

* cleanup

* implement rarely used control flow in IR

* clang format
2020-10-11 18:27:44 -04:00
doctashay 8d9b87cfed Cleanup PR 2020-10-08 09:16:34 -06:00
water111 a64dd6c90b
Add CFG to IR decompiler pass (#60)
* add some more cfg ir stuff

* add cond with else

* add type of recognition

* add cond to compare conversion

* finally all conds are passing

* started sc recognize, but ash min and max should be recognized first

* fix ash showing up as sc

* add abs

* fix merge issues

* try building goos with optimizations on

* sc mostly working, still need to fix right aligned nesting

* ands and ors are converting correctly now

* clean up
2020-10-06 18:14:27 -04:00
water 387cce962d sc mostly working, still need to fix right aligned nesting 2020-10-05 21:38:45 -04:00
water d464ad549b Merge branch 'master' of https://github.com/water111/jak-project into w/cfg_2_ir 2020-10-04 17:23:07 -04:00
water111 b102d22dd9
Replace Form with goos::Object (#64)
* add pretty printing to goos form

* temp

* fix format

* fix format

* fix windows build

* again

* windows

* Revert "windows"

This reverts commit b7d448e733.

* windows again

* give up and just add a getter function
2020-10-04 17:08:10 -04:00
water f70ae6dad3 add abs 2020-10-04 11:37:47 -04:00
water 4b90634e93 fix ash showing up as sc 2020-10-04 10:44:28 -04:00
water e195e2b299 started sc recognize, but ash min and max should be recognized first 2020-10-03 21:30:58 -04:00
water 0fbffcd409 add cond to compare conversion 2020-10-03 18:36:02 -04:00
water 0094594f69 add cond with else 2020-10-03 09:32:26 -04:00
water 072283e442 add some more cfg ir stuff 2020-10-02 16:21:25 -04:00
water111 376c273845
Add decompiler IR, basic operations, all-types file (#57)
* framework for basic op

* started IR framework

* check in type info file

* add some basic operations to the first pass ir conversion

* use a single condition system

* add more basic op decoding

* more ir
2020-09-29 20:24:15 -04:00
water c3aff47886 add decompiler 2020-08-22 23:30:17 -04:00