summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler (unfollow)
Commit message (Expand)AuthorFilesLines
2021-07-23shader: Fix memory barriersReinUsesLisp8-62/+30
2021-07-23spirv: Fix implicit lod typeReinUsesLisp2-1/+5
2021-07-23spirv: Use explicit lods outside of fragment shadersReinUsesLisp1-5/+16
2021-07-23spirv: Use ConstOffset instead of Offset when possibleReinUsesLisp3-21/+67
2021-07-23shader: Implement BFE and BFI CCameerj3-14/+17
2021-07-23shader: Implement SampleMaskReinUsesLisp11-2/+22
2021-07-23shader: Implement PIXLD.MY_INDEXReinUsesLisp13-4/+69
2021-07-23spirv: Bitcast non-F32 output attributes to their type before storeReinUsesLisp1-13/+28
2021-07-23spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp7-0/+20
2021-07-23spirv: Bitcast non-F32 attributes to F32ReinUsesLisp1-7/+9
2021-07-23shader: Implement PrimitiveIdReinUsesLisp5-0/+10
2021-07-23shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp22-88/+555
2021-07-23shader: Mark atomic instructions as writesReinUsesLisp1-0/+27
2021-07-23spirv: Implement image buffersReinUsesLisp5-23/+86
2021-07-23spirv: Implement Layer storesReinUsesLisp6-9/+30
2021-07-23spirv: Fix alpha testFernandoS271-0/+5
2021-07-23spirv: Fix non-atomic 64-bit storeameerj1-1/+1
2021-07-23spirv: Implement alpha testameerj2-1/+59
2021-07-23shader: Implement transform feedbacks and define file formatReinUsesLisp8-16/+116
2021-07-23shader: Implement early Z testsReinUsesLisp2-0/+4
2021-07-23shader: Document and relax cache control on surface instructionsReinUsesLisp1-10/+11
2021-07-23spirv: Rework storage buffers and shader memoryReinUsesLisp8-499/+553
2021-07-23shader: Fix fixed pipeline point size on geometry shadersReinUsesLisp1-10/+18
2021-07-23shader: Add constant propagation for *&^| binary operationsReinUsesLisp1-0/+12
2021-07-23shader: Implement geometry shadersReinUsesLisp12-84/+221
2021-07-23shader: Implement OUTReinUsesLisp10-17/+73
2021-07-23internal_stage_buffer_entry_read: Remove pragma optimize offlat9nq1-2/+0
2021-07-23shader: Stub SR_INVOCATION_INFOReinUsesLisp1-2/+5
2021-07-23shader: Stub ISBERDReinUsesLisp3-4/+56
2021-07-23shader: Fix CC in I2IReinUsesLisp1-0/+2
2021-07-23spirv: Define StorageImageWriteWithoutFormat capability when usedReinUsesLisp3-0/+9
2021-07-23shader: Simplify FLO and throw on CCReinUsesLisp1-12/+13
2021-07-23shader: Mark blocks with no end branch as unreachableReinUsesLisp1-2/+7
2021-07-23shader: Implement LOP CCReinUsesLisp3-12/+29
2021-07-23shader: Implement SR_THREAD_KILLReinUsesLisp10-0/+22
2021-07-23shader: Apply sign bit in FCMP (imm)ReinUsesLisp1-1/+1
2021-07-23shader: Implement ATOM/S and REDameerj18-19/+1724
2021-07-23spirv: Move phi node patching to a separate functionReinUsesLisp1-13/+16
2021-07-23spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp5-1/+16
2021-07-23shader: Move LaneId to the warp emission file and fix AMDReinUsesLisp5-7/+11
2021-07-23spirv: Fix forward declarations on phi nodesReinUsesLisp1-47/+25
2021-07-23shader: Mark ImageWrite with side effectsReinUsesLisp1-0/+3
2021-07-23shader: Implement CC for ISET, FSET, PSET, CSET, and DSETFernandoS2718-13/+136
2021-07-23shader: Remove outdated comment in F2IReinUsesLisp1-4/+0
2021-07-23shader: Implement SULD and SUSTReinUsesLisp23-137/+597
2021-07-23shader: Fix Windows build issuesReinUsesLisp1-1/+1
2021-07-23shader: Address feedback + clang formatlat9nq11-22/+20
2021-07-23shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq59-297/+289
2021-07-23shader: Fix FCMP immediate variantReinUsesLisp1-1/+9
2021-07-23shader: Fix dangling labelsReinUsesLisp1-0/+5
2021-07-23shader: Interact texture buffers with buffer cacheReinUsesLisp3-29/+29
2021-07-23shader: Fix F2IReinUsesLisp1-1/+1
2021-07-23shader: Fix TextureGradReinUsesLisp1-1/+1
2021-07-23shader: Implement texture buffersReinUsesLisp6-23/+125
2021-07-23shader: Address feedbackFernandoS275-53/+54
2021-07-23shader: Implement indexed Position and ClipDistancesFernandoS273-11/+100
2021-07-23shader: Implement indexed attributesFernandoS2712-35/+279
2021-07-23shader: Implement AL2PFernandoS273-4/+36
2021-07-23shader: Fix BRX trackingFernandoS272-3/+4
2021-07-23shader: Move recursive SSA rewrite to the heapReinUsesLisp1-29/+89
2021-07-23shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardwareFernandoS271-1/+1
2021-07-23shader: Fix splits on blocks using indirect branchesReinUsesLisp3-17/+38
2021-07-23shader: Eliminate orphan blocks more efficientlyReinUsesLisp1-7/+8
2021-07-23shader: Add subgroup masksReinUsesLisp10-45/+169
2021-07-23shader: Implement BAR and fix memory barriersReinUsesLisp7-5/+79
2021-07-23shader: Abstract breadth searches and use the abstractionReinUsesLisp4-104/+106
2021-07-23shader: Reimplement GetCbufU64 as GetCbufU32x2ReinUsesLisp9-22/+21
2021-07-23shader: Remove unused header in VOTEReinUsesLisp1-2/+0
2021-07-23shader: Rework global memory tracking to use breadth-first searchReinUsesLisp1-69/+80
2021-07-23shader: Fix fp16 merge when using native fp16ReinUsesLisp1-3/+3
2021-07-23shader: Fix FADD32IReinUsesLisp1-6/+4
2021-07-23shader: Fix undetected bug from reviewFernandoS271-0/+3
2021-07-23shader: Address feedbackFernandoS273-13/+16
2021-07-23shader: "Implement" NOPFernandoS271-1/+1
2021-07-23shader: Address FeedbackFernandoS2716-211/+60
2021-07-23shader: Implement SR_LaneIdFernandoS277-0/+15
2021-07-23shader: Fix shared memory on cool driversFernandoS271-0/+1
2021-07-23shader: Implement MEMBARFernandoS279-11/+121
2021-07-23shader: Improve VOTE.VTG stubFernandoS277-4/+147
2021-07-23shader: Mark SSBOs as written when they areFernandoS272-2/+30
2021-07-23shader: Implement ViewportIndexFernandoS277-2/+32
2021-07-23shader: Stub TLD4's PTP when it isn't constantFernandoS271-1/+2
2021-07-23shader: Stub VOTE.VTGFernandoS274-4/+15
2021-07-23shader: Fold composite extractFernandoS271-0/+62
2021-07-23shader: Fold comparisons and Pack/Unpack16FernandoS271-1/+41
2021-07-23shader: Fix branches to visited virtual blocksReinUsesLisp2-0/+12
2021-07-23shader: Fix dependency on identity removal passReinUsesLisp2-3/+8
2021-07-23shader: Fix constant propagation to use reverse post orderReinUsesLisp1-1/+2
2021-07-23shader: Implement LDG .U.128 as .128ReinUsesLisp1-3/+2
2021-07-23shader: Unroll "using enum" for opcode declarationsReinUsesLisp1-1/+27
2021-07-23spirv: Remove unnecesary variable for clip distancesReinUsesLisp2-6/+2
2021-07-23shader: Implement ClipDistanceFernandoS275-0/+36
2021-07-23shader: Fix TXDFernandoS272-2/+2
2021-07-23shader: Address feedbackFernandoS274-52/+48
2021-07-23shader: Always pass a lod for TexelFetchReinUsesLisp3-25/+17
2021-07-23shader: Implement TXDFernandoS274-10/+183
2021-07-23shader: Implement ImageGradientFernandoS278-2/+84
2021-07-23shader: Implement TMML partiallyFernandoS276-13/+137
2021-07-23shader,spirv: Implement ImageQueryLod.FernandoS279-1/+38
2021-07-23shader: Implement TLDSFernandoS273-4/+253
2021-07-23shader: Implement TLDFernandoS277-14/+173
2021-07-23spirv: Add fixed pipeline point sizeReinUsesLisp3-1/+8
2021-07-23shader: Add PointCoord attributeFernandoS275-0/+16
2021-07-23shader: Add PointSize attributeameerj5-0/+13
2021-07-23shader: Store type of phi nodes in flagsReinUsesLisp3-2/+11
2021-07-23shader: Fix indirect branches to scheduler instructionsReinUsesLisp3-7/+17
2021-07-23spirv: Fix default output attribute initializationReinUsesLisp1-3/+3
2021-07-23shader: Add missing new linesReinUsesLisp1-0/+2
2021-07-23shader: Implement FSWZADDameerj14-4/+87
2021-07-23shader: Implement BRXFernandoS2720-47/+388
2021-07-23shader: Fix alignment checks on RZReinUsesLisp1-1/+1
2021-07-23shader: Implement I2I CCameerj3-24/+45
2021-07-23shader: Implement I2I SATameerj6-10/+52
2021-07-23shader: Fix ISCADD logic for PO/CCameerj1-7/+8
2021-07-23shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when availableReinUsesLisp17-17/+626
2021-07-23shader: Implement ISCADD CCameerj1-1/+4
2021-07-23shader: Implement VMAD, VMNMX, VSETPameerj9-23/+319
2021-07-23shader: Add missing I2I exception when CC is usedReinUsesLisp1-0/+4
2021-07-23shader: Better interpolation and disabled attributes supportReinUsesLisp7-23/+96
2021-07-23spirv: Remove dependencies on Environment when generating SPIR-VReinUsesLisp4-9/+12
2021-07-23shader: Implement front faceReinUsesLisp5-0/+12
2021-07-23shader: Fix structured control flow on KIL instructionsReinUsesLisp2-3/+7
2021-07-23shader: Fix TXQFernandoS271-1/+1
2021-07-23shader: Implement TXQ and fix FragDepthReinUsesLisp14-21/+172
2021-07-23shader: Refactor PTP and other minor changesReinUsesLisp14-123/+67
2021-07-23shader: Add IR opcode for ImageFetchFernandoS277-5/+55
2021-07-23shader: Implement TLD4.PTPFernandoS2715-28/+111
2021-07-23shader: Fix Array Indices in TEX/TLD4FernandoS272-6/+6
2021-07-23shader: Implement FragDepthFernandoS272-1/+7
2021-07-23shader: Implement TLD4S.FernandoS273-4/+134
2021-07-23shader: Implement TLD4 and TLD4_BFernandoS2713-11/+315
2021-07-23shader: Implement SHFLameerj16-69/+284
2021-07-23shader: Track first bindless argument instead of the instruction itselfReinUsesLisp1-1/+1
2021-07-23shader: Properly insert Prologue instructionReinUsesLisp1-1/+2
2021-07-23shader: Minor style nitsReinUsesLisp1-2/+4
2021-07-23shader: Fix F2IFernandoS2710-9/+147
2021-07-23shader: Implement NDC [-1, 1], attribute types and default varying initializationReinUsesLisp12-40/+149
2021-07-23shader: Fix use-after-free bug in object_poolReinUsesLisp1-3/+3
2021-07-23shader: Implement VOTEameerj14-5/+167
2021-07-23shader: Fix TEX maskReinUsesLisp1-1/+3
2021-07-23vk_pipeline_cache: Add pipeline cacheReinUsesLisp4-8/+15
2021-07-23shader: Fold interpolation multiplicationsReinUsesLisp1-0/+34
2021-07-23shader: Better but still partial interpolation supportReinUsesLisp1-5/+7
2021-07-23shader: Implement DMNMX, DSET, DSETPameerj15-59/+208
2021-07-23shader: Implement FADD32IFernandoS271-2/+15
2021-07-23shader: Implement F2FFernandoS276-20/+192
2021-07-23shader: Add missing fp64 usage flagsReinUsesLisp1-0/+34
2021-07-23shader: Implement DMUL and DFMAameerj8-30/+111
2021-07-23shader: Add FP64 register load/store helpersameerj3-21/+24
2021-07-23shader: Add support for fp16 comparisons and misc fixesReinUsesLisp11-14/+56
2021-07-23shader: Fix floating point comparison for FP16FernandoS275-32/+56
2021-07-23shader: Implement HSETP2FernandoS273-12/+117
2021-07-23shader: Implement HSET2FernandoS275-14/+119
2021-07-23shader: Implement HMUL2FernandoS273-16/+144
2021-07-23shader: Implement HFMA2FernandoS275-20/+192
2021-07-23spirv: Implement VertexId and InstanceId, refactor codeReinUsesLisp9-144/+243
2021-07-23shader: Refactor half floating instructionsFernandoS274-58/+84
2021-07-23shader: Implement I2FReinUsesLisp16-69/+427
2021-07-23shader: Implement ISCADD (imm)ReinUsesLisp1-2/+2
2021-07-23shader: Implement LOP32IReinUsesLisp2-18/+45
2021-07-23shader: Add partial rasterizer integrationReinUsesLisp34-156/+629
2021-07-23shader: Implement DADDameerj8-14/+132
2021-07-23shader: Implement CSET and CSETPameerj6-15/+114
2021-07-23shader: Reorder phi nodes when redefined as undefined opcodesReinUsesLisp1-1/+9
2021-07-23shader: Fix instruction transitions in and out of PhiReinUsesLisp1-9/+11
2021-07-23shader: Implement FSET and FSETPameerj9-94/+204
2021-07-23shader: Implement TEXSReinUsesLisp8-7/+287
2021-07-23shader: Implement CAL inlining function callsReinUsesLisp24-330/+286
2021-07-23spirv: Add SignedZeroInfNanPreserve logicameerj2-0/+8
2021-07-23shader: Implement FMNMXameerj8-25/+101
2021-07-23shader: Fix rebase issueReinUsesLisp1-1/+0
2021-07-23shader: Implement FCMPameerj9-50/+203
2021-07-23shader: Partial implementation of LDCReinUsesLisp16-50/+405
2021-07-23shader: Initial support for textures and TEXReinUsesLisp29-341/+1378
2021-07-23shader: Implement R2Pameerj8-15/+88
2021-07-23shader: Implement SHFameerj8-31/+119
2021-07-23shader: Implement LEAameerj9-29/+136
2021-07-23shader: Deduplicate HADD2 codeReinUsesLisp1-19/+16
2021-07-23shader: Implement I2Iameerj3-12/+100
2021-07-23shader: Implement HADD2ReinUsesLisp12-42/+400
2021-07-23shader: Implement LOP and LOP3ameerj8-31/+227
2021-07-23shader: Implement IADD3ameerj3-12/+104
2021-07-23shader: Implement PSETPameerj4-5/+40
2021-07-23Implement PSET, refactor common comparison funcsameerj9-101/+88
2021-07-23shader: Implement FLOameerj8-18/+75
2021-07-23shader: Implement ISET, add common_funcsameerj8-50/+150
2021-07-23shader: Make IMNMX, SHR, SEL stylistically more consistentameerj3-5/+5
2021-07-23shader: Implement ICMPameerj3-16/+84
2021-07-23shader: Implement IMNMXameerj8-12/+105
2021-07-23shader: Implement BFIameerj3-16/+57
2021-07-23shader: Implement BFEameerj3-12/+67
2021-07-23shader: Implement POPCameerj8-12/+59
2021-07-23shader: Implement SHRameerj8-18/+80
2021-07-23shader: Implement SELameerj4-16/+53
2021-07-23spirv: Move phi arguments emit to a separate functionReinUsesLisp1-27/+27
2021-07-23shader: Avoid infinite recursion when tracking global memoryReinUsesLisp1-5/+26
2021-07-23shader: Fix conditional execution of exit instructionsReinUsesLisp2-5/+6
2021-07-23spirv: Add support for self-referencing phi nodesReinUsesLisp1-3/+10
2021-07-23shader: Fix control flowReinUsesLisp8-20/+39
2021-07-23shader: Implement more of XMAD and FFMA32I and fix XMAD.CBCCReinUsesLisp5-28/+76
2021-07-23shader: FMUL, select, RRO, and MUFU fixesReinUsesLisp18-119/+507
2021-07-23shader: Fix MOV(reg), add SHL variants and emit neg and abs instructionsReinUsesLisp4-11/+11
2021-07-23spirv: Fixes and Intel specific workaroundsReinUsesLisp10-32/+43
2021-07-23shader: Rename, implement FADD.SAT and P2R (imm)ReinUsesLisp17-125/+211
2021-07-23shader: Add denorm flush supportReinUsesLisp15-60/+210
2021-07-23spirv: Add lower fp16 to fp32 passReinUsesLisp28-276/+465
2021-07-23shader: Primitive Vulkan integrationReinUsesLisp28-498/+573
2021-07-23shader: Add XMAD multiplication folding optimizationReinUsesLisp1-5/+77
2021-07-23shader: Simplify ISCADDReinUsesLisp1-6/+1
2021-07-23shader: Add utility to resolve identities on a valueReinUsesLisp2-0/+8
2021-07-23spirv: Implement EmitIdentityReinUsesLisp2-3/+3
2021-07-23spirv: Initial bindings supportReinUsesLisp22-292/+671
2021-07-23shader: Improve object poolReinUsesLisp3-50/+66
2021-07-23shader: Fix trackingReinUsesLisp1-50/+72
2021-07-23shader: Add support for forward declarationsReinUsesLisp10-68/+79
2021-07-23shader: Support SSA loops on IRReinUsesLisp12-46/+150
2021-07-23shader: Misc fixesReinUsesLisp10-89/+104
2021-07-23shader: Initial implementation of an ASTReinUsesLisp32-589/+1345
2021-07-23spirv: Initial SPIR-V supportReinUsesLisp18-34/+1400
2021-07-23shader: Better constant foldingReinUsesLisp2-13/+48
2021-07-23shader: Properly store phi on InstReinUsesLisp6-75/+132
2021-07-23shader: Add pools and rename filesReinUsesLisp30-108/+255
2021-07-23shader: Make typed IRReinUsesLisp19-269/+495
2021-07-23shader: Remove illegal character in SSA passReinUsesLisp1-1/+1
2021-07-23shader: Constant propagation and global memory to storage bufferReinUsesLisp17-63/+652
2021-07-23shader: Initial instruction supportReinUsesLisp28-334/+1450
2021-07-23shader: SSA and dominanceReinUsesLisp24-77/+570
2021-07-23shader: Initial recompiler workReinUsesLisp56-0/+7060