[CIR] Make LoweringPrepare safe to rerun on CUDA/HIP host modules (#237413)
LoweringPrepare registers kernels and device variables with the runtime
from the 'cu.kernel_name' attribute on kernel stubs and the
'cu.var_registration' attribute on device variables, but left both in
place. Running the pass again on its own output, e.g. on an emitted .cir
file, rebuilt the module ctor and asserted with "function already has an
entry block" for HIP. CUDA only escaped because the pass already drops
the device binary attribute, without which CUDA builds no ctor; HIP
builds one regardless.
Drop both attributes once the module ctor is built. Only CIRGen and
LoweringPrepare touch them, and after the pass the registration is in
the IR. Only the host side changes.
[cmake] Pass arguments to ccache on Windows (#218791)
Since ccache 4.8 it is possible to pass options as arguments. As such
now PCH files can be enabled along with ccache on windows when using
clang as the compiler. The original behavior was left on other systems
to preserve compatibility with older ccache versions.
[clang-format] IBS_RegroupByDirectory to add breaks between top level directories (#233877)
When a project wants to visually separate the projects' includes by
folders, they would need to curate a list of IncludeCategories per
folder. This provides an alternative where they can capture multiple
folders with a single IncludeCategory regex and still insert breaks
between changes in top-level directory.
```
/// Foo.cpp
#include "Foo.h"
#include "A/a.h"
#include "B/b3.h"
#include "B/b2.h"
#include "C/Bar.h"
#include "C/BarBar.h"
#include "AThirdPartyLibrary/TPL.h"
[34 lines not shown]
RuntimeLibcalls: Add signatures for floating point comparison libcalls (#238521)
The three-way and unordered comparisons return libgcc_cmp_return. This
is the word size with a few exceptions.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[RISCV] Add ABI_IL32PC64E and ABI_CHERIOT to RISCVABI::isRVE. Use in RISCVTargetELFStreamer::finish. NFC
The isRVE function is used in codegen, but as far as I know we don't support
codegen with these ABIs yet so that code isn't reachable.
pkg_add.c: Resolve the shlib symlink before recursing into pkg_add
This subtle bug can be reproduced when pkg_add recurses through different
types of dependencies - deps and requires. The path passed into
pkg_add_check_pkg_archive() is expected to start with "All/", but after
handling a shlib requirement and recursing down it changes to "shlibs/".
At the bottom the code ends up doing
access("/../shlibs/libconsumer.so.1/package1-1.pkg",F_OK) ERR#2 'No such file or directory'
instead of
access("/../All/libconsumer.so.1/package1-1.pkg",F_OK) 0 = (0x0)
The added test case fails without this fix.
editors/emacs-devel: Update to 2026-11-04 snapshot, 0983757bbfd6
Highlights:
- Kitty Keyboard Protocol support in text-mode frames
- Regexp matching is now linear time
- Org upgraded from 9.8.10 to 9.8.12
- Eglot upgraded from 1.24 to 1.26
Commit log: https://github.com/emacs-mirror/emacs/compare/06f3da3e675c...0983757bbfd6
Sponsored by: The FreeBSD Foundation
[NFC][tests] Use +inf in place of +qnan in printf test for portability (#238654)
`printf` output formatting for NaN values is not portable in practice.
Various forms are known, including `NaNQ` (AIX) and
`NAN(_n-char-sequence_)`. Using an infinite value avoids this problem.
Resolves CI failure from
https://github.com/llvm/llvm-project/pull/238071.
---------
Co-authored-by: Hubert Tong <hstong at ca.ibm.com>
[Clang][SYCL] Disable sycl-system-arch.cpp on macOS (#238500)
Disable `sycl-system-arch.cpp` on macOS.
The `sycl-system-arch.cpp` test added in
https://github.com/llvm/llvm-project/pull/229248 is failing on macOS
pre-merge CI, e.g.
https://github.com/llvm/llvm-project/actions/runs/41635790012/job/125916586515.
The test runs a fake `offload-arch` script, and on the macOS CI machines
a single run of it can take longer than the 120 second
`CLANG_TOOLCHAIN_PROGRAM_TIMEOUT` that the premerge workflow sets, so
clang reports "Child timed out". The existing `nvptx-cuda-system-arch.c`
and `openmp-system-arch.c` tests, which also run fake tools, take 170 to
296 seconds there. Since
https://github.com/llvm/llvm-project/pull/229248 landed, this test
failed in 29 of the 53 macOS runs that ran the clang tests.
This PR disables the test on macOS while
https://github.com/llvm/llvm-project/issues/238903 is investigated.
[mlir][bufferization] Preserve deallocs shared with skipped allocations (#237124)
The planner can erase shared deallocs still needed by a skipped
allocation, causing a memory leak. Check actual candidate eligibility
and propagate exclusions through shared deallocs, preserving groups that
cannot be rewritten together.
reproducer: https://godbolt.org/z/aT54ddej1
Assisted-by: Codex
[lldb][test] Add a new test for float types (#208451)
This is a new modern test for float types that replaces the test logic
from `API/types` test that is about to be deleted.
See also #208402
assisted-by: claude
RuntimeLibcalls: Use <2 x i64> for i128 libcall types on Win64
Win64 passes __int128 by reference and returns it in XMM0. i128 uses
GPR pairs, and <2 x i64> uses the correct vector register. This
matches the type AtomicExpand and clang uses for these functions.
Also fix AtomicExpand to use the correct type for UEFI (which should
eventually use the type information in RuntimeLibcallsInfo).
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
RuntimeLibcalls: Only apply vector math attributes to floating point vectors
i128 is now <2 x i64> on Win64, which made the vector type checks treat
integer helpers like __atomic_load_16 as vector math functions and mark
them nosync and nofree. Check for a floating point vector argument.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
cstyle: clean up bugs in some of the style lints
There were a few little mistakes in the cstyle script (a missing
boundary on else-checking, a missing $ on the `special` variable,
and a flipped regex.
I also cleaned up the few instances of cstyle mistakes that resulted
from fixing these lints.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Allan Jude <allan at klarasystems.com>
Signed-off-by: Mark Musante <mmusante at wasabi.com>
Closes #19592
x11/xscreensaver: change from patching configure to patching configure.ac
and start using autoconf. Will make later changes easier. While there,
regen PLIST to include libexec/xscreensaver/worldpieces.
OK sthen@
[AArch64][test] Add -o /dev/null to sve-expandload-select-fail.ll (#238921)
Writing to test source directory may fail based on environment.
Fixes commit a965ae585365
LLM-aided
[clang-format] Fix InsertBraces after preprocessor directives in lambdas (#225184)
Check for directives within the current control-statement line instead
of the pending directive buffer, which can retain earlier directives
inside lambdas and suppress brace insertion for subsequent statements.
Fixes #199648.
tpm: crb: Dump register state on command failures
Include the command code in notification failures and the command code
and execution timeout in completion failures. Capture CRB control
registers on completion timeouts and Pluton mailbox readiness or
acknowledgement timeouts, before cancellation or cleanup changes them.
Include locality registers when present and mailbox registers for the
Pluton start method. The dump contains transport state without command
payloads or response data.
Tested by: olivier, tuexen
MFC after: 2 weeks
Sponsored by: BBOX.io
Differential Revision: https://reviews.freebsd.org/D61128
tpm: crb: Correct the Pluton mailbox handshake
Pluton's REPLY register indicates readiness for a new notification, not
completion of the notification just sent. Wait for REPLY=1 before
ringing the mailbox, then wait for START=0 when a synchronous state
change needs acknowledgement.
Use a separate command notification callback that waits for mailbox
readiness but leaves command completion to the existing CRB_CTRL_START
polling. Bound readiness waits by TPM_TIMEOUT_C, including asynchronous
idle notifications, while retaining the command's execution timeout.
This resolves reported command timeouts on a Framework AMD laptop.
Tested by: olivier, tuexen
MFC after: 2 weeks
Sponsored by: BBOX.io
Differential Revision: https://reviews.freebsd.org/D61128