[CIR][CodeGen][NFC] Extract the EHPersonality struct into CodeGenUtils (#223420)
Deduplicates the `EHPersonality` struct and its personality constants between
CIR and classic CodeGen into `EHPersonality.h`. The `EHPersonality::get`
factories become `getEHPersonality` overloads, since the shared struct cannot
name either CodeGenModule.
Assisted-by: Claude Code (Claude Fable 5.1).
Mips: Mark the assembler temporary def dead in FastISel branches (#227689)
The conditional branch emitted by FastISel reserves $at for long branch
expansion, which only uses it as a scratch.
Co-authored-by: Claude Opus 5 <noreply at anthropic.com>
[lldb][NFC] Simplify ThreadPlanStepUntil (#228065)
Use range-based for loops over the until points, return early instead of
nesting, and move the code that enables or disables the until points
into SetUntilPointsEnabled.
tests/sys/vfs: Fix the Linux kld check
linux and linux64 are file names, not module names. The corresponding
module names are linuxelf and linux64elf, respectively, so these tests
were always being skipped.
Fixes: b98d169d1f91 ("tests/sys/vfs: add ABI-root absolute symlink tests")
Sponsored by: The FreeBSD Foundation
[hexagon] Add hexagon_hvx function attribute. (#223771)
- [x] Add hexagon_hvx function attribute to be used to annotate function
that contains hand written hvx instructions.
- [x] Add logic to prevent these functions being inlined into or inline
other functions that don't have the same attributes.
- [x] Add tests.
[clang][ASTMatchers] Share variadic dyn-cast matcher marshalling (#202941)
Replace the templated variadic dyn-cast matcher descriptor with one
implementation parameterized by base and derived AST node kinds, while
preserving the typed conversion and derived-kind restriction.
On arm64 Release builds, this reduces stripped `clang-query` by 721,456
bytes, the affected objects by 768,528 bytes, and object relocations by
9,495.
Work towards #202616
AI tool disclosure: Co-authored with OpenAI Codex.
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
devel/qt6-base: Fix with textproc/md4c installed
devel/qt6-base compiles without any problems in Poudriere. However,
in an unclean environment, it encounters problems with an already
installed textproc/md4c
PR: 298996
Approved by: makc
NVPTX: Drop LiveVariables from the register allocation pipeline
The optimized RegAlloc pipeline ran LiveVariables only to satisfy PHIElimination
and TwoAddressInstruction, both of which no longer need it. Remove the
LiveVariables run (and, in the new pass manager, the UnreachableMachineBlockElim
that was there only as a LiveVariables prerequisite).
Co-authored-by: Claude (Claude-Opus-4.8)
CodeGen: Drop the LiveVariables parameter from convertToThreeAddress
This was used for analysis updates, but now the analysis is being
removed.
Co-authored-by: Claude (Claude-Opus-4.8)
AMDGPU: Remove update-only LiveVariables maintenance from SILowerControlFlow (#225178)
This was only maintained, never relied on. Part of staged LiveVariables removal.
Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
Pull up following revision(s) (requested by joe in ticket #1344):
usr.sbin/npf/npfctl/npf_build.c: revision 1.64,1.67
improve table load error in npf
an EEXIST should clearly state already defined and a load failure should
also clearly be stated. do not class all error returns under EEXIST
since npf_table_insert can return other errors aside EEXIST.
provide more context into npf reload failures with const tables.
PR lib/60740
mail/ruby-mime-types-data: update to 3.2026.0929
3.2026.0929 (2026-09-29)
* Updated registry entries from the IANA media registry and provisional
media registry and the Apache Tika media registry as of the release date.
Pull up following revision(s) (requested by joe in ticket #494):
usr.sbin/npf/npfctl/npf_build.c: revision 1.64,1.67
improve table load error in npf
an EEXIST should clearly state already defined and a load failure should
also clearly be stated. do not class all error returns under EEXIST
since npf_table_insert can return other errors aside EEXIST.
provide more context into npf reload failures with const tables.
PR lib/60740
DAG: Gracefully diagnose missing FMA and ppcf128 expansion libcalls
Previously this would hit a fatal error. Legalize to poison and report
a proper context error.
Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
Pull up following revision(s) (requested by tsutsui in ticket #493):
sys/kern/vfs_bio.c: revision 1.309
vfs_bio: retry fresh buffer allocation if recycling fails
getnewbuf() uses buf_lotsfree() to choose whether to
allocate a fresh buffer before trying BQ_AGE and BQ_LRU.
If fresh allocation is skipped and no buffer can actually be
recycled, it sleeps on needbuffer_cv even when the buffer cache
is still below its high water mark.
In that situation, a thread which could release a buffer may
itself need another buffer, resulting in a deadlock.
To avoid this, if recycling finds no usable buffer and bufmem is
still below bufmem_hiwater, make one more PR_NOWAIT fresh allocation
attempt before sleeping. See PR kern/60584 for details.
[InstCombine] Misc fixups for #227987 (#228076)
* Use ProfcheckDisableMetadataFixes so we can properly ablate this fix
with the rest.
* Use UTC for updating the tests rather than modifying them manually.
* Use existing functions in tests rather than duplicating coverage.
* Update profcheck-xfail.txt
Pull up following revision(s) (requested by tsutsui in ticket #492):
sys/arch/atari/atari/atari_init.c: revision 1.121
sys/arch/atari/atari/atari_init.c: revision 1.122
atari: Fix fatal 68030 MMU TC initialization bug
ATARITT kernels from NetBSD 11.0 and -current fail to boot on my
Atari TT030.
The inline asm that loads TC specifies only `"a" (&tc)` as an input,
so the compiler may eliminate the initialization of tc as a dead store.
Then the generated code loads an uninitialized value from the stack
into TC.
Add an `"m" (tc)` input operand to the inline asm so that the compiler
knows that the asm reads tc from memory.
[26 lines not shown]
[flang] Associate named constant actual arguments with their storage (#222986)
Named constants (PARAMETER) used as actual arguments were folded to
anonymous values before call analysis, so a whole named array passed to
an explicit-shape dummy went through an unnecessary temporary, and an
array element could not start an element sequence association at all
(bogus "Whole scalar actual argument may not be associated with a dummy
argument array" errors). For OpenACC programs that place module
PARAMETERs in device memory with `!$acc declare copyin`, the temporary
also breaks `default(present)` lookups, because the call no longer
refers to the constant's storage.
Retain eligible named-constant designators (whole arrays and array
elements) through argument analysis so that argument association can use
the constant's storage.
Element sequence association with an array VALUE dummy is kept rejected
(with a "not yet" message) and will be addressed in the future PR.
[4 lines not shown]
Add retrieval of unary operator spelling and python bindings (#219983)
Adds handling for unary operators in clang_getCursorSpelling() and
provides representations in Python for unary operator kinds as well as a
property to retrieve the UnaryOperator of a cursor.
The changeset is modeled after a972a394afcb276abb3029d0f2753d4403e379c2,
which introduced similar features for binary operators.
---------
Co-authored-by: Erik Julian Radermacher <erik.radermacher at uni-osnabrueck.de>