Fernando Sahmkow
66035b1641
RasterizerCache: Correct documentation.
6 years ago
Fernando Sahmkow
a14e93d0ba
VideoCore: Use SyncGuestMemory mechanism for Shader/Pipeline Cache invalidation.
6 years ago
Fernando Sahmkow
02f2fa510d
Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing.
6 years ago
Fernando Sahmkow
e4fa20d3e3
rasterizer_cache: Protect inherited caches from submission level
7 years ago
Fernando Sahmkow
ce5862c505
Correct possible error on Rasterizer Caches
There was a weird bug that could happen if the object died directly and
the cache address wasn't stored.
7 years ago
Fernando Sahmkow
5f431ebec9
RasterizerCache Redesign: Flush
flushing is now responsability of children caches instead of the cache
object. This change will allow the specific cache to pass extra
parameters on flushing and will allow more flexibility.
7 years ago
Lioncash
eb88e9d088
general: Use deducation guides for std::lock_guard and std::unique_lock
Since C++17, the introduction of deduction guides for locking facilities
means that we no longer need to hardcode the mutex type into the locks
themselves, making it easier to switch mutex types, should it ever be
necessary in the future.
7 years ago
Lioncash
e2256a1d54
video_core: Amend constructor initializer list order where applicable
Specifies the members in the same order that initialization would take
place in.
This also silences -Wreorder warnings.
7 years ago
bunnei
6c61263b5c
Revert "Devirtualize Register/Unregister and use a wrapper instead."
- Fixes graphical issues from transitions in Super Mario Odyssey.
7 years ago
bunnei
7fccfc3ee7
gpu: Use host address for caching instead of guest address.
7 years ago
Fernando Sahmkow
6c290d747b
Devirtualize Register/Unregister and use a wrapper instead.
7 years ago
Fernando Sahmkow
25d0fe7875
rasterizer_cache: Expose FlushObject to Child classes and allow redefining of Register and Unregister
7 years ago
FernandoS27
2db82d4c09
Improved GPU Caches lookup Speed
7 years ago
Lioncash
b182af1e9b
rasterizer_cache: Remove reliance on the System singleton
Rather than have a transparent dependency, we can make it explicit in
the interface. This also gets rid of the need to put the core include in
a header.
7 years ago
Lioncash
8280ddfd1c
rasterizer_cache: Add missing virtual destructor to RasterizerCacheObject
Ensures that destruction will always do the right thing in any context.
7 years ago
FernandoS27
efa39b1b35
Clang format and other fixes
7 years ago
FernandoS27
893e144b02
Implement GetInRange in the Rasterizer Cache
7 years ago
bunnei
b1c31be284
config: Rename use_accurate_framebuffers -> use_accurate_gpu_emulation.
- This will be used as a catch-all for slow-but-accurate GPU emulation paths.
7 years ago
bunnei
b3ee8ceca5
rasterizer_cache: Refactor to support in-order flushing.
7 years ago
bunnei
5084ec9509
gl_rasterizer_cache: Only flush when use_accurate_framebuffers is enabled.
7 years ago
bunnei
a8c8207341
rasterizer_cache: Reintroduce method for flushing.
7 years ago
Lioncash
84f855a61d
core/core: Replace includes with forward declarations where applicable
The follow-up to 88597535d6 , which
replaces most of the includes in the core header with forward declarations.
This makes it so that if any of the headers the core header was
previously including change, then no one will need to rebuild the bulk
of the core, due to core.h being quite a prevalent inclusion.
This should make turnaround for changes much faster for developers.
7 years ago
bunnei
8fea1eb1f8
rasterizer_cache: Use boost::interval_map for a more accurate cache.
7 years ago
bunnei
d190b46a38
gl_renderer: Cache textures, framebuffers, and shaders based on CPU address.
7 years ago
bunnei
3a96e40e8a
gl_rasterizer: Fix issues with the rasterizer cache.
- Use a single cached page map.
- Fix calculation of ending page.
7 years ago
bunnei
3e58cfc5e6
video_core: Add RasterizerCache class for common cache management code.
7 years ago