| Age | Commit message (Collapse) | Author |
|
file_sys: Replace inclusions with forward declarations where applicable
|
|
yuzu: Add motion and touch configuration from Citra
|
|
hle/kernel: Fix data race in GetCurrentHostThreadID
|
|
|
|
|
|
This allows homebrew applications to be able to properly detect connected controllers.
|
|
|
|
Co-authored-by: James Rowe <jroweboy@gmail.com>
Co-authored-by: Its-Rei <kupfel@gmail.com>
|
|
As reported by tsan, SelectThreads could write to
is_context_switch_pending holding a mutex while SwitchToCurrent reads it
without holding any.
It is assumed that the author didn't want an atomic here, so the code is
reordered so that whenever is_context_switch_pending is read inside
SwitchToContext, the mutex is locked.
|
|
As reported by tsan, host_thread_ids could be read while
any of the RegisterHostThread variants were called.
To fix this, lock the register mutex when yuzu is running in multicore
mode and GetCurrentHostThreadID is called.
|
|
We can just log out the parameters in the meantime.
|
|
Same behavior, minus unnecessary inclusions where not necessary.
|
|
Initialize id to a deterministic value and also mark the unreachable
cases in the switch with UNREACHABLE().
|
|
Migrates a remaining common file over to the Common namespace, making it
consistent with the rest of common files.
This also allows for high-traffic FS related code to alias the
filesystem function namespace as
namespace FS = Common::FS;
for more concise typing.
|
|
core: Resolve several -Wextra-semi warnings
|
|
software_keyboard: Resolve a pessimizing move warning
|
|
system_control: Make functions internally linked where applicable
|
|
kernel/scheduler: Mark SchedulerLock constructor as nodiscard
|
|
Prevents a useless self-assignment from occurring.
|
|
A std::vector created in place like this is already an rvalue and
doesn't need to be moved.
|
|
We can amend one of the cascade macros to require semicolons in order to
compile. In other cases, we can just remove the superfluous semicolons.
|
|
Allows the compiler to warn about cases where the constructor is used
but then immediately discarded, which is a potential cause of
locking/unlocking bugs.
|
|
|
|
kernel: Remove unused variables
|
|
am: Unstub SetScreenShotPermission
|
|
This makes it more inline with its currently unavailable standardized
analogue std::derived_from.
While we're at it, we can also make the template match the requirements
of the standardized variant as well.
|
|
address_arbiter/scheduler: Resolve sign conversion warnings
|
|
ipc_helpers: Only allow trivially copyable objects with PushRaw() and PopRaw()
|
|
buffer_queue: Make use of designated initializers/std::nullopt where applicable
|
|
These functions are only ever used internally as implementation details
for GenerateRandomRange(), so these can be given internal linkage.
|
|
Resolves a few compiler warnings.
|
|
|
|
Makes our type conversion explicit.
|
|
It's undefined behavior to use non-trivially copyable objects with
std::memcpy, so we can add asserts to catch usages of these at
compile-time.
|
|
vi: IApplicationDisplayService:GetIndirectLayerImageRequiredMemoryInfo
|
|
hle: nvdrv: Rewrite of GPU memory management.
|
|
yuzu: Resolve C++20 deprecation warnings related to lambda captures
|
|
profile_manager: Make use of designated initializers
|
|
fsp-srv: Stub Read/WriteSaveDataFileSystemExtraDataWithMaskBySaveDataAttribute
|
|
service/ldr: Resolve sign mismatch warnings
|
|
C++20 deprecates capturing the this pointer via the '=' capture.
Instead, we replace it or extend the capture specification.
|
|
We were performing an int < size_t comparison. We can just correct the
type of the induction variable.
|
|
Allows compilers to eliminate unnecessary zeroing out of the optional's
buffer.
|
|
|
|
Allows some implementations to completely avoid unnecessarily zeroing
out the internal buffer.
|
|
More compact code.
|
|
|
|
WriteBuffer (#4465)
* ipc: Allow all trivially copyable objects to be passed directly into WriteBuffer
With the support of C++20, we can use concepts to deduce if a type is an STL container or not.
* More agressive concept for stl containers
* Add -fconcepts
* Move to common namespace
* Add Common::IsBaseOf
|
|
|
|
|