Re: LLVM broken on main (arm64)?

Dimitry Andric <[email protected]>
Newsgroups gmane.os.freebsd.devel.arm
Message-ID <7F8E9486-3FF5-436F-B584-8ACB7BCF1BAD__29160.3138017066$1753617560$gmane$org@FreeBSD.org>
On 27 Jul 2025, at 13:33, Lexi Winter <[email protected]> wrote:
> 
> Dimitry Andric:
>> On 27 Jul 2025, at 12:44, Herbert J. Skuhra <[email protected]> wrote:
>>> 
>>> after updating from main-n279078-1f2c178e5688 to
>>> main-n279105-9b3055d0d4bc (arm64) I have the following issue:
>>> 
>>> $ cc
>>> PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the crash backtrace, preprocessed source, and associated run script.
>>> Stack dump:
>>> 0.      Program arguments: cc
>>> 1.      Compilation construction
>>> Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
>>> 0  libprivatellvm.so.19 0x00000edc041485ec llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 72
>>> 1  libprivatellvm.so.19 0x00000edc041464ec llvm::sys::RunSignalHandlers() + 128
>>> 2  libprivatellvm.so.19 0x00000edc04148d48 llvm::support::detail::provider_format_adapter<int>::format(llvm::raw_ostream&, llvm::StringRef) + 412
>>> 3  libthr.so.3          0x00000edc06bafc38 _pthread_sigmask + 1320
>>> Segmentation fault
>> 
>> That's a very short trace, with no useful information. Maybe installworld was half-finished?
> 
> i am seeing something similar on amd64 after updating past 9b3055d0d4bc:
> 
> 1& 1? 172!freebsd15 ~/src/bsd/dev [lf/dev/pkgbase-toolchain]% cc
> 
> PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the crash backtrace, preprocessed source, and associated run script.
> Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
> 0  libprivatellvm.so.19 0x00001ca34ed8f2c9 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 57
> 1  libprivatellvm.so.19 0x00001ca34ed8d185 llvm::sys::RunSignalHandlers() + 85
> 2  libprivatellvm.so.19 0x00001ca34ed8f9d7 llvm::support::detail::provider_format_adapter<int>::format(llvm::raw_ostream&, llvm::StringRef) + 375
> 3  libthr.so.3          0x00001ca352fc88ec _pthread_sigmask + 1340
> 4  libthr.so.3          0x00001ca352fc7ebb pthread_signals_unblock_np + 1467
> 5  libthr.so.3          0x00001ca34449d2d3 pthread_signals_unblock_np + 18446744073462962643
> 6  libprivatellvm.so.19 0x00001ca34d5b28be llvm::cl::opt<int, false, llvm::cl::parser<int>>::~opt() + 62
> 7  libc.so.7            0x00001ca35434131f __cxa_finalize + 351
> [2]    5802 bus error (core dumped)  cc
> 
> i'm using pkgbase so unlikely to be a partial install.  could it be that
> this change requires a clean build?

I think it's likely that Kevin's https://reviews.freebsd.org/D50388 / https://cgit.freebsd.org/src/commit/?id=9b3055d0d4bc is the cause: it flips MK_LLVM_ASSERTIONS from "yes" to "no" by default. My guess is that some objects, libraries or binaries do not get rebuilt, leading to inconsistencies.

There probably has to be another depend-cleanup.sh hack to get over this. Another complication is that in depend-cleanup.sh you don't have access to the MK_xxx options from src.opts.mk.

-Dimitry
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.