Lioncash
dfa582169b
kernel/memory: Resolve -Wshadow warnings
Prevents variable name clashing.
6 years ago
Lioncash
93c083aef1
kernel/memory: Amend potential encoding warnings
While èis generally representable in some language encodings, in some
it isn't and will result in compilation warnings occurring. To remain
friendly with other language's codepages on Windows, we normalize it to
an ASCII e.
6 years ago
Lioncash
0ec07e8763
hle_ipc: Eliminate core memory globals
We can just pass the required instances into the constructor of the
request, eliminating all usages of the global system accessor.
6 years ago
Lioncash
aabf5b2059
readable_event: Remove unnecessary semicolon in Signal()
Resolves a -Wextra-semi warning.
While we're at it, we can invert the branch to form a guard clause,
unindenting all of the contained code.
6 years ago
David Marcec
b6538c3e7c
kernel: Don't fail silently
6 years ago
David Marcec
2261cf24af
kernel: Bad GetInfo ids should not be marked as stubs
As we currently match hardware and don't return a successful result, these should be marked as errors instead of warnings and as stubs.
6 years ago
Lioncash
cc84b48ce5
physical_core: Make use of std::make_unique instead of std::make_shared in ctor
We can also allow unicorn to be constructed in 32-bit mode or 64-bit
mode to satisfy the need for both interpreter instances.
Allows this code to compile successfully of non x86-64 architectures.
6 years ago
Lioncash
ce7c02735e
shared_memory: Amend doxygen reference
Amends the parameter to match the documentation reference.
Resolves a -Wdocumentation warning with clang.
6 years ago
Lioncash
4730347f8e
svc: Re-add MapProcessCodeMemory/UnmapProcessCodeMemory
These were lost in the re-implementation of the virtual memory manager.
6 years ago
Lioncash
bed4865981
svc: Remove unused variable
Since the VMM refactor, this is no longer used or needed.
6 years ago
Lioncash
f77b5dfe81
page_table: Remove unused captures
Any time the lambda function is called, the permission being used in the
capture would be passed in as an argument to the lambda, so the capture
is unnecessary.
6 years ago
bunnei
ff0c49e1ce
kernel: memory: Improve implementation of device shared memory. ( #3707 )
* kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
6 years ago
MerryMage
2bfac7b61d
thread: FPCR.FZ is likely not 1
6 years ago
Lioncash
7e585bce28
memory/slab_heap: Make use of static_cast over reinterpret_cast
Casting from void* with static_cast is permitted by the standard, so we
can just make use of that instead.
6 years ago
bunnei
8bbe74a8dc
core: hle: Address various feedback & code cleanup.
- Should be no functional changes.
6 years ago
bunnei
6f3266e98b
memory: Add copyright notice for Atmosphere where applicable.
6 years ago
bunnei
02547a0cb4
kernel: Remove old VMManager class.
6 years ago
bunnei
a8292f6cd9
kernel: memory: page_table: Simplify GetPhysicalAddr impl.
6 years ago
bunnei
c629e544a7
kernel: svc: Updates for new VMM.
- Includes removing some SVC impls. that are untested.
6 years ago
bunnei
108564df57
kernel: process: Updates for new VMM.
6 years ago
bunnei
fc61cb44ee
kernel: resource_limit: Reserve physical memory.
6 years ago
bunnei
8f75524e55
kernel: Initialize memory layout for new VMM.
6 years ago
bunnei
11c02a50e9
core: system: Rename GetDeviceManager -> DeviceManager.
- More consistent with other system components.
6 years ago
bunnei
3fcc4cab4f
kernel: transfer_memory: Refactor for new VMM.
6 years ago
bunnei
d0162fc3d7
kernel: shared_memory: Refactor for new VMM.
6 years ago
bunnei
a238d08f71
kernel: errors: Add ERR_OUT_OF_RESOURCES.
6 years ago
bunnei
ffc3de762b
kernel: process_capability: Update to use Memory::PageTable.
6 years ago
bunnei
84f1b6d530
kernel: memory: Add PageTable class, to manage process address space.
6 years ago
bunnei
cfae8a1c1a
kernel: memory: Add MemoryLayout class, to build physical memory layout.
6 years ago
bunnei
5d6e8a5b44
kernel: memory: Add MemoryManager class, to manage page heaps.
6 years ago
bunnei
548ef190ab
kernel: memory: Add MemoryBlockManager class, to manage memory blocks.
6 years ago
bunnei
3927012734
kernel: memory: Add PageHeap class, to manage a heap of pages.
6 years ago
bunnei
dc720311cc
kernel: memory: Add PageLinkedList class, to manage a list of pages.
6 years ago
bunnei
81cb4d3c7f
kernel: memory: Add system_control code, which will be used for ASLR support.
6 years ago
bunnei
fc040b5b70
physical_memory: Add missing include for <vector>.
6 years ago
bunnei
c2f4dcb1e3
kernel: memory: Add MemoryBlock class, for managing memory blocks and their state.
6 years ago
bunnei
ea5ee9918e
kernel: memory: Add memory_types.h, for things that are commonly used in memory code.
6 years ago
bunnei
d364e7cf09
kernel: memory: Add SlabHeap class, for managing memory heaps.
- This will be used for TLS pages, among other things.
6 years ago
bunnei
14aa65ce00
kernel: memory: Add AddressSpaceInfo class, for managing the memory address space.
6 years ago
bunnei
4caff51710
core: memory: Move to Core::Memory namespace.
- helpful to disambiguate Kernel::Memory namespace.
6 years ago
bunnei
ad48ebb2c8
core: kernel: Add svc_types header to include SVC-specific types.
6 years ago
bunnei
82d457af37
core: kernel: Move SVC to its own namesapce.
6 years ago
bunnei
b0e3cbef7a
kernel: resource_limit: Improvements to implementation.
6 years ago
bunnei
f2676efe23
process: SetupMainThread: Zero out argument on process start.
6 years ago
Lioncash
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.
6 years ago
Lioncash
1c340c6efa
CMakeLists: Specify -Wextra on linux builds
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.
6 years ago
Lioncash
213fff67bc
CMakeLists: Make -Wreorder a compile-time error
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.
6 years ago
Lioncash
521c4c33b5
kernel/thread: Resolve -Wswitch warnings
6 years ago
bunnei
dba112e510
core: hle: Implement separate A32/A64 SVC interfaces.
6 years ago
bunnei
c083ea7d78
core: Implement separate A32/A64 ARM interfaces.
6 years ago