summaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
2020-08-18common/telemetry: Migrate namespace into the Common namespaceLioncash
Migrates the Telemetry namespace into the Common namespace to make the code consistent with the rest of our common code.
2020-08-18vfs_real: Resolve sign conversion warningsLioncash
2020-08-18vfs_real: Avoid redundant map lookupsLioncash
Avoids some trivially avoidable map lookups by keeping the result of find operations around and querying them.
2020-08-17Merge pull request #4535 from lioncash/fileutilbunnei
common/fileutil: Convert namespace to Common::FS
2020-08-17Merge pull request #4494 from lioncash/transcodebunnei
aes_util: Make use of non-template variant of Transcode
2020-08-16dynarmic: Add unsafe optimizationsMerryMage
2020-08-16common/fileutil: Convert namespace to Common::FSLioncash
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.
2020-08-15Merge pull request #4526 from lioncash/core-semibunnei
core: Resolve several -Wextra-semi warnings
2020-08-15Merge pull request #4527 from lioncash/pessimizing2bunnei
software_keyboard: Resolve a pessimizing move warning
2020-08-15Merge pull request #4492 from lioncash/linkagebunnei
system_control: Make functions internally linked where applicable
2020-08-15Merge pull request #4463 from lioncash/lockdiscardbunnei
kernel/scheduler: Mark SchedulerLock constructor as nodiscard
2020-08-14time_zone_content_manager: Collapse auto and default caseLioncash
Prevents a useless self-assignment from occurring.
2020-08-14software_keyboard: Resolve a pessimizing move warningLioncash
A std::vector created in place like this is already an rvalue and doesn't need to be moved.
2020-08-14core: Resolve several -Wextra-semi warningsLioncash
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.
2020-08-14emu_window: Mark Scoped constructor and Acquire() as nodiscardLioncash
Ensures that callers make use of the constructor, preventing bugs from silently occurring.
2020-08-14kernel/scheduler: Mark SchedulerLock constructor as nodiscardLioncash
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.
2020-08-14Merge pull request #4495 from lioncash/convRodrigo Locatti
cheat_engine: Resolve implicit bool->u64 conversion
2020-08-13Merge pull request #4511 from lioncash/build2LC
General: Tidy up clang-format warnings part 2
2020-08-13General: Tidy up clang-format warnings part 2Lioncash
2020-08-11Merge pull request #4497 from lioncash/freezer-algbunnei
freezer: Make use of std::erase_if
2020-08-10Merge pull request #4496 from lioncash/ce-desigbunnei
cheat_engine: Make use of designated initializers
2020-08-10Merge pull request #4491 from lioncash/unused-varsbunnei
kernel: Remove unused variables
2020-08-09Merge pull request #4488 from lioncash/filebunnei
vfs_vector: Make creation of array vfs files less verbose
2020-08-07Merge pull request #4457 from ogniK5377/SetScreenShotPermissionbunnei
am: Unstub SetScreenShotPermission
2020-08-07common/concepts: Rename IsBaseOf to DerivedFromLioncash
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.
2020-08-06Merge pull request #4483 from lioncash/constexpr-hexbunnei
partition_data_manager: Make data arrays constexpr
2020-08-06Merge pull request #4490 from lioncash/arbiterbunnei
address_arbiter/scheduler: Resolve sign conversion warnings
2020-08-06freezer: Move entry finding to its own functionLioncash
Cleans up the callsites in other functions.
2020-08-06freezer: Take address values by valueLioncash
VAddr will always be 64-bit, so there's no need to take a trivial primitive alias by reference.
2020-08-06freezer: Make use of std::erase_ifLioncash
With C++20 we can simplify the erasing idiom.
2020-08-06cheat_engine: Resolve implicit bool->u64 conversionLioncash
We can just return zero here.
2020-08-06cheat_engine: Make use of designated initializersLioncash
Same behavior, but makes the member being assigned obvious.
2020-08-06partition_data_manager: Update master key hashesLioncash
Fills in some hashes that were previously unhandled.
2020-08-06partition_data_manager: Make data arrays constexprLioncash
Previously the constructor for all of these would run at program startup, consuming time before the application can enter main(). This is also particularly dangerous, given the logging system wouldn't have been initialized properly yet, yet the program would use the logs to signify an error. To rectify this, we can replace the literals with constexpr functions that perform the conversion at compile-time, completely eliminating the runtime cost of initializing these arrays.
2020-08-06partition_data_manager: Eliminate magic valueLioncash
We can use sizeof to make it obvious at the call site where the value is coming from.
2020-08-06aes_util: Make use of non-template variant of TranscodeLioncash
Same behavior, less template instantiations.
2020-08-05Fix thread naming on Linux, which limits names to 15 bytes.comex
- In `SetCurrentThreadName`, when on Linux, truncate to 15 bytes, as (at least on glibc) `pthread_set_name_np` will otherwise return `ERANGE` and do nothing. - Also, add logging in case `pthread_set_name_np` returns an error anyway. This is Linux-specific, as the Apple and BSD versions of `pthread_set_name_np return `void`. - Change the name for CPU threads in multi-core mode from "yuzu:CoreCPUThread_N" (19 bytes) to "yuzu:CPUCore_N" (14 bytes) so it fits into the Linux limit. Some other thread names are also cut off, but I didn't bother addressing them as you can guess them from the truncated versions. For a CPU thread, truncation means you can't see which core it is!
2020-08-05Merge pull request #4489 from lioncash/typesafebunnei
ipc_helpers: Only allow trivially copyable objects with PushRaw() and PopRaw()
2020-08-05Merge pull request #4484 from lioncash/aesutilbunnei
aes_util: Allow SetIV() to be non-allocating
2020-08-05Merge pull request #4475 from lioncash/bqueuebunnei
buffer_queue: Make use of designated initializers/std::nullopt where applicable
2020-08-05system_control: Make functions internally linked where applicableLioncash
These functions are only ever used internally as implementation details for GenerateRandomRange(), so these can be given internal linkage.
2020-08-05kernel: Remove unused variablesLioncash
Resolves a few compiler warnings.
2020-08-05scheduler: Resolve sign conversion warningLioncash
2020-08-05address_arbiter: Resolve sign conversion warningLioncash
Makes our type conversion explicit.
2020-08-05Merge pull request #4444 from lioncash/volatilebunnei
common/atomic_ops: Don't cast away volatile from pointers
2020-08-05ipc_helpers: Only allow trivially copyable objects with PushRaw() and PopRaw()Lioncash
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.
2020-08-05vfs_vector: Make creation of array vfs files less verboseLioncash
We can add a helper function to make creation of these files nicer. While we're at it, we can eliminate an unnecessary std::array copy in the constructor. This makes the overhead on some of these functions way less intensive, given some arrays were quite large. e.g. The timezone location names are 9633 bytes in size.
2020-08-05Merge pull request #4466 from ogniK5377/loader-type-safebunnei
loader: Make IdentifyFile typesafe
2020-08-04Merge pull request #4476 from lioncash/tzbunnei
time_zone_binary: Make use of designated initializers
2020-08-04Merge pull request #4401 from ogniK5377/GetIndirectLayerImageRequiredMemoryInfobunnei
vi: IApplicationDisplayService:GetIndirectLayerImageRequiredMemoryInfo