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

45 Commits

Author SHA1 Message Date
Dan Cross
bed5b1731b illumos: Treat absolute symbols specially
illumos is a descendent of Solaris/OpenSolaris, and treats
symbols with shndx=SHN_ABS and st_value=0 specially, such that
they should be marked imported.  This change adds a special
case for this behavior, wrapped up in a function that #ifdef's
out on other platforms.  With this patch, executables linked
with mold on illumos run; without it, they do not.

The original behavior was spotted by Luqman Aden (@luqmana).
This also patches a small bogon in the third-party `mimalloc`
code.  I've sent that same fix upstream, but so far the
maintainer has not resonded, so replicate here.

Fixes #1183

Signed-off-by: Dan Cross <cross@oxidecomputer.com>
2024-02-01 13:55:05 +00:00
Rui Ueyama
72eb180028 Upgrade OneTBB to version 2021.11.0 2023-12-02 12:34:16 +09:00
Rui Ueyama
02ead29989 Fix build issue for ARM32-on-ARM64 systems 2023-10-30 13:02:35 +09:00
Rui Ueyama
9fa61b9298 Update third-party/rust-demangle
Updated to 4283d46e4064a7e1c54bc9918a07b066cb43fca3.

Fixed https://github.com/rui314/mold/issues/1127
2023-10-19 11:33:50 +09:00
Rui Ueyama
c504911bf6 Add a missing #include 2023-09-05 15:39:44 +09:00
Rui Ueyama
fad4c1b56c Disable tests in the bundled zlib 2023-08-19 13:55:03 +09:00
Rui Ueyama
a665ca766d Upgrade bundled zlib to v1.3 2023-08-19 13:30:22 +09:00
Rui Ueyama
0f85278c73 Upgrade bundled zstd to v1.5.5 2023-08-19 13:29:24 +09:00
Rui Ueyama
c983321fed Upgrade the bundled OneTBB to v2021.10.0 2023-08-16 21:06:41 +09:00
Rui Ueyama
95894ef2e2 Attempt to fix Windows CI 2023-08-16 13:36:30 +09:00
Rui Ueyama
3833a4a457 Add BLAKE3 to third-party/
Since BLAKE3 is available under CC0, we don't need to add its license
terms (or the lack thereof) to our LICENSE.third-party file.
2023-08-16 12:13:53 +09:00
Rui Ueyama
44b15cbb35 Update the bundled xxhash to v0.8.2 2023-07-21 19:28:46 +09:00
Rui Ueyama
2cb41d8a2b Upgrade bundled mimalloc to v2.1.2 2023-06-29 12:23:39 +09:00
Rui Ueyama
1b1a142a89 Upgrade bundled OneTBB to version 2021.9.0 2023-06-29 12:21:58 +09:00
Rui Ueyama
e011889436 Fix build on systems without ucontext.h in libc
Upstream patch:
ea4e6156a2
2023-06-05 11:52:56 +09:00
Rui Ueyama
1a133a4df5 Upgrade the bundled mimalloc from 2.0.7 to 2.0.9 2023-01-17 08:53:56 +08:00
Rui Ueyama
a6c4530e43 Fix -Wunused-function 2022-12-10 16:03:25 +08:00
Rui Ueyama
f83581880d Upgrade to mimalloc 2.0.7 2022-12-10 15:41:48 +08:00
Rui Ueyama
a67e9f54f8 Attempt to unbreak CI 2022-11-12 13:51:48 +08:00
Rui Ueyama
63933a9221 Retry if pthread_create fails with spurious error
137c1a88b6
is not included in 2021.7.0, so we still need to apply it separately.
2022-11-10 17:54:25 +08:00
Rui Ueyama
e25802f84f Upgrade vendored OneTBB to version 2021.7.0
Fixes https://github.com/rui314/mold/issues/666
2022-11-10 17:42:51 +08:00
Rui Ueyama
5919914c54 Add libzstd to support --compress-debug-sections=zstd 2022-09-13 14:55:17 +08:00
Rui Ueyama
807af97a4b Revert "wip" which was made by mistake 2022-09-04 15:46:46 +08:00
Rui Ueyama
ff0679f7b8 wip 2022-09-04 15:03:03 +08:00
Rui Ueyama
a817f8d576 Enable mold to be built under BSDs
This commit is imported from
c4a42feb53

Fixes https://github.com/rui314/mold/issues/549
2022-08-20 08:54:17 +08:00
Rui Ueyama
da4c309071 Remove dead code 2022-08-16 12:26:03 +08:00
Rui Ueyama
ee68d1f2ff Add a SHA256 fallback implementation
We are going to use this implementation on Windows.
2022-08-11 21:30:13 +08:00
Rui Ueyama
eee1888d2c Remove a cmake-generated file 2022-08-08 12:47:04 +08:00
Rui Ueyama
1a041ffc62 Add to zlib to third-party
We are going to use it on Windows.
2022-08-07 13:42:06 +08:00
Rui Ueyama
0e88fd047e Add extern "C" 2022-07-04 19:28:55 +08:00
Rui Ueyama
80dc5cf1fb Merge commit '53e07d3a89bffe34a8d48136e25514e41d523d27' as 'third-party/rust-demangle' 2022-07-04 19:28:35 +08:00
Christoph Erhardt
4af6ff614c Reorder segment_table member variables in bundled TBB library
This fixes a warning produced by GCC 12 related to the initialisation
order of the class members.

For details, see the discussion at
https://github.com/oneapi-src/oneTBB/issues/823. The concern about
potential ABI incompatibility is not relevant for a private bundled
library.

Signed-off-by: Christoph Erhardt <github@sicherha.de>
2022-07-04 08:05:52 +02:00
Rui Ueyama
610e839e9e Fix ASAN issue 2022-06-15 13:12:09 +08:00
Rui Ueyama
d8a8877875 Retry if pthread_create returns EAGAIN
Looks like on many Unix-like systems, `pthread_create` can spuriously
fail for various reasons even if we have enough resources one more
thread. So we need to retry if EAGAIN is returned.

Without this, mold occasionally fails due to a pthread_create failure.

I'll test this logic for a while in this repo and upstream to OneTBB.

This logic is borrowed from Go's this patch:
https://go-review.googlesource.com/c/go/+/33894/

https://github.com/rui314/mold/issues/353
https://github.com/rui314/mold/issues/410
2022-05-07 19:04:48 +08:00
Rui Ueyama
5a2589bd94 Upgrade the bundled mimalloc to v2.0.6 2022-04-23 17:16:25 +08:00
Rui Ueyama
340528bdc3 Update mimalloc to v2.0.5
Fixes https://github.com/rui314/mold/issues/281
2022-04-03 12:00:23 +08:00
Rui Ueyama
42b7eb87a1 Fix libtbb.so for musl libc
musl libc doesn't provide getcontext/setcontext functions.
It also doesn't define RTLD_DEEPBIND flag.

I already sent a pull request to upstream:
https://github.com/oneapi-src/oneTBB/pull/748
2022-01-24 11:22:35 +09:00
Rui Ueyama
a27c113d35 Attempt to fix i386 host build
This change cherrypicks
542a27fa1c

https://github.com/rui314/mold/issues/240
2022-01-07 10:09:34 +09:00
Moon Sungjoon
3fb54162d6 Fix build error on riscv64 (#222)
Patch from this PR: https://github.com/oneapi-src/oneTBB/pull/550

Signed-off-by: Moon Sungjoon <sumoon@seoulsaram.org>
2022-01-03 16:06:02 +09:00
Rui Ueyama
fea59750ed Do not use LTO to build oneTBB as it causes link failure 2022-01-02 12:52:01 +09:00
Rui Ueyama
fba4cb9114 Merge commit 'b82badd127f38f4fea6a4f1c0ec22900dd9dd8e3' as 'third-party/tbb' 2022-01-02 12:51:35 +09:00
Rui Ueyama
d3dc8a2377 Temporarily remove oneTBB to upgrade to v2021.5.0 2022-01-02 12:51:29 +09:00
Rui Ueyama
fb89ce22fd Update third-party/mimalloc to v2.0.3 2021-12-20 13:01:38 +09:00
Rui Ueyama
65dc32fdb8 Merge commit '0621402e0a83a71ee5a13e92ce6a5de0f14dc1f2' as 'third-party/xxhash' 2021-12-18 12:42:16 +09:00
Rui Ueyama
177dc71335 Move third-party libraries to a separate sub-directory 2021-09-02 22:19:09 +09:00