diff options
| author | 2018-08-03 14:07:49 -0400 | |
|---|---|---|
| committer | 2018-08-03 14:07:49 -0400 | |
| commit | 40e63ede6d2fcb9c4a3f7a65b2bdd25a77835d94 (patch) | |
| tree | 1d81b94e3bdcce384aaa892c1d92a48d725680cf /src/core/hle/kernel/process.h | |
| parent | Merge pull request #909 from lioncash/const (diff) | |
| parent | core/memory: Get rid of 3DS leftovers (diff) | |
| download | yuzu-40e63ede6d2fcb9c4a3f7a65b2bdd25a77835d94.tar.gz yuzu-40e63ede6d2fcb9c4a3f7a65b2bdd25a77835d94.tar.xz yuzu-40e63ede6d2fcb9c4a3f7a65b2bdd25a77835d94.zip | |
Merge pull request #908 from lioncash/memory
core/memory: Get rid of 3DS leftovers
Diffstat (limited to 'src/core/hle/kernel/process.h')
| -rw-r--r-- | src/core/hle/kernel/process.h | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h index 1204026be..98d8da35e 100644 --- a/src/core/hle/kernel/process.h +++ b/src/core/hle/kernel/process.h | |||
| @@ -53,7 +53,6 @@ union ProcessFlags { | |||
| 53 | enum class ProcessStatus { Created, Running, Exited }; | 53 | enum class ProcessStatus { Created, Running, Exited }; |
| 54 | 54 | ||
| 55 | class ResourceLimit; | 55 | class ResourceLimit; |
| 56 | struct MemoryRegionInfo; | ||
| 57 | 56 | ||
| 58 | struct CodeSet final : public Object { | 57 | struct CodeSet final : public Object { |
| 59 | static SharedPtr<CodeSet> Create(std::string name); | 58 | static SharedPtr<CodeSet> Create(std::string name); |
| @@ -163,12 +162,11 @@ public: | |||
| 163 | // This makes deallocation and reallocation of holes fast and keeps process memory contiguous | 162 | // This makes deallocation and reallocation of holes fast and keeps process memory contiguous |
| 164 | // in the emulator address space, allowing Memory::GetPointer to be reasonably safe. | 163 | // in the emulator address space, allowing Memory::GetPointer to be reasonably safe. |
| 165 | std::shared_ptr<std::vector<u8>> heap_memory; | 164 | std::shared_ptr<std::vector<u8>> heap_memory; |
| 166 | // The left/right bounds of the address space covered by heap_memory. | ||
| 167 | VAddr heap_start = 0, heap_end = 0; | ||
| 168 | |||
| 169 | u64 heap_used = 0, linear_heap_used = 0, misc_memory_used = 0; | ||
| 170 | 165 | ||
| 171 | MemoryRegionInfo* memory_region = nullptr; | 166 | // The left/right bounds of the address space covered by heap_memory. |
| 167 | VAddr heap_start = 0; | ||
| 168 | VAddr heap_end = 0; | ||
| 169 | u64 heap_used = 0; | ||
| 172 | 170 | ||
| 173 | /// The Thread Local Storage area is allocated as processes create threads, | 171 | /// The Thread Local Storage area is allocated as processes create threads, |
| 174 | /// each TLS area is 0x200 bytes, so one page (0x1000) is split up in 8 parts, and each part | 172 | /// each TLS area is 0x200 bytes, so one page (0x1000) is split up in 8 parts, and each part |
| @@ -179,16 +177,9 @@ public: | |||
| 179 | 177 | ||
| 180 | std::string name; | 178 | std::string name; |
| 181 | 179 | ||
| 182 | VAddr GetLinearHeapAreaAddress() const; | ||
| 183 | VAddr GetLinearHeapBase() const; | ||
| 184 | VAddr GetLinearHeapLimit() const; | ||
| 185 | |||
| 186 | ResultVal<VAddr> HeapAllocate(VAddr target, u64 size, VMAPermission perms); | 180 | ResultVal<VAddr> HeapAllocate(VAddr target, u64 size, VMAPermission perms); |
| 187 | ResultCode HeapFree(VAddr target, u32 size); | 181 | ResultCode HeapFree(VAddr target, u32 size); |
| 188 | 182 | ||
| 189 | ResultVal<VAddr> LinearAllocate(VAddr target, u32 size, VMAPermission perms); | ||
| 190 | ResultCode LinearFree(VAddr target, u32 size); | ||
| 191 | |||
| 192 | ResultCode MirrorMemory(VAddr dst_addr, VAddr src_addr, u64 size); | 183 | ResultCode MirrorMemory(VAddr dst_addr, VAddr src_addr, u64 size); |
| 193 | 184 | ||
| 194 | ResultCode UnmapMemory(VAddr dst_addr, VAddr src_addr, u64 size); | 185 | ResultCode UnmapMemory(VAddr dst_addr, VAddr src_addr, u64 size); |