summaryrefslogtreecommitdiff
path: root/src/core/loader
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/loader')
-rw-r--r--src/core/loader/deconstructed_rom_directory.cpp5
-rw-r--r--src/core/loader/loader.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/core/loader/deconstructed_rom_directory.cpp b/src/core/loader/deconstructed_rom_directory.cpp
index 8b4ee970f..8696c28bd 100644
--- a/src/core/loader/deconstructed_rom_directory.cpp
+++ b/src/core/loader/deconstructed_rom_directory.cpp
@@ -119,6 +119,11 @@ ResultStatus AppLoader_DeconstructedRomDirectory::Load(
119 } 119 }
120 metadata.Print(); 120 metadata.Print();
121 121
122 const FileSys::ProgramAddressSpaceType arch_bits{metadata.GetAddressSpaceType()};
123 if (arch_bits == FileSys::ProgramAddressSpaceType::Is32Bit) {
124 return ResultStatus::ErrorUnsupportedArch;
125 }
126
122 // Load NSO modules 127 // Load NSO modules
123 VAddr next_load_addr{Memory::PROCESS_IMAGE_VADDR}; 128 VAddr next_load_addr{Memory::PROCESS_IMAGE_VADDR};
124 for (const auto& module : {"rtld", "main", "subsdk0", "subsdk1", "subsdk2", "subsdk3", 129 for (const auto& module : {"rtld", "main", "subsdk0", "subsdk1", "subsdk2", "subsdk3",
diff --git a/src/core/loader/loader.h b/src/core/loader/loader.h
index dd44ee9a6..b1aabb1cb 100644
--- a/src/core/loader/loader.h
+++ b/src/core/loader/loader.h
@@ -72,6 +72,7 @@ enum class ResultStatus {
72 ErrorAlreadyLoaded, 72 ErrorAlreadyLoaded,
73 ErrorMemoryAllocationFailed, 73 ErrorMemoryAllocationFailed,
74 ErrorEncrypted, 74 ErrorEncrypted,
75 ErrorUnsupportedArch,
75}; 76};
76 77
77/// Interface for loading an application 78/// Interface for loading an application