summaryrefslogtreecommitdiff
path: root/src/common (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add xbyak externalGravatar David Marcec2020-05-303-1/+316
|
* Fix macOS code and change "Swapfile" to "Swap"Gravatar Morph2020-05-271-2/+5
|
* main: Log host system memory parametersGravatar Morph2020-05-173-0/+81
| | | | Logs both physical memory and swapfile sizes, this is useful for support.
* time_zone: Use std::chrono::seconds for strong typing.Gravatar bunnei2020-05-122-3/+4
|
* common: Add module to get the current time zone.Gravatar bunnei2020-05-113-0/+68
|
* Replace externals with Conan (#3735)Gravatar James Rowe2020-05-081-2/+2
| | | | | | | | | | | | | | | | | | | | | * Remove git submodules that will be loaded through conan * Move custom Find modules to their own folder * Use conan for downloading missing external dependencies * CI: Change the yuzu source folder user to the user that the containers run on * Attempt to remove dirty mingw build hack * Install conan on the msvc build * Only set release build type when using not using multi config generator * Re-add qt bundled to workaround an issue with conan qt not downloading prebuilt binaries * Add workaround for submodules that use legacy CMAKE variables * Re-add USE_BUNDLED_QT on the msvc build bot
* acc: Return a unique value per account for GetAccountIdGravatar David Marcec2020-04-291-0/+5
|
* Fix -Werror=conversion error.Gravatar Markus Wick2020-04-241-1/+1
|
* Merge pull request #3630 from benru/open-windows-network-filesGravatar bunnei2020-04-171-1/+8
|\ | | | | common/file_util: Allow access to files on network shares
| * common/file_util: Allow access to files on network sharesGravatar Ben Russell2020-04-091-1/+8
| | | | | | | | | | | | | | | | On Windows, network shares use paths like \\server\share\file which were being broken by FileUtil::SanitizePath() removing double slashes. Changed the code in SanitizePath to permit a double-backslash if it occurs at the start of a filepath (on Windows only).
* | Merge pull request #3672 from lioncash/nullGravatar Fernando Sahmkow2020-04-172-9/+33
|\ \ | | | | | | file_util: Early-exit in WriteArray and ReadArray if specified lengths are zero
| * | file_util: Early-exit in WriteArray and ReadArray if specified lengths are zeroGravatar Lioncash2020-04-152-9/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's undefined behavior to pass a null pointer to std::fread and std::fwrite, even if the length passed in is zero, so we must perform the precondition checking ourselves. A common case where this can occur is when passing in the data of an empty std::vector and size, as an empty vector will typically have a null internal buffer. While we're at it, we can move the implementation out of line and add debug checks against passing in nullptr to std::fread and std::fwrite.
* | | common: page_table: Update to use VirtualBuffer and simplify.Gravatar bunnei2020-04-172-53/+18
| | |
* | | common: Add VirtualBuffer class, to abstract memory virtualization.Gravatar bunnei2020-04-173-0/+112
| | |
* | | common: scope_exit: Implement mechanism for canceling a scope exit.Gravatar bunnei2020-04-171-1/+8
| | |
* | | common: alignment: Add a helper function for generic alignment checking.Gravatar bunnei2020-04-171-0/+7
| | |
* | | common: common_funcs: Add a macro for defining enum flag operators.Gravatar bunnei2020-04-171-0/+32
|/ /
* | Merge pull request #3594 from ReinUsesLisp/vk-instanceGravatar bunnei2020-04-103-0/+183
|\ \ | |/ |/| yuzu: Drop SDL2 and Qt frontend Vulkan requirements
| * common/dynamic_library: Import and adapt helper from DolphinGravatar ReinUsesLisp2020-04-073-0/+183
| |
* | common: Port some changes from dolphin (#5127)Gravatar Vitor K2020-04-012-15/+16
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * IOFile: Make the move constructor and move assignment operator noexcept Certain parts of the standard library try to determine whether or not a transfer operation should either be a copy or a move. The prevalent notion of move constructors/assignment operators is that they should not throw, they simply move an already existing resource somewhere else. This is typically done with 'std::move_if_noexcept'. Like the name says, if a type's move constructor is noexcept, then the functions retrieves an r-value reference (for move semantics), or an l-value (for copy semantics) if it is not noexcept. As IOFile deletes the copy constructor and copy assignment operators, using IOFile with certain parts of the standard library can fail in unexcepted ways (especially when used with various container implementations). This prevents that. * fix various instances of -1 being assigned to unsigned types * do not assign in conditional statements * File/IOFile: Check _tfopen_s properly * common/file_util.cpp: address review comments Co-authored-by: Lioncash <mathew1800@gmail.com> Co-authored-by: Shawn Hoffman <godisgovernment@gmail.com> Co-authored-by: Sepalani <sepalani@hotmail.fr>
* Merge pull request #3508 from FernandoS27/page-tableGravatar bunnei2020-03-142-3/+24
|\ | | | | PageTable: move backing addresses to a children class as the CPU page table does not need them.
| * PageTable: move backing addresses to a children class as the CPU page table ↵Gravatar Fernando Sahmkow2020-03-142-3/+24
| | | | | | | | | | | | | | | | does not need them. This PR aims to reduce the memory usage in the CPU page table by moving GPU specific parameters into a child class. This saves 1Gb of Memory for most games.
* | shader/transform_feedback: Add host API friendly TFB builderGravatar ReinUsesLisp2020-03-131-0/+2
| |
* | video_core: Rename "const buffer locker" to "registry"Gravatar ReinUsesLisp2020-03-091-2/+2
| |
* | gl_shader_cache: Rework shader cache and remove post-specializationsGravatar ReinUsesLisp2020-03-091-2/+0
|/ | | | | Instead of pre-specializing shaders and then post-specializing them, drop the later and only "specialize" the shader while decoding it.
* common/math_util: Support float type rectanglesGravatar ReinUsesLisp2020-02-281-2/+14
|
* Merge pull request #3326 from FearlessTobi/port-5039Gravatar bunnei2020-01-244-36/+23
|\ | | | | Port citra-emu/citra#5039: "common/logging: don't use regex for path trimming"
| * common/logging: don't use regex for path trimmingGravatar BreadFish642020-01-234-36/+23
| |
* | Address second part of review commentsGravatar FearlessTobi2020-01-231-1/+1
| |
* | Input: UDP Client to provide motion and touch controlsGravatar fearlessTobi2020-01-231-0/+9
|/ | | | | | | | An implementation of the cemuhook motion/touch protocol, this adds the ability for users to connect several different devices to citra to send direct motion and touch data to citra. Co-Authored-By: jroweboy <jroweboy@gmail.com>
* Remove unused CPU Vendor string and telemtry fieldGravatar James Rowe2020-01-173-114/+0
| | | | The information is duplicated in the brand string and the telemetry field is unused
* Fix git version in scm_rev.cppGravatar James Rowe2020-01-161-0/+5
|
* common: SPSCQueue: Notify after incrementing queue size.Gravatar bunnei2019-12-161-2/+9
|
* fix clang-format and lambda captureGravatar Weiyi Wang2019-11-231-1/+2
|
* unfold UNREACHABLE implementation for dumb compilersGravatar Weiyi Wang2019-11-231-2/+2
| | | We relies on UNREACHABLE's noreturn attribute to eliminate parent's "no return value" warning. However, this was wrapped in a `if(!false)` block, which compilers may not unfold to recognize the noreturn nature.
* common/logging: Silence no return value warningsGravatar ReinUsesLisp2019-11-151-2/+6
|
* common_funcs: Remove semicolons from INSERT_PADDING_* macrosGravatar Lioncash2019-11-141-4/+6
| | | | | Makes code that uses the macros consistent by requiring the lines to be terminated with a semicolon.
* common/hash: Remove unused HashableStructGravatar Lioncash2019-11-131-35/+0
| | | | | This is unused, so it can be removed. There's better ways of ensuring zeroed out padding bits, like using zero-initialization, anyhow.
* common_funcs: silence sign-conversion warnings in MakeMagic()Gravatar Lioncash2019-11-131-1/+1
| | | | | We can trivially resolve these by casting the characters to unsigned values and then shifting the bits.
* ci: Populate build repository from Azure environmentGravatar Zach Hilman2019-11-051-11/+2
|
* common_func: Use std::array for INSERT_PADDING_* macros.Gravatar bunnei2019-11-032-12/+17
| | | | - Zero initialization here is useful for determinism.
* common/bit_field: Remove FORCE_INLINE calls Gravatar Tobias2019-11-031-2/+2
| | | | See bunneis comment here https://github.com/citra-emu/citra/pull/4629#discussion_r258533167. They were supposed to be removed by him, but he missed them.
* Merge pull request #2971 from FernandoS27/new-scheduler-v2Gravatar David2019-10-281-0/+7
|\ | | | | Kernel: Implement a New Thread Scheduler V2
| * Kernel Scheduler: Make sure the global scheduler shutdowns correctly.Gravatar Fernando Sahmkow2019-10-151-0/+7
| |
* | Shader_IR: Address Feedback.Gravatar Fernando Sahmkow2019-10-261-1/+1
| |
* | VideoCore: Unify const buffer accessing along engines and provide ↵Gravatar Fernando Sahmkow2019-10-252-2/+15
| | | | | | | | ConstBufferLocker class to shaders.
* | common/algorithm: Add description comment indicating intended algorithmsGravatar Lioncash2019-10-151-0/+5
| | | | | | | | | | Makes it explicit that the header is intended for iterator-based algorithms that can ideally operate on any type.
* | common: Rename binary_find.h to algorithm.hGravatar Lioncash2019-10-152-1/+2
|/ | | | | | Makes the header more general for other potential algorithms in the future. While we're at it, include a missing <functional> include to satisfy the use of std::less.
* alignment: Resolve allocator construction issues on debugGravatar Lioncash2019-10-061-0/+5
| | | | | | | | | | | This was related to the source allocator being passed into the constructor potentially having a different type than allocator being constructed. We simply need to provide a constructor to handle this case. This resolves issues related to the allocator causing debug builds on MSVC to fail.
* alignment: Specify trait definitions within the allocatorGravatar Lioncash2019-10-061-0/+5
| | | | | Allows containers and other data structures to consider optimizations based off of them. We satisfy all of these requirements anyways.