bunnei
9edd67f475
kernel: shared_memory: Refactor for new VMM.
6 years ago
bunnei
5b2cf55742
core: device_memory: Update to use VirtualBuffer class.
6 years ago
bunnei
273f8b5fc7
common: Add VirtualBuffer class, to abstract memory virtualization.
6 years ago
bunnei
6ef844fab3
kernel: errors: Add ERR_OUT_OF_RESOURCES.
6 years ago
bunnei
1717cdf811
kernel: process_capability: Update to use Memory::PageTable.
6 years ago
bunnei
6fe68ddea2
kernel: memory: Add PageTable class, to manage process address space.
6 years ago
bunnei
ea8bc8e759
kernel: memory: Add MemoryLayout class, to build physical memory layout.
6 years ago
bunnei
9b912d155a
kernel: memory: Add MemoryManager class, to manage page heaps.
6 years ago
bunnei
227e9ac5d7
kernel: memory: Add MemoryBlockManager class, to manage memory blocks.
6 years ago
bunnei
036f2f9176
kernel: memory: Add PageHeap class, to manage a heap of pages.
6 years ago
bunnei
b013b110bc
kernel: memory: Add PageLinkedList class, to manage a list of pages.
6 years ago
bunnei
b94f043b7b
kernel: memory: Add system_control code, which will be used for ASLR support.
6 years ago
bunnei
72d1cda09a
physical_memory: Add missing include for <vector>.
6 years ago
bunnei
91a38e3fa8
kernel: memory: Add MemoryBlock class, for managing memory blocks and their state.
6 years ago
bunnei
eadd36d143
kernel: memory: Add memory_types.h, for things that are commonly used in memory code.
6 years ago
bunnei
91b899ff00
kernel: memory: Add SlabHeap class, for managing memory heaps.
- This will be used for TLS pages, among other things.
6 years ago
bunnei
9fd238a0f8
kernel: memory: Add AddressSpaceInfo class, for managing the memory address space.
6 years ago
bunnei
ea806268fa
core: device_manager: Add a simple class to manage device RAM.
6 years ago
bunnei
a7b2390b73
dynarmic: Enable strict alignment checks.
- Also add a missing include.
6 years ago
bunnei
b2b0f85b7d
common: scope_exit: Implement mechanism for canceling a scope exit.
6 years ago
bunnei
5b9e69e7fe
core: memory: Move to Core::Memory namespace.
- helpful to disambiguate Kernel::Memory namespace.
6 years ago
bunnei
94e00fbb3f
common: alignment: Add a helper function for generic alignment checking.
6 years ago
bunnei
a10f82b62d
core: kernel: Add svc_types header to include SVC-specific types.
6 years ago
bunnei
ed940661a8
core: kernel: Move SVC to its own namesapce.
6 years ago
bunnei
a57e2ced66
externals: Update to latest dynarmic.
- Adds memory alignment fixes.
6 years ago
bunnei
bdd81bdebf
kernel: resource_limit: Improvements to implementation.
6 years ago
bunnei
9006c82b27
loader: nso: Fix loading of static objects to be properly sized and aligned.
6 years ago
bunnei
f9a8cc03c3
common: common_funcs: Add a macro for defining enum flag operators.
6 years ago
bunnei
365f14cd2c
process: SetupMainThread: Zero out argument on process start.
6 years ago
bunnei
1be8e24189
arm_interface: Ensure ThreadContext is zero'd out.
6 years ago
Lioncash
b5c04e2bca
CMakeLists: Make missing declarations a compile-time error
Ensures that our code always has its linkage explicit.
6 years ago
Lioncash
eaeb4520f7
General: Resolve warnings related to missing declarations
6 years ago
MerryMage
b3a0ce058f
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.
6 years ago
bunnei
f0b4b5be4c
Merge pull request #3671 from lioncash/switch
kernel/thread: Resolve -Wswitch warnings
6 years ago
Lioncash
3c70e27d64
key_manager: Resolve missing field initializer warning
6 years ago
Lioncash
5eae660cba
decode/memory: Resolve unused variable warning
Only the first element of the returned pair is ever used.
6 years ago
Lioncash
ade1bb1e95
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.
6 years ago
Lioncash
ef5b809b0d
decode/texture: Collapse loop down into std::generate
Same behavior, less code.
6 years ago
Lioncash
e50ca6a64f
decode/texture: Eliminate trivial missing field initializer warnings
We can just specify the initializers.
6 years ago
Lioncash
bcc5066cfe
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.
6 years ago
Lioncash
09eb6f9991
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.
6 years ago
Lioncash
f8fe53c9f9
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.
6 years ago
bunnei
7a4ed2581d
Merge pull request #3673 from lioncash/extra
CMakeLists: Specify -Wextra on linux builds
6 years ago
ReinUsesLisp
4ef04832a8
maxwell_3d: Initialize format attributes constant as one
nouveau expects this to be true but it doesn't set it.
6 years ago
ReinUsesLisp
14ab5c4b65
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)
6 years ago
Fernando Sahmkow
7a9b83b658
Merge pull request #3600 from ReinUsesLisp/no-pointer-buf-cache
buffer_cache: Return handles instead of pointer to handles
6 years ago
bunnei
93f24dfc47
Merge pull request #3675 from degasus/linux_shared_libraries
externals: Use shared libraries if possible
6 years ago
Markus Wick
91ff5f13b1
externals: Use shared libraries if possible
This is mostly done by pkgconfig.
I've focused on the larger and more stable libraries.
6 years ago
Markus Wick
3567e464d2
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.
6 years ago
Markus Wick
ea1146eba0
input_common: Use the CMake target instead of the variable.
6 years ago