Age | Commit message (Collapse) | Author |
|
common/xbyak_abi: Mark defined functions in header as inline
|
|
Require by Zelda Breath Of The Wild
|
|
common/misc: use windows.h
|
|
mm_u: Move interface class into the cpp file
|
|
Avoids potential One Definition Rule violations when these are used in
the future.
|
|
|
|
These currently aren't used and contain commented out source code that
corresponds to Dolphin's JIT. Given our CPU code is organized quite
differently, we shouldn't be keeping this around (at the moment it just
adds to compile times marginally).
|
|
audout_u: Correct IAudioOut initializer list order
|
|
Fix BC7U
|
|
renderer_opengl: Implement RenderTargetFormat::RGBA16_UNORM.
|
|
The filter is returned via const reference, so this was making a
pointless copy of the entire filter every time a message was being
pushed into the logger instance.
|
|
|
|
Added missing channel devices
|
|
Ensures both variants go through the same interface, and while we're at
it, add Finalize to provide the inverse of Initialize for consistency.
|
|
Now if changes are ever made to the behavior of the class, it doesn't
involve rebuilding everything that includes the mm_u header.
|
|
Orders elements in the precise order they'll be initialized.
|
|
- Used by Breath of the Wild.
|
|
linux-mingw does not really like this.
|
|
Implement RG32UI and R32UI
|
|
audio_core: Interpolate
|
|
arm_dynarmic: Remove IsExecuting check from PrepareReschedule
|
|
maxwell_to_gl: Implement VertexAttribute::Size::Size_8.
|
|
No longer required. HaltExecution is a no-op if it is not currently executing.
|
|
Needed for xenoblade
|
|
|
|
|
|
|
|
vfs: Use sanitized paths within MoveFile() and MoveDirectory()
|
|
card_image: Simplify return statement of GetSubdirectories()
|
|
kernel/object: Tighten object against data races
|
|
- Used by Breath of the Wild.
|
|
Despite being covered by a global mutex, we should still ensure that the
class handles its reference counts properly. This avoids potential
shenanigans when it comes to data races.
Given this is the root object that drives quite a bit of the kernel
object hierarchy, ensuring we always have the correct behavior (and no
races) is a good thing.
|
|
- Used by Breath of the Wild.
|
|
renderer_opengl: Implement RenderTargetFormat::RG8_UNORM.
|
|
|
|
|
|
- Used by Breath of the Wild.
|
|
- Used by Breath of the Wild.
|
|
Use an approximated amortized amount of ticks when advancing timing.
|
|
scheduler: Make HaveReadyThreads() a const member function
|
|
Fixed a bunch of race conditions when running in multicore mode.
|
|
Kernel/Mutex: Don't duplicate threads in the mutex waiter list.
|
|
gl_shader_decompiler: Implement XMAD instruction.
|
|
We divide the number of ticks to add by the number of cores (4) to obtain a more or less rough estimate of the actual number of ticks added. This assumes that all 4 cores are doing similar work. Previously we were adding ~4 times the number of ticks, thus making the games think that time was going way too fast.
This lets us bypass certain hangs in some games like Breath of the Wild.
We should modify our CoreTiming to support multiple cores (both running in a single thread, and in multiple host threads).
|
|
The current core may have nothing to do with the core where the new thread was scheduled to run. In case it's the same core, then the following PrepareReshedule call will take care of that.
|
|
Another thread may write to this variable while the core in question is in the middle of checking for a reschedule request.
|
|
Another thread might be in the middle of an SVC, thus altering the state of the schedulers.
|
|
Another thread might be in the middle of a reschedule, thus altering the state of the schedulers.
|
|
WakeAfterDelay might be called from any host thread, so err on the side of caution and use the thread-safe CoreTiming::ScheduleEventThreadsafe.
Note that CoreTiming is still far from thread-safe, there may be more things we have to work on for it to be up to par with what we want.
|
|
|