ReinUsesLisp
ca3e927e35
shader: Fix FSwizzleAdd folding when going through phi nodes
2021-07-22 21:51:34 -04:00
ReinUsesLisp
03f6d424ce
glasm: Rework control flow introducing a syntax list
...
This commit regresses VertexA shaders, their transformation pass has to
be adapted to the new control flow.
2021-07-22 21:51:31 -04:00
ameerj
90ff800962
shader: Fix BFE s32 undefined check
...
Our unit tests were hitting this exception.
2021-07-22 21:51:29 -04:00
ReinUsesLisp
1f54f1ff26
shader: Fix error checking in bitfieldExtract and implement bitfieldInsert folding
2021-07-22 21:51:29 -04:00
ReinUsesLisp
6236b611cf
shader: Move microinstruction header to the value header
2021-07-22 21:51:28 -04:00
ReinUsesLisp
5c187201ec
shader: Add constant propagation for arithmetic right shifts
2021-07-22 21:51:28 -04:00
FernandoS27
2f01c7fb62
shader: Add coarse derivatives
2021-07-22 21:51:28 -04:00
FernandoS27
b1e325f317
shader: Implement fine derivates constant propagation
2021-07-22 21:51:28 -04:00
ReinUsesLisp
deba5c7666
shader: Add constant propagation for *&^| binary operations
2021-07-22 21:51:27 -04:00
lat9nq
a4e7a41e7f
shader_recompiler,video_core: Cleanup some GCC and Clang errors
...
Mostly fixing unused *, implicit conversion, braced scalar init,
fpermissive, and some others.
Some Clang errors likely remain in video_core, and std::ranges is still
a pertinent issue in shader_recompiler
shader_recompiler: cmake: Force bracket depth to 1024 on Clang
Increases the maximum fold expression depth
thread_worker: Include condition_variable
Don't use list initializers in control flow
Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
2021-07-22 21:51:26 -04:00
FernandoS27
741b21715a
shader: Address Feedback
2021-07-22 21:51:26 -04:00
FernandoS27
82698ecb41
shader: Fold composite extract
2021-07-22 21:51:25 -04:00
FernandoS27
5b74fe36ec
shader: Fold comparisons and Pack/Unpack16
2021-07-22 21:51:25 -04:00
ReinUsesLisp
6df3c1a64e
shader: Fix constant propagation to use reverse post order
2021-07-22 21:51:25 -04:00
ReinUsesLisp
4cd2c1588b
shader: Refactor PTP and other minor changes
2021-07-22 21:51:24 -04:00
FernandoS27
f573d3642e
shader: Implement TLD4.PTP
2021-07-22 21:51:24 -04:00
FernandoS27
d4974db16f
shader: Implement TLD4 and TLD4_B
2021-07-22 21:51:24 -04:00
ReinUsesLisp
cdbb207953
shader: Fold interpolation multiplications
2021-07-22 21:51:24 -04:00
ameerj
1a8e8498a4
shader: Implement DMNMX, DSET, DSETP
2021-07-22 21:51:24 -04:00
ReinUsesLisp
db2e9d64aa
shader: Implement CAL inlining function calls
2021-07-22 21:51:23 -04:00
ReinUsesLisp
83c7592d3d
shader: Partial implementation of LDC
2021-07-22 21:51:23 -04:00
ReinUsesLisp
dda21fd317
shader: FMUL, select, RRO, and MUFU fixes
2021-07-22 21:51:22 -04:00
ReinUsesLisp
a2fe90fa60
spirv: Add lower fp16 to fp32 pass
2021-07-22 21:51:22 -04:00
ReinUsesLisp
2bb0069e4e
shader: Add XMAD multiplication folding optimization
2021-07-22 21:51:22 -04:00
ReinUsesLisp
605783f828
spirv: Initial bindings support
2021-07-22 21:51:22 -04:00
ReinUsesLisp
76a3a2510f
shader: Misc fixes
2021-07-22 21:51:22 -04:00
ReinUsesLisp
c4d75e4b78
shader: Initial implementation of an AST
2021-07-22 21:51:22 -04:00
ReinUsesLisp
8e9207253c
shader: Better constant folding
2021-07-22 21:51:22 -04:00
ReinUsesLisp
f5b3324bca
shader: Make typed IR
2021-07-22 21:51:21 -04:00
ReinUsesLisp
37fc39de17
shader: Constant propagation and global memory to storage buffer
2021-07-22 21:51:21 -04:00