1
1
mirror of https://github.com/rui314/mold.git synced 2024-12-29 11:24:36 +03:00
Commit Graph

901 Commits

Author SHA1 Message Date
Rui Ueyama
50d52a22dc Implement GOTTPOFF relaxation 2021-03-16 20:17:18 +09:00
Rui Ueyama
3b7860d375 wip 2021-03-16 16:01:00 +09:00
Rui Ueyama
5671de698b Relax indirect call or jump with GOTPCRELX relocation 2021-03-16 12:42:05 +09:00
Rui Ueyama
df06d5adad Add -Map 2021-03-16 00:56:11 +09:00
Rui Ueyama
c3bbb2c094 Add -filter and -auxiliary 2021-03-16 00:34:09 +09:00
Rui Ueyama
4bdc20986f Relax R_X86_64_GOTPCRELX_REX against MOV instruction to LEA 2021-03-15 20:32:44 +09:00
Rui Ueyama
118ad250f8 Use xxHash 2021-03-15 15:41:01 +09:00
Rui Ueyama
32612a786a wip 2021-03-15 14:04:26 +09:00
Rui Ueyama
1028d7934b wip 2021-03-14 20:59:48 +09:00
Rui Ueyama
e0b7468af6 wip 2021-03-14 17:04:45 +09:00
Rui Ueyama
6acf3c99cc wip 2021-03-14 16:34:10 +09:00
Rui Ueyama
4260435ff7 wip 2021-03-14 14:14:14 +09:00
Rui Ueyama
f07b9073cf wip 2021-03-14 00:58:13 +09:00
Rui Ueyama
cf7e672647 Optimize string merging 2021-03-14 00:09:54 +09:00
Rui Ueyama
0f5d2d730f wip 2021-03-13 23:39:11 +09:00
Rui Ueyama
554235f4da Rename -perf and -stats 2021-03-13 21:55:27 +09:00
Rui Ueyama
b4dda46b2c Add "-z defs" and -no-undefined option 2021-03-13 21:46:09 +09:00
Rui Ueyama
9d52727cd4 Ignore .note.gnu.property for now 2021-03-13 21:29:02 +09:00
Rui Ueyama
34b2e8029b wip 2021-03-13 18:24:03 +09:00
Rui Ueyama
7d1e40b79b Emit PTGNU_RELRO segment 2021-03-12 20:16:52 +09:00
Rui Ueyama
e8e14e4e0d Add -z execstack and -z noexecstack 2021-03-12 18:09:15 +09:00
Rui Ueyama
5f42971325 Do not hardcode Linux's ld.so path 2021-03-12 16:39:16 +09:00
Rui Ueyama
d7e1f2df1d wip 2021-03-12 15:52:54 +09:00
Rui Ueyama
39287cc9db wip 2021-03-12 14:20:10 +09:00
Rui Ueyama
069e2fe7a8 wip 2021-03-12 14:07:42 +09:00
Rui Ueyama
bac66c1304 wip 2021-03-12 11:45:52 +09:00
Rui Ueyama
35ab5ff089 wip 2021-03-12 01:17:46 +09:00
Rui Ueyama
f1691a34ca wip 2021-03-11 20:26:12 +09:00
Rui Ueyama
12e8e46abe wip 2021-03-11 20:10:36 +09:00
Rui Ueyama
38afdbb7b9 wip 2021-03-11 19:48:18 +09:00
Rui Ueyama
1bc2dbf8cc wip 2021-03-11 19:05:33 +09:00
Rui Ueyama
2d0e34fccc Simplify 2021-03-11 17:58:43 +09:00
Rui Ueyama
1da77d0061 wip 2021-03-11 17:48:28 +09:00
Rui Ueyama
d22290c665 wip 2021-03-11 17:38:46 +09:00
Rui Ueyama
252bf21ee1 wip 2021-03-11 17:37:06 +09:00
Rui Ueyama
c074f8ade6 wip 2021-03-11 17:20:59 +09:00
Rui Ueyama
25200eb61c wip 2021-03-11 15:36:35 +09:00
Rui Ueyama
004a34ba4e wip 2021-03-11 03:04:00 +09:00
Rui Ueyama
cbace36e0b wip 2021-03-11 01:16:39 +09:00
Rui Ueyama
ca0d82f6b6 wip 2021-03-11 01:15:53 +09:00
Rui Ueyama
604e39387d wip 2021-03-10 22:39:23 +09:00
Rui Ueyama
54dd328515 wip 2021-03-10 21:37:25 +09:00
Rui Ueyama
92bc9651a9 wip 2021-03-09 23:43:36 +09:00
Rui Ueyama
e7c0f61889 wip 2021-03-09 21:51:44 +09:00
Rui Ueyama
01e2df394e wip 2021-03-09 20:53:54 +09:00
Rui Ueyama
141f2e2bd1 wip 2021-03-09 12:41:36 +09:00
Rui Ueyama
fa1f01a767 wip 2021-03-09 02:56:01 +09:00
Rui Ueyama
7d2e04a23b Rename variables 2021-03-09 02:22:45 +09:00
Rui Ueyama
06b53ba6fe Delete unused member 2021-03-09 02:20:18 +09:00
Rui Ueyama
6e3d219c08 Add -dynamic-list 2021-03-08 21:11:54 +09:00
Rui Ueyama
5ae09ee9d3 Add -build-id=HEXVALUE 2021-03-08 21:05:18 +09:00
Rui Ueyama
5f492fea70 Define __executable_start 2021-03-08 20:35:25 +09:00
Rui Ueyama
b53392c2f7 Add -exclude-libs 2021-03-08 17:24:51 +09:00
Rui Ueyama
69f09c9ac4 wip 2021-03-07 22:44:10 +09:00
Rui Ueyama
7dbfb01b10 wip 2021-03-07 20:44:10 +09:00
Rui Ueyama
ddd42daf53 Write .gnu.version_d 2021-03-07 15:41:45 +09:00
Rui Ueyama
5746716780 wip 2021-03-06 18:51:03 +09:00
Rui Ueyama
6a34935cc9 wip 2021-03-05 19:46:12 +09:00
Rui Ueyama
22f5edc4f4 wip 2021-03-05 12:24:06 +09:00
Rui Ueyama
b97dc26e5c wip 2021-03-05 12:18:17 +09:00
Rui Ueyama
4b840ebbd1 Simplify 2021-03-05 10:38:51 +09:00
Rui Ueyama
ad3bd347dd Handle object files having more than 0xff00 sections 2021-03-04 23:18:32 +09:00
Rui Ueyama
3b36974625 wip 2021-03-04 21:57:18 +09:00
Rui Ueyama
791465b832 wip 2021-03-04 20:23:27 +09:00
Rui Ueyama
93e226589f Use Symbol::is_interposable() instead of Symbol::is_imported() 2021-03-03 19:42:55 +09:00
Rui Ueyama
f74f1aef30 Revert "Invoke a worker thread to pre-populate file contents"
This reverts commit 4a96032976.
It was slow.
2021-03-03 17:19:24 +09:00
Rui Ueyama
4a96032976 Invoke a worker thread to pre-populate file contents 2021-03-03 17:19:13 +09:00
Rui Ueyama
453104c5b4 Add -Bsymbolic-functions 2021-03-02 22:08:06 +09:00
Rui Ueyama
0d56ca6fc6 wip 2021-03-02 20:24:31 +09:00
Rui Ueyama
d3977d75d0 wip 2021-03-02 00:38:02 +09:00
Rui Ueyama
a3df45cb86 wip 2021-03-01 22:04:42 +09:00
Rui Ueyama
0b1462fc39 Rename -perf and -stats 2021-03-01 15:39:14 +09:00
Rui Ueyama
ac8e24a683 Add -soname 2021-03-01 13:18:51 +09:00
Rui Ueyama
5d1e0c803c Add -init and -fini 2021-03-01 12:52:45 +09:00
Rui Ueyama
e0eeb404dc Emit read-only copyrel to .bss.rel.ro 2021-02-28 23:26:24 +09:00
Rui Ueyama
c15957c02a Demangle by default 2021-02-28 21:11:51 +09:00
Rui Ueyama
c63d57c7a2 Split main.cc 2021-02-28 11:32:11 +09:00
Rui Ueyama
4361ef677a wip 2021-02-28 01:50:49 +09:00
Rui Ueyama
f6e04af5d3 wip 2021-02-28 01:33:51 +09:00
Rui Ueyama
ec3f54f544 Support compressed debug sections 2021-02-27 18:28:44 +09:00
Rui Ueyama
c964725182 Add --demangle 2021-02-27 12:20:31 +09:00
Rui Ueyama
e23c358deb wip 2021-02-27 12:08:55 +09:00
Rui Ueyama
b98b792c50 wip 2021-02-27 01:11:09 +09:00
Rui Ueyama
a1bbbd3b1c Create .plt.got 2021-02-26 21:27:01 +09:00
Rui Ueyama
476ecafef9 wip 2021-02-26 18:47:38 +09:00
Rui Ueyama
4c2bf53779 wip 2021-02-26 17:52:22 +09:00
Rui Ueyama
f9ecf89b16 wip 2021-02-25 20:27:59 +09:00
Rui Ueyama
c118086d29 wip 2021-02-25 17:01:59 +09:00
Rui Ueyama
cd2205d994 wip 2021-02-22 21:39:12 +09:00
Rui Ueyama
09b4a8233f wip 2021-02-22 15:10:30 +09:00
Rui Ueyama
2766c2e2bf wip 2021-02-22 13:08:22 +09:00
Rui Ueyama
fd6de2d258 Add --undefined 2021-02-21 17:17:41 +09:00
Rui Ueyama
fc84d405c6 wip 2021-02-21 15:51:56 +09:00
Rui Ueyama
d8381f7e74 Export symbols from executables 2021-02-21 00:24:22 +09:00
Rui Ueyama
9814405864 wip 2021-02-20 23:59:05 +09:00
Rui Ueyama
0dd34c0cf0 wip 2021-02-20 21:56:39 +09:00
Rui Ueyama
1c99e3a1b2 wip 2021-02-20 20:40:35 +09:00
Rui Ueyama
245eaf40c3 wip 2021-02-20 15:12:43 +09:00
Rui Ueyama
3a24c752db wip 2021-02-12 20:59:30 +09:00
Rui Ueyama
0085812b2f Define __GNU_EH_FRAME_HDR 2021-02-11 22:17:22 +09:00
Rui Ueyama
b59cbd4638 Add -whole-archive 2021-02-09 22:07:44 +09:00
Rui Ueyama
4bf9b1cd30 wip 2021-01-30 14:30:31 +09:00
Rui Ueyama
a87869971a wip 2021-01-30 09:50:37 +09:00
Rui Ueyama
c4632f8dae wip 2021-01-29 21:49:19 +09:00
Rui Ueyama
a817424d02 wip 2021-01-29 18:06:58 +09:00
Rui Ueyama
8a8977ab19 wip 2021-01-29 12:45:37 +09:00
Rui Ueyama
fb7d0ba9f7 wip 2021-01-29 11:59:02 +09:00
Rui Ueyama
b70c24c968 wip 2021-01-29 11:32:27 +09:00
Rui Ueyama
742a4c1c09 wip 2021-01-28 20:16:12 +09:00
Rui Ueyama
3267155c4f wip 2021-01-28 17:09:15 +09:00
Rui Ueyama
e14f96e317 wip 2021-01-28 14:06:43 +09:00
Rui Ueyama
4be68f514f wip 2021-01-28 14:06:13 +09:00
Rui Ueyama
3e454c2175 wip 2021-01-28 14:04:23 +09:00
Rui Ueyama
79a5be7e7d wip 2021-01-28 07:14:22 +09:00
Rui Ueyama
f0d625d75e wip 2021-01-27 20:45:32 +09:00
Rui Ueyama
e207e95737 ICF 2021-01-27 18:18:11 +09:00
Rui Ueyama
91f81dcd5e wip 2021-01-26 20:39:00 +09:00
Rui Ueyama
4d40cf6888 Add -build-id={md5,sha1,sha256,uuid} 2021-01-26 20:03:30 +09:00
Rui Ueyama
c1627608fc Add --allow-multiple-definition 2021-01-26 19:12:16 +09:00
Rui Ueyama
50330975fe wip 2021-01-26 13:08:35 +09:00
Rui Ueyama
3e89318f40 wip 2021-01-26 13:03:11 +09:00
Rui Ueyama
fbd4d43c8c wip 2021-01-26 09:11:12 +09:00
Rui Ueyama
3eb3d9edf7 wip 2021-01-25 18:34:39 +09:00
Rui Ueyama
2cc93f4fea wip 2021-01-25 17:59:18 +09:00
Rui Ueyama
61f833b93f wip 2021-01-25 17:56:49 +09:00
Rui Ueyama
f245239d0d wip 2021-01-25 17:14:59 +09:00
Rui Ueyama
4efb48d3ee Remove symbols referencing dead sections from symtab 2021-01-25 17:09:48 +09:00
Rui Ueyama
6f21d6ea44 Improve parallelism 2021-01-25 15:27:56 +09:00
Rui Ueyama
401e11ad05 wip 2021-01-25 13:55:50 +09:00
Rui Ueyama
6061883010 wip 2021-01-25 13:31:29 +09:00
Rui Ueyama
1890feec8d wip 2021-01-25 13:16:26 +09:00
Rui Ueyama
68e6bb7583 wip 2021-01-25 12:55:28 +09:00
Rui Ueyama
3eee60e352 wip 2021-01-25 12:25:03 +09:00
Rui Ueyama
becfb75bc7 wip 2021-01-25 10:42:38 +09:00
Rui Ueyama
5ab8149d7f wip 2021-01-25 10:03:34 +09:00
Rui Ueyama
5ebf7bf303 wip 2021-01-25 09:57:02 +09:00
Rui Ueyama
b9533ade70 wip 2021-01-24 22:15:41 +09:00
Rui Ueyama
6ec9cb9bfd wip 2021-01-24 21:15:59 +09:00
Rui Ueyama
1bbd8fdddc Implement --gc-sections 2021-01-24 19:47:34 +09:00
Rui Ueyama
c636513b59 wip 2021-01-24 13:58:25 +09:00
Rui Ueyama
ec2a2079b5 wip 2021-01-24 13:26:03 +09:00
Rui Ueyama
f645a9deb1 Use i64 instead of int or u32 2021-01-24 13:22:32 +09:00
Rui Ueyama
9202c1adb9 wip 2021-01-24 11:42:35 +09:00
Rui Ueyama
09b1a11bf8 wip 2021-01-24 11:27:02 +09:00
Rui Ueyama
a9568718cb wip 2021-01-24 11:20:50 +09:00
Rui Ueyama
6fb353e8fc wip 2021-01-24 10:25:37 +09:00
Rui Ueyama
c8e2c183b2 wip 2021-01-24 09:19:56 +09:00
Rui Ueyama
46f3402543 Implement .gnu.hash 2021-01-23 21:36:02 +09:00
Rui Ueyama
3d0d11ed7c temporary 2021-01-23 11:07:01 +09:00
Rui Ueyama
2502c35c40 Add --no-quick-exit 2021-01-22 21:29:28 +09:00