summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/ir_opt (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-07-23shader: Implement D3D samplersReinUsesLisp1-11/+69
2021-07-23shader: Add constant propagation for arithmetic right shiftsReinUsesLisp1-0/+3
2021-07-23shader: Add NVN storage buffer fallbacksReinUsesLisp2-38/+61
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-23shader: Address feedbackFernandoS271-1/+1
2021-07-23shader: Add coarse derivativesFernandoS272-8/+2
2021-07-23shader: Implement fine derivates constant propagationFernandoS272-0/+71
2021-07-23shader: Fix Phi node typesReinUsesLisp1-0/+4
2021-07-23shader: Implement SampleMaskReinUsesLisp1-0/+3
2021-07-23shader: Implement PIXLD.MY_INDEXReinUsesLisp1-0/+3
2021-07-23spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp1-0/+3
2021-07-23shader: Implement PrimitiveIdReinUsesLisp1-0/+3
2021-07-23shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp1-0/+41
2021-07-23shader: Mark atomic instructions as writesReinUsesLisp1-0/+27
2021-07-23spirv: Implement image buffersReinUsesLisp1-1/+18
2021-07-23spirv: Implement Layer storesReinUsesLisp1-0/+3
2021-07-23spirv: Rework storage buffers and shader memoryReinUsesLisp1-5/+64
2021-07-23shader: Add constant propagation for *&^| binary operationsReinUsesLisp1-0/+12
2021-07-23spirv: Define StorageImageWriteWithoutFormat capability when usedReinUsesLisp1-0/+5
2021-07-23shader: Implement SR_THREAD_KILLReinUsesLisp1-0/+3
2021-07-23shader: Implement ATOM/S and REDameerj3-2/+201
2021-07-23spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp1-0/+7
2021-07-23shader: Move LaneId to the warp emission file and fix AMDReinUsesLisp1-1/+1
2021-07-23shader: Implement SULD and SUSTReinUsesLisp2-25/+69
2021-07-23shader: Address feedback + clang formatlat9nq1-1/+2
2021-07-23shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq8-76/+80
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-23shader: Implement texture buffersReinUsesLisp1-18/+62
2021-07-23shader: Address feedbackFernandoS271-13/+9
2021-07-23shader: Implement indexed Position and ClipDistancesFernandoS271-8/+18
2021-07-23shader: Implement indexed attributesFernandoS272-2/+36
2021-07-23shader: Move recursive SSA rewrite to the heapReinUsesLisp1-29/+89
2021-07-23shader: Add subgroup masksReinUsesLisp1-0/+7
2021-07-23shader: Abstract breadth searches and use the abstractionReinUsesLisp2-104/+48
2021-07-23shader: Reimplement GetCbufU64 as GetCbufU32x2ReinUsesLisp1-4/+3
It may generate better code on some compilers and it's easier to handle.
2021-07-23shader: Rework global memory tracking to use breadth-first searchReinUsesLisp1-69/+80
2021-07-23shader: Address feedbackFernandoS272-12/+9
2021-07-23shader: Address FeedbackFernandoS273-60/+9
2021-07-23shader: Implement SR_LaneIdFernandoS271-0/+1
2021-07-23shader: Improve VOTE.VTG stubFernandoS271-1/+50
2021-07-23shader: Mark SSBOs as written when they areFernandoS271-2/+29
2021-07-23shader: Implement ViewportIndexFernandoS271-0/+3
2021-07-23shader: Fold composite extractFernandoS271-0/+62
2021-07-23shader: Fold comparisons and Pack/Unpack16FernandoS271-1/+41
2021-07-23shader: Fix constant propagation to use reverse post orderReinUsesLisp1-1/+2
2021-07-23shader: Implement ClipDistanceFernandoS271-0/+10
2021-07-23shader: Implement ImageGradientFernandoS272-1/+15
2021-07-23shader,spirv: Implement ImageQueryLod.FernandoS272-1/+7
2021-07-23shader: Implement TLDFernandoS271-0/+1
2021-07-23shader: Add PointCoord attributeFernandoS271-0/+4
2021-07-23shader: Add PointSize attributeameerj1-0/+3
2021-07-23shader: Implement FSWZADDameerj1-0/+3
2021-07-23shader: Implement BRXFernandoS271-1/+20
2021-07-23shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when availableReinUsesLisp1-0/+6
2021-07-23shader: Better interpolation and disabled attributes supportReinUsesLisp1-1/+1
2021-07-23shader: Implement front faceReinUsesLisp1-0/+3
2021-07-23shader: Implement TXQ and fix FragDepthReinUsesLisp2-5/+18
2021-07-23shader: Refactor PTP and other minor changesReinUsesLisp1-20/+2
2021-07-23shader: Add IR opcode for ImageFetchFernandoS271-0/+5
2021-07-23shader: Implement TLD4.PTPFernandoS271-0/+18
2021-07-23shader: Implement TLD4 and TLD4_BFernandoS273-1/+29
2021-07-23shader: Implement SHFLameerj1-0/+6
2021-07-23shader: Track first bindless argument instead of the instruction itselfReinUsesLisp1-1/+1
2021-07-23shader: Fix F2IFernandoS272-0/+4
2021-07-23shader: Implement VOTEameerj1-0/+6
2021-07-23shader: Fold interpolation multiplicationsReinUsesLisp1-0/+34
2021-07-23shader: Implement DMNMX, DSET, DSETPameerj2-2/+9
2021-07-23shader: Implement F2FFernandoS271-1/+3
2021-07-23shader: Add missing fp64 usage flagsReinUsesLisp1-0/+34
2021-07-23shader: Add support for fp16 comparisons and misc fixesReinUsesLisp2-0/+18
2021-07-23shader: Fix floating point comparison for FP16FernandoS271-0/+24
2021-07-23spirv: Implement VertexId and InstanceId, refactor codeReinUsesLisp1-0/+6
2021-07-23shader: Implement I2FReinUsesLisp2-0/+44
2021-07-23shader: Add partial rasterizer integrationReinUsesLisp2-5/+57
2021-07-23shader: Reorder phi nodes when redefined as undefined opcodesReinUsesLisp1-1/+9
2021-07-23shader: Implement CAL inlining function callsReinUsesLisp10-57/+44
2021-07-23shader: Implement FCMPameerj1-1/+13
still need to configure some settings for NV denorm flush and intel NaN
2021-07-23shader: Partial implementation of LDCReinUsesLisp4-15/+146
2021-07-23shader: Initial support for textures and TEXReinUsesLisp4-9/+226
2021-07-23shader: Implement HADD2ReinUsesLisp2-1/+11
2021-07-23shader: Implement SELameerj1-4/+8
2021-07-23shader: Avoid infinite recursion when tracking global memoryReinUsesLisp1-5/+26
2021-07-23shader: FMUL, select, RRO, and MUFU fixesReinUsesLisp1-1/+1
2021-07-23shader: Add denorm flush supportReinUsesLisp2-7/+65
2021-07-23spirv: Add lower fp16 to fp32 passReinUsesLisp4-7/+103
2021-07-23shader: Add XMAD multiplication folding optimizationReinUsesLisp1-5/+77
2021-07-23spirv: Initial bindings supportReinUsesLisp4-61/+210
2021-07-23shader: Fix trackingReinUsesLisp1-50/+72
2021-07-23shader: Add support for forward declarationsReinUsesLisp1-2/+2
2021-07-23shader: Support SSA loops on IRReinUsesLisp3-17/+55
2021-07-23shader: Misc fixesReinUsesLisp2-70/+70
2021-07-23shader: Initial implementation of an ASTReinUsesLisp3-3/+75
2021-07-23spirv: Initial SPIR-V supportReinUsesLisp1-1/+1
2021-07-23shader: Better constant foldingReinUsesLisp1-12/+47
2021-07-23shader: Properly store phi on InstReinUsesLisp1-10/+12
2021-07-23shader: Add pools and rename filesReinUsesLisp1-14/+14
2021-07-23shader: Make typed IRReinUsesLisp2-10/+31
2021-07-23shader: Remove illegal character in SSA passReinUsesLisp1-1/+1
2021-07-23shader: Constant propagation and global memory to storage bufferReinUsesLisp6-36/+573
2021-07-23shader: Initial instruction supportReinUsesLisp2-88/+0
2021-07-23shader: SSA and dominanceReinUsesLisp3-1/+164
2021-07-23shader: Initial recompiler workReinUsesLisp5-0/+213