Add the DS2413 2 port GPIO device at its published family ID.
There are known clones and/or ripoffs of this chip that have a family
ID that is not 0x3a. This will be dealt with in the device drive that
will appear in the future.
[bazel] Replace deprecated repository_name() with repo_name() (#241743)
`native.repository_name()` is deprecated in favor of `repo_name()`,
which directly returns the canonical repository name without a leading
`@` (making `.lstrip("@")` unnecessary).
Assisted-by: Gemini
[lld][MachO] Batch command-line object files and archive member scanning in parallel
This is part of the ld64.lld performance improvements tracked by
Currently, command-line object files and archive member symbol tables
are still parsed and scanned one file at a time as Driver::processFile()
encounters them.
This change splits ObjFile::parseLazy() into scanLazy() and
registerLazy(), and queues command-line object files and archive members
via parseLater(). parseBatch() runs scanLazy() and parsePrepare() in
parallel across the batch before running registerLazy() and
parseFinish() serially in command-line order, flushing before any other
input type.
Locally, this shows an ~8% link-time performance improvement over the
baseline.
AI use: this change is based off a prototype developed by an LLM.
[2 lines not shown]
[lld][MachO] Split ObjFile::parse() and parse extracted archive rounds in parallel
This is part of the ld64.lld performance improvements tracked by
#222068 and #238938.
Currently, parsePendingExtracts() parses each extracted archive member
serially from start to finish, even though section creation, subsection
splitting, local symbol creation, and hashing external symbol names only
touch per-file state.
This change splits ObjFile::parse() into parsePrepare() and
parseFinish(), using makeThreadLocal() for per-file allocations.
parsePendingExtracts() now processes extracted members in rounds,
running parsePrepare() in parallel across each round and parseFinish()
serially in file order.
Locally, this shows a ~4% link-time performance improvement over the
baseline.
[3 lines not shown]
[LangRef] Document CFI function summary entries (#241614)
Document the `cfiFunctionDefs` and `cfiFunctionDecls` combined summary
index entries in the ThinLTO Summary section of LangRef.
Follow-up to #240966.
Assisted-by: Gemini
[IR] Escape string names when printing ThinLTO summaries (#241620)
Use `printEscapedString` for `gv`, `typeid`, `typeidCompatibleVTable`,
and `singleImplName` strings in `AssemblyWriter` so names containing
characters such as `\01`, quotes, or backslashes emit valid `.ll`
output that round-trips through `llvm-as` and `llvm-dis`.
Follow-up to #240966.
Assisted-by: Gemini
[GlobalISel] Support DBG_VALUE_LIST (#237003)
GlobalISel currently drops every variadic (DIArgList) dbg_value: the
IRTranslator emits an undef DBG_VALUE, so such variables get no
location,
whereas SelectionDAG emits a DBG_VALUE_LIST.
Translate dbg_values that use a DIArgList into DBG_VALUE_LIST instead.
Location operands with a single vreg become register operands, and
integer, floating-point and null-pointer constants become immediates,
matching SelectionDAG. If any operand cannot be described (undef/poison,
values split across multiple vregs, other constants), an undef DBG_VALUE
is emitted as before.
Also teach GlobalISel debug-info salvaging to handle DBG_VALUE_LIST
users
(resolving the TODO in salvageDebugInfoForDbgValue): every location
operand using the erased register is rewritten, with the salvage
expression applied to the corresponding DW_OP_LLVM_arg.
[8 lines not shown]
[lldb][Windows] Report a single step whose trap is still queued at a stop (#231502)
Windows can move a stepped thread's PC before it delivers the step's
trap. If the trap isn't queued yet when lldb-server reports the stop,
the thread shows up with no stop reason. Its trap arrives after the next
resume as a trace stop but the client didn't ask for it. So
multi-threaded step tests like `TestThreadStepOut.py` flake.
This patch reports such a thread as a trace stop and drops its trap when
it arrives. It also enables the Windows tests this fixes.
At desk, this passes 1000 / 1000 runs.
[Attributor] Disable analysis-invalidation verification in light-preserved-analyses.ll (#242001)
0f7faf803fdd added light-preserved-analyses.ll, whose CHECK-NEXT chain
assumes nothing is printed between "Running pass: AttributorLightPass"
and the next RequireAnalysisPass. With EXPENSIVE_CHECKS (as on
clang-stage1-RA-expensive), -verify-analysis-invalidation defaults to
on, so the PreservedFunctionHashAnalysis/PreservedModuleHashAnalysis
helpers are invalidated by the pass and recomputed, adding extra
"Invalidating analysis"/"Running analysis" lines and breaking
CHECK-NEXT.
Pass -verify-analysis-invalidation=false in the RUN line, as other
-debug-pass-manager tests do (e.g.
LoopVersioning/preserved-analyses.ll), so the test no longer depends on
whether the build enables expensive checks.
rdar://192409356
Co-Authored-By: Claude Sonnet 5.5 <noreply at anthropic.com>
x11/cl-clx*: Update to 0.7.8-4 to fix x11/cl-clx-sbcl build
The update of lang/sbcl to 2.6.10 in 856e82c5eb5d exposed a bug in clx
and caused a new build failure in x11/cl-clx-sbcl. In translate.lisp's
keycode->character function, keysym-index-function was declared with the
wrong arguments. Pull in the upstream fix and a few others.
Sponsored by: The FreeBSD Foundation
x11/cl-clx-*: Do not set PKGNAMESUFFIX in these FASL ports
These ports have PKGNAMESUFFIX set in cl.mk using the value of
FASL_TARGET.
Sponsored by: The FreeBSD Foundation
[SystemZ] Update clang lit tests for default trigraphs on z/OS (#238549)
Update the clang lit tests so they work (or marked as xfail) on z/OS
with trigraphs being on by default.
[SPARC] Treat RESTORE as a scheduling boundary (#240337)
The post-RA scheduler runs after the PEI pass that adds the RESTORE
instruction and could move instructions around the RESTORE so that they
accidentally use the caller's registers instead.
No SPARC processor currently enables post-RA scheduling.
Assisted-by: Claude
[ConstraintElim] Use ConstantInt::getFalse in replaceOverflowUses. (#241998)
We also support simplifying ops on vector values, so use
ConstantInt::getFalse instead of Builder.getFalse() which returns a
plain bool.
Fixes a crash in the added tests.
[SystemZ][z/OS] Mark scan-dep tests as unsupported/xfail (#238557)
Most of these are unsupported b/c z/OS doesn't have the __clangast
section just like in AIX. The others are like not handling multiple
threads.
[AMDGPU] Do not track TENSOR_SAVE/TENSOR_STOP with xcnt (#239519)
Follow-up to #236045.
The VGLOBAL tensor ops don't increment xcnt, but TENSOR_SAVE and
TENSOR_STOP take the generic FLAT path in `getEventsForImpl` and get
`VMEM_GROUP`. Counting them weakens the wait for older VMEM operations:
the address of an earlier global load can be overwritten after
`s_wait_xcnt 1` when `s_wait_xcnt 0` is needed. It also adds an
unnecessary `s_wait_xcnt 0` before a later `$exec` write.
Skip `VMEM_GROUP` for these two opcodes.
---------
Co-authored-by: Cursor <cursoragent at cursor.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
linux: do not truncate the listxattr() size
listxattr() sized its buffer with min(), which truncates the 64-bit
size to 32 bits, so a size of 2^32 + k allocated k bytes while the
copy-out guard used the full size. The walk then read record lengths
past the buffer and copied kernel heap out to the caller, and could
panic the kernel. Any user can reach it through a user.* attribute on
a file it owns.
Use MIN(), and fail with EIO if a record runs past the data returned.
Reviewed by: adrian, markj
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D61006
Signed-off-by: Nick Price <nprice at FreeBSD.org>
(cherry picked from commit fbe4835e6b1eec36103a5ce97efbab11b3b5fc72)
ktls: Check the record type message holds its byte
sosend_generic() read the TLS record type past a TLS_SET_RECORD_TYPE
control message holding only a cmsghdr, and sent that stale byte.
Approved by: markj
Fixes: b2e60773c6b0 ("Add kernel-side support for in-kernel TLS.")
Sponsored by: Netflix
(cherry picked from commit bd4975e5fb051c2b2e8d5218940b7e8ef87b5bdf)
[llubi] Add support for vp.merge (#241727)
A vp.merge is unique from other VP intrinsics in that the lanes past EVL
(or the pivot as the langref calls it) aren't poison, they're taken from
the false branch.
It's defined in terms of `select %EVLMask, %true, %false`. I've factored
out the SelectInst logic so it can be shared. But it can be duplicated
if reviewers prefer.
Assisted-by: Opus 5.5
mail/tidemail: Add port
This is a Go-based MUA with a nice (and themeable!) TUI that supports
many modern MUA features like unified inbox, OAUTH (Gmail support is
currently halfway there, making its way through the Google approval
process), contact lists, searching, native tagging, and more. It also
supports (but does not mandate) hooks for text-generating (or text-
massaging) LLMs.
WWW: https://github.com/allisonhere/tidemail
[OpenMP][OpenMPIRBuilder] Enable non-pointee storage present propagation in mappers (#241537)
Add a boolean to emitUserDefinedMapper to toggle on present propagation
for non-pointee storage members, effectively storage shared with/part of
the top-level parent. This will remain off for the main clang path for
the moment but is switched on for Flang/CIR. This is due to the fact
that Clang still predominantly uses OBJ_AND_PTR style maps, whereas the
MLIR path only uses it for declare target at the moment, which bypasses
the mapper route making it a non-issue for this change.
[Support] Resolve real path lazily for RealFile (#239020)
`RealFileSystem` resolves the real path of every file it opens, so
that `RealFile::getName()` can return it later. Not every caller asks
for the name: clang's dependency scanner opens a file by the path it
already has and only reads its contents.
On Windows, the real path comes from `GetFinalPathNameByHandleW`,
which queries the Mount Manager, and that query serializes. Parallel
compile processes wait in `mountmgr.sys`.
Resolve the path on the first `getName()` call, using
`getRealPathFromHandle` on the open file. Callers that ask for the
name get the same result as before. Callers that never ask no longer
pay for it.
When the OS cannot resolve the path from the open file, or the
file is already closed, fall back to the `real_path` of the original
path.
[3 lines not shown]
graphics/drm-612-kmod: Update to latest version
Update to 6.12.110
This also fixes Vulkan on FreeBSD 15.1 for intel gpu.
Sponsored by: Beckhoff Automation GmbH & Co. KG
(cherry picked from commit 3e1c3ad475984e424b30424c306bcdbb1a091569)
PR: 300726
2026Q4: security updates from FreeBSD 2026Q4 e643832ae376
Composed from DeltaPorts db4db37d2e1 on FreeBSD 2026Q4 e643832ae376,
with DPorts master (e2f31ebea3a) as lock repo. Only these ports change;
the rest of the tree stays at the 1628c8b6998f compose.
- www/apache24 2.4.71 (e3a747237ffa)
- x11-servers/xorg-server 21.1.26 (902ec992a1ac), which also moves its
xephyr, xorg-vfbserver and xorg-nestserver slaves
- x11-servers/xwayland 24.1.15 (795f074ef50c)
- security/krb5-122 1.22.3, MITKRB5-SA-2026-001 (c70ce46c97b3); the
security/krb5 slave follows
- devel/git 2.56.1 (ad52601b54c8)
- net/freerdp3 3.33.1 (608a80174f93)
- graphics/openexr, openexr-website-docs 3.4.18 (10b64b929d23)
- net/rclone 1.76.0 (fcc78d6886ed)
- www/newsboat 2.45.1 (a0f2867d9414)
- irc/weechat 4.10.4 (8974314a309f)
- www/tor-browser 16.0.1 (aa88787550d4), with DeltaPorts c0568a9c571:
built like www/firefox-esr, with clang and libc++