HelenOS
HelenOS-doc
HelenOS-historic
Català-Valencià – Catalan
中文 – Chinese (Simplified)
中文 – Chinese (Traditional)
Česky – Czech
Dansk – Danish
Nederlands – Dutch
English – English
Suomi – Finnish
Français – French
Deutsch – German
עברית – Hebrew
हिंदी – Hindi
Magyar – Hungarian
Bahasa Indonesia – Indonesian
Italiano – Italian
日本語 – Japanese
한국어 – Korean
Македонски – Macedonian
मराठी – Marathi
Norsk – Norwegian
Polski – Polish
Português – Portuguese
Português – Portuguese (Brazil)
Русский – Russian
Slovenčina – Slovak
Slovenščina – Slovenian
Español – Spanish
Svenska – Swedish
Türkçe – Turkish
Українська – Ukrainian
Oëzbekcha – Uzbek
Subversion Repositories
HelenOS
(root)
/
branches
/
dynload
/
uspace
/
app
/
dltest
/
dltest.c
– Rev 3869
Rev
Hide changed files
|
Details
|
Compare with Previous
|
Blame
|
RSS feed
Filtering Options
From rev
To rev
Max revs
Search history for
Show All
Rev
Age
Author
Path
Log message
Diff
Changes
3869
5797 d 9 h
svoboda
/branches/dynload/
Make dlopen() work from statically-linked apps. Test with dltest2.
/branches/dynload/uspace/app/dltest2
/branches/dynload/uspace/app/dltest2/Makefile
/branches/dynload/uspace/app/dltest2/dltest2.c
/branches/dynload/boot/arch/mips32/loader/Makefile
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libc/generic/dlfcn.c
/branches/dynload/uspace/lib/libtest/Makefile
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/libtest/libtest.h
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/module.c
/branches/dynload/uspace/lib/rtld/rtld.c
3689
5861 d 8 h
svoboda
/branches/dynload/
Fix search scope. Vary bias. Relocate loaded libs. Fix bugs. Test with libtest. dlopen() really works now!
/branches/dynload/boot/arch/ia32/Makefile.inc
/branches/dynload/boot/arch/ppc32/loader/Makefile
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dload/dload.c
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libc/generic/dlfcn.c
/branches/dynload/uspace/lib/libtest/Makefile
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/rtld/include/module.h
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/include/symbol.h
/branches/dynload/uspace/lib/rtld/module.c
/branches/dynload/uspace/lib/rtld/symbol.c
3686
5862 d 6 h
svoboda
/branches/dynload/uspace/
Somewhat functional dlopen() prototype.
/branches/dynload/uspace/lib/libc/generic/dlfcn.c
/branches/dynload/uspace/lib/libc/include/dlfcn.h
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dload/dload.c
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/init/init.c
/branches/dynload/uspace/lib/libc/Makefile
/branches/dynload/uspace/lib/libc/generic/libc.c
/branches/dynload/uspace/lib/libc/include/loader/pcb.h
/branches/dynload/uspace/lib/libc/shared/Makefile
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/module.c
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/lib/rtld/symbol.c
/branches/dynload/uspace/srv/loader/elf_load.c
3589
5885 d 18 h
svoboda
/branches/dynload/uspace/
Finally make dynamic linking on ppc32 work (yay\!) The trick is that __tls_get_addr needs to return the address with a 32k bias.
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libc/arch/ppc32/src/tls.c
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/entry.s
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/reloc.c
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/runtime.c
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/start.s
3552
5894 d 7 h
svoboda
/branches/dynload/
Make rtld a static executable instead of a dynamic library. Brings dltest back on ia32.
/branches/dynload/boot/arch/ia32/Makefile.inc
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libc-shared/Makefile
/branches/dynload/uspace/lib/libc/arch/ia32/src/tls.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/_link.ld.in
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/rtld/module.c
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/srv/loader/elf_load.c
/branches/dynload/uspace/srv/loader/include/elf_load.h
/branches/dynload/uspace/srv/loader/main.c
3474
5936 d 15 h
svoboda
/branches/dynload/
Merge latest trunk changes into dynload.
/branches/dynload/uspace/lib/libc/generic/loader.c
/branches/dynload/uspace/lib/libc/include/loader/loader.h
/branches/dynload/boot/arch/sparc64/loader/Makefile
/branches/dynload/kernel/arch/sparc64/include/trap/syscall.h
/branches/dynload/kernel/arch/sparc64/src/trap/trap_table.S
/branches/dynload/kernel/generic/src/console/cmd.c
/branches/dynload/kernel/generic/src/ipc/ipc.c
/branches/dynload/kernel/generic/src/ipc/sysipc.c
/branches/dynload/kernel/generic/src/udebug/udebug.c
/branches/dynload/kernel/generic/src/udebug/udebug_ipc.c
/branches/dynload/kernel/generic/src/udebug/udebug_ops.c
/branches/dynload/uspace/app/bdsh/exec.c
/branches/dynload/uspace/app/bdsh/util.c
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/trace/ipcp.c
/branches/dynload/uspace/app/trace/proto.c
/branches/dynload/uspace/app/trace/proto.h
/branches/dynload/uspace/app/trace/syscalls.c
/branches/dynload/uspace/app/trace/syscalls.h
/branches/dynload/uspace/app/trace/trace.c
/branches/dynload/uspace/app/trace/trace.h
/branches/dynload/uspace/lib/libc/Makefile
/branches/dynload/uspace/lib/libc/generic/task.c
/branches/dynload/uspace/lib/libc/generic/udebug.c
/branches/dynload/uspace/lib/libc/generic/vfs/vfs.c
/branches/dynload/uspace/lib/libc/include/ipc/loader.h
/branches/dynload/uspace/lib/libc/include/loader/pcb.h
/branches/dynload/uspace/lib/libc/include/task.h
/branches/dynload/uspace/srv/loader/main.c
3423
5945 d 9 h
svoboda
/branches/dynload/uspace/
ppc32 rtld/dltest fixes. dltest now runs, but no console output.
/branches/dynload/uspace/app/dltest/arch/ppc32/_link.ld.in
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/rtld/arch/ppc32/Makefile.inc
3400
5947 d 11 h
svoboda
/branches/dynload/
Make rtld work again (ia32 only)
/branches/dynload/uspace/dist/lib
/branches/dynload/uspace/lib/rtld/include/rtld_arch.h
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/boot/arch/ia32/Makefile.inc
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libc/Makefile
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/src/entry.s
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/rtld/elf_load.c
/branches/dynload/uspace/lib/rtld/module.c
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/srv/loader/elf_load.c
/branches/dynload/uspace/srv/loader/main.c
2996
6060 d 8 h
svoboda
/branches/dynload/
Improve ppc32 dynamic loading support. Getting there...
/branches/dynload/uspace/app/dltest/arch
/branches/dynload/uspace/app/dltest/arch/ia32
/branches/dynload/uspace/app/dltest/arch/ia32/_link.ld.in
/branches/dynload/uspace/app/dltest/arch/ppc32
/branches/dynload/uspace/app/dltest/arch/ppc32/_link.ld.in
/branches/dynload/uspace/lib/libc-shared/arch
/branches/dynload/uspace/lib/libc-shared/arch/ia32
/branches/dynload/uspace/lib/libc-shared/arch/ia32/_link.ld.in
/branches/dynload/uspace/lib/libc-shared/arch/ppc32
/branches/dynload/uspace/lib/libc-shared/arch/ppc32/_link.ld.in
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/reloc.c
/branches/dynload/uspace/app/dltest/_link.ld.in
/branches/dynload/uspace/lib/libc-shared/_link.ld.in
/branches/dynload/boot/arch/ppc32/loader/Makefile
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/lib/libc-shared/Makefile
/branches/dynload/uspace/lib/libc/arch/mips32/Makefile.inc
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/arch/ppc32/Makefile.inc
/branches/dynload/uspace/lib/rtld/arch/ppc32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/lib/rtld/rtld.c
2982
6062 d 9 h
svoboda
/branches/dynload/uspace/
Link dltest with libc.so. Runs, but no console output.
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/include/pcb.h
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/libc-shared/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/rtld.c
2978
6062 d 15 h
svoboda
/branches/dynload/uspace/
Trivially link unresolved references from dltest to libtest
/branches/dynload/uspace/lib/rtld/include/symbol.h
/branches/dynload/uspace/lib/rtld/symbol.c
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/rtld.c
2973
6063 d 15 h
svoboda
/branches/dynload/uspace/
Parse program's relocation table
/branches/dynload/uspace/lib/rtld/arch/ia32/src/reloc.c
/branches/dynload/uspace/lib/rtld/include/arch.h
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/rtld.c
2968
6064 d 10 h
svoboda
/branches/dynload/uspace/
Parse .dynamic section fields into a more useful form.
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/rtld.c
2967
6064 d 13 h
svoboda
/branches/dynload/uspace/
For testing purposes, add a trivial shared library and a program linked to it
/branches/dynload/uspace/app/dltest
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/_link.ld.in
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libtest
/branches/dynload/uspace/lib/libtest/Makefile
/branches/dynload/uspace/lib/libtest/_link.ld.in
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/libtest/libtest.h
/branches/dynload/uspace/lib/libtest/libtest.so.0
/branches/dynload/uspace/Makefile