water111
b58d9ec65d
support vector 4 ( #803 )
2021-09-01 10:02:20 -04:00
water111
11e11d2c04
[decompiler] Several small fixes ( #775 )
...
* fix assorted bugs
* stricter return types
* only look for functions in code files
2021-08-19 20:35:12 -04:00
water
ebc580822e
clean up
2021-08-12 19:03:33 -04:00
water
66f95d3c8a
text working with no textures
2021-08-07 21:16:44 -04:00
water111
95366d21df
Get started on collide-func and clean up log forms in decompiler ( #713 )
...
* wip
* temp
* temp2
* first part of log macros
* more log macros
* logtest
* clean up
* dont initialize game info because we are missing stuff
2021-07-23 20:51:26 -04:00
water111
551a9c4955
[decompiler] ASM Branching Support ( #677 )
...
* basic example working in geometry
* before updating offline'
* clean up
* temp
* progress
2021-07-05 16:07:07 -04:00
water111
784cd5debb
[decomp] get started on game info ( #674 )
...
* temp
* menu text
* wip
* recognize handle to process
* more
2021-07-03 16:18:41 -04:00
water111
a6d5c4eda3
[decompiler] clean up vector detection and add vector float product detection ( #638 )
...
* change
* recognize vector float product and update tests
2021-06-27 17:24:35 -04:00
water111
bc87c4426f
[decompiler] Fix deref bug and add some more new type pass stuff ( #606 )
...
* add copy on write and clean up some register stuff
* fix bug in multiple field lookup
* format
2021-06-18 21:10:00 -04:00
water111
92afd62e2c
[decompiler] fix missing casts issue ( #573 )
...
* fix casts issue
* fix bug
* one last small fix
2021-06-09 21:35:13 -04:00
ManDude
fef9b139d7
Force-enable assert on release mode Windows build ( #440 )
2021-05-10 23:03:56 -04:00
water111
0a6602e320
[Decompile] connect, text-h, settings-h, capture, memory-usage-h ( #410 )
...
* decompile stuff
* temp
* temp2
* fix
* temp
* preparing for merge
* working
* fix stupid format
* fix codacy
2021-05-05 17:38:16 -04:00
water111
3d2ca71fe3
[Decompile] pad and gs ( #389 )
...
* update stuff
* gs reference added
* update config
2021-04-26 21:40:08 -04:00
water111
2002db359a
[Decompiler] WIP: Stack Spills ( #382 )
...
* set up types
* cleaned up type analysis and got things working through atomic ops
* expression working, need types
* improved types and names
* getting close
* finish up dma-disasm
* fix
2021-04-25 14:48:54 -04:00
water111
7737817ac7
[Decomp] Fix bitfields in dma-bucket ( #367 )
...
* fix bitfields in dma-bucket
* fix dma-bucket
2021-04-18 12:08:08 -04:00
water111
9867155e7c
[Decompiler] More support for bitfields ( #363 )
...
* temp
* initial support for dynamic bitfields
* some more progress on display
* dma-buffer good
* small fixes
2021-04-17 18:35:50 -04:00
water111
e5f0fecf17
[Decompiler] bitfield support and clean up of DMA ( #350 )
...
* get to vif
* support basic bitfield access
* make bitfields in dma work
* clean up dma
* fix merge conflict
2021-04-11 16:07:01 -04:00
water111
64c35ca453
[Decompiler] Stack Variables ( #338 )
...
* clean up type analysis
* get everything set up
* basic stack variables working
* partial load fix
* most of matrix
* add offline tests
2021-03-27 15:18:59 -04:00
water111
7fac11ddf5
Support 128-bit variables ( #336 )
...
* wip 128 bit support
* add a few more files to offline test
2021-03-25 16:02:48 -04:00
water111
4262145c99
fix set! missing typecast ( #324 )
2021-03-17 19:26:35 -04:00
water111
814480f9e5
[Decompiler] Replace type hint system and improve variable types. ( #320 )
...
* get gkernel and gkernel-h at least somewhat working in the offline tests
* strip comments from json
* switch hints to casts. online tests passing, offline passing up to gkernel
* variable retyping is added
* fix up casts in lets
* update
2021-03-13 16:10:39 -05:00
water111
9074a35b9b
[Decompiler] Fix printing of lets ( #314 )
...
* fix let prints and windows warnings
* missing include for windows
* windows again
2021-03-07 12:01:59 -05:00
Tyler Wilding
f123bf368a
decomp - vector.gc - Decompile vector.gc ( #289 )
...
* temp: commit what i have so far
decomp: Fix nonempty_intersection impl for MSVC Debugging use-case
docs: Add info on getting ASan builds running on Visual Studio w/o exceptions
* decomp: initial rlet implementation
* decomp: cleanup pass of vector-rewrite stage
* decomp: Commit in-progress vector.gc, shortcomings are TODO commented
* decomp: More cleanup, rename from being `vector` instr specific
Fundamentally, this process can be used for re-writing ANY inline-asm instruction
* decomp: Support 4th arg ACC instructions
* decomp: Final pass of vector.gc before implementing last instructions
* decomp: Better warnings when hitting unimplemented instructs
* compiler: Implement inverse-sqrt and mov.vf
* decomp: Final manual pass over vector.gc, documented gaps
* decomp: Finish decompiling what currently is possible in vector.gc
* decomp: Fix Variable -> RegisterAccess conflict
* decomp: codacy lint
* Address review feedback
* Address feedback part 2
* Resolve build failures
2021-03-06 10:46:26 -05:00
water111
d9aa535dd0
[Decompiler] Fix issues in gcommon ( #305 )
...
* fix several issues
* small fixes
2021-03-03 20:52:25 -05:00
water111
c15c163333
[Decomp] Add SSA based check for expression building ( #292 )
...
* wip
* tests pass
* fix warnings
2021-02-28 12:38:29 -05:00
water111
4b1b7e9507
[Decompile] DMA and similar ( #275 )
...
* add some dma
* clean up
* add progress script and make codacy happy
2021-02-21 11:02:28 -05:00
water111
8775840265
[Decomp] Decompile engine math library types ( #272 )
...
* decompile some stuff
* fix typo
* playing around with trigonometry
* more progress on trig
* more trig
* comments and small fixes
* finish trig
2021-02-20 11:42:46 -05:00
water111
aa9bcd07f4
[Decompiler] Flag uses of vf registers for values outside of functions ( #263 )
...
* clean up warning system
* add bad dependency warning
* add q and acc
2021-02-15 11:55:10 -05:00
water111
14d602c594
[Decompiler] More fixes for gkernel ( #261 )
...
* fix bugs and more address of support
* support for zero checks
* fix tests
2021-02-14 18:50:45 -05:00
water111
d01ecf0a9e
[Decompiler] Support virtual method calls ( #260 )
...
* support virtual methods kinda
* more
2021-02-13 16:35:27 -05:00
water111
126dfc1c45
[Decompiler] Misc fixes for gkernel/math ( #257 )
...
* more cases
* some work on math and floating point stuff
* some decompiling for fun
2021-02-13 11:32:52 -05:00
water111
f8b63a3f92
[Decompiler] Put likely delay slots in their own block ( #237 )
...
* first part of fix
* atomic op conversion fix
* update tests
* oops
2021-02-06 17:04:03 -05:00
water111
a870bb53e4
[Decompiler] Expression 5 ( #218 )
...
* new method of inline-array-class
* up to new array
* wip side effect stuff
* prepare for pop barrier stuff
* add pop barrier
* add local vars hack to compiler
* fix bug, make sort work
* add test for array
* bug fixes
* another bug fix
* refactoring env variable print for casts
* more tweaks
* updates
* final cleanup
* codacy fixes
2021-02-01 20:41:37 -05:00
water111
b59e33c005
[Decompiler] Expressions (Part 3) ( #213 )
...
* before inserting bonus instruction
* first part of refactor for return values
* find parent method working
2021-01-25 22:08:58 -05:00
water111
2f722e6379
[Decompiler] Expression Building ( #211 )
...
* up to ash
* add more expressions
* fix some return variable usage nonsense
* bfloat print working
* basic-type working
* type working, fix decompiler on all files
* clang format
2021-01-24 16:39:15 -05:00
water111
4a97e15b40
[Decompiler] Remove most IR1 Analysis ( #207 )
...
* temp
* remove some of ir1
2021-01-22 22:03:58 -05:00
water111
679b17ae6f
[Decompiler] Get used variables, handle function calls better, and minor cleanup ( #205 )
...
* small fixes, implement getting used variables
* improve printing of variables
* missing include
2021-01-19 21:45:17 -05:00
water111
d6bbca5620
[Decompiler] IR2 form implementation ( #197 )
...
* begin ir2 form implementation
* temp
* small fixes
* fix test
2021-01-17 18:08:18 -05:00
water111
1071ff6003
[Decompiler] WIP Conversion to SSA and variable naming ( #195 )
...
* begin ssa algorithm
* ssa based splitting appears to work
* add merge pass
* finish basic implementation
* better output
* bug fix
2021-01-16 10:54:09 -05:00
water111
fe693b5da2
[Decompiler] Implement IR2 Type Analysis Pass ( #193 )
...
* type analysis setup
* more framework
* update printing
* wip
* add type analysis pass
* fix tests
2021-01-10 20:46:49 -05:00
Tyler Wilding
e63abb0ea1
Improved test namings for multi-operations, added new ones, still a few failures ( #190 )
...
* Improved test namings for multi-operations, added new ones, still a few failures
* Review - Modifications to get all tests passing
2021-01-10 15:46:46 -05:00
water111
2901f4a99e
[Decompiler] Write IR2 to file and implement some Atomic Op conversions ( #187 )
2021-01-09 20:01:48 -05:00
water111
5093b97cda
[Decompiler - New IR] Add AtomicOp ( #181 )
...
* wip decompiler ir
* add AtomicOp stuff
* fix windows build and warnings
* add instruction parser
* include
* make minilzo shared
* odr fix
* a
* fix merge conflicts
* move decompiler into namespace
* update the code coverage to include the decompiler
* add demo test
* add register use test to example test
2021-01-06 20:04:15 -05:00