Commit graph

1433 commits

Author SHA1 Message Date
Asuka
c3ee72619e adjust some rules 2022-06-07 10:51:22 +08:00
Asuka
77415731b1 fix vop2 decode for vop3b instructions 2022-06-07 10:44:57 +08:00
Asuka
1a695e2fd8 restruct some code 2022-06-07 09:09:27 +08:00
Asuka
4000a8bd5e add some comments on debug printf 2022-06-07 03:51:28 +08:00
Asuka
ab0673b996 fix block create and merge bugs 2022-06-07 03:11:32 +08:00
Asuka
8adc4cbf5a fix block merge at end token 2022-06-07 02:04:39 +08:00
Asuka
4e44d11080 implement token compiling 2022-06-06 17:46:12 +08:00
Asuka
352f61cb07 add some comments 2022-06-05 09:11:09 +08:00
Asuka
9c18358548 remove some divergence condition when not neeeded
also fix some divergent action detect
2022-06-05 08:58:47 +08:00
Asuka
15b76dd7c7 optimize token find 2022-06-05 07:53:30 +08:00
Asuka
881f125929 fix code token move construct 2022-06-05 06:40:21 +08:00
Asuka
3925fa5a19 introduce branch divergence 2022-06-05 06:20:51 +08:00
Asuka
2871a004cb remove condition token 2022-06-05 04:16:15 +08:00
Asuka
a6b3f37e93 shrink code token to only include code list 2022-06-05 02:32:56 +08:00
Asuka
29437e9e3c ignore 2022-06-04 11:00:17 +08:00
Asuka
d160d119c9 ignore 2022-06-04 10:58:48 +08:00
Asuka
e0b4619eef add some optimizations
removeRedundantLoops
removeRedundantBlocks
2022-06-04 10:22:41 +08:00
Asuka
b662ea797d assert on irreducible cfg 2022-06-04 08:18:49 +08:00
Asuka
347bfa7f2b finish goto eliminator 2022-06-04 06:49:55 +08:00
Asuka
7a4606e1be part of goto eliminator 2022-06-03 07:56:06 +08:00
Asuka
8821b9967f well, recover successor order again
this makes the code has best readability
2022-06-02 20:35:01 +08:00
Asuka
d911c7b690 reverse successors order, make code more readable 2022-06-02 20:30:35 +08:00
Asuka
645e8eeb19 inverse successors order
so that the final result is more like the original source code
2022-06-02 20:02:46 +08:00
Asuka
b3eabb9737 recover stackifier, remove relooper 2022-06-02 11:03:39 +08:00
Asuka
113768cd34 run optimize pass 2022-06-02 10:36:14 +08:00
Asuka
2998ca0f31 add gpcs4 structures 2022-06-01 23:30:01 +08:00
Asuka
361398242c remove stackifier 2022-06-01 12:00:15 +08:00
Asuka
951497cf19 add binaryen build files 2022-06-01 11:34:43 +08:00
Asuka
d8a18b7fe6 remove useless build options for us 2022-06-01 10:21:20 +08:00
Asuka
39430ed686 add binaryen 2022-06-01 09:53:46 +08:00
Asuka
08fe89fa52 part of goto eliminator 2022-06-01 01:45:38 +08:00
Asuka
962c483abf token optimize
removeRedundantNesting
adjustLoopEnds
2022-05-30 12:59:59 +08:00
Asuka
fd74750cb9 refine token getIterator 2022-05-30 09:18:50 +08:00
Asuka
2d7be6de97 add fmt library 2022-05-30 06:05:41 +08:00
Asuka
92b239c624 add some optimizations and fall back to C++17 2022-05-30 03:16:39 +08:00
Asuka
ad3c3972b1 ignore 2022-05-29 04:00:54 +08:00
Asuka
5b6e0331ea fix delayed token 2022-05-29 01:55:54 +08:00
Asuka
90557e1258 fix token list build bug
now it works
2022-05-29 01:20:13 +08:00
Asuka
808f28a10f borrow token builder 2022-05-28 05:45:44 +08:00
Asuka
4c44139485 iimplement GcnDominatorTree 2022-05-27 17:29:05 +08:00
Asuka
fedf74478b add some boost files 2022-05-27 15:28:48 +08:00
Asuka
a9afeefc83 introduce dominator tree 2022-05-27 15:26:15 +08:00
Asuka
5a4b08868f introduce loop info 2022-05-27 03:01:26 +08:00
Asuka
25498bc283 introduce object bank 2022-05-26 01:11:21 +08:00
Asuka
62dfd3d861 introduce shader cfg 2022-05-25 01:51:41 +08:00
Asuka
de4b344ab0 fix boost intellisense 2022-05-24 22:38:48 +08:00
Asuka
e3b33fd8d7 add boost bgl 2022-05-24 22:38:30 +08:00
Asuka
05064bd24a fix lane implementation 2022-05-18 15:35:32 +08:00
Asuka
743957ded1 fix v_cmp instruction a bit
still have problems
2022-05-18 00:48:42 +08:00
Asuka
7faa67d91b some debug code 2022-05-17 00:18:23 +08:00