Commit Graph

16662 Commits

Author SHA1 Message Date
ReinUsesLisp 172942911a shader: Fix gcc warnings 2021-07-22 21:51:28 -04:00
ReinUsesLisp 16a869571e shader: Inline common Value getters 2021-07-22 21:51:28 -04:00
ReinUsesLisp 9f5c43dd53 shader: Intrusively store in a block if it's sealed or not 2021-07-22 21:51:28 -04:00
ReinUsesLisp fecb87ebc8 cmake: Link to common in shader_recompiler 2021-07-22 21:51:28 -04:00
ReinUsesLisp 3c1229a7c5 shader: Improve goto removal algorithm complexity
Find sibling node containing a nephew searching from the nephew itself
instead of the uncle.
2021-07-22 21:51:28 -04:00
ReinUsesLisp 1a44a5cafa shader: Use memset to reset instruction arguments 2021-07-22 21:51:28 -04:00
ReinUsesLisp 9edc2bd70f shader: Inline common Value functions into the header 2021-07-22 21:51:28 -04:00
ReinUsesLisp 6236b611cf shader: Move microinstruction header to the value header 2021-07-22 21:51:28 -04:00
ReinUsesLisp 7769517fc0 shader: Move siblings check to a separate function and comment them out 2021-07-22 21:51:28 -04:00
ReinUsesLisp 7bf134b294 shader: Intrusively store register values in block for SSA pass 2021-07-22 21:51:28 -04:00
ReinUsesLisp 3a39124359 shader: Inline common Opcode and Inst functions 2021-07-22 21:51:28 -04:00
ReinUsesLisp b6bd6a5bce shader: Inline common IR::Block methods 2021-07-22 21:51:28 -04:00
ReinUsesLisp 8d1327bf78 shader: Use a small_vector for phi blocks 2021-07-22 21:51:28 -04:00
ReinUsesLisp c44139cda0 shader: Calculate number of arguments in an opcode at compile time 2021-07-22 21:51:28 -04:00
ReinUsesLisp 7066f9ef7b shader: Implement D3D samplers 2021-07-22 21:51:28 -04:00
ReinUsesLisp 5c187201ec shader: Add constant propagation for arithmetic right shifts 2021-07-22 21:51:28 -04:00
ReinUsesLisp 56aae7efcf shader: Simplify code for local memory 2021-07-22 21:51:28 -04:00
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
FernandoS27 4a97dd4483 shader: Address feedback 2021-07-22 21:51:28 -04:00
FernandoS27 b85c9d8e84 shader: Implement F2F (Imm) 2021-07-22 21:51:28 -04:00
FernandoS27 fbb642f433 shader: Implement IADD3.CC/.X 2021-07-22 21:51:28 -04:00
FernandoS27 f1a3f449d6 shader: Address feedback 2021-07-22 21:51:28 -04:00
FernandoS27 2f01c7fb62 shader: Add coarse derivatives 2021-07-22 21:51:28 -04:00
FernandoS27 b1e325f317 shader: Implement fine derivates constant propagation 2021-07-22 21:51:28 -04:00
FernandoS27 6c60109967 shader: Implement SR_Y_DIRECTION 2021-07-22 21:51:28 -04:00
ReinUsesLisp 99e6cd3916 shader: Fix Phi node types 2021-07-22 21:51:28 -04:00
ReinUsesLisp 6d540c6f2e shader: Fix memory barriers 2021-07-22 21:51:28 -04:00
ReinUsesLisp 0623915e2e spirv: Fix implicit lod type 2021-07-22 21:51:28 -04:00
ReinUsesLisp b597da7f2a spirv: Use explicit lods outside of fragment shaders 2021-07-22 21:51:28 -04:00
ReinUsesLisp f771d1fc52 spirv: Use ConstOffset instead of Offset when possible 2021-07-22 21:51:28 -04:00
ameerj bfdb38404c shader: Implement BFE and BFI CC
Fix two bugs in BFI.
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 ca85ce444f spirv: Bitcast non-F32 output attributes to their type before store 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 f65aa540d8 spirv: Bitcast non-F32 attributes to F32 2021-07-22 21:51:27 -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 0f99fdc0eb shader: Mark atomic instructions as writes 2021-07-22 21:51:27 -04:00
lat9nq 212f5c8050 vk_pipeline_cache: Silence GCC warnings
Silences `-Werror=missing-field-initializers` due to missing
initializers.
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
FernandoS27 f930bda4fb spirv: Fix alpha test 2021-07-22 21:51:27 -04:00
ameerj 9502835689 spirv: Fix non-atomic 64-bit store 2021-07-22 21:51:27 -04:00
ameerj 542dc35aac spirv: Implement alpha test 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 4a6c299e3f shader: Implement early Z tests 2021-07-22 21:51:27 -04:00
ReinUsesLisp 9f5ab82de2 shader: Document and relax cache control on surface instructions 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 a4f27e897c shader: Fix fixed pipeline point size on geometry shaders 2021-07-22 21:51:27 -04:00
ReinUsesLisp deba5c7666 shader: Add constant propagation for *&^| binary operations 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
lat9nq f70707d435 internal_stage_buffer_entry_read: Remove pragma optimize off 2021-07-22 21:51:27 -04:00
ReinUsesLisp 8ebc7b90a0 shader: Stub SR_INVOCATION_INFO 2021-07-22 21:51:27 -04:00
ReinUsesLisp c6b81943a9 shader: Stub ISBERD 2021-07-22 21:51:27 -04:00
ReinUsesLisp 211fc6331d shader: Fix CC in I2I 2021-07-22 21:51:27 -04:00
ReinUsesLisp 1cae8e9a10 spirv: Define StorageImageWriteWithoutFormat capability when used 2021-07-22 21:51:27 -04:00
ReinUsesLisp 7c867c2d7c pipeline_helper: Simplify descriptor objects initialization 2021-07-22 21:51:27 -04:00
ReinUsesLisp c7efa5ead4 shader: Simplify FLO and throw on CC 2021-07-22 21:51:27 -04:00
ReinUsesLisp 31835567f2 shader: Mark blocks with no end branch as unreachable 2021-07-22 21:51:27 -04:00
ReinUsesLisp 4678dc7246 shader: Implement LOP CC 2021-07-22 21:51:27 -04:00
ReinUsesLisp 879fb08101 shader: Implement SR_THREAD_KILL 2021-07-22 21:51:27 -04:00
ReinUsesLisp bf784e1497 shader: Apply sign bit in FCMP (imm) 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 619f68db8e nsight_aftermath_tracker: Report used shaders to Nsight Aftermath 2021-07-22 21:51:27 -04:00
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
FernandoS27 68bad0e922 shader: Implement ViewportIndex 2021-07-22 21:51:25 -04:00
FernandoS27 c7ed439bbc shader: Stub TLD4's PTP when it isn't constant 2021-07-22 21:51:25 -04:00
FernandoS27 1534a99e35 shader: Stub VOTE.VTG 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 b64bf653a4 shader: Fix branches to visited virtual blocks 2021-07-22 21:51:25 -04:00
ReinUsesLisp 2b6f357e36 vulkan: Serialize pipelines on a separate thread 2021-07-22 21:51:25 -04:00
ReinUsesLisp 8678cb10d4 vulkan: Create pipeline layouts in separate threads 2021-07-22 21:51:25 -04:00
ReinUsesLisp 9e46643465 vulkan: Build pipelines in parallel at runtime
Wait from the worker thread for a pipeline to build before binding it to
the command buffer. This allows queueing pipelines to multiple threads.
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 6df3c1a64e shader: Fix constant propagation to use reverse post order 2021-07-22 21:51:25 -04:00
ReinUsesLisp ce39989ea9 shader: Implement LDG .U.128 as .128 2021-07-22 21:51:25 -04:00
ReinUsesLisp 5a589fabdb shader: Unroll "using enum" for opcode declarations 2021-07-22 21:51:25 -04:00
ReinUsesLisp 9730422e34 vk_pipeline_cache: Name SPIR-V modules 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 8f2238dc3d shader: Fix TXD 2021-07-22 21:51:25 -04:00
FernandoS27 7d40446b99 shader: Address feedback 2021-07-22 21:51:25 -04:00
ReinUsesLisp 696f326cd1 shader: Always pass a lod for TexelFetch 2021-07-22 21:51:25 -04:00
FernandoS27 5a7d8d73ad shader: Implement TXD 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
FernandoS27 287d4a38de shader: Implement TLDS 2021-07-22 21:51:25 -04:00
FernandoS27 8232c10ed1 shader: Implement TLD 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
ReinUsesLisp 2c78d07197 shader: Store type of phi nodes in flags
This is needed because pseudo-instructions where invalidated.
2021-07-22 21:51:25 -04:00
ReinUsesLisp 876dd94b57 shader: Fix indirect branches to scheduler instructions 2021-07-22 21:51:25 -04:00
ReinUsesLisp 19cba41834 spirv: Fix default output attribute initialization 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
ReinUsesLisp 99b954550f shader: Fix alignment checks on RZ 2021-07-22 21:51:25 -04:00
ameerj a0a4d75c6c shader: Implement I2I CC 2021-07-22 21:51:25 -04:00
ameerj f3ec28dc23 shader: Implement I2I SAT 2021-07-22 21:51:25 -04:00
ReinUsesLisp d9227e102d vk_pipeline_cache: Fix size hashing of shaders 2021-07-22 21:51:25 -04:00
ameerj a446881ab4 shader: Fix ISCADD logic for PO/CC 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 2e3184a1c8 shader: Implement ISCADD CC 2021-07-22 21:51:24 -04:00
ameerj 528b7b2d63 shader: Implement VMAD, VMNMX, VSETP 2021-07-22 21:51:24 -04:00
ReinUsesLisp b4310e8cb4 shader: Add missing I2I exception when CC is used 2021-07-22 21:51:24 -04:00
ReinUsesLisp e6b3119910 shader: Better interpolation and disabled attributes support 2021-07-22 21:51:24 -04:00
ReinUsesLisp 96a54aeea8 spirv: Remove dependencies on Environment when generating SPIR-V 2021-07-22 21:51:24 -04:00
ReinUsesLisp 43f71a1ff5 vk_pipeline_cache: Fix pipeline and shader caches 2021-07-22 21:51:24 -04:00
ReinUsesLisp 63ea42e0d5 shader: Implement front face 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
FernandoS27 ed3f77cebe shader: Fix TXQ 2021-07-22 21:51:24 -04:00
ReinUsesLisp 47fc2a0510 shader: Fix rasterizer integration order issues 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 cac54d1eb6 shader: Fix Array Indices in TEX/TLD4 2021-07-22 21:51:24 -04:00
FernandoS27 1d05850dee shader: Implement FragDepth 2021-07-22 21:51:24 -04:00
FernandoS27 94f6992630 shader: Implement TLD4S. 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
ReinUsesLisp 1688302a0d shader: Properly insert Prologue instruction 2021-07-22 21:51:24 -04:00
ReinUsesLisp 5c546ef076 shader: Minor style nits 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
ReinUsesLisp 3095e9d9ec shader: Fix use-after-free bug in object_pool 2021-07-22 21:51:24 -04:00
ameerj 0705eff8f6 shader: Implement VOTE 2021-07-22 21:51:24 -04:00
ReinUsesLisp 9d5262ad26 vk_pipeline_cache: Fix ReleaseContents order 2021-07-22 21:51:24 -04:00
ReinUsesLisp 1e763c4c83 shader: Fix TEX mask 2021-07-22 21:51:24 -04:00
ReinUsesLisp 75b20d74c2 vk_pipeline_cache: Add pipeline cache 2021-07-22 21:51:24 -04:00
ReinUsesLisp fba49056aa vk_pipeline_cache: Add pipeline cache 2021-07-22 21:51:24 -04:00
ReinUsesLisp cdbb207953 shader: Fold interpolation multiplications 2021-07-22 21:51:24 -04:00
ReinUsesLisp c8234dc17d shader: Better but still partial interpolation support 2021-07-22 21:51:24 -04:00
ameerj 1a8e8498a4 shader: Implement DMNMX, DSET, DSETP 2021-07-22 21:51:24 -04:00
FernandoS27 1665e72c9e shader: Implement FADD32I 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
ameerj e7710fe30e shader: Implement DMUL and DFMA
Also add a missing const on DADD
2021-07-22 21:51:24 -04:00
ameerj d9bcca65b4 shader: Add FP64 register load/store helpers 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
FernandoS27 57597e37ee shader: Implement HSETP2 2021-07-22 21:51:23 -04:00
FernandoS27 cabcf177a9 shader: Implement HSET2 2021-07-22 21:51:23 -04:00