diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2022-03-07 16:23:08 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2022-03-08 17:37:09 +0100 |
| commit | 652e8318e66d3a7eea6257aca4b3fadf27c0522c (patch) | |
| tree | 89e6300eebcca2f29deb93481270d800bed167ed /src | |
| parent | e05796674bd7648faa4bbb4d61de2e641bed34b9 (diff) | |
| download | box64-652e8318e66d3a7eea6257aca4b3fadf27c0522c.tar.gz box64-652e8318e66d3a7eea6257aca4b3fadf27c0522c.zip | |
Added [stack] to the generated maps file
Diffstat (limited to 'src')
| -rwxr-xr-x | src/elfs/elfloader.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/elfs/elfloader.c b/src/elfs/elfloader.c index c5f59375..fd869ddf 100755 --- a/src/elfs/elfloader.c +++ b/src/elfs/elfloader.c @@ -1545,6 +1545,8 @@ void CreateMemorymapFile(box64context_t* context, int fd) st.st_ino = 0; } + // TODO: create heap entry? + for (size_t i=0; i<h->numPHEntries; ++i) { if (h->PHEntries[i].p_memsz == 0) continue; @@ -1557,6 +1559,11 @@ void CreateMemorymapFile(box64context_t* context, int fd) dummy = write(fd, buff, strlen(buff)); } + // create stack entry + sprintf(buff, "%16lx-%16lx %c%c%c%c %16lx %02x:%02x %ld %s\n", + (uintptr_t)context->stack, (uintptr_t)context->stack+context->stacksz, + 'r','w','-','p', 0, 0, 0, 0, "[stack]"); + dummy = write(fd, buff, strlen(buff)); } void ElfAttachLib(elfheader_t* head, library_t* lib) |