The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=9b3055d0d4bcbe665d3c622c761adcc7d0a5b1c9
commit 9b3055d0d4bcbe665d3c622c761adcc7d0a5b1c9 Author: Kevin Bowling <kbowl...@freebsd.org> AuthorDate: 2025-07-27 08:00:39 +0000 Commit: Kevin Bowling <kbowl...@freebsd.org> CommitDate: 2025-07-27 08:00:39 +0000 src.opts.mk: Default LLVM_ASSERTIONS off This noticeably slows down the compiler execution and with the move to pkgbase is one of the remaining differences that cannot be administratively controlled; pkg kernels and malloc.conf(5) will allow quickly testing a snapshot in a configuration closer to stable and release branches. dim@ notes that you need to set WITH_LLVM_ASSERTIONS in src.conf(5) if you want to report an issue with LLVM. Enabling WITH_LLVM_ASSERTIONS is also a consideration for CI and pkg builders especially tracking main. Approved by: dim, kevans Differential Revision: https://reviews.freebsd.org/D50388 --- UPDATING | 5 +++++ share/man/man5/src.conf.5 | 7 ++++--- share/mk/src.opts.mk | 2 +- tools/build/options/WITH_LLVM_ASSERTIONS | 1 + 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/UPDATING b/UPDATING index 8360ab14ada0..611bb62eefcc 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250727: + LLVM's debugging assertions are now disabled in main by default. + The WITH_LLVM_ASSERTIONS src.conf(5) knob should be used to + enable it when working on LLVM or requesting help with it. + 20250726: amd64 kernel configurations must contain "options SMP". diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index a3db00aed42f..f93d3f9fc69f 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd July 14, 2025 +.Dd July 27, 2025 .Dt SRC.CONF 5 .Os .Sh NAME @@ -940,8 +940,9 @@ amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le Do not build the LLD linker during the bootstrap phase of the build. To be able to build the system an alternate linker must be provided via XLD. -.It Va WITHOUT_LLVM_ASSERTIONS -Disable debugging assertions in LLVM. +.It Va WITH_LLVM_ASSERTIONS +Enable debugging assertions in LLVM. +Use when working on or requesting help with LLVM components. .It Va WITHOUT_LLVM_BINUTILS Install ELF Tool Chain's binary utilities instead of LLVM's. This includes diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index ef43d3c939b2..77923ae7b6d1 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -123,7 +123,6 @@ __DEFAULT_YES_OPTIONS = \ LEGACY_CONSOLE \ LLD \ LLD_BOOTSTRAP \ - LLVM_ASSERTIONS \ LLVM_BINUTILS \ LLVM_COV \ LLVM_CXXFILT \ @@ -210,6 +209,7 @@ __DEFAULT_NO_OPTIONS = \ HESIOD \ LOADER_VERBOSE \ LOADER_VERIEXEC_PASS_MANIFEST \ + LLVM_ASSERTIONS \ LLVM_FULL_DEBUGINFO \ MALLOC_PRODUCTION \ OFED_EXTRA \ diff --git a/tools/build/options/WITH_LLVM_ASSERTIONS b/tools/build/options/WITH_LLVM_ASSERTIONS index 0e7fbfbda0a3..6af75221a206 100644 --- a/tools/build/options/WITH_LLVM_ASSERTIONS +++ b/tools/build/options/WITH_LLVM_ASSERTIONS @@ -1 +1,2 @@ Enable debugging assertions in LLVM. +Use when working on or requesting help with LLVM components.