Commit Graph

782 Commits (159ae5e47ceff0a44c1021379cbca601b36f4fb0)

Author SHA1 Message Date
ReinUsesLisp d2e811db2e spirv: Workaround image unsigned offset bug
Workaround bug on Nvidia's OpenGL SPIR-V compiler when using unsigned
texture offsets.
4 years ago
ReinUsesLisp 4ead714910 spirv: Add int8 and int16 capabilities only when supported 4 years ago
ReinUsesLisp 33bebc3412 spirv: Add integer clamping workarounds
Workaround more bugs on Nvidia's OpenGL SPIR-V compiler.
4 years ago
ReinUsesLisp 7b03b97118 spirv: Implement int8 and int16 conversion fallbacks 4 years ago
ReinUsesLisp 48a17298d7 spirv: Support OpenGL uniform buffers and change bindings 4 years ago
ReinUsesLisp d5d6778ba5 spirv: Desambiguate descriptor names
Worksaround a bug on Nvidia's OpenGL SPIR-V compiler where names are
used for name matching.
4 years ago
ReinUsesLisp a46d91b1ef shader: Add OpenGL shader profile options 4 years ago
ReinUsesLisp 028f0033bd shader: Remove shader util 4 years ago
FernandoS27 c49d56c931 shader: Address feedback 4 years ago
FernandoS27 b541f5e5e3 shader: Implement VertexA stage 4 years ago
FernandoS27 da936d6ad8 shader: Implement delegation of Exit to dispatcher on CFG 4 years ago
ameerj fb14820c86 shader: Fix IADD3.CC 4 years ago
ameerj 20e86fd615 shader: Fix BFE s32 undefined check
Our unit tests were hitting this exception.
4 years ago
ReinUsesLisp 50eb03382e shader: Fix error checking in bitfieldExtract and implement bitfieldInsert folding 4 years ago
ReinUsesLisp 57464e3b72 shader: Fix storage type when reading patches on tess control 4 years ago
ReinUsesLisp d2b54c6e42 shader: Fix VMNMX selector B 4 years ago
ReinUsesLisp 155be4a8d3 shader: Increase the maximum number of storage buffers
Compute shaders spill uniform buffers on storage buffers, increasing the
expected number.
4 years ago
ReinUsesLisp fe25f42403 shader: Remove identity removal pass for better build times 4 years ago
ReinUsesLisp 0c7230a606 shader: Add more strict validation the pass 4 years ago
ReinUsesLisp 25949b864c shader: Fix forward referencing identity instructions when inserting phi 4 years ago
ReinUsesLisp 92a01984e6 shader: Remove invalidated blocks in dead code elimination pass 4 years ago
ReinUsesLisp aece958c2b shader: Add missing UndoUse case for GetSparseFromOp 4 years ago
ReinUsesLisp 21e3382830 shader: Simplify code in opcodes.h to fix Intellisense
Avoid using std::array to fix Intellisense not properly compiling this
code and disabling itself on all files that include it.

While we are at it, change the code to use u8 instead of size_t for the
number of instructions in an opcode.
4 years ago
ReinUsesLisp d10cf55353 shader: Implement indexed textures 4 years ago
ameerj 7a9dc78398 shader: Refactor atomic_operations_global_memory 4 years ago
ameerj 427951d6fe shader: add missing include guard in half_floating_point_helper.h 4 years ago
ReinUsesLisp c8f9772d65 shader: Fix gcc warnings 4 years ago
ReinUsesLisp 75dee55486 shader: Inline common Value getters 4 years ago
ReinUsesLisp 23182fa59c shader: Intrusively store in a block if it's sealed or not 4 years ago
ReinUsesLisp eed6da55b8 cmake: Link to common in shader_recompiler 4 years ago
ReinUsesLisp cc0fcd1b8d shader: Improve goto removal algorithm complexity
Find sibling node containing a nephew searching from the nephew itself
instead of the uncle.
4 years ago
ReinUsesLisp f66851e376 shader: Use memset to reset instruction arguments 4 years ago
ReinUsesLisp c84bbd9e44 shader: Inline common Value functions into the header 4 years ago
ReinUsesLisp 050e81500c shader: Move microinstruction header to the value header 4 years ago
ReinUsesLisp e4d1122082 shader: Move siblings check to a separate function and comment them out 4 years ago
ReinUsesLisp 4209828646 shader: Intrusively store register values in block for SSA pass 4 years ago
ReinUsesLisp 6944cabb89 shader: Inline common Opcode and Inst functions 4 years ago
ReinUsesLisp 4bbe530337 shader: Inline common IR::Block methods 4 years ago
ReinUsesLisp 24cc298660 shader: Use a small_vector for phi blocks 4 years ago
ReinUsesLisp 79c2e43fcd shader: Calculate number of arguments in an opcode at compile time 4 years ago
ReinUsesLisp dd860b684c shader: Implement D3D samplers 4 years ago
ReinUsesLisp a8d46a5eae shader: Add constant propagation for arithmetic right shifts 4 years ago
ReinUsesLisp 469f8bb857 shader: Simplify code for local memory 4 years ago
ReinUsesLisp 7018e524f5 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.
4 years ago
ReinUsesLisp 6325601947 spirv: Fix ViewportMask 4 years ago
ameerj 5b8afed871 spirv: Replace Constant/ConstantComposite with Const helper 4 years ago
FernandoS27 2999028976 shader: Address feedback 4 years ago
FernandoS27 881b33da3b shader: Implement F2F (Imm) 4 years ago
FernandoS27 21a878237b shader: Implement IADD3.CC/.X 4 years ago
FernandoS27 f69d0b91ff shader: Address feedback 4 years ago
FernandoS27 080857b60e shader: Add coarse derivatives 4 years ago
FernandoS27 04c459fc8d shader: Implement fine derivates constant propagation 4 years ago
FernandoS27 f18a6dd1bd shader: Implement SR_Y_DIRECTION 4 years ago
ReinUsesLisp 50f8007172 shader: Fix Phi node types 4 years ago
ReinUsesLisp 0a0818c025 shader: Fix memory barriers 4 years ago
ReinUsesLisp c9e4609d87 spirv: Fix implicit lod type 4 years ago
ReinUsesLisp 7cfa403683 spirv: Use explicit lods outside of fragment shaders 4 years ago
ReinUsesLisp dbbd4b5496 spirv: Use ConstOffset instead of Offset when possible 4 years ago
ameerj be431f5ed0 shader: Implement BFE and BFI CC
Fix two bugs in BFI.
4 years ago
ReinUsesLisp 80940b1706 shader: Implement SampleMask 4 years ago
ReinUsesLisp 95815a3883 shader: Implement PIXLD.MY_INDEX 4 years ago
ReinUsesLisp f3473c5143 spirv: Bitcast non-F32 output attributes to their type before store 4 years ago
ReinUsesLisp e3514bcd6b spirv: Implement ViewportMask with NV_viewport_array2 4 years ago
ReinUsesLisp 4657cf78fd spirv: Bitcast non-F32 attributes to F32 4 years ago
ReinUsesLisp b0f1255c8c shader: Implement PrimitiveId 4 years ago
ReinUsesLisp 183855e396 shader: Implement tessellation shaders, polygon mode and invocation id 4 years ago
ReinUsesLisp 34519d3fc6 shader: Mark atomic instructions as writes 4 years ago
ReinUsesLisp 416e1b7441 spirv: Implement image buffers 4 years ago
ReinUsesLisp d8ec99dada spirv: Implement Layer stores 4 years ago
FernandoS27 ab3831f6cb spirv: Fix alpha test 4 years ago
ameerj 6f4a1c8dcf spirv: Fix non-atomic 64-bit store 4 years ago
ameerj 6c512f4bff spirv: Implement alpha test 4 years ago
ReinUsesLisp b126987c59 shader: Implement transform feedbacks and define file format 4 years ago
ReinUsesLisp a83579b50a shader: Implement early Z tests 4 years ago
ReinUsesLisp 09165ae189 shader: Document and relax cache control on surface instructions 4 years ago
ReinUsesLisp fa75b9b062 spirv: Rework storage buffers and shader memory 4 years ago
ReinUsesLisp c070991def shader: Fix fixed pipeline point size on geometry shaders 4 years ago
ReinUsesLisp 2597cee85b shader: Add constant propagation for *&^| binary operations 4 years ago
ReinUsesLisp f263760c5a shader: Implement geometry shaders 4 years ago
ReinUsesLisp a6cef71cc0 shader: Implement OUT 4 years ago
lat9nq dd3432d357 internal_stage_buffer_entry_read: Remove pragma optimize off 4 years ago
ReinUsesLisp 4b0172f6de shader: Stub SR_INVOCATION_INFO 4 years ago
ReinUsesLisp f712084147 shader: Stub ISBERD 4 years ago
ReinUsesLisp 2516829e4c shader: Fix CC in I2I 4 years ago
ReinUsesLisp 23b8714732 spirv: Define StorageImageWriteWithoutFormat capability when used 4 years ago
ReinUsesLisp 415c7e46ed shader: Simplify FLO and throw on CC 4 years ago
ReinUsesLisp dfd5341d71 shader: Mark blocks with no end branch as unreachable 4 years ago
ReinUsesLisp 2ed80f6b1e shader: Implement LOP CC 4 years ago
ReinUsesLisp 5c61e860e4 shader: Implement SR_THREAD_KILL 4 years ago
ReinUsesLisp c9337a4ae4 shader: Apply sign bit in FCMP (imm) 4 years ago
ameerj 3db2b3effa shader: Implement ATOM/S and RED 4 years ago
ReinUsesLisp 106764a6d5 spirv: Move phi node patching to a separate function 4 years ago
ReinUsesLisp ab543f1821 spirv: Guard against typeless image reads on unsupported devices 4 years ago
ReinUsesLisp 9280cd649a shader: Move LaneId to the warp emission file and fix AMD 4 years ago
ReinUsesLisp 2e71e4c5c0 spirv: Fix forward declarations on phi nodes 4 years ago
ReinUsesLisp d404b871d5 shader: Mark ImageWrite with side effects 4 years ago
FernandoS27 1be6705408 shader: Implement CC for ISET, FSET, PSET, CSET, and DSET
Throw when other instructions are missing CC.
4 years ago
ReinUsesLisp 8cea39b5a6 shader: Remove outdated comment in F2I 4 years ago
ReinUsesLisp 7cb2ab3585 shader: Implement SULD and SUST 4 years ago
ReinUsesLisp 094da34456 shader: Fix Windows build issues 4 years ago
lat9nq 5bfcafa0a2 shader: Address feedback + clang format 4 years ago
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>
4 years ago
ReinUsesLisp 5cd3d00167 shader: Fix FCMP immediate variant 4 years ago
ReinUsesLisp 233e39bb7b shader: Fix dangling labels 4 years ago
ReinUsesLisp e9a91bc5cc shader: Interact texture buffers with buffer cache 4 years ago
ReinUsesLisp 56b92bd89c shader: Fix F2I 4 years ago
ReinUsesLisp ef88552224 shader: Fix TextureGrad 4 years ago
ReinUsesLisp 1f3eb601ac shader: Implement texture buffers 4 years ago
FernandoS27 dcaf0e9150 shader: Address feedback 4 years ago
FernandoS27 73cb17f41b shader: Implement indexed Position and ClipDistances 4 years ago
FernandoS27 1d51803169 shader: Implement indexed attributes 4 years ago
FernandoS27 0df7e509db shader: Implement AL2P 4 years ago
FernandoS27 20ba0ea0a9 shader: Fix BRX tracking 4 years ago
ReinUsesLisp 417fb5d385 shader: Move recursive SSA rewrite to the heap 4 years ago
FernandoS27 72daa2a039 shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware 4 years ago
ReinUsesLisp 9e6fe430bd shader: Fix splits on blocks using indirect branches 4 years ago
ReinUsesLisp ffca21487f shader: Eliminate orphan blocks more efficiently 4 years ago
ReinUsesLisp da6cf2632c shader: Add subgroup masks 4 years ago
ReinUsesLisp fc93bc2abd shader: Implement BAR and fix memory barriers 4 years ago
ReinUsesLisp 85795de99f shader: Abstract breadth searches and use the abstraction 4 years ago
ReinUsesLisp 3f594dd86b shader: Reimplement GetCbufU64 as GetCbufU32x2
It may generate better code on some compilers and it's easier to handle.
4 years ago
ReinUsesLisp 0b26f2b90e shader: Remove unused header in VOTE 4 years ago
ReinUsesLisp 9a342f5605 shader: Rework global memory tracking to use breadth-first search 4 years ago
ReinUsesLisp c4aab5c40e shader: Fix fp16 merge when using native fp16 4 years ago
ReinUsesLisp ca7ebdc471 shader: Fix FADD32I 4 years ago
FernandoS27 e7700aad18 shader: Fix undetected bug from review 4 years ago
FernandoS27 ed6a1b1a3d shader: Address feedback 4 years ago
FernandoS27 80df541a08 shader: "Implement" NOP 4 years ago
FernandoS27 baec84247f shader: Address Feedback 4 years ago
FernandoS27 45d547af11 shader: Implement SR_LaneId 4 years ago
FernandoS27 595806fb1c shader: Fix shared memory on cool drivers 4 years ago
FernandoS27 655f7a570a shader: Implement MEMBAR 4 years ago
FernandoS27 ecb30c9072 shader: Improve VOTE.VTG stub 4 years ago
FernandoS27 12f5f32098 shader: Mark SSBOs as written when they are 4 years ago
FernandoS27 d819ba4489 shader: Implement ViewportIndex 4 years ago
FernandoS27 fd496d0401 shader: Stub TLD4's PTP when it isn't constant 4 years ago
FernandoS27 5ed8f24384 shader: Stub VOTE.VTG 4 years ago
FernandoS27 bee8188799 shader: Fold composite extract 4 years ago
FernandoS27 c3bace756f shader: Fold comparisons and Pack/Unpack16 4 years ago
ReinUsesLisp b4a5e767d0 shader: Fix branches to visited virtual blocks 4 years ago
ReinUsesLisp f1dd743731 shader: Fix dependency on identity removal pass 4 years ago
ReinUsesLisp 5f22cd89e2 shader: Fix constant propagation to use reverse post order 4 years ago
ReinUsesLisp eaafd53cfe shader: Implement LDG .U.128 as .128 4 years ago
ReinUsesLisp c826220733 shader: Unroll "using enum" for opcode declarations 4 years ago
ReinUsesLisp 09e1927b70 spirv: Remove unnecesary variable for clip distances 4 years ago
FernandoS27 0c4cf3b9eb shader: Implement ClipDistance 4 years ago
FernandoS27 67afdaf566 shader: Fix TXD 4 years ago
FernandoS27 4d0d29fc20 shader: Address feedback 4 years ago
ReinUsesLisp cb6fc03e55 shader: Always pass a lod for TexelFetch 4 years ago
FernandoS27 630273b629 shader: Implement TXD 4 years ago
FernandoS27 d5bfc63088 shader: Implement ImageGradient 4 years ago
FernandoS27 be3e94ae55 shader: Implement TMML partially 4 years ago
FernandoS27 613b48c4a2 shader,spirv: Implement ImageQueryLod. 4 years ago
FernandoS27 2c276ec6eb shader: Implement TLDS 4 years ago
FernandoS27 dc1a9a3bed shader: Implement TLD 4 years ago
ReinUsesLisp 7a1c14269e spirv: Add fixed pipeline point size 4 years ago
FernandoS27 9d7422d967 shader: Add PointCoord attribute 4 years ago
ameerj b7589fe115 shader: Add PointSize attribute 4 years ago
ReinUsesLisp 514a6b07ee shader: Store type of phi nodes in flags
This is needed because pseudo-instructions where invalidated.
4 years ago
ReinUsesLisp b0d5572abf shader: Fix indirect branches to scheduler instructions 4 years ago
ReinUsesLisp 55b960a20f spirv: Fix default output attribute initialization 4 years ago
ReinUsesLisp 12783f8105 shader: Add missing new lines 4 years ago
ameerj 6c51f49632 shader: Implement FSWZADD 4 years ago
FernandoS27 34aba9627a shader: Implement BRX 4 years ago
ReinUsesLisp 39a379632e shader: Fix alignment checks on RZ 4 years ago
ameerj 73af0d2e0d shader: Implement I2I CC 4 years ago
ameerj dbc1e5cde7 shader: Implement I2I SAT 4 years ago
ameerj cd9f75e223 shader: Fix ISCADD logic for PO/CC 4 years ago
ReinUsesLisp e860870dd2 shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available 4 years ago
ameerj 84298ce191 shader: Implement ISCADD CC 4 years ago
ameerj 51475e21ba shader: Implement VMAD, VMNMX, VSETP 4 years ago
ReinUsesLisp 0e1b213fa7 shader: Add missing I2I exception when CC is used 4 years ago
ReinUsesLisp dbd882ddeb shader: Better interpolation and disabled attributes support 4 years ago
ReinUsesLisp 675a82416d spirv: Remove dependencies on Environment when generating SPIR-V 4 years ago
ReinUsesLisp f0031babeb shader: Implement front face 4 years ago
ReinUsesLisp a806b29cb9 shader: Fix structured control flow on KIL instructions
This could potentially leave unvisited blocks, leading to illegal phi
nodes.
4 years ago
FernandoS27 cdf0cc3869 shader: Fix TXQ 4 years ago
ReinUsesLisp 17063d16a3 shader: Implement TXQ and fix FragDepth 4 years ago
ReinUsesLisp d9c5bd9509 shader: Refactor PTP and other minor changes 4 years ago
FernandoS27 b5db38f50e shader: Add IR opcode for ImageFetch 4 years ago
FernandoS27 742d11c2ad shader: Implement TLD4.PTP 4 years ago
FernandoS27 981eb6f43b shader: Fix Array Indices in TEX/TLD4 4 years ago
FernandoS27 f5672777c8 shader: Implement FragDepth 4 years ago
FernandoS27 fda0835300 shader: Implement TLD4S. 4 years ago
FernandoS27 c7c518e280 shader: Implement TLD4 and TLD4_B 4 years ago
ameerj 32c5483beb shader: Implement SHFL 4 years ago
ReinUsesLisp 49e87ea8ab shader: Track first bindless argument instead of the instruction itself 4 years ago
ReinUsesLisp d3dad6b632 shader: Properly insert Prologue instruction 4 years ago
ReinUsesLisp 83a283fa86 shader: Minor style nits 4 years ago
FernandoS27 8cb9443cb9 shader: Fix F2I 4 years ago
ReinUsesLisp 68a9505d8a shader: Implement NDC [-1, 1], attribute types and default varying initialization 4 years ago
ReinUsesLisp 1d2db78398 shader: Fix use-after-free bug in object_pool 4 years ago
ameerj 3d07cef009 shader: Implement VOTE 4 years ago
ReinUsesLisp a8d8fd40f7 shader: Fix TEX mask 4 years ago
ReinUsesLisp c63cf4fa2e vk_pipeline_cache: Add pipeline cache 4 years ago
ReinUsesLisp 2be5c7eff4 shader: Fold interpolation multiplications 4 years ago
ReinUsesLisp 96b7ced6ec shader: Better but still partial interpolation support 4 years ago
ameerj e4e1cc11b8 shader: Implement DMNMX, DSET, DSETP 4 years ago
FernandoS27 56be556eee shader: Implement FADD32I 4 years ago
FernandoS27 a62f04efab shader: Implement F2F 4 years ago
ReinUsesLisp 8b3b9c3371 shader: Add missing fp64 usage flags 4 years ago
ameerj c858b8ba97 shader: Implement DMUL and DFMA
Also add a missing const on DADD
4 years ago
ameerj 112b8f00f0 shader: Add FP64 register load/store helpers 4 years ago
ReinUsesLisp a77e764726 shader: Add support for fp16 comparisons and misc fixes 4 years ago
FernandoS27 27fb97377e shader: Fix floating point comparison for FP16 4 years ago
FernandoS27 e10d9c1b8e shader: Implement HSETP2 4 years ago
FernandoS27 9e213fd861 shader: Implement HSET2 4 years ago
FernandoS27 ed6cd3c94a shader: Implement HMUL2 4 years ago
FernandoS27 28dff6a629 shader: Implement HFMA2 4 years ago
ReinUsesLisp 76c8a962ac spirv: Implement VertexId and InstanceId, refactor code 4 years ago
FernandoS27 e802512d8e shader: Refactor half floating instructions 4 years ago
ReinUsesLisp f91859efd2 shader: Implement I2F 4 years ago
ReinUsesLisp c97d03efb9 shader: Implement ISCADD (imm) 4 years ago
ReinUsesLisp eeb1efa2d2 shader: Implement LOP32I 4 years ago
ReinUsesLisp 260743f371 shader: Add partial rasterizer integration 4 years ago
ameerj 72990df7ba shader: Implement DADD 4 years ago
ameerj 3b7fd3ad0f shader: Implement CSET and CSETP 4 years ago
ReinUsesLisp 32b6c63485 shader: Reorder phi nodes when redefined as undefined opcodes 4 years ago
ReinUsesLisp 8dd0acfaeb shader: Fix instruction transitions in and out of Phi 4 years ago
ameerj fa2f6e38f4 shader: Implement FSET and FSETP
Also fix oversight with adding SignedZeroInfNanPreserve execution mode.
4 years ago
ReinUsesLisp 17a82b56d7 shader: Implement TEXS 4 years ago
ReinUsesLisp 71f96fa636 shader: Implement CAL inlining function calls 4 years ago
ameerj b9f7bf4472 spirv: Add SignedZeroInfNanPreserve logic 4 years ago
ameerj 8d470c2e63 shader: Implement FMNMX
And add a const in FCMP
4 years ago
ReinUsesLisp 2d422b2498 shader: Fix rebase issue 4 years ago
ameerj ba8c1d2eb4 shader: Implement FCMP
still need to configure some settings for NV denorm flush and intel NaN
4 years ago
ReinUsesLisp 3a63fa0477 shader: Partial implementation of LDC 4 years ago
ReinUsesLisp ab46371247 shader: Initial support for textures and TEX 4 years ago
ameerj 7d6ba5b984 shader: Implement R2P 4 years ago
ameerj 924f0a9149 shader: Implement SHF 4 years ago
ameerj 5465cb1561 shader: Implement LEA 4 years ago
ReinUsesLisp d1edc16ba8 shader: Deduplicate HADD2 code 4 years ago
ameerj 81f72471e8 shader: Implement I2I 4 years ago
ReinUsesLisp 4006929c98 shader: Implement HADD2 4 years ago
ameerj 980cafdc27 shader: Implement LOP and LOP3 4 years ago
ameerj 382cba94ed shader: Implement IADD3 4 years ago
ameerj c2155f04d4 shader: Implement PSETP 4 years ago
ameerj ce9b116cfe Implement PSET, refactor common comparison funcs 4 years ago
ameerj 103b9da4f7 shader: Implement FLO 4 years ago
ameerj e038928616 shader: Implement ISET, add common_funcs 4 years ago
ameerj bec7d3111d shader: Make IMNMX, SHR, SEL stylistically more consistent 4 years ago
ameerj bce0b1dcca shader: Implement ICMP 4 years ago
ameerj 20390c0548 shader: Implement IMNMX 4 years ago
ameerj 08a9e95905 shader: Implement BFI 4 years ago
ameerj 34ac9b4d7e shader: Implement BFE 4 years ago
ameerj a8c41c50d3 shader: Implement POPC 4 years ago
ameerj cc55d28949 shader: Implement SHR 4 years ago
ameerj 8810c88b7e shader: Implement SEL 4 years ago
ReinUsesLisp 726625cf50 spirv: Move phi arguments emit to a separate function 4 years ago
ReinUsesLisp 3bc857f2f3 shader: Avoid infinite recursion when tracking global memory 4 years ago
ReinUsesLisp 622d676202 shader: Fix conditional execution of exit instructions 4 years ago
ReinUsesLisp 7496bbf758 spirv: Add support for self-referencing phi nodes 4 years ago
ReinUsesLisp e87a502da2 shader: Fix control flow 4 years ago
ReinUsesLisp 9d6a98d950 shader: Implement more of XMAD and FFMA32I and fix XMAD.CBCC 4 years ago
ReinUsesLisp e44752ddc8 shader: FMUL, select, RRO, and MUFU fixes 4 years ago
ReinUsesLisp 18a766b362 shader: Fix MOV(reg), add SHL variants and emit neg and abs instructions 4 years ago
ReinUsesLisp 274897dfd5 spirv: Fixes and Intel specific workarounds 4 years ago
ReinUsesLisp 704c6f353f shader: Rename, implement FADD.SAT and P2R (imm) 4 years ago
ReinUsesLisp e2bc05b17d shader: Add denorm flush support 4 years ago
ReinUsesLisp 6db69990da spirv: Add lower fp16 to fp32 pass 4 years ago
ReinUsesLisp 85cce78583 shader: Primitive Vulkan integration 4 years ago
ReinUsesLisp 58914796c0 shader: Add XMAD multiplication folding optimization 4 years ago
ReinUsesLisp 4b438f94cf shader: Simplify ISCADD 4 years ago
ReinUsesLisp 3633e43377 shader: Add utility to resolve identities on a value 4 years ago
ReinUsesLisp 3a59fffaa1 spirv: Implement EmitIdentity 4 years ago
ReinUsesLisp b5d7279d87 spirv: Initial bindings support 4 years ago
ReinUsesLisp d5d468cf2c shader: Improve object pool 4 years ago
ReinUsesLisp 1c0b8bca5e shader: Fix tracking 4 years ago
ReinUsesLisp 1b0cf2309c shader: Add support for forward declarations 4 years ago
ReinUsesLisp cbfb7d182a shader: Support SSA loops on IR 4 years ago
ReinUsesLisp 8af9297f09 shader: Misc fixes 4 years ago
ReinUsesLisp 9170200a11 shader: Initial implementation of an AST 4 years ago
ReinUsesLisp 2930dccecc spirv: Initial SPIR-V support 4 years ago
ReinUsesLisp 6dafb08f52 shader: Better constant folding 4 years ago
ReinUsesLisp da8096e6e3 shader: Properly store phi on Inst 4 years ago
ReinUsesLisp 16cb00c521 shader: Add pools and rename files 4 years ago
ReinUsesLisp be94ee88d2 shader: Make typed IR 4 years ago
ReinUsesLisp dc04a50ac2 shader: Remove illegal character in SSA pass 4 years ago
ReinUsesLisp e81739493a shader: Constant propagation and global memory to storage buffer 4 years ago
ReinUsesLisp d24a16045f shader: Initial instruction support 4 years ago
ReinUsesLisp 6c4cc0cd06 shader: SSA and dominance 4 years ago
ReinUsesLisp 2d48a7b4d0 shader: Initial recompiler work 4 years ago