- Dec 24, 2012
-
-
Avi Kivity authored
-
Avi Kivity authored
Otherwise, we use the unrelocated virtual address, which points nowhere.
-
Avi Kivity authored
lookup() is too similar to symbol lookup
-
- Dec 23, 2012
-
-
Avi Kivity authored
-
Avi Kivity authored
The 'program' object allows us to later resolve symbols (aka dlopen()/dlsym()).
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
No threading yet, so no real locking
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Don't load it from the glibc library.
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Weak symbols are allowed to fail name resolution, in which case they bind to zero.
-
Avi Kivity authored
Some libraries come without DT_HASH.
-
Avi Kivity authored
We need to parse the core's dynamic segment, which is linked to from the program header. Since the core is not an elf_file, but an elf_object, we need to move the parsing code there.
-
Avi Kivity authored
-
Avi Kivity authored
The dynamic linker itself needs to be linked before it can be used. This implements a minimal pre-linker that self-links the linker without invoking anything that needs to be linked.
-
Avi Kivity authored
-
Avi Kivity authored
Not strictly needed, but better to know exacly where things end up.
-
Avi Kivity authored
-
Avi Kivity authored
This forces the linker to add a DYNAMIC segment, allowing us to export our symbols to loaded libraries.
-
Avi Kivity authored
This gives us full control over linker options.
-
Avi Kivity authored
-
Avi Kivity authored
Not correct yet.
-
Avi Kivity authored
If .bss starts on a non-page boundary, the call to map_anon() will overwrite the last .data page. Fix by aligning the arguments to map_file() and map_anon() manually; this removes the overlap (since we round the .data section up).
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
not accurately though.
-
Avi Kivity authored
libgcc_s uses that (likely because it makes no syscalls)
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Ignored, unneeded.
-
Avi Kivity authored
-
Avi Kivity authored
Should we warn instead?
-
Avi Kivity authored
prelinked libraries default to a non-zero address; we have to take that into account when computing the base.
-
Avi Kivity authored
-
Avi Kivity authored
-