summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shader_recompiler: throw on missing geometry streams in geometry shadersGravatar Liam2024-02-191-1/+3
|
* renderer_vulkan: ignore viewport stores on non-supporting driversGravatar Liam2023-11-191-1/+1
|
* Remove memory allocations in some hot pathsGravatar Kelebek12023-06-221-1/+1
|
* Vulkan: update initializationGravatar Liam2022-11-271-6/+7
| | | | Co-authored-by: bylaws <bylaws@users.noreply.github.com>
* general: Convert source file copyright comments over to SPDXGravatar Morph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* emit_spirv: Add Xfb execution mode when transform feedback is usedGravatar ameerj2022-01-281-3/+9
| | | | Fixes Transform Feedback on Vulkan AMD drivers.
* Empty spacesGravatar Matías Locatti2021-12-281-1/+1
|
* Changes to avoid warnings in SSE4.2 optimized SPIR-VGravatar Matías Locatti2021-12-281-0/+9
|
* emit_spirv: Reduce emit_spirv.h include overheadGravatar ameerj2021-12-051-0/+1
| | | | emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on.
* emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaGravatar ReinUsesLisp2021-07-221-5/+8
| | | | Fix regression on Fire Emblem: Three Houses when using native fp16.
* shader: Rework varyings and implement passthrough geometry shadersGravatar ReinUsesLisp2021-07-221-5/+14
| | | | | | Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's.
* shader: Move loop safety tests to code emissionGravatar ReinUsesLisp2021-07-221-1/+18
|
* spirv: Reduce log severity of mismatching denorm rulesGravatar ReinUsesLisp2021-07-221-2/+2
|
* shader: Add loggingGravatar ReinUsesLisp2021-07-221-4/+4
|
* shader: Split profile and runtime information in separate structsGravatar ReinUsesLisp2021-07-221-9/+11
|
* shader: Read branch conditions from an instructionGravatar ReinUsesLisp2021-07-221-1/+9
| | | | Fixes the identity removal pass.
* shader_recompiler: GCC fixesGravatar lat9nq2021-07-221-16/+16
| | | | | Fixes members of unnamed union not being accessible, and one function without a declaration.
* emit_spirv: Jump to loop body with local variableGravatar ReinUsesLisp2021-07-221-1/+1
| | | | Silence unused variable warning
* emit_spirv: Add missing block in caseGravatar ReinUsesLisp2021-07-221-1/+2
|
* glasm: Initial implementation of phi nodes on GLASMGravatar ReinUsesLisp2021-07-221-1/+5
|
* glasm: Rework control flow introducing a syntax listGravatar ReinUsesLisp2021-07-221-6/+65
| | | | | This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow.
* glasm: Implement shuffle and vote instructions on GLASMGravatar ReinUsesLisp2021-07-221-1/+3
|
* Move SPIR-V emission functions to their own headerGravatar ReinUsesLisp2021-07-221-0/+1
|
* shader: Implement Int32 SUATOM/SUREDGravatar ameerj2021-07-221-0/+3
|
* spirv: Do not enable ShaderLayerGravatar ReinUsesLisp2021-07-221-3/+0
| | | | This is enabled by an extension instead of the capability.
* spirv: Enable DemoteToHelperInvocationEXT only when supportedGravatar ReinUsesLisp2021-07-221-1/+1
|
* spirv: Use OriginLowerLeft when requestedGravatar ReinUsesLisp2021-07-221-1/+5
|
* spirv: Support OpenGL uniform buffers and change bindingsGravatar ReinUsesLisp2021-07-221-1/+1
|
* shader: Move microinstruction header to the value headerGravatar ReinUsesLisp2021-07-221-1/+0
|
* shader: Address feedbackGravatar FernandoS272021-07-221-1/+1
|
* shader: Implement fine derivates constant propagationGravatar FernandoS272021-07-221-0/+3
|
* shader: Implement PIXLD.MY_INDEXGravatar ReinUsesLisp2021-07-221-0/+3
|
* spirv: Implement ViewportMask with NV_viewport_array2Gravatar ReinUsesLisp2021-07-221-0/+4
|
* shader: Implement tessellation shaders, polygon mode and invocation idGravatar ReinUsesLisp2021-07-221-0/+39
|
* spirv: Implement Layer storesGravatar ReinUsesLisp2021-07-221-6/+10
|
* shader: Implement transform feedbacks and define file formatGravatar ReinUsesLisp2021-07-221-0/+3
|
* shader: Implement early Z testsGravatar ReinUsesLisp2021-07-221-0/+3
|
* spirv: Rework storage buffers and shader memoryGravatar ReinUsesLisp2021-07-221-1/+1
|
* shader: Implement geometry shadersGravatar ReinUsesLisp2021-07-221-0/+38
|
* spirv: Define StorageImageWriteWithoutFormat capability when usedGravatar ReinUsesLisp2021-07-221-0/+3
|
* shader: Implement ATOM/S and REDGravatar ameerj2021-07-221-0/+3
|
* spirv: Move phi node patching to a separate functionGravatar ReinUsesLisp2021-07-221-13/+16
|
* spirv: Guard against typeless image reads on unsupported devicesGravatar ReinUsesLisp2021-07-221-1/+3
|
* spirv: Fix forward declarations on phi nodesGravatar ReinUsesLisp2021-07-221-47/+25
|
* shader: Implement SULD and SUSTGravatar ReinUsesLisp2021-07-221-0/+1
|
* shader_recompiler,video_core: Cleanup some GCC and Clang errorsGravatar lat9nq2021-07-221-8/+11
| | | | | | | | | | | | | | | | | 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: Implement texture buffersGravatar ReinUsesLisp2021-07-221-0/+1
|
* shader: Address FeedbackGravatar FernandoS272021-07-221-3/+1
|
* shader: Implement ViewportIndexGravatar FernandoS272021-07-221-0/+10
|
* shader: Fix branches to visited virtual blocksGravatar ReinUsesLisp2021-07-221-0/+2
|