Commit Graph

18668 Commits

Author SHA1 Message Date
ReinUsesLisp ece2e64825 spirv: Move phi node patching to a separate function 2021-07-22 21:51:27 -04:00
ReinUsesLisp 480ce24b7e spirv: Guard against typeless image reads on unsupported devices 2021-07-22 21:51:27 -04:00
ReinUsesLisp 8ec58e16b2 shader: Move LaneId to the warp emission file and fix AMD 2021-07-22 21:51:27 -04:00
ReinUsesLisp 7f8b92cc2d vk_rasterizer: Request outside render pass execution context for compute 2021-07-22 21:51:27 -04:00
ReinUsesLisp 9a49eed4d6 pipeline_helper: Add missing [[maybe_unused]] 2021-07-22 21:51:27 -04:00
ReinUsesLisp 1e5255de49 spirv: Fix forward declarations on phi nodes 2021-07-22 21:51:27 -04:00
ReinUsesLisp a26f760eba shader: Mark ImageWrite with side effects 2021-07-22 21:51:27 -04:00
FernandoS27 ee8beff168 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 99cfd73ba7 shader: Remove outdated comment in F2I 2021-07-22 21:51:27 -04:00
ReinUsesLisp 5ab1ac4f29 shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
ReinUsesLisp 577efc5f9f shader: Fix Windows build issues 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 157952f809 shader: Fix FCMP immediate variant 2021-07-22 21:51:26 -04:00
ReinUsesLisp 7f75818298 shader: Fix dangling labels 2021-07-22 21:51:26 -04:00
ReinUsesLisp 3e6cb6362d shader: Interact texture buffers with buffer cache 2021-07-22 21:51:26 -04:00
ReinUsesLisp d349f8ff61 shader: Fix F2I 2021-07-22 21:51:26 -04:00
ReinUsesLisp d07e15fcf6 shader: Fix TextureGrad 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
FernandoS27 a7f5231caf shader: Implement AL2P 2021-07-22 21:51:26 -04:00
FernandoS27 c63d79cf65 shader: Fix BRX tracking 2021-07-22 21:51:26 -04:00
ReinUsesLisp 459057f8d4 vk_pipeline_cache: Fix num of pipeline workers on weird platforms 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
FernandoS27 3fc7d20fce shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware 2021-07-22 21:51:26 -04:00
ReinUsesLisp 64372edffb shader: Fix splits on blocks using indirect branches 2021-07-22 21:51:26 -04:00
ReinUsesLisp e2d1e21532 shader: Eliminate orphan blocks more efficiently 2021-07-22 21:51:26 -04:00
ReinUsesLisp ba2130d5a5 shader: Add subgroup masks 2021-07-22 21:51:26 -04:00
ReinUsesLisp b580c1e208 shader: Implement BAR and fix memory barriers 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 4c15b3b91a vk_compute_pass: Fix compute passes 2021-07-22 21:51:26 -04:00
ReinUsesLisp ee52ec7e04 shader: Remove atomic flags and use mutex + cond variable for pipelines 2021-07-22 21:51:26 -04:00
ReinUsesLisp a2536f0b42 shader: Remove unused header in VOTE 2021-07-22 21:51:26 -04:00
ReinUsesLisp 9008061b99 vk_pipeline_cache: Remove unnecesary scope in pipeline cache locking 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
ReinUsesLisp b1335585bf shader: Fix fp16 merge when using native fp16 2021-07-22 21:51:26 -04:00
ReinUsesLisp d1b84c7828 shader: Fix FADD32I 2021-07-22 21:51:26 -04:00
FernandoS27 fe14898573 shader: Fix undetected bug from review 2021-07-22 21:51:26 -04:00
FernandoS27 ffb90d59c6 shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27 df48b3b32a shader: "Implement" NOP 2021-07-22 21:51:26 -04:00
FernandoS27 98c08894d9 vk_pipeline_cache: Small fixes to the pipeline cache 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 e98900a16b shader: Fix shared memory on cool drivers 2021-07-22 21:51:26 -04:00
FernandoS27 a9f79b6553 shader: Implement MEMBAR 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