LLVM/project f12ad95polly/include/polly ScopPass.h, polly/lib/Analysis ScopPass.cpp

[Polly] Remove ScopPass infrastructure (#125783)

PR #125442 replaces the pass-based Polly architecture with a monolithic
pass consisting of phases. Reasons listed in
https://github.com/llvm/llvm-project/pull/125442.

With this change, the SCoP-passes became redundant problematic versions
of the same functionality and are removed.
DeltaFile
+0-264polly/include/polly/ScopPass.h
+0-134polly/lib/Analysis/ScopPass.cpp
+0-126polly/lib/Support/RegisterPasses.cpp
+0-66polly/unittests/ScopPassManager/PassManagerTest.cpp
+0-44polly/lib/Support/PollyPasses.def
+0-43polly/lib/Transform/DeLICM.cpp
+0-67737 files not shown
+51-1,17443 files

LLVM/project c61a440libcxx/test/std/language.support/support.dynamic hardware_inference_size.compile.pass.cpp

[libc++][test] re-enable the inference test for clang (#168258)

Fixes #168210
DeltaFile
+0-1libcxx/test/std/language.support/support.dynamic/hardware_inference_size.compile.pass.cpp
+0-11 files

LLVM/project 7693ecapolly/docs ReleaseNotes.rst, polly/lib/Support RegisterPasses.cpp

order change to minimize diff
DeltaFile
+6-6polly/lib/Support/RegisterPasses.cpp
+1-0polly/docs/ReleaseNotes.rst
+7-62 files

LLVM/project d789b1dllvm/test/CodeGen/AArch64 fexplog.ll stack-hazard.ll, llvm/test/CodeGen/AArch64/GlobalISel arm64-atomic.ll

Merge branch 'main' into users/meinersbur/polly_remove-ScopPass
DeltaFile
+3,263-0llvm/test/MC/AArch64/arm-poe2.s
+1,500-1,500llvm/test/CodeGen/AArch64/fexplog.ll
+862-668llvm/test/CodeGen/AMDGPU/mfma-loop.ll
+749-749llvm/test/CodeGen/AArch64/stack-hazard.ll
+676-676llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
+600-600llvm/test/CodeGen/AArch64/fsincos.ll
+7,650-4,193559 files not shown
+25,536-15,123565 files

LLVM/project e26b30doffload CMakeLists.txt, offload/cmake OpenMPTesting.cmake

Fix wrong uses of LLVM_RUNTIME_OUTPUT_INTDIR in openmp/offload
DeltaFile
+6-6offload/CMakeLists.txt
+4-4openmp/CMakeLists.txt
+4-4offload/cmake/OpenMPTesting.cmake
+2-2openmp/cmake/OpenMPTesting.cmake
+1-1offload/test/lit.site.cfg.in
+17-175 files

LLVM/project c8e73cacompiler-rt/cmake base-config-ix.cmake, compiler-rt/lib/sanitizer_common/symbolizer CMakeLists.txt

Fix wrong uses of LLVM_RUNTIME_OUTPUT_INTDIR in compiler-rt
DeltaFile
+2-2compiler-rt/cmake/base-config-ix.cmake
+1-1compiler-rt/lib/sanitizer_common/symbolizer/CMakeLists.txt
+3-32 files

LLVM/project ce507a8runtimes CMakeLists.txt

[Runtimes] Default build must use its own output dir
DeltaFile
+11-5runtimes/CMakeLists.txt
+11-51 files

LLVM/project a464e38llvm/test/Transforms/LoopVectorize vplan-printing.ll

[LV] Check debug location for more recipes in vplan-printing.ll.

Extend test to check printing of debug locations to cover a range of
wide and replicating recipes. Currently those do not print the debug
metadata.
DeltaFile
+38-16llvm/test/Transforms/LoopVectorize/vplan-printing.ll
+38-161 files

LLVM/project be9e287llvm/test/CodeGen/AArch64 pr166870.ll

[AArch64][test] Improve pr166870.ll test case (#168194)

As pointed out in post-commit discussion on #167336
<https://github.com/llvm/llvm-project/pull/167336#issuecomment-3523794206>,
although the test case succeeds in showing a codegen difference now the
faulty MachineCopyPropagation logic was removed, the example was reduced
so much that it actually would have been legal to remove the seemingly
redundant mov.

This is a re-reduction of that test case which should now demonstrate a
mov that can't safely be removed (mov w9, w9) because the upper bits no
longer being zeroed may alter the program logic.
DeltaFile
+77-46llvm/test/CodeGen/AArch64/pr166870.ll
+77-461 files

LLVM/project 5673305clang/test/CodeGen builtins.c

[NFC][clang] Correct bswapg test to work when int128 is not available (#168261)

This updates the test to avoid inclusion of int128 bswapg tests on
targets that don't support int128 at all.

This fixes failures introduced by #162433
DeltaFile
+6-1clang/test/CodeGen/builtins.c
+6-11 files

LLVM/project f77270cclang/test/CodeGen builtins.c

[NFC][clang] Correct bswapg test to work when int128 is not available

This updates the test to avoid inclusion of int128 bswapg tests on targets
that don't support int128 at all.

This fixes failures introduced by #162433
DeltaFile
+6-1clang/test/CodeGen/builtins.c
+6-11 files

LLVM/project 3d01d6eclang/include/clang/CIR/Dialect/Builder CIRBaseBuilder.h, clang/lib/CIR/CodeGen CIRGenException.cpp CIRGenCall.cpp

[CIR] Upstream non-empty Try block with catch all (#165158)

Upstream support for try block and catch all block with a function call
that may throw an exception.

Issue https://github.com/llvm/llvm-project/issues/154992
DeltaFile
+268-2clang/lib/CIR/CodeGen/CIRGenException.cpp
+45-5clang/lib/CIR/CodeGen/CIRGenCall.cpp
+44-0clang/test/CIR/CodeGen/try-catch-tmp.cpp
+17-5clang/lib/CIR/CodeGen/CIRGenCleanup.h
+0-19clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
+14-1clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
+388-324 files not shown
+414-3410 files

LLVM/project 74c4029clang-tools-extra/docs/clang-tidy/checks/hicpp explicit-conversions.rst, clang-tools-extra/docs/clang-tidy/checks/misc coroutine-hostile-raii.rst const-correctness.rst

[clang-tidy][docs][NFC] Enforce 80 characters limit (3/N) (#167830)

Fix documentation in `hicpp`, `linuxkernel`, `llvm`, `llvmlibc`, `misc`
and `modernize`.

This is part of the codebase cleanup described in
https://github.com/llvm/llvm-project/issues/167098
DeltaFile
+17-9clang-tools-extra/docs/clang-tidy/checks/hicpp/explicit-conversions.rst
+13-11clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
+13-10clang-tools-extra/docs/clang-tidy/checks/modernize/use-emplace.rst
+12-11clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
+16-5clang-tools-extra/docs/clang-tidy/checks/modernize/replace-random-shuffle.rst
+8-8clang-tools-extra/docs/clang-tidy/checks/misc/header-include-cycle.rst
+79-5432 files not shown
+182-13138 files

LLVM/project c73870dclang-tools-extra/docs/clang-tidy/checks/cert msc50-cpp.rst err09-cpp.rst, clang-tools-extra/docs/clang-tidy/checks/clang-analyzer security.SetgidSetuidOrder.rst

[clang-tidy][docs][NFC] Enforce 80 characters limit (2/N) (#167632)

Fix documentation in `cert`, `clang-analyzer`, `concurrency`,
`cppcoreguidelines`, `darwin`, `fuchsia` and `google`.

This is part of the codebase cleanup described in
[#167098](https://github.com/llvm/llvm-project/issues/167098)
DeltaFile
+18-16clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
+7-6clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
+6-6clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-cstyle-cast.rst
+6-6clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
+5-5clang-tools-extra/docs/clang-tidy/checks/google/objc-global-variable-declaration.rst
+6-4clang-tools-extra/docs/clang-tidy/checks/cert/err09-cpp.rst
+48-4350 files not shown
+159-12656 files

LLVM/project bde9062compiler-rt/test lit.common.cfg.py

Reapply "[compiler-rt] Default to Lit's Internal Shell" (#168232)

This reverts commit 8cc49fb99a4798f67b6b70fabfd584095d022e92.

This was causing failures on two specific buildbots that have since been
fixed.
DeltaFile
+5-3compiler-rt/test/lit.common.cfg.py
+5-31 files

LLVM/project d68c71ellvm/tools/llc llc.cpp

[llc] Remove unused GetOutputStream params (#167949)

DeltaFile
+2-5llvm/tools/llc/llc.cpp
+2-51 files

LLVM/project 8240552compiler-rt/test/asan/TestCases/Linux allocator_oom_test.cpp

[compiler-rt] Update test to export variables instead of using env

To work around a bug in lit's internal test runner around ulimit.
Commands that use env to set environment variables for that command do
not have limits applied to them. This needs to be fixed, but for now we
can work around without degrading the readability of the test too much.
DeltaFile
+20-8compiler-rt/test/asan/TestCases/Linux/allocator_oom_test.cpp
+20-81 files

LLVM/project a1e523bclang/lib/CIR/CodeGen CIRGenExpr.cpp, clang/test/CIR/CodeGen vector-ext-element.cpp

[CIR] ExtVectorElementExpr with pointer to a vector (#168203)

Upstream ExtVectorElementExpr with a pointer to a vector
DeltaFile
+88-0clang/test/CIR/CodeGen/vector-ext-element.cpp
+8-3clang/lib/CIR/CodeGen/CIRGenExpr.cpp
+96-32 files

LLVM/project e26c371llvm/include/llvm/Support BranchProbability.h, llvm/lib/Support BranchProbability.cpp

[LoopPeel] Fix BFI when peeling last iteration without guard

LoopPeel sometimes proves that, when reached, the original loop always
executes at least two iterations.  LoopPeel then unconditionally
executes both the remaining loop's initial iteration and the peeled
final iteration.  But that increases the latter's frequency above its
frequency in the original loop.  To maintain the total frequency, this
patch compensates by decreasing the remaininng loop's latch
probability.

The is another step in issue #135812 and was discussed at
<https://github.com/llvm/llvm-project/pull/166858#discussion_r2528968542>.
DeltaFile
+87-0llvm/test/Transforms/LoopUnroll/branch-weights-freq/peel-last-iteration-no-guard.ll
+27-2llvm/lib/Transforms/Utils/LoopPeel.cpp
+3-6llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
+5-0llvm/lib/Support/BranchProbability.cpp
+3-0llvm/include/llvm/Support/BranchProbability.h
+125-85 files

LLVM/project 5ed26adllvm/utils/gn/secondary/llvm/lib/Target/AArch64 BUILD.gn, llvm/utils/gn/secondary/llvm/lib/Target/AArch64/Utils BUILD.gn

[gn build] Port 17408f70d1bf
DeltaFile
+1-4llvm/utils/gn/secondary/llvm/lib/Target/AArch64/Utils/BUILD.gn
+1-0llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
+2-42 files

LLVM/project 17408f7llvm/lib/Target/AArch64 AArch64SMEAttributes.h AArch64SMEAttributes.cpp, llvm/lib/Target/AArch64/Utils AArch64SMEAttributes.h AArch64SMEAttributes.cpp

[AArch64] Move AArch64SMEAttributes out of Utils library to fix layering. NFC (#168236)

The AArch64 MCTargetDesc library links the Utils library. The
AArch64SMEAttributes.cpp/h requires the Core library and includes files
from AArch64's CodeGen library. These are layering violations.

The MCTargetDesc doesn't need anything from AArch64SMEAttributes.cpp/h
so the easiest fix is to move them to the CodeGen library.

We should probably merge the remaining files in Utils into MCTargetDesc.
DeltaFile
+221-0llvm/lib/Target/AArch64/AArch64SMEAttributes.h
+0-221llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
+145-0llvm/lib/Target/AArch64/AArch64SMEAttributes.cpp
+0-145llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
+1-1llvm/lib/Target/AArch64/AArch64FastISel.cpp
+1-1llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
+368-3689 files not shown
+376-37715 files

LLVM/project 62e590dpolly/lib/Support RegisterPasses.cpp

Silence unused warning
DeltaFile
+0-16polly/lib/Support/RegisterPasses.cpp
+0-161 files

LLVM/project edbf9e4mlir/lib/Dialect/Bufferization/Transforms OneShotAnalysis.cpp

[mlir] Remove a redundant cast (NFC) (#168241)

llvm::all_of already returns bool.

Identified with readability-redundant-casting.
DeltaFile
+1-1mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
+1-11 files

LLVM/project 019e90fllvm/include/llvm/ADT DenseMap.h

[ADT] Group public functions in DenseMap.h (NFC) (#168239)

This patch groups public functions, including the constructors, the
destructor, and the copy/move assignment operators.
DeltaFile
+21-25llvm/include/llvm/ADT/DenseMap.h
+21-251 files

LLVM/project 324e92bpolly/include/polly ScopPass.h, polly/lib/Analysis ScopPass.cpp

[Polly] Remove ScopPass infrastructure
DeltaFile
+0-264polly/include/polly/ScopPass.h
+0-134polly/lib/Analysis/ScopPass.cpp
+3-113polly/lib/Support/RegisterPasses.cpp
+0-66polly/unittests/ScopPassManager/PassManagerTest.cpp
+0-44polly/lib/Support/PollyPasses.def
+0-43polly/lib/Transform/DeLICM.cpp
+3-66437 files not shown
+53-1,16143 files

LLVM/project 6cedafbllvm/lib/Target/X86 X86ISelLowering.cpp, llvm/test/CodeGen/X86 vselect.ll

X86: Handle poison in buildFromShuffleMostly (#168218)

DeltaFile
+3-3llvm/test/CodeGen/X86/vselect.ll
+2-2llvm/lib/Target/X86/X86ISelLowering.cpp
+5-52 files

LLVM/project e009de2llvm/lib/Transforms/Vectorize LoopVectorize.cpp VPlanPatternMatch.h

[LV] Use VPlan pattern matching in adjustRecipesForReductions (NFC)

Replace the assert checking if CurrentLinkI is a CmpInst with a pattern
matching check in the if condition. This uses VPlan-level pattern matching
instead of inspecting the underlying instruction type.
DeltaFile
+1-4llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+4-0llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
+5-42 files

LLVM/project d831f8dllvm/lib/CodeGen/SelectionDAG LegalizeVectorOps.cpp LegalizeVectorTypes.cpp, llvm/test/CodeGen/AArch64 loop-dependence-mask-ccmp.ll alias_mask.ll

[SelectionDAG] Fix AArch64 machine verifier bug when expanding LOOP_DEPENDENCE_MASK (#168221)

TargetConstant nodes don't match TableGen ImmLeaf patterns during
instruction selection. When this zero constant flows into the AArch64
CCMP formation code, the machine verifier hits an assertion in expensive
checks.

Fixes: #168227
DeltaFile
+45-0llvm/test/CodeGen/AArch64/loop-dependence-mask-ccmp.ll
+4-6llvm/test/CodeGen/AArch64/alias_mask.ll
+1-1llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
+1-1llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
+51-84 files

LLVM/project f5b7376mlir/include/mlir/Dialect/MemRef/IR MemRefBase.td, mlir/lib/Dialect/MemRef/IR MemRefMemorySlot.cpp CMakeLists.txt

[mlir][MemRef] Add UB as a dependent dialect and use `ub.poison` for Mem2Reg (#168066)

This patch adds `ub` as a dependent dialect to `memref`, and uses
`ub.poison` as the default value in `AllocaOp::getDefaultValue` for the
mem2reg pass.

This aligns the behavior of `mem2reg` with LLVM, where loading a value
before having a value should be poison.

---------

Signed-off-by: Fabian Mora <fabian.mora-cordero at amd.com>
DeltaFile
+2-17mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
+8-1mlir/include/mlir/Dialect/MemRef/IR/MemRefBase.td
+1-1mlir/test/Dialect/MemRef/mem2reg.mlir
+1-0mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
+1-0mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
+13-195 files

LLVM/project f210fc1clang/lib/Sema SemaChecking.cpp, clang/test/AST/ByteCode builtin-functions.cpp

[Clang] Add __builtin_bswapg (#162433)

Add a new builtin function __builtin_bswapg. It works on any integral
types that has a multiple of 16 bits as well as a single byte.

Closes #160266
DeltaFile
+230-0clang/test/SemaCXX/builtin-bswapg.cpp
+56-0clang/test/CodeGenCXX/builtins.cpp
+41-1clang/test/CodeGen/builtins.c
+37-0clang/lib/Sema/SemaChecking.cpp
+33-0clang/test/AST/ByteCode/builtin-functions.cpp
+22-0clang/test/Sema/constant-builtins-2.c
+419-17 files not shown
+457-713 files