summaryrefslogtreecommitdiff
path: root/src/common
AgeCommit message (Collapse)Author
2020-09-03Merge pull request #4611 from lioncash/xbyak2bunnei
externals: Update Xbyak to 5.96
2020-09-03Merge pull request #4578 from lioncash/xorbunnei
common_funcs: Add missing XOR operators to DECLARE_ENUM_FLAG_OPERATORS
2020-09-02input_common/motion_input: Make use of Common::PI constantMorph
Also amend the copyright notice to yuzu's instead of Dolphin's, which was mistakenly copy-pasted from another file.
2020-09-02Merge pull request #4570 from german77/motionInputbunnei
input_common: Add a basic class for motion devices
2020-08-31Merge pull request #4588 from ReinUsesLisp/tsan-eventbunnei
common/thread: Fix data race in is_set
2020-08-31Merge pull request #4461 from comex/thread-namesLC
Fix thread naming on Linux, which limits names to 15 bytes.
2020-08-30externals: Update Xbyak to 5.96Lioncash
I made a request on the Xbyak issue tracker to allow some constructors to be constexpr in order to avoid static constructors from needing to execute for some of our register constants. This request was implemented, so this updates Xbyak so that we can make use of it.
2020-08-27Implement a basic class for motion devicesgerman
2020-08-27Merge pull request #4530 from Morph1984/mjolnir-p1bunnei
Project Mjölnir: Part 1 - Input Rewrite
2020-08-27Merge pull request #4577 from lioncash/assertsbunnei
common/assert: Make use of C++ attribute syntax
2020-08-26Project Mjölnir: Part 1Morph
Co-authored-by: James Rowe <jroweboy@gmail.com> Co-authored-by: Its-Rei <kupfel@gmail.com>
2020-08-26common/thread: Fix data race in is_setReinUsesLisp
As report by tsan, Event::Set can write is_set while WaitFor and friends are reading from it. To address this issue, make is_set an atomic.
2020-08-25Merge pull request #4548 from lioncash/colorbunnei
common/color: Migrate code over to the Common namespace
2020-08-24common_funcs: Add missing XOR operators to DECLARE_ENUM_FLAG_OPERATORSLioncash
Ensures that the full set of bitwise operators are available for types that make use of this macro.
2020-08-24common/assert: Make use of C++ attribute syntaxLioncash
Normalizes the syntax used for attributes
2020-08-22web_service: Move web_result.h into web_serviceLioncash
This is the only place it's actively used. It's also more appropriate for web-related structures to be within the web service target. Especially given this one doesn't rely on anything in the common library.
2020-08-20Merge pull request #4546 from lioncash/telemetrybunnei
common/telemetry: Migrate namespace into the Common namespace
2020-08-19Merge pull request #4547 from lioncash/header-conceptbunnei
common/concepts: Move <type_traits> include out of the Common namespace
2020-08-19Revert "common/time_zone: Simplify GetOsTimeZoneOffset()"bunnei
2020-08-18Merge pull request #4539 from lioncash/discbunnei
common: Silence two discarded result warnings
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-18common/color: Migrate code over to the Common namespaceLioncash
No external code makes use of this header, so we can freely change the namespace.
2020-08-18common/concepts: Move <type_traits> include out of the Common namespaceLioncash
This is a compiler/linker error waiting to happen.
2020-08-17Merge pull request #4535 from lioncash/fileutilbunnei
common/fileutil: Convert namespace to Common::FS
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-16common: Silence two discarded result warningsLioncash
These are intentionally discarded internally, since the rest of the public API allows querying success. We want all non-internal uses of these functions to be explicitly checked, so we can signify that we intentionally want to discard the return values here.
2020-08-16common/time_zone: Simplify GetOsTimeZoneOffset()Lioncash
We can simplify this function down into a single line with the use of fmt. A benefit with the fmt approach is that the fmt variant of localtime is thread-safe as well, making GetOsTimeZoneOffset() thread-safe as well.
2020-08-15common/compression: Roll back std::span changesLioncash
Seems like all compilers don't support std::span yet.
2020-08-15common: Make use of [[nodiscard]] where applicableLioncash
Now that clang-format makes [[nodiscard]] attributes format sensibly, we can apply them to several functions within the common library to allow the compiler to complain about any misuses of the functions.
2020-08-15Merge pull request #4416 from lioncash/spanbunnei
lz4_compression/zstd_compression: Make use of std::span in interfaces
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 #4493 from jbeich/dragonflybunnei
common/virtual_buffer: drop unused includes
2020-08-08General: Tidy up clang-format warningsLioncash
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-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-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 #4477 from lioncash/log-desigbunnei
logging/backend: Make use of designated initializers
2020-08-05common/virtual_buffer: drop unused includesJan Beich
On DragonFly and NetBSD build fails with src/common/virtual_buffer.cpp src/common/virtual_buffer.cpp:16:10: fatal error: sys/sysinfo.h: No such file or directory #include <sys/sysinfo.h> ^~~~~~~~~~~~~~~
2020-08-05Merge pull request #4444 from lioncash/volatilebunnei
common/atomic_ops: Don't cast away volatile from pointers
2020-08-03logging/backend: Make use of designated initializersLioncash
Same behavior, less code.
2020-08-03ipc: Allow all trivially copyable objects to be passed directly into ↵David
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
2020-08-03Merge pull request #4263 from lat9nq/fix-screencaps-2David
screenshots: Option to save screenshots immediately in a specified directory + Linux workaround
2020-07-28common/atomic_ops: Don't cast away volatile from pointersLioncash
Preserves the volatility of the pointers being casted.
2020-07-25Merge pull request #4415 from lioncash/maybebunnei
virtual_buffer: Mark size parameter of FreeMemoryPages() as [[maybe_unused]]
2020-07-25common/string_util: Remove unimplemented function prototype (#4414)LC
This function was relocated to log.h as a constexpr function, so this can be removed.
2020-07-25lz4_compression: Make use of std::span in interfacesLioncash
Allows compressing the data and size parameters into one.
2020-07-25zstd_compression: Make use of std::span in interfacesLioncash
Allows condensing the data and size parameters into a single argument.
2020-07-25virtual_buffer: Mark size parameter of FreeMemoryPages() as [[maybe_unused]]Lioncash
This isn't used on Windows, but is used on non-Windows operating systems.