- Jan 20, 2021
-
-
Jeremy Soller authored
Use BufWriter (instead of LineWriter) for FILEs other than stdout and stderr See merge request redox-os/relibc!328
-
- Jan 18, 2021
-
-
Jeremy Soller authored
aarch64: TLS arch_read implementation See merge request redox-os/relibc!330
-
Robin Randhawa authored
-
- Jan 14, 2021
-
-
Jeremy Soller authored
Change ld.so linker script file name for x86_64 Linux to fix compilation issue See merge request redox-os/relibc!329
-
8tab authored
-
8tab authored
BufWriter has more capacity (8k vs 1k) and doesn't flush the stream after '\n'. That change helps to reduce the number of syscalls, especially when dealing with text files. Since BufWriter has a different way of getting number of pending elements than LineWriter - Pending trait was introduced to deal with that.
-
- Jan 11, 2021
-
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
- Jan 10, 2021
-
-
Jeremy Soller authored
-
- Jan 05, 2021
-
-
Jeremy Soller authored
Fix dlsym of TLS variables See merge request redox-os/relibc!327
-
Jeremy Soller authored
Call DSO destructors during exit() See merge request redox-os/relibc!326
-
8tab authored
-
8tab authored
-
8tab authored
-
Jeremy Soller authored
Fix global symbols relocations See merge request redox-os/relibc!325
-
- Jan 03, 2021
-
-
8tab authored
inner_scanf prematurely exited before parsing collected string
-
8tab authored
Instead of a single source of symbols, now linker keeps a list of DSO (former Library) objects with their own symbols map. That helps to process R_X86_64_COPY relocations correctly. For example, if 'a.out' executable with dependencies ['libstdc++.so', 'libc.so'] is being loaded and 'a.out' uses 'stdout' symbol from 'libc.so', its relocation process goes as follows: - linker processes relocation entry 'stdout' of type R_X86_64_GLOB_DAT from 'libc.so', - it goes through object list ['a.out', 'libstdc++.so', 'libc.so'] to find first object that exports 'stdout' symbol. The symbol is in 'a.out' with the value e.g. '0x404070', - linker sets 'stdout' symbol GOT entry in 'libc.so' to '0x404070', .... - linker processes relocation entry 'stdout' of type R_X86_64_COPY from 'a.out', - it goes through object list excluding 'a.out': ['libstdc++.so', 'libc.so']. The symbol is found in 'libc.so', - linker copies the 'stdout' symbol content from 'libc.so' to memory at address '0x404070' (in 'a.out' object). Objects are relocated in reverse order they were loaded. So in the example above, linker starts with relocating 'libc.so' and ends with 'a.out'. It is necessary e.g. when linking with 'libstdc++.so' - there are many relocations which symbols are found in 'libstdc++.so', so they need to be resolved before their contents are copied to 'a.out'. That also matches GNU ld.so behavior.
-
- Dec 24, 2020
-
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
- Dec 23, 2020
-
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
Jeremy Soller authored
-
- Oct 18, 2020
-
-
Jeremy Soller authored
Add submodules target to main makefile See merge request redox-os/relibc!323
-
Daniel Mangum authored
Adds a submodules convenience target to main makefile. Submodules must be initialized before other targets can run successfully. Signed-off-by:
hasheddan <georgedanielmangum@gmail.com>
-
- Oct 06, 2020
-
-
Jeremy Soller authored
-
- Oct 02, 2020
-
-
Jeremy Soller authored
Fix formatiing issues See merge request !316
-
Jeremy Soller authored
Add support for dlopen(NULL, ...) See merge request !315
-
Jeremy Soller authored
Fix tls tests for dynamic linker See merge request redox-os/relibc!317
-
- Oct 01, 2020
-
-
8tab authored
* load TLS segment for executable - while we can skip PT_LOAD for executable, we still have to load TLS segment. * set TCB address based on if elf is position independent
-
- Sep 30, 2020
-
-
8tab authored
-
8tab authored
-
Jeremy Soller authored
Add tests for ld_so See merge request redox-os/relibc!314
-
- Sep 29, 2020