Rui Ueyama
c40b9aea5f
[Mach-O] Generalize perf.cc
so that we can use the feature in mold/mach-o
2021-09-27 18:14:56 +09:00
Rui Ueyama
1fb421d82c
Fix a bug for a very long pathname
2021-09-27 17:38:55 +09:00
Rui Ueyama
541399911d
[ELF] Refactor
2021-09-26 19:55:46 +09:00
Rui Ueyama
67990f775b
[ELF] Refactor
2021-09-26 18:50:03 +09:00
Rui Ueyama
58f1fbadc3
[ELF] Refactor
2021-09-26 12:43:51 +09:00
Rui Ueyama
6536663130
[ELF] Fix comment
2021-09-26 12:43:39 +09:00
Rui Ueyama
774fc0f340
[ELF] Remove an extra space in an error message
2021-09-26 12:43:39 +09:00
Rui Ueyama
a5d02b18c7
Refactor
2021-09-25 21:47:09 +09:00
Rui Ueyama
e4861bb3e1
[ELF] Fix "recompile with -fPIC" error
...
mold used to emit a spurious "recompile with -fPIC" error when creating
a position-dependent executable. This is because we alwyas create
dynamic relocations for importe symbols. If the relocated place is
read-only, we can't apply a dynamic relocation, and we printed out the
error message.
This patch fixes the issue by creating copy relocations and PLTs for
such symbols.
Fixes https://github.com/rui314/mold/issues/116
2021-09-25 18:13:26 +09:00
Rui Ueyama
d11ecda08c
[Mach-O] wip
2021-09-23 14:38:37 +09:00
Rui Ueyama
23ab97351f
Update README
2021-09-23 14:32:22 +09:00
Rui Ueyama
326831837d
[Mach-O] wip
2021-09-23 14:31:04 +09:00
Rui Ueyama
bdd458241b
[Mach-O] wip
2021-09-21 21:48:32 +09:00
Rui Ueyama
fc2ee0d0b0
[Mach-O] wip
2021-09-21 19:32:48 +09:00
Rui Ueyama
c002284cd8
[Mach-O] wip
2021-09-21 19:11:34 +09:00
Rui Ueyama
56fb6ba443
[Mach-O] wip
2021-09-21 18:56:31 +09:00
Rui Ueyama
c66bd302bd
[Mach-O] Programmatically construct __stubs, __stub_helper and __la_symbol_ptr
2021-09-21 17:19:44 +09:00
Rui Ueyama
17c67418f6
[Mach-O] wip
2021-09-21 17:16:42 +09:00
Rui Ueyama
935194d5ae
[Mach-O] wip
2021-09-21 15:57:23 +09:00
Rui Ueyama
02ce171aba
[Mach-O] wip
2021-09-21 14:53:38 +09:00
Rui Ueyama
a52179d090
[Mach-O] wip
2021-09-21 14:51:29 +09:00
Rui Ueyama
1390a7f622
[Mach-O] wip
2021-09-21 14:47:09 +09:00
Rui Ueyama
a05d073018
[Mach-O] wip
2021-09-21 14:32:54 +09:00
Rui Ueyama
c0daab6075
[Mach-O] wip
2021-09-21 12:55:09 +09:00
Rui Ueyama
18fb0d5d3f
[Mach-O] Programmatically construct symtab
2021-09-20 22:04:41 +09:00
Rui Ueyama
5f5139ad6c
[Mach-O] wip
2021-09-20 19:41:03 +09:00
Rui Ueyama
046324b64c
Simplify
2021-09-20 17:59:37 +09:00
Rui Ueyama
48c16571d1
Simplify
2021-09-20 17:27:23 +09:00
Rui Ueyama
1127061d54
Simplify
2021-09-20 16:36:50 +09:00
Rui Ueyama
fa2f54b358
Fix indentation
2021-09-20 16:31:33 +09:00
Rui Ueyama
afbc46e135
Simplify
2021-09-20 12:39:34 +09:00
Rui Ueyama
e3cebd981e
[Mach-O] wip
2021-09-19 20:28:45 +09:00
Rui Ueyama
9881a61cb3
[Mach-O] Programmatically construct export trie
2021-09-19 20:18:34 +09:00
Rui Ueyama
43e513d7af
[Mach-O] wip
2021-09-19 19:17:12 +09:00
Rui Ueyama
08f049434f
[Mach-O] wip
2021-09-19 16:21:08 +09:00
Rui Ueyama
a71f70708c
[Mach-O] wip
2021-09-19 14:35:45 +09:00
Rui Ueyama
7f671f5390
[Mach-O] Programmatically construct lazy bind instructions
2021-09-19 14:13:01 +09:00
Rui Ueyama
d84b813cb3
[Mach-O] Programmatically construct bind instructions
2021-09-19 13:37:56 +09:00
Rui Ueyama
fabd425f67
[Mach-O] Simplify
2021-09-19 12:13:54 +09:00
Rui Ueyama
fbf3a1a24e
[Mach-O] Programmatically construct rebase instructions
2021-09-19 12:01:03 +09:00
Rui Ueyama
76874d84ba
[Mach-O] Output "hello world" program
...
With this change, ld64.mold is able to emit a "hello world" program.
$ ./ld64.mold -out hello
$ ./hello
Hello world
2021-09-18 20:57:05 +09:00
Rui Ueyama
ded5d5e6a1
[Mach-O] wip
2021-09-18 20:57:03 +09:00
Rui Ueyama
2d5e6888f9
[Mach-O] wip
2021-09-18 20:57:01 +09:00
Rui Ueyama
3a503ce2cc
[Mach-O] wip
2021-09-18 20:56:59 +09:00
Rui Ueyama
1f3f019a59
[Mach-O] wip
2021-09-18 20:56:55 +09:00
Rui Ueyama
f55fc5f082
[Mach-O] wip
2021-09-18 20:56:51 +09:00
Rui Ueyama
fb0b316c81
[Mach-O] wip
2021-09-18 17:38:34 +09:00
Rui Ueyama
1ebfc28aea
[Mach-O] wip
2021-09-18 17:25:59 +09:00
Rui Ueyama
da5effd52d
[Mach-O] wip
2021-09-18 16:56:00 +09:00
Rui Ueyama
e8aa31cd8b
[Mach-O] wip
2021-09-18 15:05:46 +09:00