LLVM/project 12e957fllvm/lib/Target/AMDGPU AMDGPURegBankLegalizeRules.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.inverse.ballot.i64.ll llvm.amdgcn.inverse.ballot.i32.ll

[AMDGPU][GISel] RegBankLegalize rules for amdgcn_inverse_ballot (#190629)
DeltaFile
+12-7llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i64.ll
+5-3llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i32.ll
+4-0llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
+21-103 files

LLVM/project 37801e9llvm/include/llvm/MCA Support.h, llvm/lib/MCA Support.cpp

[MCA] Enhance debug prints of processor resources (#190132)

Previously, `computeProcResourceMasks()` would print resource masks on
debug mode from multiple call sites, creating noise in the debug output.
This patch aims to fix this and also print more info about the
resources.

It splits to 2 types of debug prints for resources:

1. No simulation - mask only
2. Simulation - mask + other info

For 2, it shares printing on a single place in `ResourceManager`
constructor, that should cover all the other simulation cases
indirectly:

1. `llvm/lib/MCA/HardwareUnits/ResourceManager` - covered
2. `llvm/lib/MCA/InstrBuilder.c` - should be covered indirectly - only
used by `llvm-mca` before simulation that constructs a `ResourceManager`

    [23 lines not shown]
DeltaFile
+55-0llvm/test/tools/llvm-exegesis/analysis-processor-resource-masks-debug.test
+29-0llvm/test/tools/llvm-mca/processor-resource-masks-debug.s
+29-0llvm/test/tools/llvm-mca/processor-resources-debug.s
+12-9llvm/lib/MCA/Support.cpp
+18-0llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
+5-0llvm/include/llvm/MCA/Support.h
+148-92 files not shown
+156-98 files

LLVM/project 72d4ce9llvm/include/llvm/Transforms/Utils Cloning.h, llvm/lib/Transforms/IPO Inliner.cpp

[Inliner] Put inline history into IR as !inline_history metadata (#190092)

So that it's preserved across all inline invocations rather than just
one inliner pass run.

This prevents cases where devirtualization in the simplification
pipeline uncovers inlining opportunities that should be discarded due to
inline history, but we dropped the inline history between inliner pass
runs, causing code size to blow up, sometimes exponentially.

For compile time reasons, we want to limit this to only call sites that
have the potential to inline through SCCs, potentially with the help of
devirtualization. This means that the callee is in a non-trivial
(Ref)SCC, or the call site was previously an indirect call, which can
potentially be devirtualized to call any function.

The CGSCCUpdater::InlinedInternalEdges logic still seems to be relevant
even with this change, as monster_scc.ll blows up if I remove that code.


    [3 lines not shown]
DeltaFile
+102-0llvm/test/Transforms/Inline/inline-history.ll
+57-28llvm/lib/Transforms/Utils/InlineFunction.cpp
+25-36llvm/lib/Transforms/IPO/Inliner.cpp
+55-0llvm/test/Verifier/inline-history-metadata.ll
+25-26llvm/lib/Transforms/Utils/CloneFunction.cpp
+19-17llvm/include/llvm/Transforms/Utils/Cloning.h
+283-10713 files not shown
+386-21319 files

NetBSD/pkgsrc ACf6mNTgraphics/simage Makefile

   simage: fix build on -current
VersionDeltaFile
1.39+3-1graphics/simage/Makefile
+3-11 files

FreeBSD/src c5961b6usr.bin/yes/tests yes_test.sh

yes: fix argv test race between fork and exec

The argv test checks ps(1) output immediately after backgrounding yes(1), but
the forked child briefly shows the parent shell's argv before exec(2) replaces it.
This caused intermittent failures where ps(1) captured the atf shell wrapper
command line instead of "yes y".

Approved by:    des
Sponsored by:   Netflix
Differential Revision:  https://reviews.freebsd.org/D56231
DeltaFile
+2-0usr.bin/yes/tests/yes_test.sh
+2-01 files

LLVM/project eb065bfllvm/lib/Target/AMDGPU AMDGPURegBankLegalizeHelper.cpp AMDGPURegBankLegalizeRules.cpp, llvm/test/CodeGen/AMDGPU/GlobalISel extractelement.ll regbankselect-extract-vector-elt.mir

AMDGPU/GlobalISel: RegBankLegalize rules for G_EXTRACT_VECTOR_ELT (#189144)
DeltaFile
+440-640llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
+396-336llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-extract-vector-elt.mir
+93-0llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
+19-0llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
+4-1llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
+2-0llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
+954-9776 files

FreeNAS/freenas d219d65src/middlewared/middlewared/api/base/validators options.py filters.py, src/middlewared/middlewared/plugins/datastore read.py

Replace pure-python filter_list

This commit replaces the pure-python implementation of filter_list
with the version provided by the truenas/truenas_pyos repo
(truenas_pyfilter). The overall new workflow for this is:

1. convert the filters / options to their respective objects from
   truenas_pyfilter (compile_filters, compile_options).

2. use the filters / options to either match (if there's single item)
   or tnfilter (if there is more than one).

Output is same so this is mostly a drop-in replacement; however,
in some places in our codebase we keep copies of pre-compiled filters
and options because they do not change. The filter_list util is now
replaced with what is largely a thin wrapper around the extension.

API validation also now wraps around validation provided by the
extension.
DeltaFile
+107-358src/middlewared/middlewared/utils/filter_list.py
+34-59src/middlewared/middlewared/plugins/pool_/dataset_query_utils.py
+13-61src/middlewared/middlewared/api/base/validators/options.py
+3-65src/middlewared/middlewared/api/base/validators/filters.py
+13-8src/middlewared/middlewared/plugins/datastore/read.py
+14-5src/middlewared/middlewared/plugins/smb_/util_smbconf.py
+184-5563 files not shown
+209-5659 files

NetBSD/src tKnpq8Wusr.bin/make arch.c make.h

   make: clean up, mostly redundant parentheses
VersionDeltaFile
1.224+8-8usr.bin/make/arch.c
1.366+7-7usr.bin/make/make.h
1.187+7-7usr.bin/make/for.c
1.1180+6-7usr.bin/make/var.c
1.275+6-7usr.bin/make/make.c
1.379+5-7usr.bin/make/cond.c
+39-435 files not shown
+57-6411 files

FreeBSD/src 63d0e3erelease/packages generate-set-ucl.lua generate-ucl.lua

packages: Fix build with libucl 0.9.3

In libucl 0.9.3, macros and includes are disabled by default when
creating a new UCL parser.  This breaks the package build, which
relies on includes.  Fix this by explicitly passing zero flags
to ucl.parser().

MFC after:      3 days
Fixes:          abda442d92fd ("contrib/libucl:  Import libucl 0.9.3")
Reviewed by:    kevans, bapt
Reported by:    freebsd at walstatt-de.de
Sponsored by:   https://www.patreon.com/bsdivy
Differential Revision:  https://reviews.freebsd.org/D56266
DeltaFile
+1-1release/packages/generate-set-ucl.lua
+1-1release/packages/generate-ucl.lua
+2-22 files

LLVM/project 0e8db6bclang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen/AArch64/neon intrinsics.c

clang-format

Created using spr 1.3.7
DeltaFile
+4-3llvm/lib/CAS/MappedFileRegionArena.cpp
+2-2clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+2-1llvm/lib/CAS/OnDiskGraphDB.cpp
+2-1clang/test/CodeGen/AArch64/neon/intrinsics.c
+10-74 files

OPNSense/core 26b9169src/opnsense/mvc/app/controllers/OPNsense/Hostdiscovery/forms general.xml, src/opnsense/mvc/app/models/OPNsense/Hostdiscovery Hostwatch.xml

Interfaces: Neighbors: Automatic Discovery - core part for configurable cleanups, closes https://github.com/opnsense/core/issues/9953
DeltaFile
+12-0src/opnsense/mvc/app/controllers/OPNsense/Hostdiscovery/forms/general.xml
+6-0src/opnsense/mvc/app/models/OPNsense/Hostdiscovery/Hostwatch.xml
+3-1src/opnsense/service/templates/OPNsense/Hostdiscovery/rc.conf.d
+21-13 files

LLVM/project 3d4e02cllvm/tools/llvm-cas-fuzzer cas-fuzzer.cpp DummyCASFuzzer.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+388-0llvm/tools/llvm-cas-fuzzer/cas-fuzzer.cpp
+14-0llvm/tools/llvm-cas-fuzzer/DummyCASFuzzer.cpp
+10-0llvm/tools/llvm-cas-fuzzer/CMakeLists.txt
+412-03 files

LLVM/project 83d1aeallvm/include/llvm/CAS MappedFileRegionArena.h, llvm/lib/CAS OnDiskTrieRawHashMap.cpp MappedFileRegionArena.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+49-2llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
+22-9llvm/lib/CAS/MappedFileRegionArena.cpp
+22-1llvm/lib/CAS/OnDiskGraphDB.cpp
+6-1llvm/lib/CAS/DatabaseFile.cpp
+1-1llvm/include/llvm/CAS/MappedFileRegionArena.h
+100-145 files

LLVM/project 38c53b3clang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen/AArch64/neon intrinsics.c

[clang][cir][nfc] Fix comments, add missing EOF (#190623)
DeltaFile
+2-2clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+2-1clang/test/CodeGen/AArch64/neon/intrinsics.c
+4-32 files

FreeBSD/src 7764e9clib/msun/man fmax.3

fmax.3: Add caveat for going beyond C std requirements

libm's fmax and fmin family of functions treat +0.0 as greater than
-0.0.  This is not required by the C standard, so the user may not see
this behaviour due to compiler optimization.

PR:             294214
Reviewed by:    fuz
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D56230
DeltaFile
+8-5lib/msun/man/fmax.3
+8-51 files

LLVM/project b44d2c9llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv pr189037.ll

[RISCV] Use a vector MemVT when converting store+extractelt into a vector store. (#190107)

This is needed so that `allowsMemoryAccessForAlignment` checks for
unaligned vector memory
support instead of unaligned scalar memory support when called from
`RISCVTargetLowering::expandUnalignedVPStore`

While there remove incorrect setting of the truncating store flag
on the vector instruction. And restrict the transform to simple stores
since we don't have tests for volatile or atomic.

Fixes #189037
DeltaFile
+14-0llvm/test/CodeGen/RISCV/rvv/pr189037.ll
+6-4llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+20-42 files

LLVM/project 0d14772llvm/lib/Target/RISCV RISCVInstrInfoP.td, llvm/test/CodeGen/RISCV rv64p.ll rv32p.ll

[RISCV][P-ext] Add isel patterns for for macc*.h00/macc*.w00. (#190444)

The RV32 macc*.h00 instructions take the lower half words from rs1 and
rs2, compute the full word product by extending the inputs, and
add to rd. The RV64 macc*.w00 is similar but operates on words
and produces a double word result.

I've restricted this to case where the multiply has a single use.
We don't have a general macc that multiplies the full xlen bits
of rs1 and rs2, so I'm allowing the input to be sext_inreg/and or
have sufficient sign/zero bits according to
ComputeNumSignBits/computeKnownBits.

We should also add mul*.h00/mul.*w00 patterns, but those we should
restrict to at least one input being sext_inreg/and and prefer
regular mul when there are no sext_inreg/and.
DeltaFile
+114-0llvm/test/CodeGen/RISCV/rv64p.ll
+114-0llvm/test/CodeGen/RISCV/rv32p.ll
+14-0llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+242-03 files

LLVM/project 0bef4c7llvm/lib/Target/AMDGPU VOP3Instructions.td, llvm/test/CodeGen/AMDGPU and_or.ll or3.ll

[AMDGPU] Add v2i32 and/or patterns for VOP3 AND_OR and OR3 operations (#188375)

Add ThreeOp_v2i32_Pats pattern class to support v2i32 vector operations
for AND_OR_B32 and OR3_B32 instructions. The new patterns check the
v2i32 and-or or or-or instruction sequence, extract individual 32-bit
elements from v2i32 operands, and applies the and_or or or3 vop3
operations.
DeltaFile
+299-0llvm/test/CodeGen/AMDGPU/and_or.ll
+205-0llvm/test/CodeGen/AMDGPU/or3.ll
+20-0llvm/lib/Target/AMDGPU/VOP3Instructions.td
+524-03 files

NetBSD/pkgsrc Ai8SVPjsysutils/py-psutil distinfo Makefile, sysutils/py-psutil/patches patch-psutil_arch_netbsd_mem.c patch-psutil_arch_netbsd_cpu.c

   sysutils/psutil: Patch to remove procfs dependency

   Replace procfs depdendency in the following sections
   - cpu stats calculation
   - memory usage calculation

   While here also handle EBUSY failures gracefully.
VersionDeltaFile
1.1+99-0sysutils/py-psutil/patches/patch-psutil_arch_netbsd_mem.c
1.4+80-6sysutils/py-psutil/patches/patch-psutil_arch_netbsd_cpu.c
1.9+62-13sysutils/py-psutil/patches/patch-psutil___psbsd.py
1.1+32-0sysutils/py-psutil/patches/patch-psutil_arch_netbsd_proc.c
1.66+5-1sysutils/py-psutil/distinfo
1.68+2-1sysutils/py-psutil/Makefile
+280-216 files

LLVM/project c067528llvm/include/llvm/TargetParser Triple.h, llvm/lib/TargetParser Triple.cpp

Triple: Add constructor from enum entries

Don't require hardcoding the string names.
DeltaFile
+40-0llvm/unittests/TargetParser/TripleTest.cpp
+7-0llvm/lib/TargetParser/Triple.cpp
+4-0llvm/include/llvm/TargetParser/Triple.h
+51-03 files

FreeBSD/src 2abaf8ausr.bin/diff3 diff3.c

diff3: plug fd leak

MFC After:      1 week
Reported by:    kib

(cherry picked from commit 33424fd50ee0333bc6f70b5b14a270b85e5b5de1)
DeltaFile
+1-0usr.bin/diff3/diff3.c
+1-01 files

FreeBSD/src f5d3d35usr.bin/diff pr.c

diff: use O_CLOEXEC on pipes

This only simplifies the code, no functional changes expected

MFC After:      1 week

(cherry picked from commit c8d40bf8ecc60cc15e3904410db62065ea681fdc)
DeltaFile
+2-5usr.bin/diff/pr.c
+2-51 files

FreeBSD/src 8cc85a8usr.bin/diff pr.c

diff: prefer posix_spawn over pdfork/execl

MFC After:              1 week
Reviewed by:            kib
Differential Revision:  https://reviews.freebsd.org/D56076

(cherry picked from commit 6d8b2ac449f34423be9d56492022421db61d920e)
DeltaFile
+39-23usr.bin/diff/pr.c
+39-231 files

LLVM/project 5b33f85llvm/test/CodeGen/AMDGPU amdgpu-attributor-min-agpr-alloc.ll attributor-wwm.ll, llvm/test/CodeGen/AMDGPU/GlobalISel divergence-divergent-i1-phis-no-lane-mask-merging.ll

[AMDGPU] Change isSingleLaneExecution to account for WWM enabling lanes even if there's only one workitem (#188316)

This issue was discovered during some downstream work around Vulkan CTS
tests, specifically
`dEQP-VK.subgroups.arithmetic.compute.subgroupadd_float`

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
DeltaFile
+70-110llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/nontrivial-unswitch-divergent-target.ll
+39-38llvm/test/CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll
+36-33llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
+64-0llvm/test/CodeGen/AMDGPU/attributor-wwm.ll
+21-21llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
+19-19llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
+249-22136 files not shown
+400-34142 files

FreeBSD/src 8fade07usr.bin/diff3 diff3.c

diff3: set O_CLOEXEC on pipes

This avoid leaking pipe fd in children and simplifies the code

MFC After:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D56120

(cherry picked from commit 945e60e018c287f8097f3ee4a30ccf4921845aa1)
DeltaFile
+2-6usr.bin/diff3/diff3.c
+2-61 files

FreeBSD/src 0c0e08busr.bin/diff diffreg.c

diff: handle read(2) failures

MFC After:      1 week

(cherry picked from commit 9b98c4b053917cad42e26596b37df72efab6dc39)
DeltaFile
+5-0usr.bin/diff/diffreg.c
+5-01 files

FreeBSD/src 210f4d8usr.bin/diff3 diff3.c

diff3: prefer posix_spawn over pdfork/execlp

MFC After:              1 week
Reviewed by:            kib
Differential Revision:  https://reviews.freebsd.org/D56075

(cherry picked from commit 5f7f0efe8e13247fc80a2a739e757f73a5d7ebda)
DeltaFile
+29-18usr.bin/diff3/diff3.c
+29-181 files

LLVM/project e7ac60cutils/bazel/llvm-project-overlay/mlir BUILD.bazel

[Bazel] Fixes ce1a9fd (#190577)

This fixes ce1a9fd76640929fe340c5c5d1bb493ea09ca9bc.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
DeltaFile
+2-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+2-01 files

LLVM/project baa1e50flang/lib/Semantics check-cuda.cpp, flang/test/Semantics cuf25.cuf

[flang][cuda] Do not consider kernel result as host variable (#190626)
DeltaFile
+8-0flang/test/Semantics/cuf25.cuf
+2-2flang/lib/Semantics/check-cuda.cpp
+10-22 files

FreeNAS/freenas d4958f2src/middlewared/middlewared/plugins etc.py api_key.py, src/middlewared/middlewared/plugins/auth_ login_ex_impl.py 2fa.py

Remove pam_truenas etc_group

At this point there's not really a strong reason to have a
separate pam_truenas etc group. The truenas-specific entries
depend on what's generated in regular pam etc group. This
commit also fixes an issue whereby PAM files weren't updated
on remote controller when user enables DS authentication.
This commit also updates various call-sites to generate pam
rather than pam_truenas.
DeltaFile
+3-10src/middlewared/middlewared/plugins/etc.py
+4-4src/middlewared/middlewared/plugins/api_key.py
+5-1src/middlewared/middlewared/plugins/system_general/update.py
+2-2src/middlewared/middlewared/plugins/auth_/login_ex_impl.py
+2-2src/middlewared/middlewared/plugins/auth.py
+1-1src/middlewared/middlewared/plugins/auth_/2fa.py
+17-201 files not shown
+18-217 files