Old versions of gas produce an invalid section index. That is ignored by old versions of ld, but prevents a link with lld.
The file doesn't assemble with llvm-mc since MC is missing altmacro.
Fortunately the bug is easy to work around.
Differential D6789
Work around an old as bug rafael.espindola_gmail.com on Jun 9 2016, 6:38 PM. Authored by Tags None Referenced Files
Details Old versions of gas produce an invalid section index. That is ignored by old versions of ld, but prevents a link with lld. The file doesn't assemble with llvm-mc since MC is missing altmacro. Fortunately the bug is easy to work around.
Diff Detail
Event Timeline
Comment Actions I tested the equivalent using AFLAGS: diff --git a/lib/libmd/Makefile b/lib/libmd/Makefile index bb50623..9afdc45 100644 --- a/lib/libmd/Makefile +++ b/lib/libmd/Makefile @@ -93,6 +93,7 @@ SRCS+= rmd160.S CFLAGS+= -DRMD160_ASM .endif .if exists(${MACHINE_ARCH}/skein_block_asm.s) +AFLAGS += --strip-local-absolute SRCS+= skein_block_asm.s CFLAGS+= -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace : with make tinderbox and it works. @bdrewery, are you aware of AFLAGS not working somewhere? Comment Actions AFLAGS works for compiling .s files while ACFLAGS works for compiling .S and .asm files. Comment Actions Lets try with ASFLAGS then. It might have been just my mistake. If we hit a case where that doesn't work then we will know why. |