I decided to try Wild against LLD's testsuite and while there are many unrelated errors (different messages, unsupported flags...), some of them like this one are real.
The problem here is Wild is crashing when encountering empty mergeable strings: https://github.com/llvm/llvm-project/blob/main/lld/test/ELF/merge-string-empty.s
********************
FAIL: lld :: ELF/merge-string-empty.s (2926 of 3097)
******************** TEST 'lld :: ELF/merge-string-empty.s' FAILED ********************
Exit Code: 101
Command Output (stderr):
--
/home/mateusz/Projects/llvm-project/build/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/mateusz/Projects/llvm-project/lld/test/ELF/merge-string-empty.s -o /home/mateusz/Projects/llvm-project/build/tools/lld/test/ELF/Output/merge-string-empty.s.tmp.o # RUN: at line 4
+ /home/mateusz/Projects/llvm-project/build/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/mateusz/Projects/llvm-project/lld/test/ELF/merge-string-empty.s -o /home/mateusz/Projects/llvm-project/build/tools/lld/test/ELF/Output/merge-string-empty.s.tmp.o
/home/mateusz/Projects/wild/fakes/ld.lld /home/mateusz/Projects/llvm-project/build/tools/lld/test/ELF/Output/merge-string-empty.s.tmp.o -o /dev/null # RUN: at line 5
+ /home/mateusz/Projects/wild/fakes/ld.lld /home/mateusz/Projects/llvm-project/build/tools/lld/test/ELF/Output/merge-string-empty.s.tmp.o -o /dev/null
thread 'main' panicked at /home/mateusz/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sharded-offset-map-0.2.0/src/lib.rs:110:9:
assertion `left != right` failed
left: 0
right: 0
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
--
Running testsuite itself was surprisingly easy, just apply this change: mati865/llvm-project@72ecfd7 and run WILD_FAKES_DIR=~/Projects/wild/fakes ninja check-lld.
I decided to try Wild against LLD's testsuite and while there are many unrelated errors (different messages, unsupported flags...), some of them like this one are real.
The problem here is Wild is crashing when encountering empty mergeable strings: https://github.com/llvm/llvm-project/blob/main/lld/test/ELF/merge-string-empty.s
Running testsuite itself was surprisingly easy, just apply this change: mati865/llvm-project@72ecfd7 and run
WILD_FAKES_DIR=~/Projects/wild/fakes ninja check-lld.