summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv
AgeCommit message (Collapse)Author
2021-07-22shader: Read branch conditions from an instructionReinUsesLisp
Fixes the identity removal pass.
2021-07-22glasm: Implement TEX and TEXS instructionsReinUsesLisp
Remove lod clamp from texture instructions with lod, as this is not needed (nor supported).
2021-07-22shader_recompiler: GCC fixeslat9nq
Fixes members of unnamed union not being accessible, and one function without a declaration.
2021-07-22emit_spirv: Jump to loop body with local variableReinUsesLisp
Silence unused variable warning
2021-07-22emit_spirv: Add missing block in caseReinUsesLisp
2021-07-22glasm: Initial implementation of phi nodes on GLASMReinUsesLisp
2021-07-22glasm: Rework control flow introducing a syntax listReinUsesLisp
This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow.
2021-07-22glasm: Implement shuffle and vote instructions on GLASMReinUsesLisp
2021-07-22shader: Fixup SPIR-V emit header namespacesReinUsesLisp
2021-07-22Move SPIR-V emission functions to their own headerReinUsesLisp
2021-07-22shader: Optimize NVN FallthroughFernandoS27
2021-07-22shader: Implement Int32 SUATOM/SUREDameerj
2021-07-22spirv: Be aware of NAN unaware driversReinUsesLisp
2021-07-22spirv: Add SSBO read fallbacks when no aliasing is availableReinUsesLisp
2021-07-22spirv: Add OpKill fallback to demoteReinUsesLisp
2021-07-22spirv: Do not enable ShaderLayerReinUsesLisp
This is enabled by an extension instead of the capability.
2021-07-22spirv: Enable DemoteToHelperInvocationEXT only when supportedReinUsesLisp
2021-07-22spirv: Use OriginLowerLeft when requestedReinUsesLisp
2021-07-22spirv: Only add image operands mask when neededReinUsesLisp
2021-07-22spirv: Workaround image unsigned offset bugReinUsesLisp
Workaround bug on Nvidia's OpenGL SPIR-V compiler when using unsigned texture offsets.
2021-07-22spirv: Add int8 and int16 capabilities only when supportedReinUsesLisp
2021-07-22spirv: Add integer clamping workaroundsReinUsesLisp
Workaround more bugs on Nvidia's OpenGL SPIR-V compiler.
2021-07-22spirv: Implement int8 and int16 conversion fallbacksReinUsesLisp
2021-07-22spirv: Support OpenGL uniform buffers and change bindingsReinUsesLisp
2021-07-22spirv: Desambiguate descriptor namesReinUsesLisp
Worksaround a bug on Nvidia's OpenGL SPIR-V compiler where names are used for name matching.
2021-07-22shader: Implement VertexA stageFernandoS27
2021-07-22shader: Fix storage type when reading patches on tess controlReinUsesLisp
2021-07-22shader: Implement indexed texturesReinUsesLisp
2021-07-22shader: Move microinstruction header to the value headerReinUsesLisp
2021-07-22shader: Add NVN storage buffer fallbacksReinUsesLisp
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-22spirv: Fix ViewportMaskReinUsesLisp
2021-07-22spirv: Replace Constant/ConstantComposite with Const helperameerj
2021-07-22shader: Address feedbackFernandoS27
2021-07-22shader: Add coarse derivativesFernandoS27
2021-07-22shader: Implement fine derivates constant propagationFernandoS27
2021-07-22shader: Implement SR_Y_DIRECTIONFernandoS27
2021-07-22shader: Fix memory barriersReinUsesLisp
2021-07-22spirv: Fix implicit lod typeReinUsesLisp
2021-07-22spirv: Use explicit lods outside of fragment shadersReinUsesLisp
2021-07-22spirv: Use ConstOffset instead of Offset when possibleReinUsesLisp
2021-07-22shader: Implement BFE and BFI CCameerj
Fix two bugs in BFI.
2021-07-22shader: Implement SampleMaskReinUsesLisp
2021-07-22shader: Implement PIXLD.MY_INDEXReinUsesLisp
2021-07-22spirv: Bitcast non-F32 output attributes to their type before storeReinUsesLisp
2021-07-22spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp
2021-07-22spirv: Bitcast non-F32 attributes to F32ReinUsesLisp
2021-07-22shader: Implement PrimitiveIdReinUsesLisp
2021-07-22shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp
2021-07-22spirv: Implement image buffersReinUsesLisp
2021-07-22spirv: Implement Layer storesReinUsesLisp