summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shader: Add integer attribute get optimization passameerj2021-12-301-0/+1
| | | | Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0.
* shader: Properly scale image reads and add GL SPIR-V supportReinUsesLisp2021-11-161-0/+1
| | | | Thanks for everything!
* shader: Add IsTextureScaled opcodeReinUsesLisp2021-11-161-0/+1
|
* shader: Fix resolution scaling passReinUsesLisp2021-11-161-0/+3
|
* shader: Mark ConvertF16F32 and ConvertF32F16 as fp16 instructionsReinUsesLisp2021-07-281-0/+2
| | | | | | Fixes instances where fp16 types are not declared on SPIR-V but they are used. This shouldn't happen on master, as it's been uncovered by an additional optimization pass.
* glsl: Fix tracking of info.uses_shadow_lodameerj2021-07-231-4/+4
|
* shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp2021-07-231-137/+65
| | | | | | Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's.
* shader: Align constant buffer sizes to 16 bytesReinUsesLisp2021-07-231-1/+2
| | | | WAR for AMD reading zeroes on uniform buffers of size 2.
* shader: Properly manage attributes not written from previous stagesReinUsesLisp2021-07-231-2/+4
|
* glsl: Conditionally add EXT_texture_shadow_lodameerj2021-07-231-1/+9
|
* glsl: Implement legacy varyingsameerj2021-07-231-1/+8
|
* glsl: Fix ATOM and implement ATOMSameerj2021-07-231-0/+6
|
* glsl: Track S32 atomicsameerj2021-07-231-2/+8
|
* glsl: Revert ssbo aliasing. Storage Atomics implameerj2021-07-231-7/+2
|
* glsl: Wip storage atomic opsameerj2021-07-231-2/+7
|
* buffer_cache: Reduce uniform buffer size from shader usageReinUsesLisp2021-07-231-3/+16
| | | | Increases performance significantly on certain titles.
* shader,glasm: Implement legacy texcoord loadsReinUsesLisp2021-07-231-52/+18
|
* shader: Track legacy varyingsReinUsesLisp2021-07-231-13/+88
|
* glasm: Implement shuffle and vote instructions on GLASMReinUsesLisp2021-07-231-1/+3
|
* shader: Optimize NVN FallthroughFernandoS272021-07-231-7/+71
|
* shader: Implement Int32 SUATOM/SUREDameerj2021-07-231-0/+36
|
* shader: Move microinstruction header to the value headerReinUsesLisp2021-07-231-1/+1
|
* shader: Add NVN storage buffer fallbacksReinUsesLisp2021-07-231-0/+53
| | | | | | | 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.
* shader: Address feedbackFernandoS272021-07-231-1/+1
|
* shader: Add coarse derivativesFernandoS272021-07-231-0/+2
|
* shader: Implement fine derivates constant propagationFernandoS272021-07-231-0/+4
|
* shader: Implement SampleMaskReinUsesLisp2021-07-231-0/+3
|
* shader: Implement PIXLD.MY_INDEXReinUsesLisp2021-07-231-0/+3
|
* spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp2021-07-231-0/+3
|
* shader: Implement PrimitiveIdReinUsesLisp2021-07-231-0/+3
|
* shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp2021-07-231-0/+41
|
* spirv: Implement Layer storesReinUsesLisp2021-07-231-0/+3
|
* spirv: Rework storage buffers and shader memoryReinUsesLisp2021-07-231-5/+64
|
* spirv: Define StorageImageWriteWithoutFormat capability when usedReinUsesLisp2021-07-231-0/+5
|
* shader: Implement SR_THREAD_KILLReinUsesLisp2021-07-231-0/+3
|
* shader: Implement ATOM/S and REDameerj2021-07-231-0/+70
|
* spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp2021-07-231-0/+7
|
* shader: Move LaneId to the warp emission file and fix AMDReinUsesLisp2021-07-231-1/+1
|
* shader: Implement SULD and SUSTReinUsesLisp2021-07-231-2/+1
|
* shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq2021-07-231-10/+10
| | | | | | | | | | | | | | | | | 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>
* shader: Address feedbackFernandoS272021-07-231-13/+9
|
* shader: Implement indexed Position and ClipDistancesFernandoS272021-07-231-8/+18
|
* shader: Implement indexed attributesFernandoS272021-07-231-1/+35
|
* shader: Add subgroup masksReinUsesLisp2021-07-231-0/+7
|
* shader: Reimplement GetCbufU64 as GetCbufU32x2ReinUsesLisp2021-07-231-4/+3
| | | | It may generate better code on some compilers and it's easier to handle.
* shader: Implement SR_LaneIdFernandoS272021-07-231-0/+1
|
* shader: Implement ViewportIndexFernandoS272021-07-231-0/+3
|
* shader: Implement ClipDistanceFernandoS272021-07-231-0/+10
|
* shader: Implement ImageGradientFernandoS272021-07-231-1/+10
|
* shader,spirv: Implement ImageQueryLod.FernandoS272021-07-231-1/+2
|
* shader: Implement TLDFernandoS272021-07-231-0/+1
|
* shader: Add PointCoord attributeFernandoS272021-07-231-0/+4
|
* shader: Add PointSize attributeameerj2021-07-231-0/+3
|
* shader: Implement FSWZADDameerj2021-07-231-0/+3
|
* shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when availableReinUsesLisp2021-07-231-0/+6
|
* shader: Better interpolation and disabled attributes supportReinUsesLisp2021-07-231-1/+1
|
* shader: Implement front faceReinUsesLisp2021-07-231-0/+3
|
* shader: Implement TXQ and fix FragDepthReinUsesLisp2021-07-231-1/+2
|
* shader: Implement TLD4 and TLD4_BFernandoS272021-07-231-1/+7
|
* shader: Implement SHFLameerj2021-07-231-0/+6
|
* shader: Fix F2IFernandoS272021-07-231-0/+2
|
* shader: Implement VOTEameerj2021-07-231-0/+6
|
* shader: Implement DMNMX, DSET, DSETPameerj2021-07-231-0/+1
|
* shader: Implement F2FFernandoS272021-07-231-1/+3
|
* shader: Add missing fp64 usage flagsReinUsesLisp2021-07-231-0/+34
|
* shader: Add support for fp16 comparisons and misc fixesReinUsesLisp2021-07-231-0/+16
|
* spirv: Implement VertexId and InstanceId, refactor codeReinUsesLisp2021-07-231-0/+6
|
* shader: Implement I2FReinUsesLisp2021-07-231-0/+28
|
* shader: Add partial rasterizer integrationReinUsesLisp2021-07-231-4/+56
|
* shader: Implement CAL inlining function callsReinUsesLisp2021-07-231-5/+3
|
* shader: Implement FCMPameerj2021-07-231-1/+13
| | | | still need to configure some settings for NV denorm flush and intel NaN
* shader: Partial implementation of LDCReinUsesLisp2021-07-231-7/+128
|
* shader: Initial support for textures and TEXReinUsesLisp2021-07-231-0/+19
|
* shader: Add denorm flush supportReinUsesLisp2021-07-231-6/+65
|
* spirv: Add lower fp16 to fp32 passReinUsesLisp2021-07-231-1/+17
|
* spirv: Initial bindings supportReinUsesLisp2021-07-231-0/+81