LLVM/project 525aa54llvm/test/CodeGen/AMDGPU maximumnum.ll, llvm/test/CodeGen/AMDGPU/GlobalISel legalize-load-global.mir legalize-load-local.mir

Merge branch 'main' into users/ziqingluo/PR-171209196
DeltaFile
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+9,414-9,234llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
+7,009-6,937llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
+13,068-0llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-max-min-umax-umin.ll
+5,819-5,824llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
+5,588-5,406llvm/test/CodeGen/AMDGPU/maximumnum.ll
+64,802-27,41314,592 files not shown
+565,466-358,54514,598 files

LLVM/project fee5637clang/lib/Analysis ThreadSafety.cpp

address comments
DeltaFile
+7-5clang/lib/Analysis/ThreadSafety.cpp
+7-51 files

LLVM/project c231e00mlir/lib/Dialect/OpenACC/Utils OpenACCUtilsLoop.cpp, mlir/test/Dialect/OpenACC acc-compute-lowering-loop.mlir

[OpenACC] set CollapseCountAttr for scf.parallel (#211676)

During compute lowering, also set the collapse count attribute when
creating scf.parallel ops from acc.loop ops. While this collapse count
is implied by the number of IVs, later canonicalizations may use this
information to decide whether or not to collapse the loop nest further
DeltaFile
+28-0mlir/test/Dialect/OpenACC/acc-compute-lowering-loop.mlir
+1-0mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsLoop.cpp
+29-02 files

LLVM/project df08f50llvm/lib/Target/AMDGPU AMDGPURegBankCombiner.cpp AMDGPUCombine.td, llvm/test/CodeGen/AMDGPU packed-fp64.ll

[AMDGPU][GlobalISel] Fold redundant uniform G_AMDGPU_READANYLANE in RegBankCombiner
DeltaFile
+45-0llvm/test/CodeGen/AMDGPU/GlobalISel/regbankcombiner-redundant-readanylane.mir
+33-0llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
+10-1llvm/lib/Target/AMDGPU/AMDGPUCombine.td
+4-4llvm/test/CodeGen/AMDGPU/packed-fp64.ll
+92-54 files

LLVM/project 9669c3allvm/lib/Target/AArch64 AArch64PointerAuth.cpp, llvm/test/CodeGen/AArch64 pauth-lr-tail-call-fpdiff.ll sign-return-address-pauth-lr.ll

[llvm][AArch64] Enable .cfi_set_ra_state by default for PAuth_LR: (#209944)
DeltaFile
+48-24llvm/test/CodeGen/AArch64/pauth-lr-tail-call-fpdiff.ll
+35-35llvm/test/CodeGen/AArch64/sign-return-address-pauth-lr.ll
+34-34llvm/test/CodeGen/AArch64/sign-return-address-pauth-lr-mir.ll
+18-9llvm/test/CodeGen/AArch64/swifttail-ptrauth.ll
+4-4llvm/test/CodeGen/AArch64/sign-return-address-pauthlr-slh.ll
+1-1llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
+140-1076 files

LLVM/project 2748955clang/test/SemaCXX warn-thread-safety-analysis.cpp

address comments
DeltaFile
+48-2clang/test/SemaCXX/warn-thread-safety-analysis.cpp
+48-21 files

LLVM/project bf461e2llvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp, llvm/test/CodeGen/AMDGPU expert_scheduling_gfx12.mir soft-waitcnt-deletion.mir

[AMDGPU] Check all incoming edges before deleting soft waits

Change-Id: I92ca9784405e53f46aa4c8701e417d32f00bbff7
DeltaFile
+724-1llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
+431-0llvm/test/CodeGen/AMDGPU/soft-waitcnt-deletion.mir
+128-38llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+118-0llvm/test/CodeGen/AMDGPU/soft-waitcnt-loop-deletion.ll
+46-0llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
+36-0llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
+1,483-3910 files not shown
+1,607-6116 files

LLVM/project 0cd2bd1llvm/lib/Target/SPIRV SPIRVLegalizerInfo.cpp, llvm/test/CodeGen/SPIRV/legalization matrix-wide-vector-shader.ll vector-legalization-shader.ll

Revert "[SPIRV][Matrix] Change Matrix Shader legalization to largest common divisor" (#211660)

Reverts llvm/llvm-project#207768
DeltaFile
+4-218llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
+0-166llvm/test/CodeGen/SPIRV/legalization/matrix-wide-vector-shader.ll
+0-113llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose-bool.ll
+12-10llvm/test/CodeGen/SPIRV/legalization/vector-legalization-shader.ll
+9-11llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-multiply.ll
+9-7llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll
+34-5251 files not shown
+35-5317 files

LLVM/project 57bdce1clang/lib/Sema SemaExprCXX.cpp

sigh, missed this
DeltaFile
+1-1clang/lib/Sema/SemaExprCXX.cpp
+1-11 files

LLVM/project 727c182clang/include/clang/Sema DynamicAllocationArgumentsCXX.h Sema.h, clang/lib/Sema SemaExprCXX.cpp SemaOverload.cpp

Update for reviewer feedback
DeltaFile
+72-0clang/include/clang/Sema/DynamicAllocationArgumentsCXX.h
+3-49clang/include/clang/Sema/Sema.h
+3-6clang/lib/Sema/SemaExprCXX.cpp
+1-1clang/lib/Sema/SemaOverload.cpp
+1-0clang/lib/Sema/SemaCoroutine.cpp
+80-565 files

LLVM/project 1ca413aclang/lib/CodeGen CGHLSLBuiltins.cpp, clang/test/CodeGenHLSL/builtins RWByteAddressBuffer-InterlockedOr.hlsl RasterizerOrderedByteAddressBuffer-InterlockedOr.hlsl

Add InterlockedOr resource methods (#211639)

This PR builds upon the work merged in
https://github.com/llvm/llvm-project/pull/180804, and completes the
implementation of the InterlockedOr functions in HLSL, by adding these
methods to the existing resource types.
This PR also reflects the same implementation strategy used in
https://github.com/llvm/llvm-project/pull/208128
Fixes: https://github.com/llvm/llvm-project/issues/99126
Assisted by: Github Copilot
DeltaFile
+62-0clang/test/CodeGenHLSL/builtins/RWByteAddressBuffer-InterlockedOr.hlsl
+0-52llvm/test/CodeGen/DirectX/InterlockedOr.ll
+45-0clang/test/CodeGenHLSL/builtins/RasterizerOrderedByteAddressBuffer-InterlockedOr.hlsl
+4-33clang/lib/CodeGen/CGHLSLBuiltins.cpp
+0-37llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedOr_spv_i64.ll
+0-36llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedOr.ll
+111-1589 files not shown
+165-23415 files

LLVM/project cdfa687clang/include/clang/Options Options.td, clang/lib/Driver Driver.cpp ToolChain.cpp

[Driver] Print C++ standard library info (#207798)

Users and tools sometimes need to know which C++ standard library Clang
selected, and which include directories the driver added for it. Today
they have to inspect verbose or `-###` output.

Add options to print this information directly:

`--print-cxx-stdlib`
`--print-cxx-stdlib-include-dirs`

For MSVC targets, the default printed library is `msvcstl`. Explicit
`-stdlib=` values are still reported as requested. The include-dir query
reuses toolchain logic, including the MSVC STL include path for the
default MSVC case.
DeltaFile
+56-0clang/test/Driver/print-cxx-stdlib.cpp
+44-12clang/lib/Driver/ToolChains/MSVC.cpp
+30-0clang/lib/Driver/Driver.cpp
+10-0clang/lib/Driver/ToolChain.cpp
+8-0clang/include/clang/Options/Options.td
+8-0clang/lib/Driver/ToolChains/MSVC.h
+156-122 files not shown
+164-128 files

LLVM/project f4b5fb1mlir/lib/Dialect/OpenACC/Transforms ACCCGToGPU.cpp, mlir/test/Dialect/OpenACC acc-cg-to-gpu-reduction-array.mlir

[mlir][OpenACC] Support partial ThreadX reduction launches (#211665)

Example:
```fortran
!$acc parallel loop collapse(2) num_gangs(10) reduction(+:a)
do i = 1, n
  do j = 1, n
    do k = 1, m
      a(k) = a(k) + x(k,i) * y(k,j)
    end do
  end do
end do
```

In this code, ACCCG pads ThreadX to the subgroup size because
`gpu.all_reduce` uses subgroup shuffles. This unnecessarily increases
private reduction storage when only one Y/Z row is active.

Fix: preserve partial ThreadX launches for a single row, while retaining
alignment when Y/Z rows could share a subgroup.
DeltaFile
+92-0mlir/test/Dialect/OpenACC/acc-cg-to-gpu-reduction-array.mlir
+39-17mlir/lib/Dialect/OpenACC/Transforms/ACCCGToGPU.cpp
+131-172 files

LLVM/project 97386f0llvm/lib/Target/RISCV RISCVInstrInfoC.td RISCVInstrInfo.td, llvm/lib/Target/RISCV/AsmParser RISCVAsmParser.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.8-beta.1-arichardson
DeltaFile
+82-88llvm/lib/Target/RISCV/RISCVInstrInfoC.td
+44-50llvm/lib/Target/RISCV/RISCVInstrInfo.td
+12-20llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
+16-16llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
+19-0llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+2-5llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
+175-1798 files not shown
+188-20314 files

LLVM/project 2ab9dbellvm/lib/Target/RISCV RISCVInstrInfo.td RISCVInstrInfoXqci.td, llvm/lib/Target/RISCV/AsmParser RISCVAsmParser.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.8-beta.1-arichardson

[skip ci]
DeltaFile
+44-50llvm/lib/Target/RISCV/RISCVInstrInfo.td
+16-16llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
+19-0llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+2-5llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
+2-5llvm/lib/Target/RISCV/RISCVInstrInfoF.td
+0-5llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
+83-812 files not shown
+83-878 files

LLVM/project c09004cllvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp, llvm/test/CodeGen/AMDGPU expert_scheduling_gfx12.mir soft-waitcnt-deletion.mir

[AMDGPU] Check all incoming edges before deleting soft waits

Change-Id: I92ca9784405e53f46aa4c8701e417d32f00bbff7
DeltaFile
+724-1llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
+431-0llvm/test/CodeGen/AMDGPU/soft-waitcnt-deletion.mir
+129-38llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+118-0llvm/test/CodeGen/AMDGPU/soft-waitcnt-loop-deletion.ll
+46-0llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
+36-0llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
+1,484-3910 files not shown
+1,608-6116 files

LLVM/project 2b84fdellvm/test/Transforms/LoopVectorize bounded-load-predicated.ll runtime-check-small-bounded-ranges.ll, llvm/test/Transforms/LoopVectorize/AArch64 bounded-load.ll

[LV] Regenerate check lines for bounded load tests (NFC). (#211664)

Re-generate test checks to reduce diff for upcoming PR.
DeltaFile
+988-988llvm/test/Transforms/LoopVectorize/bounded-load-predicated.ll
+273-129llvm/test/Transforms/LoopVectorize/AArch64/bounded-load.ll
+128-128llvm/test/Transforms/LoopVectorize/runtime-check-small-bounded-ranges.ll
+118-57llvm/test/Transforms/LoopVectorize/bounded-load-user-ic.ll
+58-20llvm/test/Transforms/LoopVectorize/bounded-load.ll
+1,565-1,3225 files

LLVM/project bb17e71llvm/lib/DWARFLinker/Parallel DWARFLinkerCompileUnit.cpp, llvm/test/tools/dsymutil/X86/DWARFLinkerParallel alloc-type.s

[DWARFLinker] Treat DW_AT_LLVM_alloc_type as a type reference (#211655)

The parallel linker's getODRAttributes() did not list
`DW_AT_LLVM_alloc_type`, so the dependency tracker treated it as a live
reference rather than a type reference. A type reachable only through
DW_AT_LLVM_alloc_type was therefore never kept: the enclosing subprogram
is marked live, and its type-table-candidate children are skipped during
live marking on the assumption they are retained through the type path.

The attribute then resolved to offset 0, landing on the compile unit
header, which got correctly caught by the DWARF verifier.

The classic linker already lists `DW_AT_LLVM_alloc_type` in
isODRAttribute(), so this PR restores parity between the two.

Assisted-by: Claude

rdar://182715403
DeltaFile
+165-0llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/alloc-type.s
+2-1llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
+167-12 files

LLVM/project 02a267allvm/lib/Transforms/Utils SimplifyCFG.cpp, llvm/test/Transforms/SimplifyCFG fcmp-branch-phi-to-select.ll fold-branch-to-common-dest-phis.ll

[SimplifyCFG] Remove conservative fcmp guard from speculativelyExecuteBB

Previously it rejected to perform if conversion when the condition was
an FCmpInst. That guard predated the current cost model which now takes
into consideration target-dependent knobs such as getCmpSelInstrCost()
via validateAndCostRequiredSelects.

Also propagate fast-math flags from the phi to the replacement select using
CreateSelectFMF instead of CreateSelect.
DeltaFile
+8-28llvm/test/Transforms/SimplifyCFG/fcmp-branch-phi-to-select.ll
+4-5llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+2-3llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest-phis.ll
+14-363 files

LLVM/project 572b290llvm/test/Transforms/SimplifyCFG fcmp-branch-phi-to-select.ll

[NFC][SimplifyCFG] Add tests
DeltaFile
+154-0llvm/test/Transforms/SimplifyCFG/fcmp-branch-phi-to-select.ll
+154-01 files

LLVM/project 2f68341clang-tools-extra/clangd ProjectModules.cpp, clang/include/clang/DependencyScanning DependencyScannerImpl.h DependencyScanningWorker.h

Move implementation details to DependencyScanningWorker.cpp and dissolve DependencyScannerImpl.h/cpp.
DeltaFile
+0-678clang/lib/DependencyScanning/DependencyScannerImpl.cpp
+671-1clang/lib/DependencyScanning/DependencyScanningWorker.cpp
+0-122clang/include/clang/DependencyScanning/DependencyScannerImpl.h
+12-2clang/include/clang/DependencyScanning/DependencyScanningWorker.h
+0-1clang/lib/DependencyScanning/CMakeLists.txt
+1-0clang-tools-extra/clangd/ProjectModules.cpp
+684-8043 files not shown
+684-8079 files

LLVM/project 55e6b99clang/include/clang/DependencyScanning DependencyScannerImpl.h, clang/lib/DependencyScanning DependencyScanningWorker.cpp DependencyScannerImpl.cpp

Use CompilerInstanceWithContext for TU scanning.
DeltaFile
+132-38clang/lib/DependencyScanning/DependencyScanningWorker.cpp
+6-146clang/lib/DependencyScanning/DependencyScannerImpl.cpp
+33-27clang/include/clang/DependencyScanning/DependencyScannerImpl.h
+35-0clang/unittests/Tooling/DependencyScannerTest.cpp
+1-0clang/test/ClangScanDeps/logging-simple.c
+207-2115 files

LLVM/project f4eed07clang/include/clang/DependencyScanning DependencyScanningWorker.h, clang/include/clang/Tooling DependencyScanningTool.h

Relocate CompilerInstanceWithContext to DependencyScanningWorker.cpp and hide it as an implementation detail.
DeltaFile
+252-0clang/lib/DependencyScanning/DependencyScanningWorker.cpp
+4-209clang/lib/Tooling/DependencyScanningTool.cpp
+0-75clang/include/clang/Tooling/DependencyScanningTool.h
+22-5clang/include/clang/DependencyScanning/DependencyScanningWorker.h
+278-2894 files

LLVM/project 13b0fc5clang/include/clang/DependencyScanning DependencyScannerImpl.h DependencyConsumer.h, clang/include/clang/Tooling DependencyScanningTool.h

Implement the streaming style by-name scanning API.
DeltaFile
+43-89clang/lib/Tooling/DependencyScanningTool.cpp
+39-56clang/tools/clang-scan-deps/ClangScanDeps.cpp
+15-59clang/include/clang/Tooling/DependencyScanningTool.h
+0-14clang/include/clang/DependencyScanning/DependencyScannerImpl.h
+1-3clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
+2-0clang/include/clang/DependencyScanning/DependencyConsumer.h
+100-2216 files

pkgng/pkgng 04b424dlibpkg pkg_audit.c fetch.c, libpkg/private pkg.h

Bound vulnerability database handling

The audit updater writes an unbounded remote download and decompressed
output before validation. An HTTP attacker can fill temporary or package
database storage.

Set fixed maxima and also limit each stage to half its filesystem.
Build a temporary database and atomically replace the existing one after
success.
DeltaFile
+158-17libpkg/pkg_audit.c
+10-2libpkg/fetch.c
+2-0libpkg/private/pkg.h
+170-193 files

pkgng/pkgng 9c59aa4libpkg pkg_sandbox.c

Drop privileges in sandboxed callbacks

The callback sandbox processes untrusted archive and signature parsers
after forking, but retains root identity. It also inherits a descriptor
for /, so Capsicum alone does not remove root filesystem authority.

Drop to nobody before entering Capsicum, matching the string-returning
callback path.
DeltaFile
+2-0libpkg/pkg_sandbox.c
+2-01 files

pkgng/pkgng a092d55libpkg/repo/binary query.c

portability: use funopen instead of fopencookie

funopen is already available in compat/ for linux and used in pkg
elsewhere.

This fixes build on macOS
DeltaFile
+10-9libpkg/repo/binary/query.c
+10-91 files

OpenBSD/ports qbKZuqNdevel/llvm/21 Makefile, devel/llvm/22 Makefile

   switch ports to gcc-16

   OK: tb@, sthen@
VersionDeltaFile
1.10+4-2sysutils/trash-d/Makefile
1.117+3-3infrastructure/mk/arch-defines.mk
1.11+3-3lang/gcc/16/Makefile
1.21+1-4devel/llvm/21/Makefile
1.20+1-4devel/llvm/22/Makefile
1.26+1-2lang/gcc/15/Makefile
+13-1811 files not shown
+36-2217 files

pkgng/pkgng a529dd7libpkg/repo/binary query.c

fix: plug memory leak
DeltaFile
+1-0libpkg/repo/binary/query.c
+1-01 files

LLVM/project 59b3a0cllvm/include/llvm/Target TargetLoweringObjectFile.h, llvm/lib/CodeGen TargetLoweringObjectFileImpl.cpp

[x86] Handle implicit sections when determining if a global is large (#206210)

Just like explicit sections.

We were seeing globals with implicit sections marked large under the
medium code model.

Reland of #204247, with a fix to not crash on declarations with an
explicit section. Implicit sections are not applied to declarations, so
don't check isDeclarationForLinker() globals for implicit sections.

Assisted-by: Gemini
DeltaFile
+134-0llvm/test/CodeGen/X86/large-implicit-section.ll
+5-24llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
+25-0llvm/test/CodeGen/X86/global-variable-declaration-explicit-section.ll
+24-0llvm/lib/Target/TargetLoweringObjectFile.cpp
+13-8llvm/lib/Target/TargetMachine.cpp
+5-0llvm/include/llvm/Target/TargetLoweringObjectFile.h
+206-321 files not shown
+208-327 files