LLVM/project 789ef89libcxx/utils/ci/docker linux-builder-base.dockerfile

[libcxx] Install ninja in CI container from system repo (#168225)

To fix the TODO now that the ninja version available in the Ubuntu
repositories (1.11) is new enough.
DeltaFile
+1-8libcxx/utils/ci/docker/linux-builder-base.dockerfile
+1-81 files

LLVM/project 97a60aallvm/include/llvm/CodeGen LiveIntervals.h LiveRegUnits.h, llvm/lib/CodeGen MachineLICM.cpp RDFRegisters.cpp

[CodeGen] Turn MCRegUnit into an enum class (NFC) (#167943)

This changes `MCRegUnit` type from `unsigned` to `enum class : unsigned`
and inserts necessary casts.
The added `MCRegUnitToIndex` functor is used with `SparseSet`,
`SparseMultiSet` and `IndexedMap` in a few places.

`MCRegUnit` is opaque to users, so it didn't seem worth making it a
full-fledged class like `Register`.

Static type checking has detected one issue in
`PrologueEpilogueInserter.cpp`, where `BitVector` created for
`MCRegister` is indexed by both `MCRegister` and `MCRegUnit`.

The number of casts could be reduced by using `IndexedMap` in more
places and/or adding a `BitVector` adaptor, but the number of casts *per
file* is still small and `IndexedMap` has limitations, so it didn't seem
worth the effort.

Pull Request: https://github.com/llvm/llvm-project/pull/167943
DeltaFile
+15-12llvm/lib/CodeGen/MachineLICM.cpp
+11-11llvm/lib/CodeGen/RDFRegisters.cpp
+12-9llvm/lib/CodeGen/ReachingDefAnalysis.cpp
+9-6llvm/include/llvm/CodeGen/LiveIntervals.h
+7-5llvm/lib/CodeGen/RegAllocFast.cpp
+6-6llvm/include/llvm/CodeGen/LiveRegUnits.h
+60-4923 files not shown
+144-10729 files

LLVM/project 6f3f108llvm/lib/Target/X86 X86ISelLowering.cpp, llvm/test/CodeGen/X86 vector-shift-shl-sub128.ll vector-mul.ll

[X86] LowerMUL - remove vXi8 UNPCK(BUILD_VECTOR,UNDEF) special case handling (#168277)

getUnpackl/h + shuffle combining can now handle this for us generically
DeltaFile
+12-12llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
+2-20llvm/lib/Target/X86/X86ISelLowering.cpp
+6-6llvm/test/CodeGen/X86/vector-mul.ll
+4-4llvm/test/CodeGen/X86/vector-shift-shl-128.ll
+4-4llvm/test/CodeGen/X86/vector-fshr-128.ll
+4-4llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
+32-503 files not shown
+39-579 files

LLVM/project 8a055f8llvm/test/CodeGen/AArch64 umin-sub-to-usubo-select-combine.ll, llvm/test/CodeGen/X86 umin-sub-to-usubo-select-combine.ll

[DAG] Add baseline test coverage for #161036 (#168278)

Baseline tests from #161651 that were reverted in #167854

Still missing test coverage for the ffmpeg regression failures
DeltaFile
+166-0llvm/test/CodeGen/X86/umin-sub-to-usubo-select-combine.ll
+158-0llvm/test/CodeGen/AArch64/umin-sub-to-usubo-select-combine.ll
+324-02 files

LLVM/project 180b59cclang/docs PointerAuthentication.rst BoundsSafety.rst

[clang] Proofread *.rst (#168215)

This patch is limited to single-word replacements to fix spelling
and/or grammar to ease the review process.  Punctuation and markdown
fixes are specifically excluded.
DeltaFile
+4-4clang/docs/PointerAuthentication.rst
+2-2clang/docs/BoundsSafety.rst
+2-2clang/docs/DataFlowSanitizerDesign.rst
+1-1clang/docs/SafeStack.rst
+1-1clang/docs/UsersManual.rst
+1-1clang/docs/JSONCompilationDatabase.rst
+11-1112 files not shown
+23-2318 files

LLVM/project e1e696dllvm/lib/Transforms/Scalar StraightLineStrengthReduce.cpp

[Scalar] Avoid repeated hash lookups (NFC) (#168217)

DeltaFile
+1-2llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
+1-21 files

LLVM/project ea0ecd6llvm/docs XRayFDRFormat.rst AMDGPUUsage.rst

[llvm] Proofread *.rst (#168254)

This patch is limited to hyphenation to ease the review process.
DeltaFile
+5-5llvm/docs/XRayFDRFormat.rst
+3-3llvm/docs/AMDGPUUsage.rst
+2-2llvm/docs/CodeGenerator.rst
+2-2llvm/docs/LangRef.rst
+1-1llvm/docs/SPIRVUsage.rst
+1-1llvm/docs/CommandLine.rst
+14-146 files

LLVM/project 7262c59llvm/lib/CAS OnDiskGraphDB.cpp

[CAS] Remove a redundant cast (NFC) (#168240)

D.Offset.get() already returns uint64_t.

Identified with readability-redundant-casting.
DeltaFile
+1-2llvm/lib/CAS/OnDiskGraphDB.cpp
+1-21 files

LLVM/project 688b190llvm/include/llvm/ADT DenseMap.h

[ADT] Simplify DenseMap::grow (NFC) (#168238)

This patch simplifies DenseMap::grow by reimplementing it in terms of
DenseMapBase::moveFrom.

Since moveFrom iterates over the bucket range, we don't need:

  if (!OldBuckets)

The old bucket array is released by the destructor on Tmp.

This patch removes moveFromOldBuckets as it's no longer used with this
patch.  moveFromImpl is "inlined" into moveFrom.
DeltaFile
+20-33llvm/include/llvm/ADT/DenseMap.h
+20-331 files

LLVM/project 2394eb1llvm/lib/TargetParser PPCTargetParser.cpp

[TargetParser] Avoid repeated hash lookups (NFC) (#168216)

DeltaFile
+5-2llvm/lib/TargetParser/PPCTargetParser.cpp
+5-21 files

LLVM/project e8cc0c3clang/docs ClangFormat.rst, clang/tools/clang-format ClangFormat.cpp git-clang-format

[clang-format]: Fix JSON casing (#168156)

This commit aligns the user clang-format output to always show JSON, not Json.
DeltaFile
+2-2clang/tools/clang-format/ClangFormat.cpp
+1-1clang/docs/ClangFormat.rst
+1-1clang/tools/clang-format/git-clang-format
+4-43 files

LLVM/project 47da0f1clang/test/CodeGen/X86 avx512bf16-builtins.c avx512vlbf16-builtins.c

[X86] Add experimental-new-constant-interpreter test coverage to BF16 intrinsics tests (#168274)

DeltaFile
+5-0clang/test/CodeGen/X86/avx512bf16-builtins.c
+5-0clang/test/CodeGen/X86/avx512vlbf16-builtins.c
+10-02 files

LLVM/project e5b9e80clang/test/Driver linker-wrapper-hip-no-rdc.c

[ClangLinkerWrapper] Fix test linker-wrapper-hip-no-rdc.c

https://github.com/llvm/llvm-project/pull/167918 broke buildbots:

https://lab.llvm.org/buildbot/#/builders/64/builds/6531
https://lab.llvm.org/buildbot/#/builders/108/builds/19881

with error:

# | clang: error: unable to execute command: posix_spawn failed: No such file or directory
# | clang: error: ld.lld command failed with exit code 1 (use -v to see invocation)

This is due to the test requiring lld but these buildbots do not build them.

Fix the lit test by adding REQUIRES: lld
DeltaFile
+1-0clang/test/Driver/linker-wrapper-hip-no-rdc.c
+1-01 files

LLVM/project e413343llvm/include/llvm/CodeGen SDNodeInfo.h, llvm/lib/CodeGen/SelectionDAG SDNodeInfo.cpp

[SelectionDAG] Verify SDTCisVT and SDTCVecEltisVT constraints (#150125)

Teach `SDNodeInfoEmitter` TableGen backend to process `SDTypeConstraint`
records and emit tables for them. The tables are used by
`SDNodeInfo::verifyNode()` to validate a node being created.

This PR only adds validation code for `SDTCisVT` and `SDTCVecEltisVT`
constraints to keep it smaller.

Pull Request: https://github.com/llvm/llvm-project/pull/150125
DeltaFile
+116-0llvm/lib/CodeGen/SelectionDAG/SDNodeInfo.cpp
+60-12llvm/utils/TableGen/SDNodeInfoEmitter.cpp
+61-0llvm/test/TableGen/SDNodeInfoEmitter/hw-mode.td
+22-18llvm/test/TableGen/SDNodeInfoEmitter/advanced.td
+8-29llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
+17-5llvm/include/llvm/CodeGen/SDNodeInfo.h
+284-6414 files not shown
+359-10720 files

LLVM/project b8059e7llvm/test/CodeGen/X86 midpoint-int-vec-256.ll midpoint-int-vec-128.ll

[X86] Avoid extra (PMADDUBSW(X,AND(Y)) in <X x i8> multiplication (#168262)

On SSSE3 targets we use PMADDUBSW of odd/even with suitable masking to
avoid having to extend/truncate with `<X x i16>` types and avoid
additional Port0/5 pressure.

However, lower i8 elements in the pair can safely use PMULLW directly
without any pre-masking as we will only use the lower i8 bits of the
result which is only affected by the lower i8 of the inputs.
DeltaFile
+147-177llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
+103-138llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
+101-120llvm/test/CodeGen/X86/pmul.ll
+46-60llvm/test/CodeGen/X86/min-legal-vector-width.ll
+31-33llvm/test/CodeGen/X86/gfni-shifts.ll
+17-20llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
+445-54818 files not shown
+522-62724 files

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