summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_shader_cache.cpp (unfollow)
Commit message (Expand)AuthorFilesLines
2024-02-26renderer_opengl: declare geometry stream support in profileLiam1-0/+1
2024-01-19SMMU: Initial adaptation to video_core.Fernando Sahmkow1-5/+6
2023-12-21shader_recompiler: use float image operations on load/store when requiredLiam1-1/+1
2023-12-19shader_recompiler: ignore clip distances beyond driver support levelLiam1-0/+1
2023-11-01shader_recompiler: Align SSBO offsets in GlobalMemory functionsAmeer J1-0/+1
2023-11-01shader_recompiler: Align SSBO offsets to meet host requirementsAmeer J1-0/+1
2023-08-03Fix shader dumps with nvdisasmKelebek11-4/+6
2023-07-21settings,general: Rename non-confirming enumslat9nq1-6/+6
2023-07-19general: Silence -Wshadow{,-uncaptured-local} warningslat9nq1-4/+4
2023-06-22Remove memory allocations in some hot pathsKelebek11-1/+3
2023-06-10shader_recompiler: translate f64 to f32 when unsupported on hostLiam1-0/+1
2023-06-10shader_recompiler: remove barriers in conditional control flow when device lacks supportLiam1-0/+1
2023-04-08video_core: Enable ImageGather with subpixel offset on IntelWollnashorn1-1/+1
2023-04-08shader_recompiler: Add subpixel offset for correct rounding at `ImageGather`Wollnashorn1-0/+1
2023-01-30gl_compute_pipeline: Force context flush when loading shader cacheameerj1-4/+4
2023-01-30gl_graphics_pipeline: Force context flush when loading shader cacheameerj1-4/+5
2023-01-07Revert "Vulkan, OpenGL: Hook up storage buffer alignment code"Liam1-1/+0
2023-01-05Vulkan, OpenGL: Hook up geometry shader passthrough emulationBilly Laws1-0/+1
2023-01-05Vulkan, OpenGL: Hook up storage buffer alignment codeBilly Laws1-0/+1
2023-01-03ShaderCompiler: Inline driver specific constants.Fernando Sahmkow1-1/+1
2023-01-01MacroHLE: Add OpenGL SupportFernando Sahmkow1-1/+2
2022-12-14Vulkan: Add support for VK_EXT_depth_clip_control.FernandoS271-0/+1
2022-12-13renderer_opengl: refactor context acquireLiam1-31/+45
2022-12-08video_core: Implement maxwell3d draw manager and split draw logicFeng Chen1-2/+4
2022-12-01shader_recompiler: add gl_Layer translation GS for older hardwareLiam1-4/+33
2022-11-11ir/texture_pass: Use host_info instead of querying Settings::values (#9176)Morph1-0/+1
2022-11-07video_core: Fix few issues in Tess stageFengChen1-1/+2
2022-10-13renderer_(opengl/vulkan): Fix tessellation clockwise parameterMorph1-2/+2
2022-10-07Update 3D regsKelebek11-20/+23
2022-10-06VideoCore: Fix channels with disk pipeline/shader cache.Fernando Sahmkow1-6/+5
2022-10-06VideoCore: implement channels on gpu caches.Fernando Sahmkow1-21/+18
2022-10-04common: remove "yuzu:" prefix from thread namesLiam1-1/+1
2022-09-20video_core: Fix legacy to generic location unpairedFengChen1-0/+1
2022-09-20video_core: Generate mipmap texture by drawingFengChen1-1/+1
2022-08-31(shader/pipeline)_cache: Raise shader/pipeline cache versionMorph1-1/+1
2022-07-30video_core: stop waiting for shader compilation on user cancelLiam1-1/+1
2022-06-14common: Change semantics of UNREACHABLE to unconditionally crashLiam1-2/+2
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
2022-04-07video_core: Replace lock_guard with scoped_lockMerry1-2/+2
2022-03-19video_core: Reduce unused includesameerj1-3/+0
2022-01-04ShaderDecompiler: Add a debug option to dump the game's shaders.Fernando Sahmkow1-1/+10
2021-12-30glsl: Add boolean reference workaroundameerj1-0/+1
2021-12-30glsl_context_get_set: Add alternative cbuf type for broken driversameerj1-0/+1
2021-12-18Address format clangvonchenplus1-1/+1
2021-11-19Implement convert legacy to genericFeng Chen1-0/+3
2021-11-16opengl: Use Shader::NumDescriptors when possibleReinUsesLisp1-10/+5
2021-09-14renderers: Log total pipeline countMorph1-0/+2
2021-08-30structured_control_flow: Conditionally invoke demote reorder passameerj1-0/+1
2021-07-27gl_shader_cache: Remove unused variableLioncash1-1/+0
2021-07-23shader_environment: Receive cache version from outsideReinUsesLisp1-3/+7
2021-07-23glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZEameerj1-0/+1
2021-07-23gl_shader_cache: Properly implement asynchronous shadersReinUsesLisp1-1/+1
2021-07-23shader: Ignore global memory ops on devices lacking int64 supportameerj1-0/+1
2021-07-23gl_shader_cache: Fixes for async shadersameerj1-2/+23
2021-07-23emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaReinUsesLisp1-0/+1
2021-07-23video_core: Enable GL SPIR-V shaderslat9nq1-9/+31
2021-07-23glasm: Add passthrough geometry shader supportReinUsesLisp1-1/+1
2021-07-23shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp1-3/+4
2021-07-23shader: Unify shader stage typesReinUsesLisp1-1/+0
2021-07-23shader: Emulate 64-bit integers when not supportedReinUsesLisp1-1/+1
2021-07-23gl_shader_cache: Check previous pipeline before checking hash mapReinUsesLisp1-6/+14
2021-07-23shaders: Allow shader notify when async shaders is disabledameerj1-4/+4
2021-07-23shader: Properly manage attributes not written from previous stagesReinUsesLisp1-1/+10
2021-07-23shader: Add support for native 16-bit floatsReinUsesLisp1-4/+8
2021-07-23shader: Rename maxwell/program.h to translate_program.hReinUsesLisp1-1/+1
2021-07-23glsl: Address rest of feedbackameerj1-0/+1
2021-07-23glsl: Conditionally use fine/coarse derivatives based on device supportameerj1-0/+1
2021-07-23glsl: Cleanup/Address feedbackameerj1-0/+2
2021-07-23gl_shader_cache: Implement async shadersameerj1-29/+25
2021-07-23glsl: Add stubs for sparse queries and variable aoffi when not supportedameerj1-0/+2
2021-07-23gl_shader_cache: Move OGL shader compilation to the respective Pipeline constructorameerj1-61/+8
2021-07-23glsl: Implement fswzaddameerj1-0/+1
2021-07-23glsl: Rebase fixesameerj1-1/+0
2021-07-23glsl: Use textureGrad fallback when EXT_texture_shadow_lod is unsupportedameerj1-0/+1
2021-07-23glsl: skip gl_ViewportIndex write if device does not support itameerj1-0/+1
2021-07-23glsl: Implement transform feedbackameerj1-5/+13
2021-07-23glsl: Implement VOTE for subgroup size potentially largerameerj1-1/+1
2021-07-23glsl: Implement some attribute getters and settersameerj1-1/+0
2021-07-23glsl: Query GL Device for FP16 extension supportameerj1-0/+2
2021-07-23glsl: Fixup build issuesReinUsesLisp1-1/+1
2021-07-23glsl: Initial backendameerj1-2/+5
2021-07-23shader: Reorder shader cache directoriesReinUsesLisp1-8/+5
2021-07-23gl_shader_util: Move shader utility code to a separate fileReinUsesLisp1-76/+5
2021-07-23gl_shader_cache: Store workers in shader cache objectReinUsesLisp1-58/+71
2021-07-23shader: Fix VertexA Shaders.FernandoS271-5/+21
2021-07-23glasm: Use ARB_derivative_control conditionallyReinUsesLisp1-0/+1
2021-07-23opengl: Declare fragment outputs even if they are not usedReinUsesLisp1-0/+2
2021-07-23shader: Handle host exceptionsReinUsesLisp1-17/+26
2021-07-23glasm: Use storage buffers instead of global memory when possibleReinUsesLisp1-6/+24
2021-07-23gl_shader_cache: Add disk shader cacheReinUsesLisp1-6/+107
2021-07-23gl_shader_cache: Rename Program abstractions into PipelineReinUsesLisp1-21/+21
2021-07-23gl_shader_cache: Do not flip tessellation on OpenGLReinUsesLisp1-2/+1
2021-07-23gl_shader_cache: Conditionally use viewport maskReinUsesLisp1-1/+1
2021-07-23gl_shader_cache,glasm: Conditionally use typeless image reads extensionReinUsesLisp1-37/+37
2021-07-23gl_shader_cache: Improve GLASM error print logicReinUsesLisp1-7/+10
2021-07-23glasm: Implement forced early ZReinUsesLisp1-2/+2
2021-07-23glasm: Set transform feedback stateReinUsesLisp1-2/+17
2021-07-23gl_shader_cache: Pass shader runtime informationReinUsesLisp1-2/+74
2021-07-23shader: Split profile and runtime information in separate structsReinUsesLisp1-22/+4
2021-07-23glasm: Support textures used in more than one stageReinUsesLisp1-1/+1
2021-07-23opengl: Initial (broken) support to GLASM shadersReinUsesLisp1-11/+35
2021-07-23glasm: Initial GLASM compute implementation for testingReinUsesLisp1-6/+31
2021-07-23gl_shader_cache: Remove code unintentionally committedReinUsesLisp1-3/+0
2021-07-23Move SPIR-V emission functions to their own headerReinUsesLisp1-3/+2
2021-07-23shader: Initial OpenGL implementationReinUsesLisp1-3/+272
2021-07-23shader: Move pipeline cache logic to separate filesReinUsesLisp1-13/+8
2021-07-23shader: Remove old shader managementReinUsesLisp1-563/+1
2021-06-22bootmanager: Use std::stop_source for stopping emulationReinUsesLisp1-3/+3
2021-02-20gl_disk_shader_cache: Log total shader entries count on game loadMorph1-0/+4
2021-01-21renderer_opengl: Avoid precompiled cache and force NV GL cache directoryReinUsesLisp1-5/+8
2020-12-30video_core: Rewrite the texture cacheReinUsesLisp1-1/+0
2020-12-07video_core: Make use of ordered container contains() where applicableLioncash1-1/+1
2020-12-05video_core: Resolve more variable shadowing scenarios pt.3Lioncash1-4/+3
2020-12-04video_core: Resolve more variable shadowing scenariosLioncash1-3/+3
2020-09-06video_core: Remove all Core::System references in rendererReinUsesLisp1-32/+31
2020-08-24gl_shader_util: Use std::string_view instead of star pointerReinUsesLisp1-0/+1
2020-08-12gl_shader_cache: Use std::max() for determining num_workersMorph1-1/+1
2020-07-21video_core: Remove unused variablesLioncash1-3/+0
2020-07-21video_core: Allow copy elision to take place where applicableLioncash1-1/+1
2020-07-17async shadersDavid Marcec1-49/+132
2020-06-24gl_shader_cache: Avoid use after move for program sizeReinUsesLisp1-5/+7
2020-06-12gl_arb_decompiler: Implement an assembly shader decompilerReinUsesLisp1-1/+3
2020-06-07vk_pipeline_cache: Use generic shader cacheReinUsesLisp1-3/+3
2020-06-07gl_shader_cache: Use generic shader cacheReinUsesLisp1-45/+42
2020-06-01glsl: Squash constant buffers into a single SSBO when we hit the limitReinUsesLisp1-5/+7
2020-05-19renderer_opengl: Add assembly program code pathsReinUsesLisp1-21/+80
2020-04-26shader/memory_util: Deduplicate codeReinUsesLisp1-72/+10
2020-04-22ShaderCache/PipelineCache: Cache null shaders.Fernando Sahmkow1-4/+13
2020-04-17Revert "gl_shader_cache: Use CompileDepth::FullDecompile on GLSL"Rodrigo Locatti1-3/+1
2020-04-14gl_shader_cache: Use CompileDepth::FullDecompile on GLSLReinUsesLisp1-1/+3
2020-04-06Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing.Fernando Sahmkow1-22/+24
2020-04-06shader_decode: SULD.D implement bits64 and reverse shader ir init method to removed shader stage.namkazy1-3/+3
2020-04-05add shader stage when init shader irnamkazy1-3/+3
2020-03-26Address review and fix broken yuzu-tester buildJames Rowe1-1/+1
2020-03-25Frontend/GPU: Refactor context managementJames Rowe1-3/+2
2020-03-09gl_shader_decompiler: Add identifier to decompiled codeReinUsesLisp1-2/+4
2020-03-09gl_shader_cache: Reduce registry consistency to debug assertReinUsesLisp1-3/+1
2020-03-09shader/registry: Store graphics and compute metadataReinUsesLisp1-12/+16
2020-03-09video_core: Rename "const buffer locker" to "registry"ReinUsesLisp1-32/+33
2020-03-09gl_shader_cache: Rework shader cache and remove post-specializationsReinUsesLisp1-345/+158
2020-02-28gl_state_tracker: Implement dirty flags for clip distances and shadersReinUsesLisp1-0/+5
2020-02-28gl_rasterizer: Remove dirty flagsReinUsesLisp1-4/+0
2020-01-24Shader_IR: Store Bound buffer on Shader UsageFernando Sahmkow1-1/+3
2020-01-21gl_shader_cache: Disable fastmath on NvidiaReinUsesLisp1-0/+4
2020-01-14gl_shader_cache: Remove unused STAGE_RESERVED_UBOS constantLioncash1-3/+0
2020-01-14gl_shader_cache: std::move entries in CachedShader constructorLioncash1-3/+4
2020-01-14gl_shader_cache: Remove unused entries variable in BuildShader()Lioncash1-1/+0
2019-12-21gl_shader_cache: Update commentary for shared memoryReinUsesLisp1-9/+6
2019-12-21gl_shader_cache: Remove unused entry in GetPrimitiveDescriptionReinUsesLisp1-11/+9
2019-12-11gl_shader_cache: Add missing new-line on emitted GLSLReinUsesLisp1-2/+2
2019-11-23gl_shader_cache: Hack shared memory sizeReinUsesLisp1-2/+3
2019-11-23gl_shader_cache: Remove dynamic BaseBinding specializationReinUsesLisp1-36/+8
2019-11-23video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp1-127/+100
2019-11-23gl_rasterizer: Bind graphics images to draw commandsReinUsesLisp1-0/+1
2019-11-23gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp1-0/+5
2019-11-23gl_shader_cache: Specialize shared memory sizeReinUsesLisp1-0/+7
2019-11-23gl_shader_cache: Specialize shader workgroupReinUsesLisp1-35/+28
2019-11-23shader/texture: Deduce texture buffers from lockerReinUsesLisp1-12/+0
2019-11-08gl_shader_cache: Fix locker constructorsReinUsesLisp1-2/+4
2019-11-08gl_shader_cache: Enable extensions only when availableReinUsesLisp1-6/+14
2019-11-08gl_shader_decompiler: Reimplement shuffles with platform agnostic intrinsicsReinUsesLisp1-0/+1
2019-10-25gl_shader_cache: Implement locker variants invalidationReinUsesLisp1-27/+75
2019-10-25gl_shader_disk_cache: Store and load fast BRXReinUsesLisp1-2/+17
2019-10-25gl_shader_decompiler: Move entries to a separate functionReinUsesLisp1-238/+251
2019-10-25Shader_Cache: setup connection of ConstBufferLockerFernando Sahmkow1-16/+29
2019-09-21shader/image: Implement SULD and remove irrelevant codeReinUsesLisp1-8/+8
2019-09-17shader_ir/warp: Implement SHFLReinUsesLisp1-1/+2
2019-09-04gl_shader_cache: Remove special casing for geometry shadersReinUsesLisp1-59/+9
2019-08-30video_core: Silent miscellaneous warnings (#2820)Rodrigo Locatti1-1/+1
2019-08-21shader_ir: Implement VOTEReinUsesLisp1-1/+3
2019-07-18gl_shader_cache: Fix newline on buffer preprocessor definitionsReinUsesLisp1-2/+6
2019-07-17Maxwell3D: Rework the dirty system to be more consistant and scaleableFernando Sahmkow1-1/+1
2019-07-16gl_shader_cache: Fix clang-format issuesReinUsesLisp1-2/+1
2019-07-15gl_shader_cache: Address review commentariesReinUsesLisp1-7/+4
2019-07-15gl_shader_cache: Address CI issuesReinUsesLisp1-1/+2
2019-07-15gl_rasterizer: Implement compute shadersReinUsesLisp1-35/+122
2019-07-09shader_ir: propagate shader size to the IRFernando Sahmkow1-7/+15
2019-07-08gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shadersReinUsesLisp1-2/+5
2019-07-05texture_cache: Address FeedbackFernando Sahmkow1-2/+4
2019-07-04gl_shader_cache: Make CachedShader constructor privateZach Hilman1-2/+2
2019-06-21texture_cache: Style and CorrectionsFernando Sahmkow1-1/+1
2019-06-21shader_cache: Correct versioning and size calculation.Fernando Sahmkow1-1/+6
2019-06-21gl_shader_decompiler: Implement image binding settingsReinUsesLisp1-0/+4
2019-06-21gl_rasterizer: Track texture buffer usageReinUsesLisp1-34/+44
2019-06-08gl_shader_cache: Use static constructors for CachedShader initializationReinUsesLisp1-42/+34
2019-05-30gl_shader_cache: Store a system class and drop global accessorsReinUsesLisp1-7/+8
2019-05-30gl_shader_cache: Add commentaries explaining the intention in shaders creationReinUsesLisp1-0/+2
2019-05-30gl_shader_cache: Flip if condition in GetStageProgram to reduce indentationReinUsesLisp1-25/+26
2019-05-27gl_shader_gen: Always declare extensions after the version declarationReinUsesLisp1-1/+2
2019-05-21gl_shader_cache: Fix clang strict standard build issuesReinUsesLisp1-3/+4
2019-05-21gl_shader_cache: Use shared contexts to build shaders in parallelReinUsesLisp1-34/+82
2019-05-10video_core/renderer_opengl/gl_shader_cache: Correct member initialization orderLioncash1-1/+1
2019-04-23Re added new lines at the end of filesFreddyFunk1-1/+1
2019-04-23gl_shader_disk_cache: Use VectorVfsFile for the virtual precompiled shader cache fileunknown1-1/+11
2019-04-16Document unsafe versions and add BlockCopyUnsafeFernando Sahmkow1-6/+7
2019-04-16Use ReadBlockUnsafe for Shader CacheFernando Sahmkow1-5/+7
2019-04-14gl_shader_decompiler: Use variable AOFFI on supported hardwareReinUsesLisp1-27/+27
2019-04-07Permit a Null Shader in case of a bad host_ptr.Fernando Sahmkow1-0/+4
2019-04-06video_core/texures/texture: Remove unnecessary includesLioncash1-0/+1
2019-03-28gl_shader_manager: Remove unnecessary gl_shader_manager inclusionLioncash1-2/+0
2019-03-27video_core: Amend constructor initializer list order where applicableLioncash1-6/+6
2019-03-21gpu: Move GPUVAddr definition to common_types.bunnei1-2/+2
2019-03-16video_core: Refactor to use MemoryManager interface for all memory access.bunnei1-20/+17
2019-03-15gpu: Use host address for caching instead of guest address.bunnei1-19/+24
2019-02-07gl_shader_disk_cache: Use unordered containersReinUsesLisp1-3/+3
2019-02-07gl_shader_cache: Fixup GLSL unique identifiersReinUsesLisp1-2/+2
2019-02-07gl_shader_cache: Link loading screen with disk shader cache loadReinUsesLisp1-3/+26
2019-02-07gl_shader_cache: Set GL_PROGRAM_SEPARABLE to dumped shadersReinUsesLisp1-0/+1
2019-02-07gl_shader_disk_cache: Pass core system as argument and guard against games without title idsReinUsesLisp1-1/+2
2019-02-07gl_shader_disk_cache: Address miscellaneous feedbackReinUsesLisp1-3/+3
2019-02-07gl_shader_disk_cache: Pass return values returning instead of by parametersReinUsesLisp1-7/+5
2019-02-07gl_shader_disk_cache: Save GLSL and entries into the precompiled fileReinUsesLisp1-32/+39
2019-02-07gl_shader_cache: Refactor to support disk shader cacheReinUsesLisp1-105/+345
2019-02-07rasterizer_interface: Add disk cache entry for the rasterizerReinUsesLisp1-0/+2
2019-02-03video_core: Assert on invalid GPU to CPU address queriesReinUsesLisp1-2/+4
2019-01-30gl_shader_cache: Use explicit bindingsReinUsesLisp1-63/+83
2019-01-30gl_rasterizer: Implement global memory managementReinUsesLisp1-3/+15
2019-01-15video_core: Rename glsl_decompiler to gl_shader_decompilerReinUsesLisp1-1/+1
2019-01-15video_core: Replace gl_shader_decompilerReinUsesLisp1-2/+6
2019-01-07gl_shader_cache: Use dirty flags for shadersReinUsesLisp1-1/+5
2018-12-11gl_shader_cache: Dehardcode constant in CalculateProgramSize()Lioncash1-2/+2
2018-12-11gl_shader_cache: Resolve truncation compiler warningLioncash1-1/+1
2018-12-09Implemented a shader unique identifier.Fernando Sahmkow1-0/+45
2018-11-20shader_cache: Only lock covered instructions.Markus Wick1-0/+1
2018-11-10gl_shader_decompiler: Guard out of bound geometry shader input readsReinUsesLisp1-2/+6
2018-11-08rasterizer_cache: Remove reliance on the System singletonLioncash1-1/+3
2018-10-29video_core: Move OpenGL specific utils to its rendererReinUsesLisp1-2/+3
2018-10-22Use standard UBO and fix/stylize the codeFernandoS271-20/+0
2018-10-22Cache uniform locations and restructure the implementationFernandoS271-8/+16
2018-10-22Implemented Alpha TestingFernandoS271-0/+12
2018-10-07gl_shader_decompiler: Implement geometry shadersReinUsesLisp1-5/+29
2018-09-23Added glObjectLabels for renderdoc for textures and shader programs (#1384)David1-0/+2
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi1-3/+3
2018-09-09video_core: fixed arithmetic overflow warnings & improved code stylePatrick Elsässer1-4/+4
2018-09-04gl_shader_cache: Use an u32 for the binding point cache.Markus Wick1-8/+8
2018-08-31gl_renderer: Cache textures, framebuffers, and shaders based on CPU address.bunnei1-11/+7
2018-08-28gl_shader_cache: Remove unused program_code vector in GetShaderAddress()Lioncash1-2/+1
2018-08-28renderer_opengl: Implement a new shader cache.bunnei1-0/+131