LLVM/project 8cafdaallvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU AMDGPUAsmPrinter.cpp

[AMDGPU] Return zero LDS encoding granularity for dummy targets

Remove the redundant early return and assertion from getLDSEncodingGranule. Return zero when the target has no encoding granularity feature, and document and test the result for unknown and legacy generic targets.

Keep the existing 256-byte default in the assembly printer so compiling without a GPU still produces valid LDS sizes. Test default-target Mesa and PAL encodings and HSA metadata.

Change-Id: Ia0c69a0d7ce2858b31ee64100d37ae34bba6c42c
DeltaFile
+28-0llvm/test/CodeGen/AMDGPU/lds-size-default-device.ll
+10-4llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+1-9llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+2-2llvm/unittests/TargetParser/TargetParserTest.cpp
+1-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+42-155 files

LLVM/project 4d4ce81llvm/lib/Target/AMDGPU AMDGPU.td, llvm/lib/TargetParser AMDGPUTargetParser.cpp

[AMDGPU] Add LDS encoding granularity to TargetParser

Model LDS encoding granularity with dedicated features and expose the
byte-valued getLDSEncodingGranule query for GPUKind and subarch. Keep
encoding independent of the hardware allocation granularity used for
occupancy; GFX10.3, GFX11 and GFX12.0 encode in 512-byte units while
allocating 1024-byte blocks.

Migrate program resource register and PAL metadata encoding to the new
query and remove getLdsDwGranularity from AMDGPUBaseInfo. gfx9-4-generic
uses gfx950's 1280-byte encoding granule independently of LDS capacity.

Test encoding queries, feature membership, generic-target validation and
encoded LDS sizes, including the GFX10.3 allocation/encoding distinction.

Change-Id: I9d3c2c041605e9a45fa8fbda09fc3460a74953ea
DeltaFile
+57-31llvm/unittests/TargetParser/TargetParserTest.cpp
+37-5llvm/test/TableGen/AMDGPUTargetDefLDSAllocGranularity.td
+34-1llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+34-0llvm/test/CodeGen/AMDGPU/lds-size-gfx9-4-generic.ll
+26-0llvm/test/CodeGen/AMDGPU/lds-size-gfx1030.ll
+20-0llvm/lib/Target/AMDGPU/AMDGPU.td
+208-377 files not shown
+235-5913 files

FreeBSD/src 2d20de9usr.sbin/nfsuserd nfsuserd.c

nfsuserd.c: Fix handling where pw_name/gr_name differ from lookup name

When an NSS backend returns a canonical pw_name or gr_name that differs from
the lookup name supplied by the NFSv4 upcall, nfsuserd stores the successful
mapping in the kernel cache under the canonical name instead of the requested
name.

This causes the retry lookup performed by nfsv4_strtouid() or
nfsv4_strtogid() to miss the newly inserted cache entry, resulting in the
default UID/GID being returned although the NSS lookup itself succeeded.

PR:     296753

(cherry picked from commit 1771ab245c2341033f0cee3bd098c76888cf3515)
DeltaFile
+4-2usr.sbin/nfsuserd/nfsuserd.c
+4-21 files

FreeBSD/src 45198c6usr.sbin/nfsuserd nfsuserd.c

nfsuserd.c: Fix handling where pw_name/gr_name differ from lookup name

When an NSS backend returns a canonical pw_name or gr_name that differs from
the lookup name supplied by the NFSv4 upcall, nfsuserd stores the successful
mapping in the kernel cache under the canonical name instead of the requested
name.

This causes the retry lookup performed by nfsv4_strtouid() or
nfsv4_strtogid() to miss the newly inserted cache entry, resulting in the
default UID/GID being returned although the NSS lookup itself succeeded.

PR:     296753

(cherry picked from commit 1771ab245c2341033f0cee3bd098c76888cf3515)
DeltaFile
+4-2usr.sbin/nfsuserd/nfsuserd.c
+4-21 files

LLVM/project c5e0153llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/X86 arbitrary-fp-to-half.ll

[SelectionDAG] Fix FP8 conversions to half for subnormals and overflow

Preserve subnormal values when the source format and destination have the
same exponent bias. Normalizing these inputs previously produced a
nonpositive destination exponent and an invalid floating-point encoding.

Convert finite values beyond the destination exponent range to infinity,
while preserving the existing NaN handling. This fixes Float8E5M3FNU to
half conversions that previously produced NaNs on overflow.

Add scalar and vector coverage for subnormals, signed zeros, normal
boundaries, all seven overflowing E5M3FNU encodings, and NaNs.
DeltaFile
+208-0llvm/test/CodeGen/X86/arbitrary-fp-to-half.ll
+16-3llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+224-32 files

OpenBSD/ports FdrrUBcx11/qt6/qtwebengine Makefile, x11/qt6/qtwebengine/patches patch-src_3rdparty_chromium_v8_src_wasm_stacks_cc

   allocated WebAssembly stack memory with MAP_STACK

   Sync with www/chromium/patches (from kirill@)
VersionDeltaFile
1.1+28-0x11/qt6/qtwebengine/patches/patch-src_3rdparty_chromium_v8_src_wasm_stacks_cc
1.49+1-0x11/qt6/qtwebengine/Makefile
+29-02 files

LLVM/project 5dcdaa7clang/lib/CIR/Dialect/Transforms/TargetLowering CIRABIRewriteContext.cpp, clang/test/CIR/CodeGen var-arg-vector.c var-arg-int128.c

[CIR] Give the x86-64 va_arg loads their real alignment

Also addresses the remaining review comments.

Assisted-by: Cursor / claude-opus-5
DeltaFile
+105-50clang/test/CIR/CodeGen/var-arg-aggregate.c
+33-13clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
+18-11clang/test/CIR/CodeGen/var_arg.c
+18-10clang/test/CIR/CodeGen/var-arg-direct-offset.cpp
+9-6clang/test/CIR/CodeGen/var-arg-int128.c
+7-4clang/test/CIR/CodeGen/var-arg-vector.c
+190-942 files not shown
+194-988 files

OpenBSD/src sVBt5hHregress/usr.sbin/relayd Makefile, regress/usr.sbin/relayd/configs examples_relayd.conf

   relayd-regress: Add syntax config checks

   Start with the config from /etc/examples/relayd.conf (with keypair syntax)
VersionDeltaFile
1.1+115-0regress/usr.sbin/relayd/configs/examples_relayd.conf
1.27+14-1regress/usr.sbin/relayd/Makefile
+129-12 files

FreeBSD/ports d6938acnet-im/iamb Makefile Makefile.crates, net-im/iamb/files patch-rust-1.94.0

net-im/iamb: Update to 0.0.12

- Remove already upstreamed patch.

PR:             298062
DeltaFile
+957-819net-im/iamb/distinfo
+477-408net-im/iamb/Makefile.crates
+0-21net-im/iamb/files/patch-rust-1.94.0
+1-2net-im/iamb/Makefile
+1,435-1,2504 files

FreeBSD/src 5cb9699. Makefile.in configure, admin config.sub ltmain.sh

kyua: import kyua-0.15.0-beta1

This change adds kyua kyua-0.15.0-beta1 from [upstream][1].

The kyua-0.15.0-beta1 artifact was been verified by [SHA256 checksum][3].

This change contains a number of new features and bugfixes, as well as
the official upstreaming of several features previously committed to the
FreeBSD src tree.

More information about the release (from a high level) can be found in
the [release notes][4].

Updated via [`update_kyua.sh`][4] `update_kyua.sh 0.15.0-beta1 kyua-0.15.0`.

1: https://github.com/freebsd/kyua/releases/download/kyua-0.15.0-beta1/kyua-0.15.0-beta1.tar.gz
2: https://github.com/freebsd/kyua/releases/download/kyua-0.15.0-beta1/kyua-0.15.0-beta1.tar.gz.sha256
3: https://github.com/freebsd/kyua/blob/kyua-0.15.0-beta1/NEWS.md
4: https://codeberg.org/ngie/freebsd-powertools:shell/update_kyua.sh@10a04edb
DeltaFile
+24,484-0configure
+11,524-0admin/ltmain.sh
+11,024-0Makefile.in
+8,488-0m4/libtool.m4
+2,907-0bootstrap/testsuite
+1,802-0admin/config.sub
+60,229-0193 files not shown
+73,499-2,207199 files

FreeBSD/src ac2d088. INSTALL.md configure, admin ltmain.sh config.guess

atf: import atf-0.26-rc1

This change adds atf atf-0.26-rc1 from [upstream][1].

The atf-0.26-rc1 artifact was been verified by [SHA256 checksum][3].

This release contains the upstreamed version of `require.kmods` support
provided by des@ in [freebsd at 83a1ee57][require-kmods-support].

More information about the release (from a high level) can be found in
the [release notes][4].

Updated via [`update_atf.sh`][4] `update_atf.sh 0.26-rc1 atf-0.26`.

1: https://github.com/freebsd/atf/releases/download/atf-0.26-rc1/atf-0.26-rc1.tar.gz
2: https://github.com/freebsd/atf/releases/download/atf-0.26-rc1/atf-0.26-rc1.tar.gz.sha256
3: https://github.com/freebsd/atf/blob/atf-0.26-rc1/NEWS.md
4: https://codeberg.org/ngie/freebsd-powertools:shell/update_atf.sh@10a04edb
require-kmods-support: https://cgit.freebsd.org/src/commit/?id=83a1ee578c9d1ab7013e997289c7cd470c0e6902
DeltaFile
+938-1,490admin/config.sub
+597-932admin/config.guess
+159-601m4/libtool.m4
+243-426configure
+80-245admin/ltmain.sh
+44-72INSTALL.md
+2,061-3,76625 files not shown
+2,515-3,86431 files

OpenBSD/src KhN0f5Csys/kern kern_pledge.c, usr.sbin/vmd virtio.h virtio.c

   vmd(8): Add Checksum Offload for guests.

   With tweaks from dlg@, claudio@ and dv@.

   Tested with Linux and OpenBSD guests with routing, bridging and vlan(4).

   Also tested by bluhm@.

   Discussed with dlg@, claudio@, dv@ and mlarkin@.
   ok deraadt@ for the pledge part
VersionDeltaFile
1.37+216-24usr.sbin/vmd/vionet.c
1.154+31-3usr.sbin/vmd/virtio.c
1.369+8-1sys/kern/kern_pledge.c
1.67+5-1usr.sbin/vmd/virtio.h
+260-294 files

LLVM/project b58610cllvm/lib/Transforms/InstCombine InstCombineVectorOps.cpp, llvm/test/Transforms/InstCombine extractelement.ll

[InstCombine] Fold extraction of low integer bits from scalar FP

A scalar FP bitcast to an integer vector followed by extraction of its
least-significant element can use a scalar integer bitcast and truncation.
For example, extracting element zero of a float-to-<32 x i1> bitcast on a
little-endian target becomes a float-to-i32 bitcast followed by truncation
to i1. This avoids making vector legalization reconstruct an existing
scalar bit projection. A one-element vector needs only the scalar bitcast.

Extend foldBitcastExtElt for this case. Require the vector bitcast to have
one use, an integer result, and no shift after accounting for endianness.
A newly introduced source-width integer must be desirable under DataLayout
to avoid wide scalar intermediates that regress codegen. Preserve the
existing integer-source shift restrictions.

The fold reinterprets bits without FP arithmetic, preserves operand-use
count, and does not look through freeze. Update the baseline test checks.

Alive2 proof of the motivating little-endian float-to-i1 case, with poison

    [2 lines not shown]
DeltaFile
+99-42llvm/test/Transforms/InstCombine/extractelement.ll
+21-6llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
+120-482 files

LLVM/project aedafc7llvm/test/Transforms/InstCombine extractelement.ll

[InstCombine][NFC] Add tests for extracting integer bits from scalar FP

Add coverage for scalar FP-to-integer-vector bitcasts followed by constant
element extraction, including the float-to-<32 x i1> case. Capture existing
behavior for both endiannesses and different legal integer widths, with
one-element, multiple-use, variable-index, FP-result, poison, out-of-range,
and freeze cases.

Generate checks with the unmodified compiler. All eight RUN configurations
pass before adding the scalar FP extraction fold.
DeltaFile
+216-0llvm/test/Transforms/InstCombine/extractelement.ll
+216-01 files

FreeBSD/src a6deeaasys/cddl/contrib/opensolaris/uts/common/sys dtrace_impl.h, sys/cddl/dev/dtrace/aarch64 dtrace_isa.c dtrace_asm.S

dtrace/arm64: Fix copyout and copyoutstr

Calling dtrace_copy and dtrace_copystr with the kaddr and uaddr
arguments inversed does not work with PAN. Rename them
dtrace_copyin_pan and dtrace_copyinstr_pan, respectively, and
implement dtrace_copyout_pan and dtrace_copyoutstr_pan.

Avoid excessive faulting by checkin DTrace's CPU flags. Implement the
trick from OpenSolaris/Illumos of only checking the flags when
crossing into a new page, altough more effectively by examining the
vaddr instead of the count.

Reviewed by:    markj
MFC after:      3 weeks
Differential Revision:  https://reviews.freebsd.org/D59449
DeltaFile
+62-6sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
+4-4sys/cddl/dev/dtrace/aarch64/dtrace_isa.c
+7-0sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h
+73-103 files

OpenBSD/ports gzPMo1Kgames/terraria-server Makefile distinfo

   Update to terraria-server-1.4.5.8. Add a note about where to find updates.
VersionDeltaFile
1.2+2-2games/terraria-server/distinfo
1.2+2-1games/terraria-server/Makefile
+4-32 files

LLVM/project efbce1bllvm/lib/Target/PISA/MCTargetDesc PISAMCAsmInfo.cpp

Fix default pointer size
DeltaFile
+1-1llvm/lib/Target/PISA/MCTargetDesc/PISAMCAsmInfo.cpp
+1-11 files

OpenBSD/ports 9r5r1Dydatabases/mariadb mariadb.port.mk

   Add MODMARIADB_DEFAULTS_FILE to mariadb module

   The default sets innodb_buffer_pool_size_max=512m because otherwise
   none of the modules that try to use it for tests work as they want
   to allocate enough memory to run an LLM.

   While here, give mariadb a bit more time to start,
   my machine is apparently slow.

   OK Brad Smith <brad () comstyle ! com> (MAINTAINER)
VersionDeltaFile
1.7+7-3databases/mariadb/mariadb.port.mk
+7-31 files

LLVM/project eb27d7bllvm/lib/TargetParser TargetDataLayout.cpp

Specify n (native integer width)
DeltaFile
+2-0llvm/lib/TargetParser/TargetDataLayout.cpp
+2-01 files

LLVM/project 0bd3306clang/docs ReleaseNotes.md, clang/lib/Driver/ToolChains BareMetal.cpp

[clang][Driver] Use the bare-metal toolchain for LoongArch (#223703)

Clang did not handle loongarch32-\*-none-elf and loongarch64-\*-none-elf
in the
bare-metal toolchain, so these targets fell back to the generic ELF
toolchain,
which links by running gcc. Any -fuse-ld or --ld-path option is
forwarded to
gcc, and linking fails when there is no gcc. On a host whose gcc does
not target
LoongArch, which is the usual case when cross compiling, gcc drives the
linker
for the host, and the link fails with errors such as "a.o is
incompatible with
elf_x86_64". The generic ELF toolchain also searches /usr/local/include
and
/usr/include of the host.

The other bare-metal targets, Arm, AArch64, RISC-V, PowerPC, and x86

    [12 lines not shown]
DeltaFile
+30-0clang/test/Driver/baremetal.cpp
+9-2clang/lib/Driver/ToolChains/BareMetal.cpp
+5-0clang/docs/ReleaseNotes.md
+4-0clang/test/Driver/loongarch-toolchain.c
+48-24 files

LLVM/project c1b15b5clang/lib/Basic/Targets M68k.cpp, llvm/lib/TargetParser TargetDataLayout.cpp

[M68k][NetBSD] Fix alignments for NetBSD/m68k. (#207602)

Linux/m68k uses the ABI from Sun Microsystems for a.out on m68k, which
aligns ints/objects/pointers/stack on 16-bit boundaries.

NetBSD/m68k on the other hand uses the ABI from SVR4 for m68k, which
aligns ints/objects/pointers/stack on 32-bit boundaries.

This is a follow-up of
https://github.com/M680x0/issues/issues/13
DeltaFile
+38-13llvm/lib/TargetParser/TargetDataLayout.cpp
+17-1clang/lib/Basic/Targets/M68k.cpp
+55-142 files

LLVM/project 0ab29d3clang/include/clang/CIR/Dialect/IR CIRAttrs.td, clang/lib/CIR/CodeGen CIRGenCall.cpp

[CIR] Add memory effects factories and handle noalias functions

Assisted-by: Cursor / claude-opus-5
DeltaFile
+67-0clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
+56-0clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+17-13clang/lib/CIR/CodeGen/CIRGenCall.cpp
+18-3clang/test/CIR/CodeGen/side-effect.cpp
+158-164 files

LLVM/project 5ec4adbclang/lib/CIR/Dialect/Transforms/TargetLowering CIRABIRewriteContext.cpp, clang/test/CIR/CodeGen call-conv-lowering-x86_64-non-byval-param-spill-nyi.cpp

[CIR] Match the parameter spill shape instead of asserting it

Return null from findParamSpill when a non-byval indirect parameter's
only use is not a store into an alloca it names directly, instead of
asserting that shape.  Both callers already handled a null result, so
an unmatched parameter now reaches the diagnostic the forwarding call
already has for an operand that does not name the caller's storage.

Assisted-by: Cursor / claude-opus-5
DeltaFile
+71-0clang/test/CIR/Transforms/abi-lowering/non-byval-param-spill-nyi.cir
+30-0clang/test/CIR/CodeGen/call-conv-lowering-x86_64-non-byval-param-spill-nyi.cpp
+15-13clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
+116-133 files

LLVM/project 6959442llvm/lib/Target/AMDGPU AMDGPU.td, llvm/lib/TargetParser AMDGPUTargetParser.cpp

[AMDGPU] Add LDS encoding granularity to TargetParser

Model LDS encoding granularity with dedicated features and expose the
byte-valued getLDSEncodingGranule query for GPUKind and subarch. Keep
encoding independent of the hardware allocation granularity used for
occupancy; GFX10.3, GFX11 and GFX12.0 encode in 512-byte units while
allocating 1024-byte blocks.

Migrate program resource register and PAL metadata encoding to the new
query and remove getLdsDwGranularity from AMDGPUBaseInfo. gfx9-4-generic
uses gfx950's 1280-byte encoding granule independently of LDS capacity.

Test encoding queries, feature membership, generic-target validation and
encoded LDS sizes, including the GFX10.3 allocation/encoding distinction.

Change-Id: I9d3c2c041605e9a45fa8fbda09fc3460a74953ea
DeltaFile
+57-31llvm/unittests/TargetParser/TargetParserTest.cpp
+37-5llvm/test/TableGen/AMDGPUTargetDefLDSAllocGranularity.td
+34-1llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+34-0llvm/test/CodeGen/AMDGPU/lds-size-gfx9-4-generic.ll
+26-0llvm/test/CodeGen/AMDGPU/lds-size-gfx1030.ll
+20-0llvm/lib/Target/AMDGPU/AMDGPU.td
+208-377 files not shown
+235-5913 files

LLVM/project 147b3d9llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU AMDGPUAsmPrinter.cpp

[AMDGPU] Return zero LDS encoding granularity for dummy targets

Remove the redundant early return and assertion from getLDSEncodingGranule. Return zero when the target has no encoding granularity feature, and document and test the result for unknown and legacy generic targets.

Keep the existing 256-byte default in the assembly printer so compiling without a GPU still produces valid LDS sizes. Test default-target Mesa and PAL encodings and HSA metadata.

Change-Id: Ia0c69a0d7ce2858b31ee64100d37ae34bba6c42c
DeltaFile
+28-0llvm/test/CodeGen/AMDGPU/lds-size-default-device.ll
+10-4llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+1-9llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+2-2llvm/unittests/TargetParser/TargetParserTest.cpp
+1-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+42-155 files

LLVM/project b3154dfllvm/docs AMDGPUUsage.rst, llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp

[AMDGPU] Add partial unroll threshold function attribute (#223291)

This change adds an `amdgpu-partial-unroll-threshold` function attribute
for controlling
`TargetTransformInfo::UnrollingPreferences::PartialThreshold` on a
per-function basis.

The existing `amdgpu-unroll-threshold` function attribute initializes
`UP.Threshold`, which is used for decisions about full
unrolling. However, there is currently no corresponding AMDGPU function
attribute for configuring `UP.PartialThreshold`
independently. As a result, clients of the AMDGPU backend cannot provide
an independent per-function cost threshold for partial and runtime
unrolling.

When present, the new attribute sets the base value of
`UP.PartialThreshold` for loops in that function. This allows the cost
threshold for partial and runtime unrolling to be configured
independently of the threshold used for full unrolling. Functions that

    [5 lines not shown]
DeltaFile
+94-0llvm/test/Transforms/LoopUnroll/AMDGPU/partial-unroll-threshold.ll
+5-0llvm/docs/AMDGPUUsage.rst
+2-0llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+101-03 files

OpenBSD/ports C1b5xextextproc/p5-LaTeX-Driver distinfo Makefile, textproc/p5-LaTeX-Driver/patches patch-Makefile_PL

   Update p5-LaTeX-Driver to 1.3.1

   The issue with needing a patch to install the scripts filed upstream:
   https://github.com/Template-Toolkit-Latex/LaTeX-Driver/issues/31
VersionDeltaFile
1.4+11-11textproc/p5-LaTeX-Driver/patches/patch-Makefile_PL
1.13+10-7textproc/p5-LaTeX-Driver/Makefile
1.7+2-2textproc/p5-LaTeX-Driver/distinfo
+23-203 files

OpenBSD/src Yug5Vy7regress/usr.sbin/relayd args-ssl-ec.pl Relayd.pm

   relayd-regress: rewirte TLS tests with new keypair syntax

   - TLS and non-TLS tests are handled differently now.
     - Provide a CERTBASE environment for each TLS test which points to the
       cert/key to test.

   - The single ECDSA test has been removed, as all TLS tests are now run
     separately using RSA and ECDSA certificates.

   - Makefile tweaks: renamed vars and format

   go ahead, bluhm@
VersionDeltaFile
1.26+53-38regress/usr.sbin/relayd/Makefile
1.21+9-1regress/usr.sbin/relayd/Relayd.pm
1.2+0-0regress/usr.sbin/relayd/args-ssl-ec.pl
+62-393 files

LLVM/project f1eaafellvm/lib/TargetParser TargetDataLayout.cpp

Comment on pointer address spaces
DeltaFile
+1-1llvm/lib/TargetParser/TargetDataLayout.cpp
+1-11 files

LLVM/project 8dfef56llvm/lib/Target/PISA PISASubtarget.h

Refer to .td files in the comments
DeltaFile
+4-3llvm/lib/Target/PISA/PISASubtarget.h
+4-31 files