summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_shader_disk_cache.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* shader/registry: Store graphics and compute metadataReinUsesLisp2020-03-091-1/+3
| | | | | Store information GLSL forces us to provide but it's dynamic state in hardware (workgroup sizes, primitive topology, shared memory size).
* video_core: Rename "const buffer locker" to "registry"ReinUsesLisp2020-03-091-1/+1
|
* gl_shader_cache: Rework shader cache and remove post-specializationsReinUsesLisp2020-03-091-128/+21
| | | | | Instead of pre-specializing shaders and then post-specializing them, drop the later and only "specialize" the shader while decoding it.
* Shader_IR: Store Bound buffer on Shader UsageFernando Sahmkow2020-01-241-0/+1
|
* gl_shader_cache: Remove dynamic BaseBinding specializationReinUsesLisp2019-11-231-37/+7
|
* video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp2019-11-231-13/+13
|
* gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp2019-11-231-7/+9
| | | | | Local memory size in compute shaders was stubbed with an arbitary size. This commit specializes local memory size from guest GPU parameters.
* gl_shader_cache: Specialize shared memory sizeReinUsesLisp2019-11-231-7/+11
| | | | | Shared memory was being declared with an undefined size. Specialize from guest GPU parameters the compute shader's shared memory size.
* gl_shader_cache: Specialize shader workgroupReinUsesLisp2019-11-231-13/+33
| | | | | | Drop the usage of ARB_compute_variable_group_size and specialize compute shaders instead. This permits compute to run on AMD and Intel proprietary drivers.
* shader/texture: Deduce texture buffers from lockerReinUsesLisp2019-11-231-6/+2
| | | | | Instead of specializing shaders to separate texture buffers from 1D textures, use the locker to deduce them while they are being decoded.
* gl_shader_disk_cache: Store and load fast BRXReinUsesLisp2019-10-251-1/+11
|
* gl_shader_decompiler: Move entries to a separate functionReinUsesLisp2019-10-251-28/+4
|
* gl_shader_disk_cache: Properly ignore existing cacheReinUsesLisp2019-10-061-4/+1
| | | | | Previously old entries where appended to the file even if the shader cache was ignored at boot. Address that issue.
* gl_rasterizer: Implement compute shadersReinUsesLisp2019-07-151-27/+6
|
* gl_shader_disk_cache: Address feedbackReinUsesLisp2019-06-241-2/+3
|
* gl_shader_decompiler: Implement image binding settingsReinUsesLisp2019-06-211-15/+9
|
* gl_rasterizer: Track texture buffer usageReinUsesLisp2019-06-211-13/+40
|
* gl_shader_cache: Fix clang strict standard build issuesReinUsesLisp2019-05-211-1/+6
|
* gl_shader_disk_cache: in-class initialize virtual file offset of ShaderDiskCacheOpenGLLioncash2019-05-191-3/+2
| | | | | | Given the offset is assigned a fixed value in the constructor, we can just assign it directly and get rid of the need to write the name of the variable again in the constructor initializer list.
* gl_shader_disk_cache: Default ShaderDiskCacheOpenGL's destructor in the cpp fileLioncash2019-05-191-0/+1
| | | | | | Given the disk shader cache contains non-trivial types, we should default it in the cpp file in order to prevent inlining of the complex destruction logic.
* gl_shader_disk_cache: Make hash specializations noexceptLioncash2019-05-191-2/+2
| | | | | | The standard library expects hash specializations that don't throw exceptions. Make this explicit in the type to allow selection of better code paths if possible in implementations.
* gl_shader_disk_cache: Special-case boolean handlingLioncash2019-05-191-1/+17
| | | | | | | | | | | | | Booleans don't have a guaranteed size, but we still want to have them integrate into the disk cache system without needing to actually use a different type. We can do this by supplying non-template overloads for the bool type. Non-template overloads always have precedence during function resolution, so this is safe to provide. This gets rid of the need to smatter ternary conditionals, as well as the need to use u8 types to store the value in.
* gl_shader_disk_cache: Use VectorVfsFile for the virtual precompiled shader cache fileunknown2019-04-231-8/+45
|
* gl_shader_disk_cache: Remove per shader compressionunknown2019-04-231-1/+0
|
* gl_shader_disk_cache: Use unordered containersReinUsesLisp2019-02-071-37/+45
|
* gl_shader_disk_cache: Pass core system as argument and guard against games without title idsReinUsesLisp2019-02-071-1/+12
|
* gl_shader_disk_cache: Guard reads and writes against failureReinUsesLisp2019-02-071-6/+24
|
* gl_shader_disk_cache: Address miscellaneous feedbackReinUsesLisp2019-02-071-25/+29
|
* gl_shader_disk_cache: Pass return values returning instead of by parametersReinUsesLisp2019-02-071-7/+10
|
* gl_shader_disk_cache: Save GLSL and entries into the precompiled fileReinUsesLisp2019-02-071-7/+14
|
* gl_shader_disk_cache: Add transferable cache invalidationReinUsesLisp2019-02-071-0/+3
|
* gl_shader_disk_cache: Add precompiled loadReinUsesLisp2019-02-071-0/+6
|
* gl_shader_disk_cache: Add precompiled saveReinUsesLisp2019-02-071-0/+14
|
* gl_shader_disk_cache: Add transferable loadReinUsesLisp2019-02-071-0/+4
|
* gl_shader_disk_cache: Add transferable storesReinUsesLisp2019-02-071-0/+102
|
* gl_shader_disk_cache: Add ShaderDiskCacheOpenGL class and helpersReinUsesLisp2019-02-071-0/+24
|
* gl_shader_disk_cache: Add file and move BaseBindings declarationReinUsesLisp2019-02-071-0/+41