NAS-140808 / 26.0.0-BETA.2 / keep ip addr order when adding them (by yocalebo) (#18824)
This is mostly a mechanical change. The `set()` used to collect desired
addresses becomes an insertion-ordered dict (`dict[AddressInfo, None]`),
and the add loop iterates the dict directly instead of `addrs_database -
addrs_configured`. Call sites that did `addrs_database.add(addr)` now do
`addrs_database.setdefault(addr)`. Remove loop is unchanged (`addr not
in addrs_database` still works).
The resulting order in which `add_address()` is called:
1. DHCP lease address (only when DHCP is running on the interface)
2. `int_address` (the configured primary)
3. VIP
4. Aliases in DB order
5. Alias-VIPs
Expectation change is that when an interface holds multiple IPv4
addresses on the same subnet, the kernel tags the first-added one as
[7 lines not shown]
NAS-140808 / 27.0.0-BETA.1 / keep ip addr order when adding them (#18819)
This is mostly a mechanical change. The `set()` used to collect desired
addresses becomes an insertion-ordered dict (`dict[AddressInfo, None]`),
and the add loop iterates the dict directly instead of `addrs_database -
addrs_configured`. Call sites that did `addrs_database.add(addr)` now do
`addrs_database.setdefault(addr)`. Remove loop is unchanged (`addr not
in addrs_database` still works).
The resulting order in which `add_address()` is called:
1. DHCP lease address (only when DHCP is running on the interface)
2. `int_address` (the configured primary)
3. VIP
4. Aliases in DB order
5. Alias-VIPs
Expectation change is that when an interface holds multiple IPv4
addresses on the same subnet, the kernel tags the first-added one as
[3 lines not shown]
devel/grid_example: add option field to showcase grid %field magic
The form %field magic works here too but let's not complicate an
example controller with it.
PR: https://github.com/opnsense/core/issues/10225
[clang][CodeGenCoroutine] Emit missing cleanup scope for lazy GRO conversion (#194281)
In #151067, we promoted GRO ahead of `coro.end`. However, there is a
regression that GRO cleanup might go into coroutine resume and destroy
parts. This patch introduces a dedicated cleanup scope for GRO, ensuring
that GRO cleanup does not interfere with other logic.
Close #193412
[clang][test] Fix test failures when LLVM_WINDOWS_PREFER_FORWARD_SLASH is ON (#193156)
This commit addresses several test failures in Clang that occur on
Windows when
the CMake option -DLLVM_WINDOWS_PREFER_FORWARD_SLASH=ON is enabled.
Key changes:
- unit tests: Normalized expected paths to native style using
llvm::sys::path::native
(Basic/FileManagerTest, Frontend/ReparseWorkingDirTest) or updated
diagnostic matching
to be separator-agnostic (Driver/ToolChainTest).
- regression tests: Updated FileCheck patterns to use flexible regex
{{[/\\\\]}} or
{{[/\\\\]+}} to match both path separator styles.
- absolute-paths-windows.test: Skipped when forward slashes are
preferred because
mklink does not support forward slashes in directory paths and
interprets them
as command-line switches. Added 'windows-prefer-forward-slash' lit
feature.
[clang][bytecode] Check builtins for number integers (#194324)
This is unfortunate, but since integers can now also be pointers, we
need to check for this everywhere when evaluating builtin functions.
[Clang][AArch64] Fix codegen for SVE vector compare operations (#194013)
Overloaded operartors `<`, `>`, `<=`, `>=`, `==`, and `!=` with SVE
integer vector operands emitted LLVM IR with a couple of issues:
* The `icmp` instruction always performed unsigned comparison, even for
signed operands.
* The result of the comparison was zero-extended, whereas the intent is
to follow established NEON conventions and sign-extend it.
This patches fixes these issues.
py-checkdmarc: updated to 5.15.2
5.15.2
Cap the per-query UDP timeout at min(1.0, timeout) for single-nameserver
configurations as well as multi-nameserver ones. Previously, when only one
nameserver was configured (or the system default list had a single entry),
resolver.timeout and resolver.lifetime were both set to the full
timeout budget, which collapses dnspython's UDP retry loop to a single
attempt — a single dropped UDP datagram then consumed the whole lifetime
and raised LifetimeTimeout, while dig (which defaults to +tries=3)
would mask the same blip by retrying. dnspython now retries UDP within
the lifetime window (~2 attempts at the default 2s budget), matching
dig's behavior in spirit and eliminating spurious single-NS timeouts
on paths with occasional packet loss.
[clang][CIR] Add lowering for vrshr_ and vrshrq_ rounding intrinsics (#194229)
This PR adds lowering for the vector rounding shift right intrinsice,
i.e. `vrshr_*` and `vrshrq_*` [1]. It also moves the corresponding tests
from:
* clang/test/CodeGen/AArch64/neon_intrinsics.c
to:
* clang/test/CodeGen/AArch64/neon/intrinsics.c
The lowering follows the existing implementation in
CodeGen/TargetBuiltins/ARM.cpp.
Part of #185382.
Reference:
[1] https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#vector-rounding-shift-right
Co-authored-by: Md Mouzam Arfi Hussain <arfihussain27 at gmail.com>
[InstCombine] Combine llvm.sin/llvm.cos libcall pairs into llvm.sincos (#184760)
Teach InstCombine to recognize pairs of `llvm.sin(x)` and `llvm.cos(x)`
intrinsic calls that share the same argument and replace them with a
single `llvm.sincos(x)` call, extracting the individual results.
The optimization works in two phases:
1. **SimplifyLibCalls**: Convert `sin`/`cos` C library calls (e.g.
`sinf`, `cosf`, `sin`, `cos`, `sinl`, `cosl`) into `llvm.sin` /
`llvm.cos` intrinsics when the call does not access memory (i.e. does
not set `errno`). This normalization step brings library calls into
the same form as compiler-generated intrinsics.
2. **InstCombineCalls**: When visiting an `llvm.sin` or `llvm.cos`
intrinsic, scan the users of the shared argument for a matching
counterpart. If found, emit a single `llvm.sincos` call placed right
after the argument definition, replace both original calls, and erase
the matched instruction.
Also remove the completed sincos TODO from Target/README.txt.
dos2unix: updated to 7.5.5
2026-04-06: Version 7.5.5
* New option --error-binary: Return an error if a
binary file is skipped.
* Fix: dos2unix error on empty input. The problem was introduced
in version 7.5.4.
2026-01-30: Version 7.5.4
* Don't return an error code if a binary file is skipped.
Reverting change in 7.5.3.
* Refactored code.
[OpenMP] Rename ompx_taskgraph->omp_taskgraph_experimental
This patch renames the option to enable taskgraph support in the
runtime from OMPX_TASKGRAPH to OMP_TASKGRAPH_EXPERIMENTAL, to reflect
the feature's official status in OpenMP 6.0, but also the feature's
current work-in-progress nature.
commit-id:fa62775a
Reviewers: ro-i
Reviewed By: ro-i
Pull Request: https://github.com/llvm/llvm-project/pull/194045
[X86] Add constant pool comments for (V)GF2P8AFFINEQB instructions (#194572)
Still need to do predicate/broadcast handling, but that's true for most instructions and we need a decent general mechanism to handle them