aboutsummaryrefslogtreecommitdiff
path: root/lib/mlibc/options/rtdl/x86_64
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mlibc/options/rtdl/x86_64')
-rw-r--r--lib/mlibc/options/rtdl/x86_64/elf.hpp37
-rw-r--r--lib/mlibc/options/rtdl/x86_64/entry.S11
-rw-r--r--lib/mlibc/options/rtdl/x86_64/runtime.S36
3 files changed, 0 insertions, 84 deletions
diff --git a/lib/mlibc/options/rtdl/x86_64/elf.hpp b/lib/mlibc/options/rtdl/x86_64/elf.hpp
deleted file mode 100644
index 2a80644..0000000
--- a/lib/mlibc/options/rtdl/x86_64/elf.hpp
+++ /dev/null
@@ -1,37 +0,0 @@
-#pragma once
-
-#include <elf.h>
-
-#define ELF_CLASS ELFCLASS64
-#define ELF_MACHINE EM_X86_64
-
-using elf_ehdr = Elf64_Ehdr;
-using elf_phdr = Elf64_Phdr;
-using elf_dyn = Elf64_Dyn;
-using elf_rel = Elf64_Rel;
-using elf_rela = Elf64_Rela;
-using elf_relr = Elf64_Relr;
-using elf_sym = Elf64_Sym;
-using elf_addr = Elf64_Addr;
-
-using elf_info = Elf64_Xword;
-using elf_addend = Elf64_Sxword;
-
-#define ELF_R_SYM ELF64_R_SYM
-#define ELF_R_TYPE ELF64_R_TYPE
-#define ELF_ST_BIND ELF64_ST_BIND
-
-#define R_NONE R_X86_64_NONE
-#define R_JUMP_SLOT R_X86_64_JUMP_SLOT
-#define R_ABSOLUTE R_X86_64_64
-#define R_GLOB_DAT R_X86_64_GLOB_DAT
-#define R_RELATIVE R_X86_64_RELATIVE
-#define R_IRELATIVE R_X86_64_IRELATIVE
-// #define R_OFFSET
-#define R_COPY R_X86_64_COPY
-#define R_TLS_DTPMOD R_X86_64_DTPMOD64
-#define R_TLS_DTPREL R_X86_64_DTPOFF64
-#define R_TLS_TPREL R_X86_64_TPOFF64
-#define R_TLSDESC R_X86_64_TLSDESC
-
-#define TP_TCB_OFFSET 0
diff --git a/lib/mlibc/options/rtdl/x86_64/entry.S b/lib/mlibc/options/rtdl/x86_64/entry.S
deleted file mode 100644
index ea64111..0000000
--- a/lib/mlibc/options/rtdl/x86_64/entry.S
+++ /dev/null
@@ -1,11 +0,0 @@
-
-.global _start
-_start:
- call relocateSelf
-
- mov %rsp, %rdi
- call interpreterMain
-
- jmp *%rax
-.section .note.GNU-stack,"",%progbits
-
diff --git a/lib/mlibc/options/rtdl/x86_64/runtime.S b/lib/mlibc/options/rtdl/x86_64/runtime.S
deleted file mode 100644
index d8593c4..0000000
--- a/lib/mlibc/options/rtdl/x86_64/runtime.S
+++ /dev/null
@@ -1,36 +0,0 @@
-
-.global pltRelocateStub
-pltRelocateStub:
- # we need to save / restore all registers than can hold function arguments
- # we do not need to save callee-saved registers as they will not be trashed by lazyRelocate
- # TODO: save floating point argument registers
-
- push %rsi
- push %rdi
- mov 16(%rsp), %rdi
- mov 24(%rsp), %rsi
-
- push %rax
- push %rcx
- push %rdx
- push %r8
- push %r9
- push %r10
-
- call lazyRelocate
- mov %rax, %r11
-
- pop %r10
- pop %r9
- pop %r8
- pop %rdx
- pop %rcx
- pop %rax
-
- pop %rdi
- pop %rsi
- add $16, %rsp
- jmp *%r11
-
-.section .note.GNU-stack,"",%progbits
-