LLVM/project 8b7a4fb — llvm/utils/gn/secondary/clang/lib/CodeGenUtils BUILD.gn

[gn build] Port a789eb1d665b (#230326)
DeltaFile
+0-1llvm/utils/gn/secondary/clang/lib/CodeGenUtils/BUILD.gn
+0-11 files

NetBSD/pkgsrc-wip 5aa43c3 — photocraft Makefile cargo-depends.mk

Update graphics/photocraft to v.0.5.0
DeltaFile
+30-3photocraft/distinfo
+9-0photocraft/cargo-depends.mk
+1-1photocraft/Makefile
+40-43 files

GhostBSD/ports 478edb1 — sysutils/backup-station distinfo pkg-plist, sysutils/be-station pkg-plist Makefile

sysutils/be-station: rename from backup-station, update to 0.8

Backup Station was renamed upstream to BE Station. Add the port under
its new name and remove sysutils/backup-station, with a MOVED entry.

- Require py-bectl 0.7 and Python 3.12+, drop the unused pkg dependency
- Point WWW at the be-station repository instead of software-station
- Shorten COMMENT to describe what the tool does

sysutils/ghostbsd-utils: update to 26.10.0 and depend on be-station.
DeltaFile
+0-22sysutils/backup-station/Makefile
+21-0sysutils/be-station/Makefile
+10-0sysutils/be-station/pkg-plist
+0-5sysutils/backup-station/pkg-plist
+2-2sysutils/ghostbsd-utils/Makefile
+0-3sysutils/backup-station/distinfo
+33-325 files not shown
+40-3511 files

LLVM/project b08e005 — clang/lib/CIR/CodeGen CIRGenCall.cpp, clang/test/CIR/CodeGen spir-call-calling-conv.c spir-call-calling-conv.cpp

[CIR] Emit calling convention on call sites (#230123)

Adds calling convention on the call sites. 

Note: I opted to execlude support for runtime calling convention
(classic getRuntimeCC()) on calls to runtime functions created in CIR
passes (EH, __cxa_atexit, __cxa_guard_*, dynamic_cast, global init).
These keep the default C calling convention and are marked with
TODO(cir) and `MissingFeatures::opFuncCallingConv()` for a follow-up.

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
DeltaFile
+65-0clang/test/CIR/CodeGen/spir-call-calling-conv.cpp
+41-0clang/test/CIR/CodeGen/spir-call-calling-conv.c
+40-0clang/test/CIR/Lowering/call-calling-conv.cir
+39-0clang/test/CIR/IR/call-calling-conv.cir
+38-0clang/test/CIR/CodeGenSYCL/call-calling-conv.cpp
+21-16clang/lib/CIR/CodeGen/CIRGenCall.cpp
+244-1621 files not shown
+476-6627 files

LLVM/project f93f4e3 — llvm/lib/CodeGen/AsmPrinter EHStreamer.cpp, llvm/test/CodeGen/X86 eh-call-site-info-for-inline-asm.ll

[X86] Emit LSDA call site info for inline asm calls marked `unwind` (#218276)

LLVM currently doesn't consider inline asm calls with the `unwind`
keyword when generating the list of LSDA call sites of a function.
For example, given the following IR

```llvm
declare i32 @rust_eh_personality(i32, i32, i64, ptr, ptr)
declare void @bar()

define void @example() personality ptr @rust_eh_personality {
entry:
  call void asm sideeffect alignstack inteldialect unwind "call foo", ""()

  invoke void @bar()
          to label %cont unwind label %lpad

cont:
  ret void

    [98 lines not shown]
DeltaFile
+49-0llvm/test/CodeGen/X86/eh-call-site-info-for-inline-asm.ll
+6-0llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
+55-02 files

LLVM/project 89157ec — bolt/include/bolt/Core BinaryContext.h, bolt/lib/Core BinaryEmitter.cpp BinaryContext.cpp

[BOLT] Keep ambiguous references next to function boundaries valid

A reference into code without a relocation that names its target, e.g. a
RIP-relative LEA whose relocation was against a section symbol, cannot be told
apart from "Next - Delta" and "Prev + Offset" when it lands right before or
after a function start. HHVM built with LLVM 23 has such a reference to
"sqlite3RCStrUnref - 1", which lands in padding and makes BOLT fail with
-strict. Without padding, BOLT silently kept such references relative to the
preceding function. See bolt/test/X86/unanchored-code-reference.s.

BOLT now collects these references from code and, when they are within
--boundary-ref-distance bytes (default 2) of a function start, keeps the
functions around them in place in lite mode. When all functions are processed,
it emits those functions unoptimized and back-to-back with the original bytes
between them, and checks after linking that they kept their size and distance.

Absolute references right before a function start are now relative to that
function. This replaces the workaround for "fptr - 1" in de-virtualized member
function pointer calls, which dropped the relocation and left the input
address in the code.
DeltaFile
+253-0bolt/test/X86/unanchored-code-reference.s
+224-0bolt/test/X86/unanchored-code-reference-fuse.s
+221-0bolt/lib/Core/BinaryContext.cpp
+57-21bolt/lib/Rewrite/RewriteInstance.cpp
+49-0bolt/include/bolt/Core/BinaryContext.h
+43-4bolt/lib/Core/BinaryEmitter.cpp
+847-253 files not shown
+883-259 files

LLVM/project 2e9e63d — clang/include/clang/Basic BuiltinsX86.td, clang/test/Sema ms-x86-builtins-int64-lp64.c

[BuiltinsX86] Use long long for the __int64 MS intrinsics (#154946)

Microsoft declares _Interlocked*64, _xgetbv and _xsetbv with __int64,
which is
long long on every target. BuiltinsX86.td used int64_t and uint64_t,
which are
long on LP64, so declaring them as Microsoft does fails there:

  error: conflicting types for '_InterlockedIncrement64'

Use long long int and unsigned long long int, as __emul does.
DeltaFile
+10-10clang/include/clang/Basic/BuiltinsX86.td
+19-0clang/test/Sema/ms-x86-builtins-int64-lp64.c
+29-102 files

LLVM/project f821f0f — llvm/cmake/modules MLGOLower.cmake, llvm/lib/Analysis CMakeLists.txt

[mlgo] Allow passing pre-emitc-ed models
DeltaFile
+79-58llvm/cmake/modules/MLGOLower.cmake
+98-0llvm/lib/Analysis/models/inline-oz-test-model.inc
+49-0llvm/lib/Analysis/models/regalloc-eviction-test-model.inc
+13-12llvm/lib/CodeGen/CMakeLists.txt
+13-12llvm/lib/Analysis/CMakeLists.txt
+3-21llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
+255-10320 files not shown
+324-19526 files

LLVM/project 7a92038 — libcxx/docs FeatureTestMacroTable.md, libcxx/docs/Status Cxx26Papers.csv Cxx20Issues.csv

[libc++][docs] Migrate generated and status tables to Markdown
DeltaFile
+285-564libcxx/docs/FeatureTestMacroTable.md
+337-337libcxx/docs/Status/Cxx26Issues.csv
+307-307libcxx/docs/Status/Cxx17Issues.csv
+300-300libcxx/docs/Status/Cxx23Issues.csv
+292-292libcxx/docs/Status/Cxx20Issues.csv
+208-208libcxx/docs/Status/Cxx26Papers.csv
+1,729-2,00813 files not shown
+2,363-2,68719 files

LLVM/project 7c994b0 — libcxx/utils generate_feature_test_macro_components.py

[libc++][docs] Apply Python formatting
DeltaFile
+3-1libcxx/utils/generate_feature_test_macro_components.py
+3-11 files

LLVM/project 199dfca — libcxx/docs/Helpers Styles.md, libcxx/docs/Status Cxx23.md Cxx20.md

[libc++][docs] Convert generated and status table documentation with rst2myst
DeltaFile
+54-28libcxx/docs/Helpers/Styles.md
+25-19libcxx/docs/Status/Cxx29.md
+25-19libcxx/docs/Status/Cxx26.md
+22-18libcxx/docs/Status/Cxx23.md
+22-18libcxx/docs/Status/Cxx20.md
+22-18libcxx/docs/Status/Cxx17.md
+170-1201 files not shown
+180-1317 files

LLVM/project 55d6178 — libcxx/docs FeatureTestMacroTable.rst FeatureTestMacroTable.md, libcxx/docs/Status Cxx29.rst Cxx26.rst

[libc++][docs] Rename generated and status table documentation to Markdown
DeltaFile
+0-581libcxx/docs/FeatureTestMacroTable.rst
+581-0libcxx/docs/FeatureTestMacroTable.md
+0-44libcxx/docs/Status/Cxx29.rst
+0-44libcxx/docs/Status/Cxx26.rst
+44-0libcxx/docs/Status/Cxx26.md
+44-0libcxx/docs/Status/Cxx29.md
+669-6699 files not shown
+836-83615 files

LLVM/project 0ed5f0c — llvm/docs conf.py

[docs] Enable absolute documentation link checks

Configure the LLVM documentation URL prefixes so the Sphinx build rejects
absolute links to documents in the same project. Clang is already configured.

Part of #214861
DeltaFile
+11-1llvm/docs/conf.py
+11-11 files

OpenBSD/ports nhn4Myr — www/newsboat Makefile crates.inc, www/newsboat/patches patch-Makefile

   Update newsboat to 2.45.
VersionDeltaFile
1.41+142-178www/newsboat/distinfo
1.22+70-88www/newsboat/crates.inc
1.19+8-8www/newsboat/patches/patch-Makefile
1.57+3-2www/newsboat/Makefile
+223-2764 files

LLVM/project 80842b0 — lldb/docs index.md, lldb/docs/man lldb.rst

[lldb][docs] Use project-local documentation links

Replace same-project absolute URLs with relative Markdown links and Sphinx
cross-references so local and archived documentation stays self-contained.
Update generated Python API docstrings at their header and SWIG inputs,
and repair stale Python and frame-recognizer destinations.

Validation: docs-lldb-html and docs-lldb-man, followed by fresh Sphinx
rebuilds (-E), on a merge of the three independent self-link fixes with
the checker enabled and warnings-as-errors disabled. No self-link warnings
or new warning messages compared with the audit baseline.
C/C++ formatting: git-clang-format --diff against main for the three
modified API headers reported no changes.

Part of #214861

Assisted-by: Codex
DeltaFile
+4-4lldb/docs/use/lldbdap.md
+4-4lldb/docs/resources/lldbdap-contributing.md
+3-3lldb/docs/man/lldb.rst
+2-2lldb/docs/index.md
+1-1lldb/include/lldb/API/SBThread.h
+1-1lldb/include/lldb/API/SBFrame.h
+15-155 files not shown
+20-2011 files

GhostBSD/ports 89dbac5 — audio Makefile, benchmarks Makefile

audio, benchmarks: restore SUBDIR entries lost in merges

p5-Test-Corpus-Audio-MPD, p5-libvorbis and siege are identical to
FreeBSD and listed there, but their SUBDIR lines were missing here, so
full-tree builds skipped them.
DeltaFile
+2-0audio/Makefile
+1-0benchmarks/Makefile
+3-02 files

LLVM/project dbc24fa — llvm/lib/Transforms/Utils SimplifyLibCalls.cpp, llvm/test/Transforms/InstCombine memrchr-3.ll memrchr-4.ll

[SimplifyLibCalls] Mark profiles unknown in optimizeMemRChr (#230289)

The selects created here are purely synthesized so we have no way of
preserving weights in the general case. Thus, mark the weights as
unknown.
DeltaFile
+11-6llvm/test/Transforms/InstCombine/memrchr-4.ll
+8-3llvm/test/Transforms/InstCombine/memrchr-3.ll
+6-2llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
+0-2llvm/utils/profcheck-xfail.txt
+25-134 files

LLVM/project dfa5b78 — libcxx/docs/Helpers ReleaseNotesTemplate.rst, libcxx/docs/ReleaseNotes 24.rst 23.rst

[libc++][docs] Use project-local links in release notes (#228624)

Replace absolute libc++ homepage links with Sphinx document references
in
release notes 20 through 24 and the release-note template.

I would leave these historical documents alone, but I have to fix these,
or the doc build will fail with warnings when I enable the absolute
self-link Sphinx doc build warning.

Validation: docs-libcxx-html, followed by a fresh Sphinx rebuild (-E),
on
a merge of the three independent self-link fixes with the checker
enabled
and warnings-as-errors disabled. No self-link warnings or new warning
messages compared with the audit baseline.

Part of #214861

Assisted-by: Codex
DeltaFile
+3-3libcxx/docs/ReleaseNotes/24.rst
+3-3libcxx/docs/ReleaseNotes/23.rst
+3-3libcxx/docs/ReleaseNotes/22.rst
+3-3libcxx/docs/ReleaseNotes/21.rst
+3-3libcxx/docs/ReleaseNotes/20.rst
+3-3libcxx/docs/Helpers/ReleaseNotesTemplate.rst
+18-186 files

OpenBSD/ports 83MpW2k — archivers/lzip/tarlz Makefile distinfo

   Update tarlz to 0.31.
VersionDeltaFile
1.19+2-2archivers/lzip/tarlz/distinfo
1.26+1-1archivers/lzip/tarlz/Makefile
+3-32 files

LLVM/project 3337598 — llvm/cmake/modules MLGOLower.cmake, llvm/lib/Analysis CMakeLists.txt

[mlgo] Allow passing pre-emitc-ed models
DeltaFile
+79-58llvm/cmake/modules/MLGOLower.cmake
+98-0llvm/lib/Analysis/models/inline-oz-test-model.inc
+49-0llvm/lib/Analysis/models/regalloc-eviction-test-model.inc
+13-12llvm/lib/CodeGen/CMakeLists.txt
+13-12llvm/lib/Analysis/CMakeLists.txt
+3-21llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
+255-10320 files not shown
+323-19826 files

LLVM/project f4fe49e — clang/lib/Sema SemaDeclAttr.cpp, clang/test/SemaCUDA cluster_dims.cu

[Clang] Fix cluster_dims thread block limit checks

The limit is on the total number of thread blocks, 8 for NVPTX and 16
for AMDGPU, but two checks got in the way. A 4-bit cap on each dimension
rejected cluster_dims(16, 1, 1) while accepting the same 16 blocks as
cluster_dims(4, 4, 1), and an omitted dimension contributed 0 rather
than 1, zeroing the product so cluster_dims(15, 15) compiled cleanly.

Bound each dimension only enough to keep the product from overflowing
and let the existing total size diagnostic enforce the limit. Code that
relied on the unenforced limit now fails to compile.
DeltaFile
+12-8clang/lib/Sema/SemaDeclAttr.cpp
+15-1clang/test/SemaCUDA/cluster_dims.cu
+27-92 files

LLVM/project 6fbb8d6 — llvm/lib/Transforms/InstCombine InstCombineMulDivRem.cpp, llvm/test/Transforms/InstCombine mul.ll

[InstCombine] Fix profile propagation in visitMul (#230304)

Within visitMul there is a fold that creates a new select with the same
condition as an existing select, which lets us directly propagate the
metadata.
DeltaFile
+5-3llvm/test/Transforms/InstCombine/mul.ll
+5-3llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
+0-1llvm/utils/profcheck-xfail.txt
+10-73 files

LLVM/project da76460 —

[bazel] Add target parser to dep (#230316)

Fix layering check.

`clang/lib/CodeGenUtils/TargetUtils.cpp` now includes
`llvm/TargetParser/Triple.h`
DeltaFile
+0-00 files

LLVM/project 662e1c3 — llvm/lib/Support UnicodeNameToCodepointGenerated.cpp, llvm/test/CodeGen/AMDGPU fcmp.f16.ll load-global-i16.ll

Merge branch 'main' into users/rnk/fix-self-doclink-lldb
DeltaFile
+23,347-23,371llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
+5,287-5,656llvm/test/CodeGen/AMDGPU/load-global-i8.ll
+2,827-5,340llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
+3,366-3,401llvm/test/CodeGen/AMDGPU/load-global-i16.ll
+3,103-3,156llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
+1,450-4,799llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
+39,380-45,7235,069 files not shown
+341,708-164,8665,075 files

LLVM/project a48b38e — clang/lib/CIR/CodeGen CIRGenModule.cpp, clang/test/CIR/CodeGen global-var-template-ctor.cpp

[CIR] Don't double-init global variables anymore. (#230279)

My last patch, #228586, did some additional work to make sure we
properly initialized globals even if they had multiple blocks in their
initializer rather than assuming there was one.

As a result, the dynamic initialization of a variable referenced
multiple times regressed, as we started failing verification because we
are double-emitting the initializer.

Note we ALWAYS double-emitted the initializer, but we replaced it every
time. The change above caused us to re-use the same set of blocks to
better tolerate multiple blocks, and as a side effect, the second block
initialization added instead of replacing.

This patch fixes this by making sure we only define a global variable if
it isn't yet defined.
DeltaFile
+29-11clang/test/CIR/CodeGen/global-var-template-ctor.cpp
+6-0clang/lib/CIR/CodeGen/CIRGenModule.cpp
+35-112 files

LLVM/project a3621f4 — clang-tools-extra/docs/clang-tidy Contributing.rst, flang/docs GettingStarted.md GettingInvolved.md

[docs] Repair remaining absolute self-documentation links (#228625)

Replace same-project absolute URLs with relative source links or Sphinx
cross-references in LLVM, Flang, libc, clang-tools-extra, and OpenMP.
Use the explicit LangRef label for atomic.ignore.denormal.mode metadata.
This lets Sphinx validate the targets and keeps local and archived
documentation self-contained.

Validated by building all docs-*-html targets for these subprojects with
the pending Sphinx build warning merged in.

Part of #214861

Assisted-by: Codex
DeltaFile
+4-4libc/docs/dev/code_style.md
+2-2openmp/docs/CommandLineArgumentReference.md
+2-2llvm/docs/AMDGPUUsage.rst
+1-1flang/docs/GettingStarted.md
+1-1flang/docs/GettingInvolved.md
+1-1clang-tools-extra/docs/clang-tidy/Contributing.rst
+11-112 files not shown
+13-138 files

FreeBSD/src ec76d3f — sys/netinet6 nd6_rtr.c

nd6: Do not allocate an ifaddr for the interface ID in in6_ifadd()

Without a suitable link-local address, in6_ifadd() obtains the
interface identifier from in6_get_ifid().  It wrote the result into a
freshly allocated struct in6_ifaddr, M_NOWAIT since the function runs
in the network epoch, so SLAAC could fail under memory pressure over a
16 byte scratch buffer.

Write the identifier into the on-stack address the rest of the function
uses instead.  Zero it first, in6_get_ifid() only fills in the low 64
bits, as the M_ZERO allocation did.  Track which path provided the
identifier with a flag instead of a pointer into the ifaddr, so each
path releases its own reference.

Reviewed by:            glebius
Fixes:                  9e792f7ef729 ("sys/netinet6: Fix SLAAC for interfaces with no /64 LL address")
Fixes:                  f9fc93690aef ("sys/netinet6: fix memory corruption in in6_ifadd")
MFC after:              2 weeks
Sponsored by:           Rubicon Communications, LLC ("Netgate")
Differential Revision:  https://reviews.freebsd.org/D60488
DeltaFile
+21-29sys/netinet6/nd6_rtr.c
+21-291 files

LLVM/project 6b6ca22 — clang/lib/Sema SemaDeclCXX.cpp

extract lambda to local var
DeltaFile
+16-17clang/lib/Sema/SemaDeclCXX.cpp
+16-171 files

NetBSD/pkgsrc-wip 5f25c62 — lightcraft Makefile cargo-depends.mk

Update graphics/lightcraft to v.0.4.0.
DeltaFile
+366-3lightcraft/distinfo
+121-0lightcraft/cargo-depends.mk
+1-1lightcraft/Makefile
+488-43 files

LLVM/project 3293272 — flang/lib/Semantics check-data.cpp, flang/test/Semantics data28.f90

[flang][semantics] Reject DATA-style initializer on EXTERNAL/INTRINSIC (#222256)

An `entity-decl` carrying a legacy `/initialization/` (an extension) was silently
accepted, and the initializer dropped, when the name had already been
declared `EXTERNAL` or `INTRINSIC`:

```fortran
subroutine s
  external foo
  integer foo /1/   ! accepted, no initialization emitted
end subroutine
```

`DataChecker::Leave(const parser::EntityDecl &)` passed the value list to
`AccumulateDataInitializations` without checking the symbol's class, so the
initialization never reached the emitted code and no diagnostic was produced.
Reversing the two statements already errors, so the behaviour was also
order-dependent. For an intrinsic name that is not an unrestricted specific
function (`sum`), the accumulated value instead tripped

    [9 lines not shown]
DeltaFile
+36-0flang/test/Semantics/data28.f90
+10-1flang/lib/Semantics/check-data.cpp
+46-12 files