1
1
mirror of https://github.com/rui314/mold.git synced 2024-09-11 13:06:59 +03:00
Commit Graph

6511 Commits

Author SHA1 Message Date
Rui Ueyama
de7d37e1fc Do not count .tbss into account when creating PT_GNU_RELRO
Fixes https://github.com/rui314/mold/issues/1151
2023-11-21 11:44:52 +09:00
Rui Ueyama
3cb8a528a5 Make -z rewrite-endbr to work without -ffunction-sections
Now we can rewrite an endbr64 instruction even if it is not at the
beginning of a section.
2023-11-20 17:36:23 +09:00
Rui Ueyama
8bb01e1a0e Fix CI 2023-11-20 14:25:03 +09:00
Rui Ueyama
0416d7ed80 Add --nmagic
Fixes https://github.com/rui314/mold/issues/1144
2023-11-20 13:35:04 +09:00
Rui Ueyama
c02c04f08a Improve dist.sh 2023-11-20 11:55:14 +09:00
Rui Ueyama
efb952ef12 Use the release version of setup-mold GitHub action 2023-11-19 10:32:51 +09:00
Rui Ueyama
04b145d795 Add comments and fix SHA256 digest 2023-11-19 09:36:04 +09:00
Rui Ueyama
1830fa1d84 Pin docker images with sha256 digests for additional security 2023-11-18 12:25:37 +09:00
Rui Ueyama
a2b300b863 Fix CI 2023-11-17 19:12:19 +09:00
Rui Ueyama
2d8297a562 Fix CI 2023-11-17 18:22:16 +09:00
Rui Ueyama
deb7728b46 Fix CI 2023-11-17 18:08:13 +09:00
Rui Ueyama
bbd6d86af4 Fix CI 2023-11-17 17:57:59 +09:00
Rui Ueyama
b6361b8cad Refactor 2023-11-17 17:51:25 +09:00
Rui Ueyama
04fdae124f Refactor 2023-11-17 17:41:24 +09:00
Rui Ueyama
29df7093a8 Refactor 2023-11-17 17:18:53 +09:00
Rui Ueyama
18212a21ab Refactor 2023-11-17 17:04:43 +09:00
Rui Ueyama
e13d28bfe6 Create non-x86 binaries on daily basis
Building non-native binaries using Qemu is extremely heavy.
It takes ~2 hours on a GitHub Actions runner. We don't want to
run it on each push.
2023-11-17 15:45:39 +09:00
Rui Ueyama
667204ac7c Make dist.sh to work on macOS 2023-11-17 15:09:31 +09:00
Rui Ueyama
76ea83e791 Create binary tarballs for non-x86-46 targets 2023-11-17 14:15:04 +09:00
Rui Ueyama
55daf7385d Cache Docker images for GitHub Actions 2023-11-17 13:42:54 +09:00
Rui Ueyama
0e66e4b7e9 Create distribution tarballs for each commit 2023-11-16 22:54:38 +09:00
Rui Ueyama
fe485db9b4 Refactor 2023-11-16 18:30:31 +09:00
Rui Ueyama
b3dc4879fd Remove a global variable 2023-11-16 18:00:41 +09:00
Rui Ueyama
25ce3738b9 Update workflow 2023-11-16 16:50:33 +09:00
Rui Ueyama
22b8ac8470 Update mold.1 2023-11-16 07:16:13 +00:00
Rui Ueyama
6a4e128ef8 Document --spare-program-headers 2023-11-16 16:15:28 +09:00
Rui Ueyama
66d68c8a98 Auto-generate docs/mold.1 2023-11-16 16:15:28 +09:00
Rui Ueyama
76867af090 Regenerate mold.1
This file is created by `ronn` command.
2023-11-16 12:54:49 +09:00
Rui Ueyama
5d02248a0b Sort entries and fix typos 2023-11-16 12:54:38 +09:00
Rui Ueyama
eb6c213f2a Add --spare-program-headers
This is a new experimental flag to make room at the end of PHDR
so that post-processing tools can add more entries as needed.

Fixes https://github.com/rui314/mold/issues/1148
2023-11-16 12:07:13 +09:00
Rui Ueyama
efdac9afdd
Merge pull request #1147 from Saldivarcher/add-trace-symbol-help-msg 2023-11-16 05:45:29 +09:00
Miguel Saldivar
c6bfff2a04 Add --trace-symbol to the help message 2023-11-14 14:24:41 -06:00
Rui Ueyama
49066ea329 Bump mold version to 2.3.3 2023-11-14 14:41:42 +09:00
Rui Ueyama
25ceab07f7 Build mold on Debian 8 (Jessie)
Debian 8 was released in April 2015, which is old enough for
binary distribution. Previously, we used to use Debian 10 (Bullseye),
which was released in July 2019.
2023-11-14 12:44:02 +09:00
Rui Ueyama
6e97393740 Fix tests 2023-11-14 12:44:02 +09:00
Rui Ueyama
ff3d54d26f Fix a crash bug in --defsym
Fixes https://github.com/rui314/mold/issues/1108
2023-11-13 20:09:25 +09:00
Rui Ueyama
25c9cf3976 Refactor 2023-11-13 19:57:50 +09:00
Rui Ueyama
5f2fb08cfd Make dist.sh reproducible
dist.sh script should now produce bit-by-bit identical output files now.

Fixes https://github.com/rui314/mold/issues/1146
2023-11-13 17:14:37 +09:00
Rui Ueyama
60bc56848f Fix tests for Debian 9 2023-11-13 13:37:35 +09:00
Rui Ueyama
600ca381fd Reduce the size of Symbol by 2 bytes 2023-11-12 13:39:44 +09:00
Rui Ueyama
da3f5dd4ec Fix --dynamic-list for DSOs
--dynamic-list, --export-dynamic-symbol and --export-dynamic-symbol-list
have different semantics for executables and DSOs. If the output is an
executable, they specify a list of symbols that are to be exported.
If the output is a shared object, they specify the list of symbols that
are to be interposable.

mold havne't implemented the latter semantics. This commit fixes that
issue.

Fixes https://github.com/rui314/mold/issues/1071
2023-11-12 13:00:24 +09:00
Rui Ueyama
b59911b0c1 Refactor 2023-11-11 15:09:51 +09:00
Rui Ueyama
8131528305 Rename long .rodata section names 2023-11-10 15:07:19 +09:00
Rui Ueyama
6a71e7dd4b Refactor 2023-11-09 18:57:13 +09:00
Rui Ueyama
a63b2f70b2 Fix CI 2023-11-09 15:47:25 +09:00
Rui Ueyama
3f88964527 Map .ctors/.dtors into .init_array/.fini_array
.init_array/.fini_array haven't completely replace .ctors/.dtors, so
we need to convert .ctors/.dtors to .init_array/.fini_array.

Fixes https://github.com/rui314/mold/issues/1113
2023-11-09 12:43:58 +09:00
Rui Ueyama
e18dc70af0 Refactor 2023-11-08 22:04:14 +09:00
Rui Ueyama
0c6daad215 Add more tests 2023-11-07 15:20:31 +09:00
Rui Ueyama
8c35c80bb7 Enable qemu tests by default 2023-11-07 13:55:56 +09:00
Rui Ueyama
d42ba3bae4 Fix CI 2023-11-07 13:48:48 +09:00