LLVM/project 7bc9882llvm/lib/Transforms/Utils SimplifyLibCalls.cpp, llvm/test/Transforms/InstCombine strcmp-memcmp.ll

[SimplifyLibCalls] Use context instruction strcmp->memcmp transform (#203893)

Pass the context instruction when checking for dereferenceability.
DeltaFile
+30-0llvm/test/Transforms/InstCombine/strcmp-memcmp.ll
+5-4llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
+35-42 files

LLVM/project 702fedfllvm/lib/Target/AMDGPU AMDGPUCallingConv.td, llvm/lib/Target/AMDGPU/Utils AMDGPUBaseInfo.cpp

review
DeltaFile
+110-22llvm/test/CodeGen/AMDGPU/sret-sgpr.ll
+7-4llvm/test/Analysis/UniformityAnalysis/AMDGPU/kernel-args.ll
+4-4llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+2-4llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
+123-344 files

LLVM/project 28f5731llvm/test/Transforms/LoopVectorize/RISCV strided-accesses.ll

[LV] Pre-commit test case for strided accesses derived from lshr exact. nfc (#203488)
DeltaFile
+339-2llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
+339-21 files

LLVM/project 6e6c296mlir/include/mlir/Interfaces ControlFlowInterfaces.h, mlir/lib/Dialect/Affine/IR AffineOps.cpp

[mlir] Use explicit op targets for region successors (#203552)

Replace the RegionSuccessor parent sentinel with an explicit Operation *
target. Operation successors now model continuing after that operation,
while region successors continue to point at Region.

Update RegionBranchOpInterface helpers, analyses, and dialect
implementations to use operation successors. This removes the ambiguity
of interpreting parent relative to whichever operation produced the
successor when introducing early-exits.

For downstream integration for this API change:

- `successor.isParent()` -> `successor.isOperation()`
- `RegionSuccessor::parent()` -> RegionSuccessor(op)` ; that means that
you need to have access to the target op. In general it is either
`getOperation()` or `getParentOp()` (depending if you're updating a
method on the `RegionBranchOpInterface` operation or on the terminator.

Assisted-by: Codex
DeltaFile
+30-26mlir/lib/Interfaces/ControlFlowInterfaces.cpp
+36-18mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
+26-26mlir/lib/Dialect/SCF/IR/SCF.cpp
+20-20mlir/test/lib/Dialect/Test/TestOpDefs.cpp
+10-9mlir/lib/Dialect/Affine/IR/AffineOps.cpp
+8-8mlir/lib/Dialect/Transform/IR/TransformOps.cpp
+130-10725 files not shown
+215-18731 files

LLVM/project e295663flang/include/flang/Parser parse-tree.h, flang/lib/Lower/OpenMP Clauses.cpp ClauseProcessor.cpp

[flang][OpenMP] Parsing and semantics of locators as part of OmpObject

Allow function call references and reserved locator names as parts of
OmpObject. Function calls and array element accesses have the same syntax,
and the OmpObject parser will parse them as function calls. This is then
corrected (if needed) immediately after the name resolution is complete.

There are no clause-specific semantic checks of proper locators. Existing
code will check if a proper locator is specified on a clause that allows
it.

Lowering of proper locators to MLIR is not implemented, and a TODO
message is emitted.
DeltaFile
+40-9flang/lib/Lower/OpenMP/Clauses.cpp
+41-7flang/lib/Semantics/openmp-utils.cpp
+23-14flang/lib/Parser/openmp-parsers.cpp
+23-5flang/lib/Semantics/check-omp-structure.cpp
+12-11flang/include/flang/Parser/parse-tree.h
+22-0flang/lib/Lower/OpenMP/ClauseProcessor.cpp
+161-4630 files not shown
+313-10936 files

LLVM/project 989c2a4flang/lib/Semantics expression.cpp

format
DeltaFile
+3-4flang/lib/Semantics/expression.cpp
+3-41 files

LLVM/project e8faac2openmp/runtime/src kmp_adt.h kmp_adt.cpp, openmp/runtime/unittests/ADT TestStringRef.cpp

go away from string_view again
DeltaFile
+27-18openmp/runtime/src/kmp_adt.h
+33-2openmp/runtime/unittests/ADT/TestStringRef.cpp
+4-4openmp/runtime/src/kmp_adt.cpp
+64-243 files

LLVM/project 5388feamlir/include/mlir/Dialect/EmitC/IR EmitC.td, mlir/lib/Conversion/FuncToEmitC FuncToEmitC.cpp

[mlir][emitc] Support member access for values (#203308)

The `emitc.member` op is currently limited to taking lvalues of opaque
types representing structs and returning either lvalues or arrays of its
fields. Accessing members of SSA values of opaque types, therefore,
requires assigning them to an `emitc.variable`, applying `emitc.member`
to it and `emitc.load` to the member's lvalue. For users only wishing to
read members of a struct value, this should be redundant.

This PR extends `emitc.member` to handle struct values directly by
accepting opaque types as argument, as long as the result type is
neither an lvalue nor an array, which imply memory location. This
provides similar semantics to extracting elements out of SSA
tensors/vectors.
DeltaFile
+27-0mlir/lib/Dialect/EmitC/IR/EmitC.cpp
+7-14mlir/test/Target/Cpp/func.mlir
+17-1mlir/test/Dialect/EmitC/invalid_ops.mlir
+4-13mlir/lib/Conversion/FuncToEmitC/FuncToEmitC.cpp
+7-3mlir/lib/Target/Cpp/TranslateToCpp.cpp
+7-3mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
+69-343 files not shown
+76-399 files

LLVM/project 5e2cb97llvm/lib/Target/AMDGPU AMDGPURegBankLegalizeRules.cpp AMDGPULegalizerInfo.cpp, llvm/test/CodeGen/AMDGPU maximumnum.ll minimumnum.ll

AMDGPU/GlobalISel: Legalizer and RegBankLegalize for pk_f64 min_num and max_num
DeltaFile
+60-64llvm/test/CodeGen/AMDGPU/maximumnum.ll
+60-64llvm/test/CodeGen/AMDGPU/minimumnum.ll
+17-2llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
+8-1llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+145-1314 files

LLVM/project 5fb08f4libc/src/netinet in6addr_loopback.h in6addr_any.h, libc/test/src/netinet in_test.cpp

[libc] Add the in6addr_{any,loopback} variables (#203579)

The existence of the variables is required by POSIX.

Assisted by Gemini.
DeltaFile
+26-0libc/src/netinet/in6addr_loopback.h
+26-0libc/src/netinet/in6addr_any.h
+25-0libc/src/netinet/in6addr_loopback.cpp
+25-0libc/src/netinet/CMakeLists.txt
+24-0libc/src/netinet/in6addr_any.cpp
+14-0libc/test/src/netinet/in_test.cpp
+140-06 files not shown
+160-112 files

FreeBSD/src 56b6809sys/netpfil/ipfilter/netinet ip_pptp_pxy.c

ipfilter: Fix ip_pptp_pxy (PPTP proxy) length underflow

A PPTP client sending a specially crafted PPTP message with a length
smaller than the already processed fixed header can panic the system.
This resultes in a negative remaining length (a large unsigned 16-bit
number).

Reported by:    Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li,
                and Ke Xu from Tsinghua University using GLM-5.1 from
                Z.ai
Differential Revision:  https://reviews.freebsd.org/D57383

(cherry picked from commit 37e9d3641ba0e0da0d2bbaa26a59ee56a8cf3ee6)
DeltaFile
+6-2sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c
+6-21 files

FreeBSD/src 120881bcrypto/krb5/src/lib/gssapi/spnego spnego_mech.c

krb5: Fix null dereference in SPNEGO token processing

krb5 1.22.1 erroneously removed a check from get_negTokenResp() for
successful decoding of the mechListMIC field.  Restore the check to
prevent a null pointer dereference.

Commit message details obtained from upstream commit.
Obtained from:  Upstream commit 4ae75cded

(cherry picked from commit efb5c07f91c5c11fb9bd32227ac74c2d08adf3cf)
DeltaFile
+2-0crypto/krb5/src/lib/gssapi/spnego/spnego_mech.c
+2-01 files

FreeBSD/src 4c3fde8sys/netpfil/ipfilter/netinet ip_pptp_pxy.c

ipfilter: Fix ip_pptp_pxy (PPTP proxy) length underflow

A PPTP client sending a specially crafted PPTP message with a length
smaller than the already processed fixed header can panic the system.
This resultes in a negative remaining length (a large unsigned 16-bit
number).

Reported by:    Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li,
                and Ke Xu from Tsinghua University using GLM-5.1 from
                Z.ai
Differential Revision:  https://reviews.freebsd.org/D57383

(cherry picked from commit 37e9d3641ba0e0da0d2bbaa26a59ee56a8cf3ee6)
DeltaFile
+6-2sys/netpfil/ipfilter/netinet/ip_pptp_pxy.c
+6-21 files

FreeBSD/src 27691b8crypto/krb5/src/lib/gssapi/krb5 import_name.c

krb5: Fix reachable assert when importing krb5 names

If a name token contains trailing garbage, error out from
krb5_gss_import_name() instead of crashing the process with an
assertion failure.

Commit message details obtained from upstream commit.
Obtained from:  upstream commit 07818f1fd
Reported by:    Aisle Research (Ze Sheng, Dmitrijs Trizna,
                Luigino Camastra, Guido Vranken) to krb5-bugs
MFC after:      3 days

(cherry picked from commit fce16f60de9718be6b789f00e86141a84cd920d3)
DeltaFile
+2-1crypto/krb5/src/lib/gssapi/krb5/import_name.c
+2-11 files

NetBSD/pkgsrc-wip f1b9396reuse-tool COMMIT_MSG

reuse-tool: Update commit message
DeltaFile
+2-1reuse-tool/COMMIT_MSG
+2-11 files

LLVM/project 7dc09d0llvm/include/llvm/Support CHERICapabilityFormat.h, llvm/lib/Support CHERICapabilityFormat.cpp CMakeLists.txt

[CHERI] Add a Support utility for determining alignment requirements of CHERI capabilities. (#197402)

On CHERI systems with compressed bounds representations (which is all of
them that anyone cares about today), one of the tradeoffs to achieve
that compression is a requirement for larger allocations to be more
highly aligned. This impacts both code generation and linking in places
where globals need to be aligned and/or padded based on this
requirement. The specific alignment requirements vary by capability
format.

Co-authored-by: Alex Richardson <alexrichardson at google.com>
DeltaFile
+91-0llvm/unittests/Support/CHERICapabilityFormatTest.cpp
+77-0llvm/lib/Support/CHERICapabilityFormat.cpp
+53-0llvm/include/llvm/Support/CHERICapabilityFormat.h
+1-0llvm/unittests/Support/CMakeLists.txt
+1-0llvm/lib/Support/CMakeLists.txt
+223-05 files

LLVM/project 9ce06fdllvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp, llvm/test/CodeGen/AMDGPU expert_scheduling_gfx1250.mir

[AMDGPU] Track LDS DMA VGPR source reads in expert scheduling (#203292)

LDS DMA instructions are marked as VALU but we need to treat them as
FLAT instructions for expert mode waitcnt insertion. This meant we were
missing a `vm_vsrc` wait for WAR and RAW on input registers of the LDS
DMA instruction.

I added lit tests for other memory ops as well to catch future
regressions.
DeltaFile
+103-0llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx1250.mir
+4-2llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+107-22 files

FreeNAS/freenas 6bf77fadebian/debian control

Explicitly list packages that were previously installed only because they were "recommended"
DeltaFile
+1-0debian/debian/control
+1-01 files

FreeBSD/src 1491ab3sys/dev/ntsync ntsync.c

ntsync(9): do not double-free obj when finstall() failed

Reported by:    Alex S <iwtcex at gmail.com>
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+1-0sys/dev/ntsync/ntsync.c
+1-01 files

FreeBSD/src 281e350sys/dev/ntsync ntsync.c

ntsync(9): free wait state on error from copyin of the object's array

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+3-1sys/dev/ntsync/ntsync.c
+3-11 files

FreeBSD/src 96759absys/dev/ntsync ntsync.c ntsyncvar.h

ntsync(9): properly handle timeouts

Reported by:    Alex S <iwtcex at gmail.com>
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+12-4sys/dev/ntsync/ntsync.c
+1-0sys/dev/ntsync/ntsyncvar.h
+13-42 files

LLVM/project 136ac86llvm/lib/Target/AMDGPU AMDGPURegBankLegalizeRules.cpp, llvm/test/CodeGen/AMDGPU fcanonicalize.ll

AMDGPU/GlobalISel: RegBankLegalize rules for pk_f64 fcanonicalize (#203870)
DeltaFile
+464-793llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
+6-1llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
+470-7942 files

FreeBSD/ports c831d94databases/powa-archivist distinfo Makefile

databases/powa-archivist: Update to 5.1.2

Release notes:  https://github.com/powa-team/powa-archivist/releases/tag/REL_5_1_2
DeltaFile
+3-3databases/powa-archivist/distinfo
+1-1databases/powa-archivist/Makefile
+2-0databases/powa-archivist/pkg-plist
+6-43 files

LLVM/project 97a77eaflang/include/flang/Semantics expression.h, flang/lib/Semantics expression.cpp

[flang] Extract misparsed function reference check into function

Function calls and array element acceses have the same syntax, and some
array element accesses may be misparsed as calls. The ExprChecker will
identify and correct such cases in expressions, but they may also occur
outside of expressions (e.g. OpenMP directives and clauses).

To avoid code duplication extract the check into a new function
`IsMisparsedFunctionReference`.
DeltaFile
+38-32flang/lib/Semantics/expression.cpp
+3-0flang/include/flang/Semantics/expression.h
+41-322 files

FreeBSD/ports 09bca6dnet-im/telegram-desktop Makefile

net-im/telegram-desktop: bump PORTREVISION (+)

... after devel/toomanycooks update.

Sponsored by:   tipi.work
DeltaFile
+1-0net-im/telegram-desktop/Makefile
+1-01 files

FreeBSD/ports 74b2e6edevel/toomanycooks distinfo Makefile

devel/toomanycooks: update: 1.6.0 -> 1.6.1

ChangeLog:      https://github.com/tzcnt/TooManyCooks/compare/v1.6.0...v1.6.1
Reported by:    portscout

Sponsored by:   tipi.work
DeltaFile
+3-3devel/toomanycooks/distinfo
+1-2devel/toomanycooks/Makefile
+4-52 files

NetBSD/src M3CVtJLdoc CHANGES

   doc: First two weeks of changes in June.
VersionDeltaFile
1.3273+25-1doc/CHANGES
+25-11 files

LLVM/project 6d2f3ddcross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers ScriptDebuggerController.py, cross-project-tests/debuginfo-tests/dexter/dex/evaluation StateMatch.py RunMatch.py

[Dexter] Add condition check to state nodes

This patch enables the ability for state nodes to check conditions, meaning
they will be active only if the condition is met.

Condition evaluation is somewhat language specific; we directly check
whether the value of the evaluated expression is "true" (case-insensitive),
which works for the languages we actually use Dexter with, but may require
generalizing in future.

We also cache conditions as they are evaluated; each time we step, we clear
all cached conditions for the current frame and any expired frames, but we
keep the cached conditions for any frames rootwards from the current frame;
this prevents us from unexpectedly exiting out of a callee frame because of
debug info not surviving a stack unwind; if the early exit is desired, an
!and{at_frame_idx, condition} under the lower frame may suffice.
DeltaFile
+45-10cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
+53-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp
+9-1cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
+6-1cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
+6-1cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectWriter.py
+1-1cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
+120-146 files

LLVM/project 294b362cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging watch_scope.cpp

format
DeltaFile
+2-1cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
+2-11 files

LLVM/project f18c37ccross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation eval_address.cpp

format
DeltaFile
+5-3cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
+5-31 files