aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2020-04-25shader/arithmetic_integer: Fix edge case and mark IADD.X Rd.CC as unimplementedReinUsesLisp
IADD.X Rd.CC requires some extra logic that is not currently implemented. Abort when this is hit.
2020-04-25shader/arithmetic_integer: Change IAdd to UAdd to avoid signed overflowReinUsesLisp
Signed integer addition overflow might be undefined behavior. It's free to change operations to UAdd and use unsigned integers to avoid potential bugs.
2020-04-25shader/arithmetic_integer: Implement IADD.XReinUsesLisp
IADD.X takes the carry flag and adds it to the result. This is generally used to emulate 64-bit operations with 32-bit registers.
2020-04-25shader/arithmetic_integer: Implement CC for IADDReinUsesLisp
2020-04-25decode/register_set_predicate: Implement CCReinUsesLisp
P2R CC takes the state of condition codes and puts them into a register. We already have this implemented for PR (predicates). This commit implements CC over that.
2020-04-25decode/register_set_predicate: Use move for shared pointersReinUsesLisp
Avoid atomic counters used by shared pointers.
2020-04-25Merge pull request #3721 from ReinUsesLisp/sort-devicesbunnei
vulkan/wrapper: Sort physical devices
2020-04-25Merge pull request #3734 from ReinUsesLisp/half-float-modsbunnei
decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bits
2020-04-24Merge pull request #3749 from ReinUsesLisp/lea-immbunnei
shader/arithmetic_integer: Fix LEA_IMM encoding
2020-04-24Fix -Wdeprecated-copy warning.Markus Wick
2020-04-24Fix -Werror=conversion error.Markus Wick
2020-04-23decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bitsReinUsesLisp
The encoding for negation and absolute value was wrong. Extracting is now done manually. Similar instructions having different encodings is the rule, not the exception. To keep sanity and readability I preferred to extract the desired bit manually. This is implemented against nxas: https://github.com/ReinUsesLisp/nxas/blob/8dbc38995711cc12206aa370145a3a02665fd989/table.h#L68 That is itself tested against nvdisasm (Nvidia's official disassembler).
2020-04-23kernel: memory: Improve implementation of device shared memory. (#3707)bunnei
* kernel: memory: Improve implementation of device shared memory. * fixup! kernel: memory: Improve implementation of device shared memory. * fixup! kernel: memory: Improve implementation of device shared memory.
2020-04-23Merge pull request #3697 from lioncash/declarationsbunnei
CMakeLists: Enable -Wmissing-declarations on Linux builds
2020-04-22Merge pull request #3677 from FernandoS27/better-syncbunnei
Introduce Predictive Flushing and Improve ASYNC GPU
2020-04-22vk_pipeline_cache: Fix unintentional memcpy into optionalReinUsesLisp
The intention behind this was to assign a float to from an uint32_t, but it was unintentionally being copied directly into the std::optional. Copy to a temporary and assign that temporary to std::optional. This can be replaced with std::bit_cast<float> once we are in C++20.
2020-04-22GL_Fence_Manager: use GL_TIMEOUT_IGNORED instead of a loop,Fernando Sahmkow
2020-04-22Merge pull request #3653 from ReinUsesLisp/nsight-aftermathFernando Sahmkow
renderer_vulkan: Integrate Nvidia Nsight Aftermath on Windows
2020-04-22Address Feedback.Fernando Sahmkow
2020-04-22Async GPU: Correct flushing behavior to be similar to old async GPU behavior.Fernando Sahmkow
2020-04-22MaxwellDMA: Correct copying on accuracy level.Fernando Sahmkow
2020-04-22ShaderCache/PipelineCache: Cache null shaders.Fernando Sahmkow
2020-04-22Address Feedback.Fernando Sahmkow
2020-04-22Fix GCC error.Fernando Sahmkow
2020-04-22QueryCache: Only do async flushes on async gpu.Fernando Sahmkow
2020-04-22Async GPU: Only do reactive flushing on Extreme Level.Fernando Sahmkow
2020-04-22vk_fence_manager: Initial implementationReinUsesLisp
2020-04-22QueryCache: Implement Async Flushes.Fernando Sahmkow
2020-04-22OpenGL: Guarantee writes to Buffers.Fernando Sahmkow
2020-04-22GPU: Implement Flush Requests for Async mode.Fernando Sahmkow
2020-04-22FenceManager: Manage syncpoints and rename fences to semaphores.Fernando Sahmkow
2020-04-22BufferCache: Refactor async managing.Fernando Sahmkow
2020-04-22FenceManager: Implement async buffer cache flushes on High settingsFernando Sahmkow
2020-04-22Rasterizer: Document SignalFence & ReleaseFences and setup skeletons on Vulkan.Fernando Sahmkow
2020-04-22GPU: Fix rebase errors.Fernando Sahmkow
2020-04-22Rasterizer: Disable fence managing in synchronous gpu.Fernando Sahmkow
2020-04-22ThreadManager: Sync async reads on accurate gpu.Fernando Sahmkow
2020-04-22FenceManager: Implement should wait.Fernando Sahmkow
2020-04-22GPU: Implement a Fence Manager.Fernando Sahmkow
2020-04-22OpenGL: Implement Fencing backend.Fernando Sahmkow
2020-04-22TextureCache: Flush linear textures after finishing rendering.Fernando Sahmkow
2020-04-22GPU: Delay Fences.Fernando Sahmkow
2020-04-22BufferCache: Implement OnCPUWrite and SyncGuestHostFernando Sahmkow
2020-04-22GPU: Refactor synchronization on Async GPUFernando Sahmkow
2020-04-22Texture Cache: Implement OnCPUWrite and SyncGuestHostFernando Sahmkow
2020-04-22UI: Replasce accurate GPU option for GPU Accuracy LevelFernando Sahmkow
2020-04-21Merge pull request #3714 from lioncash/copiesbunnei
gl_shader_decompiler: Avoid copies where applicable
2020-04-21Merge pull request #3718 from ReinUsesLisp/better-pipeline-stateRodrigo Locatti
fixed_pipeline_state: Pack structure, use memcmp and CityHash on it
2020-04-21Merge pull request #3698 from lioncash/warningbunnei
General: Resolve minor assorted warnings
2020-04-20Merge pull request #3695 from ReinUsesLisp/default-attributesbunnei
maxwell_3d: Initialize format attributes constant as one