fc040b5b70
physical_memory: Add missing include for <vector>.
2020-04-17 00:59:30 -04:00
c2f4dcb1e3
kernel: memory: Add MemoryBlock class, for managing memory blocks and their state.
2020-04-17 00:59:29 -04:00
ea5ee9918e
kernel: memory: Add memory_types.h, for things that are commonly used in memory code.
2020-04-17 00:59:29 -04:00
d364e7cf09
kernel: memory: Add SlabHeap class, for managing memory heaps.
...
- This will be used for TLS pages, among other things.
2020-04-17 00:59:29 -04:00
14aa65ce00
kernel: memory: Add AddressSpaceInfo class, for managing the memory address space.
2020-04-17 00:59:29 -04:00
dc25c86556
core: device_manager: Add a simple class to manage device RAM.
2020-04-17 00:59:29 -04:00
f1b607829e
dynarmic: Enable strict alignment checks.
...
- Also add a missing include.
2020-04-17 00:59:29 -04:00
4df6ef04ac
common: scope_exit: Implement mechanism for canceling a scope exit.
2020-04-17 00:59:28 -04:00
4caff51710
core: memory: Move to Core::Memory namespace.
...
- helpful to disambiguate Kernel::Memory namespace.
2020-04-17 00:59:28 -04:00
b838e58d63
common: alignment: Add a helper function for generic alignment checking.
2020-04-17 00:59:28 -04:00
ad48ebb2c8
core: kernel: Add svc_types header to include SVC-specific types.
2020-04-17 00:59:28 -04:00
82d457af37
core: kernel: Move SVC to its own namesapce.
2020-04-17 00:59:28 -04:00
b160804db0
externals: Update to latest dynarmic.
...
- Adds memory alignment fixes.
2020-04-17 00:59:28 -04:00
b0e3cbef7a
kernel: resource_limit: Improvements to implementation.
2020-04-17 00:59:27 -04:00
7aa0e4a7ca
loader: nso: Fix loading of static objects to be properly sized and aligned.
2020-04-17 00:59:27 -04:00
b11b424a2d
common: common_funcs: Add a macro for defining enum flag operators.
2020-04-17 00:59:27 -04:00
f2676efe23
process: SetupMainThread: Zero out argument on process start.
2020-04-17 00:11:50 -04:00
0f4f90cd04
arm_interface: Ensure ThreadContext is zero'd out.
2020-04-17 00:11:50 -04:00
dcbb39cdae
CMakeLists: Make missing declarations a compile-time error
...
Ensures that our code always has its linkage explicit.
2020-04-16 23:43:41 -04:00
e2d8be1ca2
General: Resolve warnings related to missing declarations
2020-04-16 23:43:34 -04:00
1cc9507bc5
gdbstub: Fix some gdbstub jankiness
...
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-17 05:41:43 +02:00
86f9c9aa1c
Merge pull request #3671 from lioncash/switch
...
kernel/thread: Resolve -Wswitch warnings
2020-04-16 23:30:32 -04:00
8f9c599c9f
key_manager: Resolve missing field initializer warning
2020-04-16 22:45:44 -04:00
678ac54749
decode/memory: Resolve unused variable warning
...
Only the first element of the returned pair is ever used.
2020-04-16 22:45:44 -04:00
d159643fd7
decode/texture: Resolve unused variable warnings.
...
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-16 22:45:41 -04:00
f522abd8ab
decode/texture: Collapse loop down into std::generate
...
Same behavior, less code.
2020-04-16 22:29:07 -04:00
7e2d60de26
decode/texture: Eliminate trivial missing field initializer warnings
...
We can just specify the initializers.
2020-04-16 22:27:21 -04:00
337f2dc11f
time_zone_manager: Resolve sign conversion warnings
...
ttis and ats will never exceed the length of INT32_MAX in our case, so
this is safe.
2020-04-16 22:23:59 -04:00
fc5df84581
CMakeLists: Enable -Wmissing-declarations on Linux builds
...
Allows catching cases where internal linkage isn't specified for helper
functions when they should be marked as such.
2020-04-16 22:07:16 -04:00
77356731a9
hle_ipc: Remove std::size_t casts where applicable
...
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-16 22:02:10 -04:00
79c1269f0f
Merge pull request #3673 from lioncash/extra
...
CMakeLists: Specify -Wextra on linux builds
2020-04-16 21:12:33 -04:00
238c6016f9
maxwell_3d: Initialize format attributes constant as one
...
nouveau expects this to be true but it doesn't set it.
2020-04-16 21:15:07 -03:00
c961770900
vk_compute_pass: Implement indexed quads
...
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-16 21:12:32 -03:00
c81f256111
Merge pull request #3600 from ReinUsesLisp/no-pointer-buf-cache
...
buffer_cache: Return handles instead of pointer to handles
2020-04-16 19:58:13 -04:00
5a067eda84
Merge pull request #3675 from degasus/linux_shared_libraries
...
externals: Use shared libraries if possible
2020-04-16 18:17:18 -04:00
b520978043
externals: Use shared libraries if possible
...
This is mostly done by pkgconfig.
I've focused on the larger and more stable libraries.
2020-04-16 17:03:17 +02:00
fedf750e1b
externals: Move LibreSSL linking to httplib.
...
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-16 16:46:33 +02:00
94c2c828a5
input_common: Use the CMake target instead of the variable.
2020-04-16 16:42:59 +02:00
db67e017cb
Merge pull request #3659 from bunnei/time-calc-standard-user
...
service: time: Implement CalculateStandardUserSystemClockDifferenceByUser.
2020-04-16 02:51:57 -03:00
090fd3fefa
buffer_cache: Return handles instead of pointer to handles
...
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-16 02:33:34 -03:00
a5a2ee8766
Merge pull request #3689 from lioncash/unused-var
...
decode/shift: Remove unused variable within Shift()
2020-04-16 02:05:54 -03:00
d196ce0f71
Merge pull request #3688 from lioncash/nequal
...
surface_view: Add missing operator!= to ViewParams
2020-04-16 01:39:51 -03:00
4209dba1f6
Merge pull request #3680 from lioncash/static
...
gl_device: Mark stage_swizzle as constexpr
2020-04-16 01:26:23 -03:00
60e8de7c95
Merge pull request #3687 from lioncash/constness
...
surface_base: Make IsInside() a const member function
2020-04-16 01:22:50 -03:00
612966399b
Merge pull request #3685 from lioncash/copies
...
control_flow: Make use of std::move in TryInspectAddress()
2020-04-16 01:22:40 -03:00
cd2a12e78f
decode/shift: Remove unused variable within Shift()
...
Removes a redundant variable that is already satisfied by the IsFull()
utility function.
2020-04-16 00:16:06 -04:00
5fbe8785d2
surface_view: Add missing operator!= to ViewParams
...
Provides logical symmetry to the interface.
2020-04-16 00:03:12 -04:00
d551c910bb
surface_base: Make IsInside() a const member function
...
This doesn't modify internal state, so this can be made const.
2020-04-15 23:59:35 -04:00
319df1db77
Merge pull request #3683 from lioncash/docs
...
video_core: Amend doxygen comment references
2020-04-15 23:54:58 -04:00
636c8ab85b
texture_cache/format_lookup_table: Fix incorrect green, blue, and alpha indices
...
Previously these were all using the red component to derive the indices,
which is definitely not intentional.
2020-04-15 23:50:46 -04:00