[SPIR-V] Implement SPV_KHR_fma extension (#173057)
The extension adds support for the `OpFmaKHR` instruction, which
provides a native SPIR-V instruction for fused multiply-add operations
as an alternative to using OpenCL.std::Fma extended instruction.
Translate both LLVM fma intrinsics as well as OCL builtins to `OpFmaKHR`
if the extension is available.
Specification:
https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_fma.html
libc: Don't use uninitialised string for getnetbyaddr[_r](0) DNS lookup
If net is all-zero, the loop to extract all leading non-zero octets will
iterate zero times and leave nn with the value 4, which the following
switch statement to initialise qbuf does not handle. As a result,
_dns_getnetbyaddr will look up the PTR record for this uninitialised
string, which will leak the pre-existing contents of that stack memory
to the DNS resolver and, if remote and not otherwise protected, network.
Note that _dns_getnetbyaddr is only used if nsswitch.conf is configured
to enable the "dns" source for the "networks" database, which is not the
default configuration in FreeBSD.
For glibc this same bug, in code also derived from BIND's, was issued
CVE-2026-0915. This commit adopts the same behaviour as glibc's fix,
which is to regard a net of 0 as being for 0.0.0.0. Apparently NetBSD
will return NS_UNAVAIL instead, which may or may not make more sense,
but in general glibc compatibility tends to cause less friction when
there's not a good reason to avoid it.
[7 lines not shown]
Merge commit faa5141b9be4 from file git (by Christos Zoulas):
PR/656: harry.sintonen: Fix bug in byte swapping that was caused by the change to make flags uint16_t and cont_level uint8_t.
This fixes using a magic.mgc built with a different endianness than
file(1) itself, e.g. when building powerpc64 on amd64.
PR: 292079
Fixes: ae316d1d1cff ("MFV: file 5.46.")
MFC after: 3 days
(cherry picked from commit 39047538cf5d8f26112f7b08b3c56967f70f7f94)
libc: Don't use uninitialised string for getnetbyaddr[_r](0) DNS lookup
If net is all-zero, the loop to extract all leading non-zero octets will
iterate zero times and leave nn with the value 4, which the following
switch statement to initialise qbuf does not handle. As a result,
_dns_getnetbyaddr will look up the PTR record for this uninitialised
string, which will leak the pre-existing contents of that stack memory
to the DNS resolver and, if remote and not otherwise protected, network.
Note that _dns_getnetbyaddr is only used if nsswitch.conf is configured
to enable the "dns" source for the "networks" database, which is not the
default configuration in FreeBSD.
For glibc this same bug, in code also derived from BIND's, was issued
CVE-2026-0915. This commit adopts the same behaviour as glibc's fix,
which is to regard a net of 0 as being for 0.0.0.0. Apparently NetBSD
will return NS_UNAVAIL instead, which may or may not make more sense,
but in general glibc compatibility tends to cause less friction when
there's not a good reason to avoid it.
[7 lines not shown]
[AMDGPU] Remove `NoSignedZerosFPMath` uses (#178343)
One of global flags in `resetTargetOptions`, users should use `nsz`
instead.
`fneg_fadd_0_f64` from `AMDGPU/fneg-combines.new.ll` will have
regression when `fadd` is annotated with `nsz`.
libc: Don't use uninitialised string for getnetbyaddr[_r](0) DNS lookup
If net is all-zero, the loop to extract all leading non-zero octets will
iterate zero times and leave nn with the value 4, which the following
switch statement to initialise qbuf does not handle. As a result,
_dns_getnetbyaddr will look up the PTR record for this uninitialised
string, which will leak the pre-existing contents of that stack memory
to the DNS resolver and, if remote and not otherwise protected, network.
Note that _dns_getnetbyaddr is only used if nsswitch.conf is configured
to enable the "dns" source for the "networks" database, which is not the
default configuration in FreeBSD.
For glibc this same bug, in code also derived from BIND's, was issued
CVE-2026-0915. This commit adopts the same behaviour as glibc's fix,
which is to regard a net of 0 as being for 0.0.0.0. Apparently NetBSD
will return NS_UNAVAIL instead, which may or may not make more sense,
but in general glibc compatibility tends to cause less friction when
there's not a good reason to avoid it.
[7 lines not shown]
Merge commit faa5141b9be4 from file git (by Christos Zoulas):
PR/656: harry.sintonen: Fix bug in byte swapping that was caused by the change to make flags uint16_t and cont_level uint8_t.
This fixes using a magic.mgc built with a different endianness than
file(1) itself, e.g. when building powerpc64 on amd64.
PR: 292079
Fixes: ae316d1d1cff ("MFV: file 5.46.")
MFC after: 3 days
(cherry picked from commit 39047538cf5d8f26112f7b08b3c56967f70f7f94)
Revert "src.opts.mk: Enable LLDB by default globally"
This breaks the riscv64 build; clearly the version we have in-tree is
not new enough to work. That or our build system needs tweaking. Either
way, we're not ready for this, and enabling it without testing was
misguided.
This reverts commit c59a47dc6c016dff74466cecb160459980a5d782.
[AMDGPU] Fix crash in SIWholeQuadMode with debug instructions. (#178282)
The prepareInsertion function was crashing when debug instructions
appeared at positions being queried for slot indices. Debug instructions
don't have entries in the slot index map, so getInstructionIndex would
fail with an assertion.
Fixes SWDEV-480902.
[CIR][NFC] Replace uses of negative unsigned literals (#178760)
This fixes a few places where we were using the minus operator with
unsigned literal values, which was causing C4146 warnings when compiled
with MSVC.
This relates to https://github.com/llvm/llvm-project/issues/147439
net/mosquitto: Update to 2.1.0
Tested to run on NetBSD 9 amd64, and to build on various NetBSD 9/10
i386, amd64 earvm7, aarch64.
2.1.0 - 2026-01-29
==================
# Broker
## Deprecations
- The acl_file option is deprecated in favour of the acl-file plugin, which is
the same code but moved into a plugin. The acl_file option will be removed
in 3.0.
- The password_file option is deprecated in favour of the password-file plugin,
which is the same code but moved into a plugin. The password_file option will
be removed in 3.0.
- The per_listener_settings option is deprecated in favour of the new listener
[259 lines not shown]
Refactor the GCC cross compilers from pkgsrc/cross so that we aren't
duplicating crazy amounts of package configuration that is inevitably
obsolete and inconsistent.
Creating a new GCC cross compiler is now trivial.
common-gnu-toolchain has been created to contain the shared makefiles.
The following packages from pkgsrc/cross have been converted to use
the shared makefiles.
aarch64-none-elf-binutils
aarch64-none-elf-gcc
arm-none-eabi-binutils
arm-none-eabi-gcc
arm-none-eabi-gdb
mipsel-none-elf-binutils
[15 lines not shown]
[lld][WebAssembly] Fix symbol type for __memory_base/__table_base. (#178773)
When linking PIC code as non-PIC we internally define `__memory_base`
and `__table_base`. However we were defining these incorrectly as data
symbols and not global symbols (as in Wasm globals).
This happened to work incidentally as long as there was a live reference
to the symbol. This is because the live reference would cause a GOT
entry to be created for these symbol and then they could be referenced
via via `R_WASM_GLOBAL_INDEX_LEB` or `R_WASM_GLOBAL_INDEX_I32`. However,
when no live reference existed there could still be references from
debug sections, and in that case the relocation code was crashing.
Fixes: #174676
[orc-rt] Add C API for Errors, plus ORC_RT_C_ABI macro. (#178794)
This commit introduces a C interface for the ORC runtime's Error
handling system, enabling C clients and language bindings to work with
ORC errors.
The ORC_RT_C_ABI macro applies __attribute__((visibility("default")))
(on platforms that support it), ensuring C API symbols are exported when
building the ORC runtime as a shared library. In the future I expect
that this will be extended to support other platforms (e.g. dllexport on
Windows).
[AMDGPU] Replace AMDGPUISD::FFBH_I32 with ISD::CTLS (#178420)
Per CDNA4 ISA:
V_FFBH_I32
Count the number of leading bits that are the same as the sign bit of a
vector input and store the result into a vector register. Store -1 if
all input bits are the same.
which matches CTLS semantics.
Addresses: https://github.com/llvm/llvm-project/issues/177635
[libc] provide str to float build configs (#178780)
The str to float code path offers options which can reduce code bloat.
Expose them as build config options. Disable Eisel Lemire for avoiding
code bloat caused by DETAILED_POWERS_OF_TEN look up table.
Simplify ALUA reset and eliminate overhead
Make iscsi.alua.reset_active a simple wrapper around the dlm job
of the same name. This will reduce overhead when called by
standby_after_start because it does not operate on the ACTIVE
node's cluster_mode.
Furthermore, remove iscsi.alua.active_elected entirely as it
duplicates functionality that will now be handled by reset_active.
We can also remove the chaining with activate_extents as it is
the STANDBY that needs to check that reset_active has completed,
which it now does in standby_after_start (via has_active_jobs).