LLVM/project 12ee13alibc/test/src/math/exhaustive cos.wc sin.wc, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.896bit.ll amdgcn.bitcast.960bit.ll

Merge branch 'main' into users/c8ef/generator
DeltaFile
+1,091,085-0libc/test/src/math/exhaustive/sin.wc
+1,090,178-0libc/test/src/math/exhaustive/cos.wc
+62,525-61,390llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+9,388-9,578llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+5,656-7,977llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+4,566-6,726llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
+2,263,398-85,6717,137 files not shown
+2,621,829-278,5687,143 files

LLVM/project 68a20ceclang/lib/AST/ByteCode Interp.h Pointer.h

[clang][bytecode] Simplify Pointer::getByteOffset() (#223382)

Return `Offset` directly, except for block pointers. This also allows us
to remove `getRawOffset()`.
DeltaFile
+2-10clang/lib/AST/ByteCode/Pointer.h
+2-2clang/lib/AST/ByteCode/Interp.h
+4-122 files

LLVM/project 59f5719clang-tools-extra/clang-tidy/readability FunctionCognitiveComplexityCheck.cpp, clang-tools-extra/docs ReleaseNotes.md

[clang-tidy] Fix function-cognitive-complexity crash on aliases (#222965)

Only match function definitions that have a body, since declarations
with the alias attribute satisfy `isDefinition()` without providing one.

Fixes #222958
DeltaFile
+6-0clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity-alias.cpp
+4-0clang-tools-extra/docs/ReleaseNotes.md
+1-1clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
+11-13 files

FreeNAS/freenas 53a7af3src/middlewared/middlewared/plugins/truenas_s3 bucket_crud.py, tests/api2 test_s3_accesskey.py test_s3_bucket.py

Fix S3 test suites

- point boto3 at the server IP, not localhost
- match the daemon's reload/restart contract and share-root ownership
- give the manage_buckets test a key with SHARING_S3_WRITE
DeltaFile
+69-22tests/api2/test_s3_bucket.py
+17-10tests/api2/test_s3_accesskey.py
+14-11src/middlewared/middlewared/plugins/truenas_s3/bucket_crud.py
+100-433 files

LLVM/project 1688452llvm/lib/Target/SystemZ/MCTargetDesc SystemZTargetStreamer.cpp, llvm/test/CodeGen/SystemZ zos-align-constpool.ll

[SystemZ][z/OS] Align constant pool (#222980)

Follow-up to #222128: The call to emit the alignment was places on the
wrong line but the test did not catch it because it checked only the
textual output (which never emits the error message). Fix is to move the
call and update the test.
DeltaFile
+2-2llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.cpp
+2-1llvm/test/CodeGen/SystemZ/zos-align-constpool.ll
+4-32 files

FreeBSD/ports 962e076comms/py-pynitrokey distinfo Makefile

comms/py-pynitrokey: Update 0.12.3 => 0.13.0

While here, remove extra space before backslash in nethsm line.

Changelog:
https://github.com/Nitrokey/pynitrokey/releases/tag/v0.13.0

PR:             298484, 297992
Approved by:    osa, vvd (Mentors, implicit)
MFH:            2026Q3
DeltaFile
+3-3comms/py-pynitrokey/distinfo
+3-3comms/py-pynitrokey/Makefile
+6-62 files

FreeBSD/ports 7a110ebsecurity/py-nitrokey Makefile

security/py-nitrokey: Update hidapi version range and add BR_DEPENDS

PR:             297992
Approved by:    osa, vvd (Mentors, implicit)
Co-authored-by: Yusuf Yaman <nxjoseph at FreeBSD.org>
DeltaFile
+6-11security/py-nitrokey/Makefile
+6-111 files

LLVM/project 7f7119allvm/lib/CodeGen TargetLoweringObjectFileImpl.cpp, llvm/lib/Target/SystemZ SystemZTargetMachine.cpp

[SystemZ][z/OS] Handle constants with initializers with relocations

When the initializer of a constant needs relocations, the constant
cannot be placed into the code section, because the loader needs
a writable section to fixup the relocation.
This change
 - sets the relocation model for z/OS to `DynamicNoPIC`, which better
   fits the relocation handling than `Static`, and
 - treats section kind `ReadOnlyWithRel` like a variable.
DeltaFile
+27-0llvm/test/CodeGen/SystemZ/zos-section-readonlywithrel.ll
+16-5llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
+1-1llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
+44-63 files

LLVM/project 6fd0ee2llvm/include/llvm/Analysis ScalarEvolution.h, llvm/lib/Analysis LoopAccessAnalysis.cpp ScalarEvolution.cpp

[SCEV] Return a SCEVUse from getAddExpr and propagate use flags. (#220007)

Add option to pass SCEVUse-specific flags to getAddExpr and propagate
them through, if valid conservatively. That is, the final expression
adds the same operands (potentially in different order). For example, it
is not valid to propagate the use flags if other (sub-)expressions have
been inlined.

It also includes a few mechanical changes, to update users that still
expected const SCEV *.

This slightly simplifies
https://github.com/llvm/llvm-project/pull/217378, which introduces the
first end-to-end user of SCEVUse.

PR: https://github.com/llvm/llvm-project/pull/220007
DeltaFile
+84-0llvm/unittests/Analysis/ScalarEvolutionTest.cpp
+34-49llvm/lib/Analysis/ScalarEvolution.cpp
+14-17llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
+21-9llvm/include/llvm/Analysis/ScalarEvolution.h
+7-6llvm/lib/Analysis/LoopAccessAnalysis.cpp
+5-5llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+165-862 files not shown
+167-878 files

LLVM/project 41a620dlldb/source/Target Memory.cpp, lldb/unittests/Target MemoryTest.cpp

[lldb] Fix 32-bit narrowing conversions in the memory cache (#223402)

#222688 broke the 32-bit Arm bots.  `lldb-arm-ubuntu` fails to
build `Memory.cpp`:

```
lldb/source/Target/Memory.cpp:187:49: error: non-constant-expression cannot be narrowed from type 'lldb::offset_t' (aka 'unsigned long long') to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
 187 |   InsertData(addr, {data_buffer_sp->GetBytes(), data_buffer_sp->GetByteSize()});
     |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

`DataBuffer::GetByteSize` returns `lldb::offset_t`, which is always 64
bits wide, while the `llvm::ArrayRef` constructor takes a `size_t`.
Where
`size_t` is 32 bits the conversion narrows, and a braced initializer
list
rejects a narrowing conversion that is not a constant expression.  The
same code compiles on a 64-bit host because there `size_t` is just as
wide

    [15 lines not shown]
DeltaFile
+1-1lldb/unittests/Target/MemoryTest.cpp
+1-1lldb/source/Target/Memory.cpp
+2-22 files

NetBSD/pkgsrc xxwirUClang/ecl Makefile

   ecl: remove uneeded subst
VersionDeltaFile
1.33+1-7lang/ecl/Makefile
+1-71 files

LLVM/project 4df93e3llvm/lib/Target/NVPTX NVPTXISelLowering.cpp NVPTXSubtarget.h, llvm/test/CodeGen/NVPTX clmad.ll

[NVPTX] Add clmad instruction selection (#216412)

Add instruction selection for the PTX 9.3 `clmad.{lo,hi}.u64`
instructions on SM80 and newer targets.

Select `clmad` for `i64` carryless multiply-add expressions represented
as an XOR of `ISD::CLMUL` or `ISD::CLMULH` with an accumulator.
Standalone carryless multiplies are selected as `clmad` with an
immediate zero-accumulator.

The first commit precommits tests showing the existing SelectionDAG
expansion.
DeltaFile
+79-0llvm/test/CodeGen/NVPTX/clmad.ll
+41-0llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
+3-0llvm/lib/Target/NVPTX/NVPTXSubtarget.h
+2-0llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
+125-04 files

FreeBSD/ports 623d37abiology/gcta Makefile, biology/gcta/files patch-CMakeLists.txt

biology/gcta: Unbreak build with cmake 4

Minor patch changing CMAKE_MINIMUM_REQUIRED

PR:             298183
Reported by:    arrowd
DeltaFile
+4-1biology/gcta/files/patch-CMakeLists.txt
+1-1biology/gcta/Makefile
+5-22 files

FreeBSD/src eaeb5f2. UPDATING, packages/bsdconfig bsdconfig.ucl

sysrc: make independant from bsdconfig(8)

MFC After:      1 week
Approved by:    dteske
Reviewed by:    dteske
Differential Revision:  https://reviews.freebsd.org/D59658
DeltaFile
+898-0usr.sbin/sysrc/sysrc.subr
+5-714usr.sbin/bsdconfig/share/sysrc.subr
+3-9usr.sbin/sysrc/sysrc
+4-1usr.sbin/sysrc/Makefile
+5-0UPDATING
+0-3packages/bsdconfig/bsdconfig.ucl
+915-7271 files not shown
+916-7287 files

LLVM/project af6169aclang/lib/Interpreter IncrementalExecutor.cpp

[clang-repl] Resolve mapper symbols via lookupAndApply (#223383)

IncrementalExecutor's createSharedMemoryManager resolved the
SharedMemoryMapper instance and wrapper addresses with
EPC.getBootstrapSymbols. For consistency, switch to
lookupAndApply/recordAddr on the bootstrap JITDylib instead.
DeltaFile
+18-11clang/lib/Interpreter/IncrementalExecutor.cpp
+18-111 files

LLVM/project 8ab8773llvm/tools/llvm-jitlink llvm-jitlink.cpp

[llvm-jitlink] Use lookupAndApply for SharedMemoryMapper syms (#223379)

createSharedMemoryManager resolved the SharedMemoryMapper instance and
wrapper addresses with EPC.getBootstrapSymbols. For consistency, switch
to lookupAndApply/recordAddr on the bootstrap JITDylib instead.
DeltaFile
+13-6llvm/tools/llvm-jitlink/llvm-jitlink.cpp
+13-61 files

LLVM/project 8fcab5clibc/test/src/math/exhaustive cos.wc sin.wc, llvm/test/CodeGen/AMDGPU minimumnum.bf16.ll maximumnum.bf16.ll

Merge branch 'main' into users/adams381/cir-callconv-dropped-return-res-attrs
DeltaFile
+1,091,085-0libc/test/src/math/exhaustive/sin.wc
+1,090,178-0libc/test/src/math/exhaustive/cos.wc
+6,151-6,581llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,692-4,496llvm/test/CodeGen/AMDGPU/bf16.ll
+2,809-3,010llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
+2,809-3,010llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
+2,197,724-17,097872 files not shown
+2,243,458-58,991878 files

LLVM/project f58db55llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv cmp-folds.ll

[RISCV] Consider vmandn.mm hasAndNot

There's a few generic combines that we can take advantage of if we return true for hasAndNot, e.g. not (setcc x, y, cc) -> setcc x y !cc.

Found with Opus 5
DeltaFile
+6-8llvm/test/CodeGen/RISCV/rvv/cmp-folds.ll
+4-0llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+10-82 files

LLVM/project d30270allvm/test/CodeGen/RISCV/rvv cmp-folds.ll

Precommit tests
DeltaFile
+36-0llvm/test/CodeGen/RISCV/rvv/cmp-folds.ll
+36-01 files

LLVM/project d57b857llvm/include/llvm/Transforms/Scalar GVN.h, llvm/lib/Transforms/Scalar GVN.cpp

[GVN] Deduplicate compare expressions creation (NFC) (#223389)

Minor opportunity to create GVN expressions for cmp instructions via
existing dedicated `createCmpExpr` handler.
DeltaFile
+8-14llvm/lib/Transforms/Scalar/GVN.cpp
+1-1llvm/include/llvm/Transforms/Scalar/GVN.h
+9-152 files

LLVM/project b98bfe5flang/lib/Parser openmp-parsers.cpp, flang/lib/Semantics check-omp-variant.cpp

[OpenMP] Rename Assocation::LoopSeq to Association::LoopSequence, NFC

This will match the name used in spec.
DeltaFile
+3-3llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
+3-3flang/lib/Semantics/check-omp-variant.cpp
+2-2flang/lib/Parser/openmp-parsers.cpp
+1-1llvm/test/TableGen/directive2.td
+1-1llvm/test/TableGen/directive1.td
+1-1llvm/include/llvm/Frontend/Directive/DirectiveBase.td
+11-111 files not shown
+12-127 files

LLVM/project 288f2d0lldb/source/Plugins/SymbolFile/DWARF DWARFASTParserFortran.h DWARFASTParserFortran.cpp, lldb/source/Plugins/TypeSystem/Fortran TypeSystemFortran.h TypeSystemFortran.cpp

[lldb][Fortran] Added support for base types to DWARFASTParserFortran, tests for DWARFASTParserFortran and a method to get the parser from TypeSystemFortran
DeltaFile
+209-0lldb/unittests/SymbolFile/DWARF/DWARFASTParserFortranTests.cpp
+127-4lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserFortran.cpp
+17-1lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserFortran.h
+8-0lldb/source/Plugins/TypeSystem/Fortran/TypeSystemFortran.cpp
+3-0lldb/source/Plugins/TypeSystem/Fortran/TypeSystemFortran.h
+2-0lldb/unittests/SymbolFile/DWARF/CMakeLists.txt
+366-56 files

OpenBSD/src gWurHW7usr.sbin/bgpd session.c

   throttle reads from the peer socket if more than MSG_PROCESS_LIMIT messages
   are ready.

   Only MSG_PROCESS_LIMIT messages are process once during a poll loop so it
   makes no sense to buffer more messages by keeping the POLLIN enabled.
   Once enough messages have been processed the POLLIN is enabled again
   and more messages are read in. This should prevent excessive buffering
   in the session engine.

   OK tb@
VersionDeltaFile
1.541+4-2usr.sbin/bgpd/session.c
+4-21 files

LLVM/project ea4b78cclang/lib/StaticAnalyzer/Core CheckerManager.cpp

[analyzer] Chain checkers in runCheckersForEndFunction (#220970)

The function `runCheckersForEndFunction` had an unusual behavior that it
invoked the callbacks in parallel (introducing a new execution path for
each checker callback that produced a transition), unlike all other
analogous functions, which "chained" the checkers, executing them after
each other.

This behavior was introduced before 2011, when this callback was called
`check::EndPath`, to ensure that the `EndPath` callbacks are _final_ and
nodes created by them end up at the end of the execution path. When
interprocedural analysis (inlining functions) was introduced in 2013,
the callback was renamed to `EndFunction` (to reflect that it also
activates at the end of inlined functions), but the unusual behavior was
preserved.

There were 8 "real" checkers with `check::EndFunction` callbacks, but
most of them only created error nodes or did "nice to have" cleanup, so
the irregular behavior of this callback did not cause visible trouble.

    [12 lines not shown]
DeltaFile
+35-27clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
+35-271 files

LLVM/project 1af17efllvm/include/llvm/ExecutionEngine/Orc/Shared SimpleRemoteEPCUtils.h, llvm/lib/ExecutionEngine/Orc SimpleRemoteEPC.cpp

[ORC] Carry out-of-band errors in SimpleRemoteEPC results (#223378)

ORC Wrapper functions may produce out-of-band error results (e.g. due to
serialization errors), but SimpleRemoteEPC / SimpleRemoteEPCServer never
handled these cases (they incorrectly asserted that they never
appeared).

Update the SimpleRemote protocol to use the TagAddr field (previously
unused for result messages) to encode Result message kinds: either a
Value, or an OutOfBandError. This allows out-of-band errors to flow
across the wire and be passed as results to their callers.

encodeResultMessage and decodeResultMessage implement the format /
handling: out-of-band errors (or failures to deserialize out-of-band
errors) are now passed to handlers as out-of-band error results. An
invalid Result message kind in the TagAddr field results in an
llvm::Error, ending the session.

SimpleRemoteEPCUtilsTest covers both kinds' round-trips, an unrecognized
kind, and a malformed out-of-band payload.
DeltaFile
+77-0llvm/unittests/ExecutionEngine/Orc/SimpleRemoteEPCUtilsTest.cpp
+48-0llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp
+30-0llvm/include/llvm/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.h
+6-9llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp
+8-7llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp
+1-0llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
+170-166 files

LLVM/project a55e865clang/lib/CIR/CodeGen CIRGenBuiltinAMDGPU.cpp, clang/test/CIR/CodeGenHIP builtins-amdgcn-gfx1250.hip

[CIR][AMDGPU] Add support for AMDGCN permlane builtins (#223161)

Adds codegen for the following AMDGCN permlane builtins:

- __builtin_amdgcn_permlane_bcast
- __builtin_amdgcn_permlane_up
- __builtin_amdgcn_permlane_down
- __builtin_amdgcn_permlane_xor

These are lowered to the corresponding `llvm.amdgcn.permlane.*`
intrinsics.

Assisted by: Claude Opus 5
DeltaFile
+36-0clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
+12-0clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
+48-02 files

LLVM/project 004d596llvm/test/CodeGen/X86 vector-partial-reduce-fmla-f16.ll vector-partial-reduce-fmla-bf16.ll, llvm/test/Transforms/LoopVectorize/X86/CostModel partial-reduce-dot-product.ll

[X86][CodeGen] Support partial-reduce dot products (#205373)

Part of #187779 

Lower the llvm.vector.partial.reduce dot product shapes onto the X86 dot
product instructions:

    i8 x i8 -> i32:     vpdpbusd (AVX512-VNNI, AVX-VNNI)
                        vpdpbssd / vpdpbuud (AVX-VNNI-INT8, AVX10.2)
    i16 x i16 -> i32:   vpdpwssd (AVX512-VNNI, AVX-VNNI)
                        vpdpwsud / vpdpwuud (AVX-VNNI-INT16, AVX10.2)
    bf16 x bf16 -> f32: vdpbf16ps (AVX512-BF16)
    f16 x f16 -> f32:   vdpphps (AVX10.2)

The 128/256-bit shapes, and the 512-bit shapes on targets using 512-bit
registers, are registered as Custom. 512-bit shapes for which only the
VEX
encoding exists are split into two 256-bit dot products, and the
128/256-bit

    [13 lines not shown]
DeltaFile
+1,523-0llvm/test/CodeGen/X86/vector-partial-reduce-sumla.ll
+1,288-0llvm/test/CodeGen/X86/vector-partial-reduce-smla.ll
+1,077-0llvm/test/CodeGen/X86/vector-partial-reduce-umla.ll
+466-0llvm/test/Transforms/LoopVectorize/X86/CostModel/partial-reduce-dot-product.ll
+385-0llvm/test/CodeGen/X86/vector-partial-reduce-fmla-bf16.ll
+196-0llvm/test/CodeGen/X86/vector-partial-reduce-fmla-f16.ll
+4,935-04 files not shown
+5,140-310 files

NetBSD/pkgsrc-wip 9c6abeccrush Makefile distinfo

crush: Update to 0.94.2
DeltaFile
+3-31crush/COMMIT_MSG
+3-3crush/distinfo
+1-1crush/Makefile
+7-353 files

LLVM/project 9008f49llvm/test/CodeGen/AMDGPU promote-alloca-byte-ptr-cast.ll barrier-addrspace-dereference.ll

AMDGPU: Use subarch triples in new tests added since all were converted (#223385)
DeltaFile
+8-8llvm/test/CodeGen/AMDGPU/addrspacecast-barrier.ll
+4-4llvm/test/CodeGen/AMDGPU/null-named-barrier-gv.ll
+2-2llvm/test/CodeGen/AMDGPU/barrier-addrspace-dereference.ll
+1-1llvm/test/CodeGen/AMDGPU/promote-alloca-byte-ptr-cast.ll
+15-154 files

FreeBSD/src 42c6944sys/powerpc/aim mmu_radix.c

powerpc/radix: acquire the pmap lock in mmu_radix_extract()

mmu_radix_extract() walks the page tables without holding the pmap lock,
unlike its hash MMU counterpart moea64_extract(). A concurrent unmap can
free and recycle the page table page being walked, so the read returns
whatever now occupies that memory and the caller gets a physical address
that never existed.

That is how mmu_radix_sync_icache() came to hand a bogus address to
__syncicache() and panic the machine. Commit 1574ca1955f5 worked around
it by taking the pmap lock in mmu_radix_sync_icache(), but the machine
independent callers of pmap_extract() - vm_sync_icache(), proc_rwmem()
and the vslock() paths - remain exposed to the same failure.

Rename the existing body to mmu_radix_extract_locked(), which asserts the
lock, and make mmu_radix_extract() a thin wrapper that acquires it.
mmu_radix_sync_icache() already holds the pmap lock, so it calls the
locked variant directly and neither recurses nor reacquires the lock once
per page.

    [5 lines not shown]
DeltaFile
+15-5sys/powerpc/aim/mmu_radix.c
+15-51 files