Commit Graph

18825 Commits

Author SHA1 Message Date
ReinUsesLisp
415c7e46ed shader: Simplify FLO and throw on CC 2021-07-22 21:51:27 -04:00
ReinUsesLisp
dfd5341d71 shader: Mark blocks with no end branch as unreachable 2021-07-22 21:51:27 -04:00
ReinUsesLisp
2ed80f6b1e shader: Implement LOP CC 2021-07-22 21:51:27 -04:00
ReinUsesLisp
5c61e860e4 shader: Implement SR_THREAD_KILL 2021-07-22 21:51:27 -04:00
ReinUsesLisp
c9337a4ae4 shader: Apply sign bit in FCMP (imm) 2021-07-22 21:51:27 -04:00
ameerj
3db2b3effa shader: Implement ATOM/S and RED 2021-07-22 21:51:27 -04:00
ReinUsesLisp
479ca00071 nsight_aftermath_tracker: Report used shaders to Nsight Aftermath 2021-07-22 21:51:27 -04:00
ReinUsesLisp
106764a6d5 spirv: Move phi node patching to a separate function 2021-07-22 21:51:27 -04:00
ReinUsesLisp
ab543f1821 spirv: Guard against typeless image reads on unsupported devices 2021-07-22 21:51:27 -04:00
ReinUsesLisp
9280cd649a shader: Move LaneId to the warp emission file and fix AMD 2021-07-22 21:51:27 -04:00
ReinUsesLisp
1030b612a3 vk_rasterizer: Request outside render pass execution context for compute 2021-07-22 21:51:27 -04:00
ReinUsesLisp
e5e79648cf pipeline_helper: Add missing [[maybe_unused]] 2021-07-22 21:51:27 -04:00
ReinUsesLisp
2e71e4c5c0 spirv: Fix forward declarations on phi nodes 2021-07-22 21:51:27 -04:00
ReinUsesLisp
d404b871d5 shader: Mark ImageWrite with side effects 2021-07-22 21:51:27 -04:00
FernandoS27
1be6705408 shader: Implement CC for ISET, FSET, PSET, CSET, and DSET
Throw when other instructions are missing CC.
2021-07-22 21:51:27 -04:00
ReinUsesLisp
8cea39b5a6 shader: Remove outdated comment in F2I 2021-07-22 21:51:27 -04:00
ReinUsesLisp
7cb2ab3585 shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
ReinUsesLisp
094da34456 shader: Fix Windows build issues 2021-07-22 21:51:26 -04:00
lat9nq
5bfcafa0a2 shader: Address feedback + clang format 2021-07-22 21:51:26 -04:00
lat9nq
0bb85f6a75 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
5cd3d00167 shader: Fix FCMP immediate variant 2021-07-22 21:51:26 -04:00
ReinUsesLisp
233e39bb7b shader: Fix dangling labels 2021-07-22 21:51:26 -04:00
ReinUsesLisp
e9a91bc5cc shader: Interact texture buffers with buffer cache 2021-07-22 21:51:26 -04:00
ReinUsesLisp
56b92bd89c shader: Fix F2I 2021-07-22 21:51:26 -04:00
ReinUsesLisp
ef88552224 shader: Fix TextureGrad 2021-07-22 21:51:26 -04:00
ReinUsesLisp
1f3eb601ac shader: Implement texture buffers 2021-07-22 21:51:26 -04:00
FernandoS27
dcaf0e9150 shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27
73cb17f41b shader: Implement indexed Position and ClipDistances 2021-07-22 21:51:26 -04:00
FernandoS27
1d51803169 shader: Implement indexed attributes 2021-07-22 21:51:26 -04:00
FernandoS27
0df7e509db shader: Implement AL2P 2021-07-22 21:51:26 -04:00
FernandoS27
20ba0ea0a9 shader: Fix BRX tracking 2021-07-22 21:51:26 -04:00
ReinUsesLisp
bfeeb23ddc vk_pipeline_cache: Fix num of pipeline workers on weird platforms 2021-07-22 21:51:26 -04:00
ReinUsesLisp
417fb5d385 shader: Move recursive SSA rewrite to the heap 2021-07-22 21:51:26 -04:00
FernandoS27
72daa2a039 shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware 2021-07-22 21:51:26 -04:00
ReinUsesLisp
9e6fe430bd shader: Fix splits on blocks using indirect branches 2021-07-22 21:51:26 -04:00
ReinUsesLisp
ffca21487f shader: Eliminate orphan blocks more efficiently 2021-07-22 21:51:26 -04:00
ReinUsesLisp
da6cf2632c shader: Add subgroup masks 2021-07-22 21:51:26 -04:00
ReinUsesLisp
fc93bc2abd shader: Implement BAR and fix memory barriers 2021-07-22 21:51:26 -04:00
ReinUsesLisp
85795de99f shader: Abstract breadth searches and use the abstraction 2021-07-22 21:51:26 -04:00
ReinUsesLisp
3f594dd86b 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
5b3c6d59c2 vk_compute_pass: Fix compute passes 2021-07-22 21:51:26 -04:00
ReinUsesLisp
5ed68e83db shader: Remove atomic flags and use mutex + cond variable for pipelines 2021-07-22 21:51:26 -04:00
ReinUsesLisp
0b26f2b90e shader: Remove unused header in VOTE 2021-07-22 21:51:26 -04:00
ReinUsesLisp
6ff2e9ba09 vk_pipeline_cache: Remove unnecesary scope in pipeline cache locking 2021-07-22 21:51:26 -04:00
ReinUsesLisp
9a342f5605 shader: Rework global memory tracking to use breadth-first search 2021-07-22 21:51:26 -04:00
ReinUsesLisp
c4aab5c40e shader: Fix fp16 merge when using native fp16 2021-07-22 21:51:26 -04:00
ReinUsesLisp
ca7ebdc471 shader: Fix FADD32I 2021-07-22 21:51:26 -04:00
FernandoS27
e7700aad18 shader: Fix undetected bug from review 2021-07-22 21:51:26 -04:00
FernandoS27
ed6a1b1a3d shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27
80df541a08 shader: "Implement" NOP 2021-07-22 21:51:26 -04:00