Commit graph

78 commits

Author SHA1 Message Date
ReinUsesLisp
5ab1ac4f29 shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
lat9nq
5b95114cd4 shader: Address feedback + clang format 2021-07-22 21:51:26 -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
ReinUsesLisp
96da029a74 shader: Implement texture buffers 2021-07-22 21:51:26 -04:00
FernandoS27
0ef887fa6f shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27
e9cffe874f shader: Implement indexed Position and ClipDistances 2021-07-22 21:51:26 -04:00
FernandoS27
1fe6a22cff shader: Implement indexed attributes 2021-07-22 21:51:26 -04:00
ReinUsesLisp
a9ba4fea0c shader: Move recursive SSA rewrite to the heap 2021-07-22 21:51:26 -04:00
ReinUsesLisp
ba2130d5a5 shader: Add subgroup masks 2021-07-22 21:51:26 -04:00
ReinUsesLisp
e9d7f63788 shader: Abstract breadth searches and use the abstraction 2021-07-22 21:51:26 -04:00
ReinUsesLisp
9db035faec shader: Reimplement GetCbufU64 as GetCbufU32x2
It may generate better code on some compilers and it's easier to handle.
2021-07-22 21:51:26 -04:00
ReinUsesLisp
24084a77ca shader: Rework global memory tracking to use breadth-first search 2021-07-22 21:51:26 -04:00
FernandoS27
ffb90d59c6 shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27
741b21715a shader: Address Feedback 2021-07-22 21:51:26 -04:00
FernandoS27
5a6eb31578 shader: Implement SR_LaneId 2021-07-22 21:51:26 -04:00
FernandoS27
5c94fba511 shader: Improve VOTE.VTG stub 2021-07-22 21:51:25 -04:00
FernandoS27
06469da581 shader: Mark SSBOs as written when they are 2021-07-22 21:51:25 -04:00
FernandoS27
68bad0e922 shader: Implement ViewportIndex 2021-07-22 21:51:25 -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
FernandoS27
40ace25859 shader: Implement ClipDistance 2021-07-22 21:51:25 -04:00
FernandoS27
be5936dea2 shader: Implement ImageGradient 2021-07-22 21:51:25 -04:00
FernandoS27
56c8c42cf8 shader,spirv: Implement ImageQueryLod. 2021-07-22 21:51:25 -04:00
FernandoS27
8232c10ed1 shader: Implement TLD 2021-07-22 21:51:25 -04:00
FernandoS27
a8c2a85610 shader: Add PointCoord attribute 2021-07-22 21:51:25 -04:00
ameerj
357a47d944 shader: Add PointSize attribute 2021-07-22 21:51:25 -04:00
ameerj
d5d6d4ce74 shader: Implement FSWZADD 2021-07-22 21:51:25 -04:00
FernandoS27
bf9d512e17 shader: Implement BRX 2021-07-22 21:51:25 -04:00
ReinUsesLisp
6044946495 shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available 2021-07-22 21:51:25 -04:00
ReinUsesLisp
e6b3119910 shader: Better interpolation and disabled attributes support 2021-07-22 21:51:24 -04:00
ReinUsesLisp
63ea42e0d5 shader: Implement front face 2021-07-22 21:51:24 -04:00
ReinUsesLisp
e4ba306750 shader: Implement TXQ and fix FragDepth 2021-07-22 21:51:24 -04:00
ReinUsesLisp
4cd2c1588b shader: Refactor PTP and other minor changes 2021-07-22 21:51:24 -04:00
FernandoS27
ac81f51141 shader: Add IR opcode for ImageFetch 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
ameerj
483439a540 shader: Implement SHFL 2021-07-22 21:51:24 -04:00
ReinUsesLisp
7e8fc3e3c8 shader: Track first bindless argument instead of the instruction itself 2021-07-22 21:51:24 -04:00
FernandoS27
c52b528cf7 shader: Fix F2I 2021-07-22 21:51:24 -04:00
ameerj
0705eff8f6 shader: Implement VOTE 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
FernandoS27
9fe47baf87 shader: Implement F2F 2021-07-22 21:51:24 -04:00
ReinUsesLisp
c05fc07b8f shader: Add missing fp64 usage flags 2021-07-22 21:51:24 -04:00
ReinUsesLisp
9bf9276fe9 shader: Add support for fp16 comparisons and misc fixes 2021-07-22 21:51:24 -04:00
FernandoS27
d1e56df6ff shader: Fix floating point comparison for FP16 2021-07-22 21:51:23 -04:00
ReinUsesLisp
5cd8970e73 spirv: Implement VertexId and InstanceId, refactor code 2021-07-22 21:51:23 -04:00
ReinUsesLisp
6398d03341 shader: Implement I2F 2021-07-22 21:51:23 -04:00
ReinUsesLisp
33090a74dd shader: Add partial rasterizer integration 2021-07-22 21:51:23 -04:00