diff --git a/src/core/hle/kernel/kernel.h b/src/core/hle/kernel/kernel.h
index 3828efbea..08a5db3b7 100644
--- a/src/core/hle/kernel/kernel.h
+++ b/src/core/hle/kernel/kernel.h
@@ -16,6 +16,11 @@
 typedef u32 Handle;
 typedef s32 Result;
 
+// TODO: It would be nice to eventually replace these with strong types that prevent accidental
+// conversion between each other.
+typedef u32 VAddr; ///< Represents a pointer in the userspace virtual address space.
+typedef u32 PAddr; ///< Represents a pointer in the ARM11 physical address space.
+
 const Handle INVALID_HANDLE = 0;
 
 namespace Kernel {
diff --git a/src/core/mem_map.h b/src/core/mem_map.h
index fad40ae0c..8f4f21fec 100644
--- a/src/core/mem_map.h
+++ b/src/core/mem_map.h
@@ -7,12 +7,9 @@
 #include "common/common.h"
 #include "common/common_types.h"
 
-namespace Memory {
+#include "core/hle/kernel/kernel.h"
 
-// TODO: It would be nice to eventually replace these with strong types that prevent accidental
-// conversion between each other.
-typedef u32 VAddr; ///< Represents a pointer in the ARM11 virtual address space.
-typedef u32 PAddr; ///< Represents a pointer in the physical address space.
+namespace Memory {
 
 ////////////////////////////////////////////////////////////////////////////////////////////////////
 
@@ -190,7 +187,3 @@ VAddr PhysicalToVirtualAddress(PAddr addr);
 PAddr VirtualToPhysicalAddress(VAddr addr);
 
 } // namespace
-
-// These are used often, so re-export then on the root namespace
-using Memory::VAddr;
-using Memory::PAddr;