aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-04-16CMakeLists: Make missing declarations a compile-time errorLioncash
Ensures that our code always has its linkage explicit.
2020-04-16General: Resolve warnings related to missing declarationsLioncash
2020-04-17gdbstub: Fix some gdbstub jankinessMerryMage
1. Ensure that register information available to gdbstub is most up-to-date. 2. There's no reason to check for current_thread == thread when emitting a trap. Doing this results in random hangs whenever a step happens upon a thread switch.
2020-04-16Merge pull request #3671 from lioncash/switchbunnei
kernel/thread: Resolve -Wswitch warnings
2020-04-16key_manager: Resolve missing field initializer warningLioncash
2020-04-16decode/memory: Resolve unused variable warningLioncash
Only the first element of the returned pair is ever used.
2020-04-16decode/texture: Resolve unused variable warnings.Lioncash
Some variables aren't used, so we can remove these. Unfortunately, diagnostics are still reported on structured bindings even when annotated with [[maybe_unused]], so we need to unpack the elements that we want to use manually.
2020-04-16decode/texture: Collapse loop down into std::generateLioncash
Same behavior, less code.
2020-04-16decode/texture: Eliminate trivial missing field initializer warningsLioncash
We can just specify the initializers.
2020-04-16time_zone_manager: Resolve sign conversion warningsLioncash
ttis and ats will never exceed the length of INT32_MAX in our case, so this is safe.
2020-04-16CMakeLists: Enable -Wmissing-declarations on Linux buildsLioncash
Allows catching cases where internal linkage isn't specified for helper functions when they should be marked as such.
2020-04-16hle_ipc: Remove std::size_t casts where applicableLioncash
These were added in the change that enabled -Wextra on linux builds so as not to introduce interface changes in the same change as a build-system flag addition. Now that the flags are enabled, we can freely change the interface to make these unnecessary.
2020-04-16Merge pull request #3673 from lioncash/extrabunnei
CMakeLists: Specify -Wextra on linux builds
2020-04-16maxwell_3d: Initialize format attributes constant as oneReinUsesLisp
nouveau expects this to be true but it doesn't set it.
2020-04-16vk_compute_pass: Implement indexed quadsReinUsesLisp
Implement indexed quads (GL_QUADS used with glDrawElements*) with a compute pass conversion. The compute shader converts from uint8/uint16/uint32 indices to uint32. The format is passed through push constants to avoid having different variants of the same shader. - Used by Fast RMX - Used by Xenoblade Chronicles 2 (it still has graphical due to synchronization issues on Vulkan)
2020-04-16Merge pull request #3600 from ReinUsesLisp/no-pointer-buf-cacheFernando Sahmkow
buffer_cache: Return handles instead of pointer to handles
2020-04-16externals: Move LibreSSL linking to httplib.Markus Wick
Neither core nor web_services use OpenSSL nor LibreSSL. However they need to link them as it's a requirement of httplib. So let's declare this within httplib instead of core and web_services.
2020-04-16input_common: Use the CMake target instead of the variable.Markus Wick
2020-04-16Merge pull request #3659 from bunnei/time-calc-standard-userRodrigo Locatti
service: time: Implement CalculateStandardUserSystemClockDifferenceByUser.
2020-04-16buffer_cache: Return handles instead of pointer to handlesReinUsesLisp
The original idea of returning pointers is that handles can be moved. The problem is that the implementation didn't take that in mind and made everything harder to work with. This commit drops pointer to handles and returns the handles themselves. While it is still true that handles can be invalidated, this way we get an old handle instead of a dangling pointer. This problem can be solved in the future with sparse buffers.
2020-04-16Merge pull request #3689 from lioncash/unused-varRodrigo Locatti
decode/shift: Remove unused variable within Shift()
2020-04-16Merge pull request #3688 from lioncash/nequalRodrigo Locatti
surface_view: Add missing operator!= to ViewParams
2020-04-16Merge pull request #3680 from lioncash/staticRodrigo Locatti
gl_device: Mark stage_swizzle as constexpr
2020-04-16Merge pull request #3687 from lioncash/constnessRodrigo Locatti
surface_base: Make IsInside() a const member function
2020-04-16Merge pull request #3685 from lioncash/copiesRodrigo Locatti
control_flow: Make use of std::move in TryInspectAddress()
2020-04-16decode/shift: Remove unused variable within Shift()Lioncash
Removes a redundant variable that is already satisfied by the IsFull() utility function.
2020-04-16surface_view: Add missing operator!= to ViewParamsLioncash
Provides logical symmetry to the interface.
2020-04-15surface_base: Make IsInside() a const member functionLioncash
This doesn't modify internal state, so this can be made const.
2020-04-15Merge pull request #3683 from lioncash/docsbunnei
video_core: Amend doxygen comment references
2020-04-15texture_cache/format_lookup_table: Fix incorrect green, blue, and alpha indicesLioncash
Previously these were all using the red component to derive the indices, which is definitely not intentional.
2020-04-15control_flow: Make use of std::move in TryInspectAddress()Lioncash
Eliminates redundant atomic reference count increments and decrements.
2020-04-15video_core: Amend doxygen comment referencesLioncash
Fixes broken documentation references.
2020-04-15gl_query_cache: Resolve use-after-move in CachedQuery move assignment operatorLioncash
Avoids potential invalid junk data from being read.
2020-04-15gl_device: Mark stage_swizzle as constexprLioncash
Previously this was mutable even though it shouldn't be.
2020-04-15track: Eliminate redundant copiesLioncash
Two variables can be references, while two others can be std::moved. Makes for 4 less atomic reference count increments and decrements.
2020-04-15CMakeLists: Specify -Wextra on linux buildsLioncash
Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well.
2020-04-15Merge pull request #3649 from FernandoS27/3d-fixRodrigo Locatti
Texture Cache: Read current data when flushing a 3D segment.
2020-04-15Merge pull request #3612 from ReinUsesLisp/redFernando Sahmkow
shader/memory: Implement RED.E.ADD and minor changes to ATOM
2020-04-15file_util: Early-exit in WriteArray and ReadArray if specified lengths are zeroLioncash
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.
2020-04-15CMakeLists: Make -Wreorder a compile-time errorLioncash
This can result in silent logic bugs within code, and given the amount of times these kind of warnings are caused, they should be flagged at compile-time so no new code is submitted with them.
2020-04-15kernel/thread: Resolve -Wswitch warningsLioncash
2020-04-15Merge pull request #3662 from ReinUsesLisp/constant-attrsMat M
gl_rasterizer: Implement constant vertex attributes
2020-04-15Texture Cache: Read current data when flushing a 3D segment.Fernando Sahmkow
This PR corrects flushing of 3D segments when data of other segments is mixed, this aims to preserve the data in place.
2020-04-15Merge pull request #3668 from ReinUsesLisp/vtx-format-16uiMat M
maxwell_to_vk: Add uint16 vertex formats
2020-04-15Merge pull request #3656 from ReinUsesLisp/glsl-full-decompileMat M
gl_shader_cache: Use CompileDepth::FullDecompile on GLSL
2020-04-15Merge pull request #3654 from ReinUsesLisp/fix-fb-attachMat M
gl_texture_cache: Fix layered texture attachment base level
2020-04-15Merge pull request #3663 from ReinUsesLisp/fcmp-rcMat M
shader/arithmetic: Add FCMP_CR variant
2020-04-15Merge pull request #3664 from ReinUsesLisp/fe3h-black-squaresMat M
Revert "gl_shader_decompiler: Implement merges with bitfieldInsert"
2020-04-15maxwell_to_vk: Add uint16 vertex formatsReinUsesLisp
2020-04-15maxwell_to_vk: Add missing breaksReinUsesLisp
Avoid invalid fallbacks.