aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2019-07-09shader_ir: Remove the old scanner.Fernando Sahmkow
2019-07-09shader_ir: Implement a new shader scannerFernando Sahmkow
2019-07-09gl_rasterizer: Amend documentation comment for ConfigureFramebuffers()Lioncash
must_reconfigure isn't a parameter for this function any more, so it can be replaced with current_state. While we're at it, we can make the parameters of the declaration match the same name as the ones in the definition.
2019-07-08Prevent merging of device mapped memory blocks.Michael Scire
This sets the DeviceMapped attribute for GPU-mapped memory blocks, and prevents merging device mapped blocks. This prevents memory mapped from the gpu from having its backing address changed by block coalesce.
2019-07-07gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shadersReinUsesLisp
This commit implements gl_ViewportIndex and gl_Layer in vertex and geometry shaders. In the case it's used in a vertex shader, it requires ARB_shader_viewport_layer_array. This extension is available on AMD and Nvidia devices (mesa and proprietary drivers), but not available on Intel on any platform. At the moment of writing this description I don't know if this is a hardware limitation or a driver limitation. In the case that ARB_shader_viewport_layer_array is not available, writes to these registers on a vertex shader are ignored, with the appropriate logging.
2019-07-07Delete decode_integer_set.cppTobias
2019-07-07shader/texture: Add F16 support for TLDSReinUsesLisp
2019-07-07vk_sampler_cache: Remove unused includesLioncash
These are no longer used within this header, so they can be removed.
2019-07-07video_core: Add missing override specifiersLioncash
2019-07-07vk_scheduler: Drop execution context in favor of viewsReinUsesLisp
Instead of passing by copy an execution context through out the whole Vulkan call hierarchy, use a command buffer view and fence view approach. This internally dereferences the command buffer or fence forcing the user to be unable to use an outdated version of it on normal usage. It is still possible to keep store an outdated if it is casted to VKFence& or vk::CommandBuffer. While changing this file, add an extra parameter for Flush and Finish to allow releasing the fence from this calls.
2019-07-06buffer_cache: Avoid [[nodiscard]] to make clang-format happyReinUsesLisp
2019-07-06buffer_cache: Try to fix MinGW buildReinUsesLisp
2019-07-06gl_rasterizer: Fix nullptr dereference on disabled buffersReinUsesLisp
2019-07-06gl_rasterizer: Minor style changesReinUsesLisp
2019-07-06gl_rasterizer: Fix vertex and index data invalidationsReinUsesLisp
2019-07-06gl_buffer_cache: Implement with generic buffer cacheReinUsesLisp
2019-07-06buffer_cache: Implement a generic buffer cacheReinUsesLisp
Implements a templated class with a similar approach to our current generic texture cache. It is designed to be compatible with Vulkan and OpenGL,
2019-07-06gl_buffer_cache: Remove global system gettersReinUsesLisp
2019-07-06gl_device: Query SSBO alignmentReinUsesLisp
2019-07-06gl_buffer_cache: Implement flushingReinUsesLisp
2019-07-06gl_rasterizer: Drop gl_global_cache in favor of gl_buffer_cacheReinUsesLisp
2019-07-06gl_buffer_cache: Rework to support internalized buffersReinUsesLisp
2019-07-06gl_buffer_cache: Store in CachedBufferEntry the used buffer handleReinUsesLisp
2019-07-06gl_buffer_cache: Return used buffer from Upload functionReinUsesLisp
2019-07-06gl_rasterizer: Add some commentariesReinUsesLisp
2019-07-06gl_rasterizer: Make DrawParameters rasterizer instance constReinUsesLisp
2019-07-06gl_rasterizer: Move index buffer uploading to its own methodReinUsesLisp
2019-07-05NVServices: Styling, define constructors as explicit and correctionsFernando Sahmkow
2019-07-05NVFlinger: Correct GCC compile errorFernando Sahmkow
2019-07-05NVServices: Make NVEvents Automatic according to documentation.Fernando Sahmkow
2019-07-05GPU: Correct Interrupts to interrupt on syncpt/value instead of event, ↵Fernando Sahmkow
mirroring hardware
2019-07-05gpu_asynch: Simplify synchronization to a simpler consumer->producer scheme.Fernando Sahmkow
2019-07-05nv_host_ctrl: Make Sync GPU variant always return synced result.Fernando Sahmkow
2019-07-05Async GPU: do invalidate as synced operationFernando Sahmkow
Async GPU: Always invalidate synced.
2019-07-05Gpu: use an std mutex instead of a spin_lock to guard syncpointsFernando Sahmkow
2019-07-05Gpu: Mark areas as protected.Fernando Sahmkow
2019-07-05nv_services: Stub CtrlEventSignalFernando Sahmkow
2019-07-05Gpu: Implement Hardware Interrupt Manager and manage GPU interruptsFernando Sahmkow
2019-07-05video_core: Implement GPU side SyncpointsFernando Sahmkow
2019-07-05Merge pull request #2601 from FernandoS27/texture_cacheZach Hilman
Implement a new Texture Cache
2019-07-05texture_cache: Address FeedbackFernando Sahmkow
2019-07-04texture_cache: Correct Texture Buffer UploadingFernando Sahmkow
2019-07-03gl_shader_cache: Make CachedShader constructor privateZach Hilman
Fixes missing review comments introduced.
2019-07-03Merge pull request #2563 from ReinUsesLisp/shader-initializersZach Hilman
gl_shader_cache: Use static constructors for CachedShader initialization
2019-07-01rasterizer_cache: Protect inherited caches from submission levelFernando Sahmkow
2019-06-29texture_cache: Pack sibling queries inside a methodReinUsesLisp
2019-06-29texture_cache: Use std::vector reservation for sampled_texturesReinUsesLisp
2019-06-29texture_cache: Style changesReinUsesLisp
2019-06-29texture_cache: Use std::array for siblings_tableReinUsesLisp
2019-06-29texture_cache: Address feedbackReinUsesLisp