[llvm-dev] llvm 12 regression bug with llvm-ar

Shawn Webb via llvm-dev
Mon, 14 Jun 2021 12:52:59 -0000

On Mon, Jun 14, 2021 at 08:31:45AM -0400, Shawn Webb
wrote:
> Hey all,
>
> As a little bit of background, HardenedBSD compiles (nearly) the whole
> operating system (static/shared libraries and applications) with LTO.
> HardenedBSD is a derivative of FreeBSD that follows FreeBSD very
> closely (we merge in changes from FreeBSD every six hours).
>
> Over the weekend, FreeBSD merged in llvm 12 (upgrading from llvm 11).
> We've found at least one regression with llvm-ar. Below is the log of
> the llvm error output. I'm sure you all will need more context, so
> please let me know how I can help in that regard.
>
> ==== BEGIN LOG ===> ===> lib/libzstd (obj,all,install)
> building static zstd library
> ar rcv libprivatezstd.a entropy_common.o error_private.o fse_decompress.o
pool.o threading.o xxhash.o zstd_common.o fse_compress.o huf_compress.o
zstd_compress.o zstd_compress_literals.o zstd_compress_sequences.o
zstd_compress_superblock.o zstdmt_compress.o huf_decompress.o zstd_ddict.o
zstd_decompress.o zstd_decompress_block.o zbuff_common.o zbuff_compress.o
zbuff_decompress.o cover.o divsufsort.o zdict.o zstd_fast.o zstd_lazy.o
zstd_ldm.o zstd_opt.o zstd_double_fast.o debug.o hist.o fastcover.o
> Assertion failed: ((Record[i] == 5 || Record[i] == 6) &&
"Invalid attribute group entry"), function parseAttributeGroupBlock,
file /usr/src/contrib/llvm-project/llvm/lib/Bitcode/Reader/BitcodeReader.cpp,
line 1645.
> PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include
the crash backtrace.
> Stack dump:
> 0.      Program arguments: ar rcv libprivatezstd.a entropy_common.o
error_private.o fse_decompress.o pool.o threading.o xxhash.o zstd_common.o
fse_compress.o huf_compress.o zstd_compress.o zstd_compress_literals.o
zstd_compress_sequences.o zstd_compress_superblock.o zstdmt_compress.o
huf_decompress.o zstd_ddict.o zstd_decompress.o zstd_decompress_block.o
zbuff_common.o zbuff_compress.o zbuff_decompress.o cover.o divsufsort.o zdict.o
zstd_fast.o zstd_lazy.o zstd_ldm.o zstd_opt.o zstd_double_fast.o debug.o hist.o
fastcover.o
> #0 0x0000010ea28e6f86 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:564:13
> #1 0x0000010ea28e4de1 llvm::sys::RunSignalHandlers()
/usr/src/contrib/llvm-project/llvm/lib/Support/Signals.cpp:69:18
> #2 0x0000010ea28e7815 SignalHandler
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3
> #3 0x000003a50c98161e handle_signal
/usr/src/lib/libthr/thread/thr_sig.c:0:3
> ==== END LOG ===
I've uploaded the object files here:
https://hardenedbsd.org/~shawn/2021-06-14_libzstd.tar.xz

Thanks,

--
Shawn Webb
Cofounder / Security Engineer
HardenedBSD

https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20210614/20d3aec8/attachment.sig>