[VPlan] Support more GEP-like recipes in getSCEVExprForVPValue (NFCI)
Support VPWidenGEPRecipe, VPInstructions and VPRelpicateRecipe with
GEP-like opcodes in getSCEVExprForVPValue via a new matcher binding
source element type and operands.
This is used in code paths when computing SCEV expressions in the
VPlan-based cost model, which should produce costs matching the legacy
cost model.
[X86] Simplify hasCalleePopSRet, NFCI (#176519)
The implementation was rewritten for clarity, and the extra boolean
parameter to the sibcall eligibility check was removed in favor of
recalculating this property. The compile time impact should be
negigible, the vast majority of callers will return early on the
TT.isX86_32() check.
The comments now try to clarify which platforms have this
callee-pop-sret behavior, which was always hard for me to figure out
from the previous code.
I was able to remove two ambiguous checks for `canGuaranteeTCO`, and
what those checks were really doing was checking for `fastcc` and other
calling conventions that pass arguments in registers. Instead of looking
for the `inreg` IR attribute, now the code looks at the CCValAssign to
check if it the pointer is passed in memory or registers, so it works
smoothly with conventions like `fastcc` that don't require explicit
`inreg` annotations.
periodic: Support RFC 5424 syslog timestamps
This is based on an initial implementation by michaelo in
https://reviews.freebsd.org/D54361.
PR: 270497
Reported by: michaelo
Reviewed by: michaelo
Tested by: michaelo
MFC after: 1 week
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54606
modules: iwlwifi/rtw89 allow standalone build
The KERN_OPTS:MDEV_ACPI checks are fine for as long as we are building
modules along the kernel. If one wants to just build the module
standalone out of the module directory this would fail.
Add the missing include for kmod.opts.mk (as was done for tcp
in 1319a76179682).
Sponsored by: The FreeBSD Foundation
Reported by: Tassilo Philipp (tphilipp potion-studios.com)
Fixes: f5a77dc8f8df ("improve module Makefile dependency on ACPI")
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D54769
ocaml-dune: update to 3.21.0.
3.21.0 (2026-01-12)
-------------------
### Fixed
- Fix `include_subdirs qualified` incorrectly picking the furthest module
instead of the closest when resolving module name ambiguities. (#12587,
@ElectreAAS and @Alizter)
- Fix: include the module alias in the transitive dependency closure with
`(include_subdirs qualified)`. (#12299, @anmonteiro)
- Improve error messages for invalid version formats containing non-ASCII
characters. Previously, non-ASCII characters in version strings (e.g., `(lang
dune è)` or `(using menhir π3.14)`) would fail with a generic "Invalid file"
error. Now they display a clear message: "Invalid atom: contains non-ASCII
character(s). Atoms must only contain ASCII characters." The fix is
[161 lines not shown]
[SLP]Do not build bundle for copyables, with parents used in PHI node
If the copyables have parents, used in PHI nodes, this causes complex
schedulable/non-schedulable dependecies, which require complex
processing, but with small profitability. Cut such case early for now to
prevent compiler crashes and compile time blow up.
Fixes #176658
[DAG] expandCLMUL - if a target supports CLMUL+CLMULH then CLMULR can be merged from the results (#176644)
If a target supports CLMUL + CLMULH, then we can funnel shift the
results together to form CMULR.
Helps x86 PCLMUL targets particularly
uchcom.4: Add HARDWARE, makeover
Tag spdx, improve document description for apropos, improve synopsis
for clarity and consistency, improve description to explain usage,
improve hardware for hardware release notes, mention the sysctl, xref
the application to use this driver, improve history.
MFC: no (unless change adding CH9102/CH343 mfcs)
Fixes: 1395712cab8e9 (add support for CH9102 and CH343)
Reviewed by: carlavilla, kevlo
Differential Revision: https://reviews.freebsd.org/D51036
(cherry picked from commit f0ba0b99ef0a9cf9e7822278d7d2bc0a80911361)
Restore the mutex support patches for aarm64 and mips.
What likely happened:
After a 'make patch', I manually applied the sparc mutex support patch
on top. patch(1) overwrote the existing mutex_int.h.orig, and
mkpatches(1) then updated the patch as diff between the new .orig and
the file, which only had the sparc support.
Instead, I should have preserved the .orig file from 'make patch', and
restored it after the manual patch. YLYL.
SHould fix PR pkg/59925.