ReinUsesLisp
e54171c1a9
shader: Add NVN storage buffer fallbacks
...
When we can't track the SSBO origin of a global memory instruction,
leave it as a global memory operation and assume these pointers are in
the NVN storage buffer slots, then apply a linear search in the shader's
runtime.
2021-07-22 21:51:28 -04:00
ReinUsesLisp
eb7a932952
spirv: Fix ViewportMask
2021-07-22 21:51:28 -04:00
ameerj
688c89590c
spirv: Replace Constant/ConstantComposite with Const helper
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
b6b541e36a
spirv: Implement ViewportMask with NV_viewport_array2
2021-07-22 21:51:28 -04:00
ReinUsesLisp
10c96c7484
shader: Implement PrimitiveId
2021-07-22 21:51:27 -04:00
ReinUsesLisp
38908d0f7e
shader: Implement tessellation shaders, polygon mode and invocation id
2021-07-22 21:51:27 -04:00
ReinUsesLisp
03c16b085a
spirv: Implement image buffers
2021-07-22 21:51:27 -04:00
ReinUsesLisp
bba876f192
spirv: Implement Layer stores
2021-07-22 21:51:27 -04:00
ReinUsesLisp
e59971ea1b
shader: Implement transform feedbacks and define file format
2021-07-22 21:51:27 -04:00
ReinUsesLisp
c84c2ab88c
spirv: Rework storage buffers and shader memory
2021-07-22 21:51:27 -04:00
ReinUsesLisp
4b32692423
shader: Implement geometry shaders
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
ReinUsesLisp
3e6cb6362d
shader: Interact texture buffers with buffer cache
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
3fc7d20fce
shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware
2021-07-22 21:51:26 -04:00
ReinUsesLisp
ba2130d5a5
shader: Add subgroup masks
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
741b21715a
shader: Address Feedback
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
68bad0e922
shader: Implement ViewportIndex
2021-07-22 21:51:25 -04:00
ReinUsesLisp
2116d7e0b3
shader: Fix dependency on identity removal pass
2021-07-22 21:51:25 -04:00
ReinUsesLisp
4d60dd7eb5
spirv: Remove unnecesary variable for clip distances
2021-07-22 21:51:25 -04:00
FernandoS27
40ace25859
shader: Implement ClipDistance
2021-07-22 21:51:25 -04:00
FernandoS27
56c8c42cf8
shader,spirv: Implement ImageQueryLod.
2021-07-22 21:51:25 -04:00
ReinUsesLisp
0bb8a473e2
spirv: Add fixed pipeline point size
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
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
f573d3642e
shader: Implement TLD4.PTP
2021-07-22 21:51:24 -04:00
FernandoS27
1d05850dee
shader: Implement FragDepth
2021-07-22 21:51:24 -04:00
ameerj
483439a540
shader: Implement SHFL
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
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
ameerj
832f1169d6
shader: Implement DADD
2021-07-22 21:51:23 -04:00