Skip to content

Commit d7936d3

Browse files
committed
exo: improve offset-table fix (save 8 bytes)
1 parent 1c0ea68 commit d7936d3

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

exosphere/program/source/smc/secmon_smc_register_access.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,11 @@ namespace ams::secmon::smc {
5454
for (int last = arr.size() - 1; last >= 0; --last) {
5555
if (arr[last] != 0) {
5656
const int end = last + 1;
57-
//for (int start = 0; start < end; ++start) {
58-
// if (arr[start] != 0) {
59-
// return std::make_pair(static_cast<size_t>(start), static_cast<size_t>(end));
60-
// }
61-
//}
57+
for (int start = 0; start < end; ++start) {
58+
if (arr[start] != 0) {
59+
return std::make_pair(static_cast<size_t>(start), static_cast<size_t>(end));
60+
}
61+
}
6262
return std::make_pair(static_cast<size_t>(0), static_cast<size_t>(end));
6363
}
6464
}
@@ -101,10 +101,10 @@ namespace ams::secmon::smc {
101101
#include "secmon_define_mc01_access_table.inc"
102102

103103
constexpr const AccessTableEntry AccessTables[] = {
104-
{ PmcAccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDevicePmc.GetAddress(), PmcAccessTable::Address, PmcAccessTable::Size, },
105-
{ McAccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDeviceMemoryController.GetAddress(), McAccessTable::Address, McAccessTable::Size, },
106-
{ Mc01AccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDeviceMemoryController0.GetAddress(), Mc01AccessTable::Address + MemoryRegionPhysicalDeviceMemoryController0.GetAddress(), Mc01AccessTable::Size, },
107-
{ Mc01AccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDeviceMemoryController1.GetAddress(), Mc01AccessTable::Address + MemoryRegionPhysicalDeviceMemoryController1.GetAddress(), Mc01AccessTable::Size, },
104+
{ PmcAccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDevicePmc.GetAddress(), PmcAccessTable::Address, PmcAccessTable::Size, },
105+
{ McAccessTable::ReducedAccessTable.data(), MemoryRegionVirtualDeviceMemoryController.GetAddress(), McAccessTable::Address, McAccessTable::Size, },
106+
{ Mc01AccessTable::ReducedAccessTable.data(), Mc01AccessTable::Address + MemoryRegionVirtualDeviceMemoryController0.GetAddress(), Mc01AccessTable::Address + MemoryRegionPhysicalDeviceMemoryController0.GetAddress(), Mc01AccessTable::Size, },
107+
{ Mc01AccessTable::ReducedAccessTable.data(), Mc01AccessTable::Address + MemoryRegionVirtualDeviceMemoryController1.GetAddress(), Mc01AccessTable::Address + MemoryRegionPhysicalDeviceMemoryController1.GetAddress(), Mc01AccessTable::Size, },
108108
};
109109

110110
constexpr bool IsAccessAllowed(const AccessTableEntry &entry, uintptr_t address) {

0 commit comments

Comments
 (0)