Remove the struct of arrays setup

This commit is contained in:
2025-03-20 00:52:07 +02:00
parent 2648ee1bc9
commit f537aff9a0
2 changed files with 21 additions and 35 deletions

View File

@@ -15,20 +15,18 @@ typedef enum {
HI_MEMORY_PRIVATE = 1 << 4
} MemoryPermissions;
#define HI_MEM_REG_MAX 256
typedef struct {
uptr region_starts[HI_MEM_REG_MAX];
uptr region_ends[HI_MEM_REG_MAX];
uptr offsets[HI_MEM_REG_MAX];
u64 inodes[HI_MEM_REG_MAX];
u32 permissions[HI_MEM_REG_MAX]; // enum MemoryPermissions
const char *pathnames[HI_MEM_REG_MAX];
} MemoryRegions;
uptr region_start;
uptr region_end;
ptrdiff offset;
u64 inode;
u32 permission; // enum MemoryPermissions
const char *pathname;
} MemoryRegion;
sc_array_def(MemoryRegions, memreg);
_Static_assert(sizeof(MemoryRegions) < 1024 * 12, "MemoryRegion size has increased. Fix this assert.");
sc_array_def(MemoryRegion, memreg);
/* A pointer that can be used to place the memory regions into. Clears regions before use, but uses the same buffer. */
HiloadResult read_memory_maps_self(struct sc_array_memreg *regions);