summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/core/hle/kernel/vm_manager.cpp17
-rw-r--r--src/core/hle/kernel/vm_manager.h11
2 files changed, 28 insertions, 0 deletions
diff --git a/src/core/hle/kernel/vm_manager.cpp b/src/core/hle/kernel/vm_manager.cpp
index 10ad94aa6..161a83660 100644
--- a/src/core/hle/kernel/vm_manager.cpp
+++ b/src/core/hle/kernel/vm_manager.cpp
@@ -786,6 +786,23 @@ u64 VMManager::GetNewMapRegionSize() const {
return new_map_region_end - new_map_region_base;
}
+void VMManager::SetMainCodeRegion(VAddr begin, VAddr end) {
+ main_code_region_base = begin;
+ main_code_region_end = end;
+}
+
+VAddr VMManager::GetMainCodeRegionBaseAddress() const {
+ return main_code_region_base;
+}
+
+VAddr VMManager::GetMainCodeRegionEndAddress() const {
+ return main_code_region_end;
+}
+
+u64 VMManager::GetMainCodeRegionSize() const {
+ return main_code_region_end - main_code_region_base;
+}
+
VAddr VMManager::GetTLSIORegionBaseAddress() const {
return tls_io_region_base;
}
diff --git a/src/core/hle/kernel/vm_manager.h b/src/core/hle/kernel/vm_manager.h
index 6091533bc..728318f4b 100644
--- a/src/core/hle/kernel/vm_manager.h
+++ b/src/core/hle/kernel/vm_manager.h
@@ -480,6 +480,14 @@ public:
/// Gets the total size of the new map region in bytes.
u64 GetNewMapRegionSize() const;
+ void SetMainCodeRegion(VAddr begin, VAddr end);
+
+ VAddr GetMainCodeRegionBaseAddress() const;
+
+ VAddr GetMainCodeRegionEndAddress() const;
+
+ u64 GetMainCodeRegionSize() const;
+
/// Gets the base address of the TLS IO region.
VAddr GetTLSIORegionBaseAddress() const;
@@ -598,6 +606,9 @@ private:
VAddr new_map_region_base = 0;
VAddr new_map_region_end = 0;
+ VAddr main_code_region_base = 0;
+ VAddr main_code_region_end = 0;
+
VAddr tls_io_region_base = 0;
VAddr tls_io_region_end = 0;