diff options
author | dzwdz | 2023-02-25 18:10:39 +0100 |
---|---|---|
committer | dzwdz | 2023-02-25 18:10:39 +0100 |
commit | fd9214efa47f721e6d08dd2530efbb40b99c3b7b (patch) | |
tree | b8fb2f3c35599d2fb16bdfefaffdcc007476963f /src | |
parent | 5faf16e48457f3ea1dda7af76f9c59b007a054f8 (diff) |
toolchain: working customized toolchain for userland bins
Diffstat (limited to 'src')
-rw-r--r-- | src/user/bootstrap/linker.ld | 6 | ||||
-rw-r--r-- | src/user/lib/elfreloc.c | 5 |
2 files changed, 2 insertions, 9 deletions
diff --git a/src/user/bootstrap/linker.ld b/src/user/bootstrap/linker.ld index 34d8101..5d8abe7 100644 --- a/src/user/bootstrap/linker.ld +++ b/src/user/bootstrap/linker.ld @@ -26,11 +26,7 @@ SECTIONS } .data BLOCK(4K) : ALIGN(4K) { - *(.data) + *(.data*) } _initrd = .; /* is just appended onto the end of the binary */ - - /DISCARD/ : { - *(*.rel.*) - } } diff --git a/src/user/lib/elfreloc.c b/src/user/lib/elfreloc.c index 632f60f..aab2a2a 100644 --- a/src/user/lib/elfreloc.c +++ b/src/user/lib/elfreloc.c @@ -15,10 +15,7 @@ static struct Elf64_Dyn *dyn_gettag(Elf64_Xword tag) { } void elf_selfreloc(void) { - // TODO DT_REL - if (dyn_gettag(DT_PLTGOT) || dyn_gettag(DT_JMPREL)) { - _klogf("elf: unimplemented tag in _DYNAMIC\n"); - } + // TODO DT_REL, DT_JMPREL struct Elf64_Dyn *rela_tag = dyn_gettag(DT_RELA); if (rela_tag) { |