Commit Graph

71 Commits

Author SHA1 Message Date
ReinUsesLisp 6d540c6f2e shader: Fix memory barriers 2021-07-22 21:51:28 -04:00
ReinUsesLisp ad1507b4a5 shader: Implement SampleMask 2021-07-22 21:51:28 -04:00
ReinUsesLisp cc96469019 shader: Implement PIXLD.MY_INDEX 2021-07-22 21:51:28 -04:00
ReinUsesLisp 38908d0f7e shader: Implement tessellation shaders, polygon mode and invocation id 2021-07-22 21:51:27 -04:00
ReinUsesLisp 4b32692423 shader: Implement geometry shaders 2021-07-22 21:51:27 -04:00
ReinUsesLisp 40948b18ac shader: Implement OUT 2021-07-22 21:51:27 -04:00
ReinUsesLisp 879fb08101 shader: Implement SR_THREAD_KILL 2021-07-22 21:51:27 -04:00
ameerj 62c3bef607 shader: Implement ATOM/S and RED 2021-07-22 21:51:27 -04:00
ReinUsesLisp 5ab1ac4f29 shader: Implement SULD and SUST 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
FernandoS27 0ef887fa6f shader: Address feedback 2021-07-22 21:51:26 -04:00
FernandoS27 1fe6a22cff shader: Implement indexed attributes 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 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
FernandoS27 fe14898573 shader: Fix undetected bug from review 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 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 1534a99e35 shader: Stub VOTE.VTG 2021-07-22 21:51:25 -04:00
FernandoS27 be5936dea2 shader: Implement ImageGradient 2021-07-22 21:51:25 -04:00
FernandoS27 d523cd563c shader: Implement TMML partially 2021-07-22 21:51:25 -04:00
FernandoS27 56c8c42cf8 shader,spirv: Implement ImageQueryLod. 2021-07-22 21:51:25 -04:00
ReinUsesLisp d0d339b398 shader: Add missing new lines 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
ameerj f3ec28dc23 shader: Implement I2I SAT 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
ameerj 528b7b2d63 shader: Implement VMAD, VMNMX, VSETP 2021-07-22 21:51:24 -04:00
ReinUsesLisp 0b338e3102 shader: Fix structured control flow on KIL instructions
This could potentially leave unvisited blocks, leading to illegal phi
nodes.
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
FernandoS27 c52b528cf7 shader: Fix F2I 2021-07-22 21:51:24 -04:00
ReinUsesLisp 24bc872af3 shader: Implement NDC [-1, 1], attribute types and default varying initialization 2021-07-22 21:51:24 -04:00
ameerj 0705eff8f6 shader: Implement VOTE 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 9bf9276fe9 shader: Add support for fp16 comparisons and misc fixes 2021-07-22 21:51:24 -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
ameerj 3c7ec88397 shader: Implement CSET and CSETP 2021-07-22 21:51:23 -04:00
ReinUsesLisp 1842c601ce shader: Implement TEXS 2021-07-22 21:51:23 -04:00
ameerj f8f0eea4eb shader: Implement FMNMX
And add a const in FCMP
2021-07-22 21:51:23 -04:00
ameerj ab928b72c0 shader: Implement FCMP
still need to configure some settings for NV denorm flush and intel NaN
2021-07-22 21:51:23 -04:00
ReinUsesLisp 83c7592d3d shader: Partial implementation of LDC 2021-07-22 21:51:23 -04:00