LLVM/project d0bb1a7 — llvm/lib/Analysis ValueTracking.cpp

fixup! [ValueTracking] Support Array and Structure in contains* check
DeltaFile
+1-1llvm/lib/Analysis/ValueTracking.cpp
+1-11 files

LLVM/project a02e6b0 — libcxx/docs TestingLibcxx.md ImplementationDefinedBehavior.md, libcxx/docs/DesignDocs UnspecifiedBehaviorRandomization.md VisibilityMacros.md

[libc++][docs] Clean up Markdown conversion artifacts
DeltaFile
+43-43libcxx/docs/DesignDocs/UniquePtrTrivialAbi.md
+29-29libcxx/docs/UserDocumentation.md
+14-14libcxx/docs/DesignDocs/VisibilityMacros.md
+4-5libcxx/docs/ImplementationDefinedBehavior.md
+4-4libcxx/docs/TestingLibcxx.md
+1-1libcxx/docs/DesignDocs/UnspecifiedBehaviorRandomization.md
+95-966 files

LLVM/project 5e5f69b —

[libc++][docs] Continue generated docs rewrite after dependency update
DeltaFile
+0-00 files

LLVM/project fa7a8e8 — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,725 files not shown
+297,318-146,3495,731 files

LLVM/project b9a28b2 —

[libc++][docs] Continue generated docs rename after dependency update
DeltaFile
+0-00 files

LLVM/project 70df14c —

[libc++][docs] Continue batch 2 rewrite after dependency update
DeltaFile
+0-00 files

LLVM/project ad1217d — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,720 files not shown
+296,638-146,4415,726 files

LLVM/project 30c9c94 —

[libc++][docs] Continue batch 2 rename after dependency update
DeltaFile
+0-00 files

LLVM/project 6cff1c5 — llvm/lib/Transforms/Vectorize/SLPVectorizer SLPUtils.cpp, llvm/test/Transforms/SLPVectorizer/X86 extracted-subfields-shifted-trunc.ll

[SLP]Look through truncation of shifted extracted sub-fields

The masked sub-field of the shifted truncation of a wider scalar was
matched with the truncation as its source, while the other fields
matched the scalar itself, so the gather of the fields was rejected.
The field is within the truncated bits, look through the truncation.

Fixes #74380

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/226803
DeltaFile
+2-12llvm/test/Transforms/SLPVectorizer/X86/extracted-subfields-shifted-trunc.ll
+4-1llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
+6-132 files

LLVM/project 852385a — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,725 files not shown
+297,319-146,3485,731 files

LLVM/project 0c755b2 — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,720 files not shown
+296,640-146,4435,726 files

LLVM/project 2c9e9ef — libcxx/include/__chrono duration.h, llvm/lib/Target/Hexagon HexagonConstPropagation.cpp

Reconcile squash-merged dependency
DeltaFile
+61-0llvm/test/Transforms/SLPVectorizer/X86/extracted-subfields-shifted-trunc.ll
+0-6llvm/tools/dsymutil/DwarfLinkerForBinary.h
+0-4llvm/tools/llvm-cov/CodeCoverage.cpp
+1-3llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
+2-2libcxx/include/__chrono/duration.h
+0-3llvm/tools/llvm-objdump/WasmDump.h
+64-187 files not shown
+69-3013 files

LLVM/project 61b428e — libcxx/docs CodingGuidelines.md ABIGuarantees.md, libcxx/docs/DesignDocs ExperimentalFeatures.md FileTimeType.md

[libc++][docs] Convert documentation from reST to Markdown (batch 1) (#221513)

This is the first batch of changes to migrate libc++ documentation from
rst to markdown.

I use a local pixel diff tool to compare the rendered HTML, and all
diffs seem like fixes. They tend to fall into the following categories:

- dashed bullet lists were previously not rendered, but now they are
- extra indentation interpreted as blockquotes has been removed
- single backticks are now codefont spans, not italic spans

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This is a stacked PR based on #221512, which will be a standalone commit
that

    [82 lines not shown]
DeltaFile
+607-614libcxx/docs/DesignDocs/AtomicDesign.md
+270-292libcxx/docs/DesignDocs/FileTimeType.md
+144-154libcxx/docs/Contributing.md
+138-147libcxx/docs/ABIGuarantees.md
+118-138libcxx/docs/DesignDocs/ExperimentalFeatures.md
+101-116libcxx/docs/CodingGuidelines.md
+1,378-1,46110 files not shown
+1,579-1,69616 files

LLVM/project 0f5a125 — libcxx/docs Contributing.rst Contributing.md, libcxx/docs/DesignDocs FileTimeType.rst FileTimeType.md

[libc++][docs] Rename documentation files to Markdown (batch 1) (#221512)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.
DeltaFile
+0-797libcxx/docs/DesignDocs/AtomicDesign.rst
+797-0libcxx/docs/DesignDocs/AtomicDesign.md
+0-495libcxx/docs/DesignDocs/FileTimeType.rst
+495-0libcxx/docs/DesignDocs/FileTimeType.md
+0-335libcxx/docs/Contributing.rst
+335-0libcxx/docs/Contributing.md
+1,627-1,62725 files not shown
+2,868-2,86831 files

LLVM/project 1345a4f — llvm/test/Transforms/SLPVectorizer/X86 extracted-subfields-shifted-trunc.ll

[SLP][NFC]Add an extra test witj missing vectorization, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/226802
DeltaFile
+61-0llvm/test/Transforms/SLPVectorizer/X86/extracted-subfields-shifted-trunc.ll
+61-01 files

LLVM/project 0b401e8 — llvm/lib/Target/Hexagon HexagonConstPropagation.cpp, llvm/lib/Target/PowerPC PPC.h

[llvm] Remove declarations without definitions (NFC) (#226764)

HexagonConstEvaluator::evaluateHexVector2: Added on July 28, 2016 in
commit 167d918225ecd05a63f6b8d449c317feda741e18 without a definition or
any callers.

initializePPCExpandISELPass: The definition and caller were removed on
August 27, 2024 in commit 8e901c255df45e38cb1d69a576804029e20868bf.

dsymutil::DwarfLinkerForBinary::createStreamer: The definition and
caller were removed on April 1, 2023 in commit
36f351098cd50809658493d9b2e22a795874bab0 (when the non-template
declaration in DwarfLinkerForBinary.h was replaced with a template
declaration without a definition).

exportCoverageDataToJson: The definition and caller were replaced with
CoverageExporterJson on January 4, 2018 in commit
1ef3a778ac47564aa5a7f04bbf572d22d1c616fb.


    [13 lines not shown]
DeltaFile
+0-6llvm/tools/dsymutil/DwarfLinkerForBinary.h
+0-4llvm/tools/llvm-cov/CodeCoverage.cpp
+1-3llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
+0-3llvm/tools/llvm-objdump/WasmDump.h
+0-3llvm/tools/llvm-objdump/ELFDump.h
+1-2llvm/lib/Target/PowerPC/PPC.h
+2-213 files not shown
+2-269 files

LLVM/project 68e9547 — libcxx/docs Contributing.md CodingGuidelines.md, libcxx/docs/Contributing ReleaseProcedure.md PostMeetingProcedure.md

[libc++][docs] Clean up Markdown conversion artifacts
DeltaFile
+6-6libcxx/docs/DesignDocs/FeatureTestMacros.md
+1-1libcxx/docs/Contributing/ReleaseProcedure.md
+1-1libcxx/docs/Contributing/PostMeetingProcedure.md
+1-1libcxx/docs/Contributing/NewStandardProcedure.md
+1-1libcxx/docs/Contributing.md
+1-1libcxx/docs/CodingGuidelines.md
+11-112 files not shown
+13-138 files

LLVM/project 49087de — llvm/include/llvm/IR Constant.h, llvm/lib/IR Constants.cpp

fixup! [ValueTracking] Support Array and Structure in contains* check
DeltaFile
+6-3llvm/lib/IR/Constants.cpp
+3-3llvm/include/llvm/IR/Constant.h
+9-62 files

LLVM/project 14df65f — libcxx/include/__chrono duration.h, libcxx/test/std/time years.pass.cpp months.pass.cpp

[libc++][chrono] Fix years/months periods on GCC/i386 (#223669)

`static_cast<int>(365.2425 * 60 * 60 * 24)`, added in
f537b4e51822b19780386e0575ff95e82f8ec445, isn't exactly 31556952 on
every host: GCC targeting i386 folds it in x87 extended precision and
gets 31556951, making `years::period` and `months::period` coprime and
breaking `year_month` arithmetic.

Use the literal values instead, there's no readability to lose since
they were only there to avoid a template instantiation in the first
place.

Signed-off-by: Leonidas Spyropoulos <artafinde at archlinux.org>
DeltaFile
+2-2libcxx/include/__chrono/duration.h
+2-1libcxx/test/std/time/years.pass.cpp
+2-1libcxx/test/std/time/months.pass.cpp
+6-43 files

LLVM/project f20a801 — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,680 files not shown
+293,828-143,5525,686 files

LLVM/project 6c611dd — llvm/test/CodeGen/AMDGPU global_atomics_scan_fsub.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-masked-scatter.ll fixed-vectors-masked-gather.ll

Merge cascade
DeltaFile
+6,086-6,026llvm/test/CodeGen/RISCV/rvv/expandload.ll
+4,817-5,217llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
+4,903-4,925llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,559-5,003llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
+3,913-3,252llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
+3,098-2,506llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
+27,376-26,9295,680 files not shown
+293,828-143,5535,686 files

LLVM/project 9b13054 — libcxx/docs CMakeLists.txt, libcxx/docs/DesignDocs FileTimeType.md

[libc++][docs] Address Markdown conversion review feedback
DeltaFile
+0-3libcxx/docs/CMakeLists.txt
+1-1libcxx/docs/DesignDocs/FileTimeType.md
+1-42 files

LLVM/project a9407d5 — libcxx/include/__ostream print.h

[libc++] Port #200996 to ostream (#226372)

Reduces the time to compile a TU with just `#include <ostream>` from
254.7 ms ± 3.0 ms to 227.7 ms ± 2.1 ms on my system (-std=c++23, -O2,
arm64 macOS).

See #195466 for details. Without this, the call is evaluated when the
template is parsed, which evaluates format_string's consteval
constructor for "\n" in every translation unit that includes <ostream>,
even if nothing calls println().

No behavior change.
DeltaFile
+2-2libcxx/include/__ostream/print.h
+2-21 files

LLVM/project 6b51046 — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 narrowed-reduction-gathered-leftover-leaf.ll

[SLP]Fix erasing gathered leftover narrowed reduction leaves

A leftover narrowed reduction leaf, only gathered in the tree, loses all
users once the tree scalars are erased and is swept as a dead operand,
though the reduction epilogue still uses it. Keep such values alive.

Fixes https://github.com/llvm/llvm-project/pull/224919#issuecomment-5855368565

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/226782
DeltaFile
+106-0llvm/test/Transforms/SLPVectorizer/X86/narrowed-reduction-gathered-leftover-leaf.ll
+16-6llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+122-62 files

LLVM/project 68fddbb — llvm/lib/CodeGen/SelectionDAG LegalizeTypes.h LegalizeVectorTypes.cpp, llvm/test/CodeGen/AArch64 lowmaskedlanes.ll

[DAG] Scalarise trivial splat operations (#226257)

This fixes an issue reported on #224255, where a single active lane
masked store is converted to a v1f16 extract_subvector, which becomes a
v1f16 splat, which fails to scalarize. Add the necessary trivial
scalarisation of the splat by using the f16 input operand.

(I was originally going to fix this by generating a scalar f16 extract
directly (which would have the benefit of treating f16 as legal), but
that seems to cause a regression in 2 x86 tests).
DeltaFile
+11-0llvm/test/CodeGen/AArch64/lowmaskedlanes.ll
+6-3llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
+1-1llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
+18-43 files

LLVM/project 57630fd — clang/test/CodeGen/AArch64/sve addv.c, clang/test/CodeGen/AArch64/sve-intrinsics acle_sve_addv.c

[clang][CIR] Add tests for SVE ADDV intrinsics (#225648)

This adds CIR tests for `svaddv` (plain SVE) intrinsics following the
task description in
[223963](https://github.com/llvm/llvm-project/issues/223963).

Moves and adapts `sve-intrinsics/acle_sve_addv.c` to `sve/addv.c`.
DeltaFile
+0-206clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_addv.c
+205-0clang/test/CodeGen/AArch64/sve/addv.c
+205-2062 files

LLVM/project 6909c17 — llvm/lib/Transforms/Scalar ConstraintElimination.cpp, llvm/test/Transforms/ConstraintElimination analysis-invalidation.ll

[ConstraintElim] Don't request SCEV if there are no loops. (NFC) (#226736)

ConstraintElimination only uses SCEV when there are any loops. Don't
request the analysis if there are no loops.

This reduces compile-time a bit (more for workloads with large number of
functions w/o loops):

stage1-O3: -0.03%
stage1-ReleaseThinLTO: -0.04%
stage1-ReleaseLTO-g: -0.02%
stage1-aarch64-O3: -0.03%
stage2-O3: -0.04%
stage2-clang: -0.09%


https://llvm-compile-time-tracker.com/compare.php?from=899d817c7950c997402cd229935cd822acf45b08&to=c4453240417d8705b0752c3feda8d02365f8175c&stat=instructions:u

PR: https://github.com/llvm/llvm-project/pull/226736
DeltaFile
+13-11llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
+3-6llvm/test/Transforms/ConstraintElimination/analysis-invalidation.ll
+16-172 files

LLVM/project 719341a — llvm/include/llvm/Analysis TargetTransformInfoImpl.h TargetTransformInfo.h, llvm/include/llvm/CodeGen BasicTTIImpl.h

[TTI] Provide conservative legality + costs for @llvm.speculative.load. (#180036)

Add TTI support for @llvm.speculative.load, including cost and legaltiy
checking support.

The initial implementation for AArch64 checks if the loaded type is
<= 16 bytes, and only considers such cases legal due to MTE.

PR: 
https://github.com/llvm/llvm-project/pull/180036


Depends on https://github.com/llvm/llvm-project/pull/179642
DeltaFile
+40-30llvm/test/Analysis/CostModel/AArch64/speculative-load.ll
+12-0llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+11-0llvm/include/llvm/CodeGen/BasicTTIImpl.h
+5-5llvm/test/Analysis/CostModel/X86/speculative-load.ll
+6-0llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
+6-0llvm/include/llvm/Analysis/TargetTransformInfo.h
+80-352 files not shown
+88-358 files

LLVM/project dfde6ac — clang-tools-extra/clang-tidy/bugprone RedundantBranchConditionCheck.cpp, clang-tools-extra/docs ReleaseNotes.md

[clang-tidy] Fix redundant-branch-condition false positive in loops (#225827)

Fixes #205685.

`bugprone-redundant-branch-condition` decides whether the condition
variable changes between the outer and inner `if` by comparing source
positions. When a loop sits between the two, a mutation that comes after
the inner `if` in the source still runs before the inner condition is
evaluated again on the next iteration, so the check reports a redundant
condition that isn't, and the fix-it changes behavior.

The fix walks the parents of the inner `if` up to the outer `if` and
finds the outermost enclosing loop. If the variable is mutated anywhere
in that loop, the check does not warn. This follows NagyDonat's
suggestion in the issue: the existing check already covers mutations
between the outer condition and the loop, so only the loop itself needs
the extra query. The walk passes through declarations, so an inner `if`
inside a lambda stored in a variable is handled too, and it stops at the
enclosing function. I chose a syntactic walk instead of the CFG

    [21 lines not shown]
DeltaFile
+164-0clang-tools-extra/test/clang-tidy/checkers/bugprone/redundant-branch-condition.cpp
+34-0clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
+5-0clang-tools-extra/docs/ReleaseNotes.md
+203-03 files

LLVM/project 80b46c9 — clang/test/CIR/CodeGenBuiltins builtin-nondeterministic-value.c

[CIR][NFC] Add vector of boolean test to __builtin_nondeterministic_value (#219550)

Assisted-by: grok-4.6
Signed-off-by: Letu Ren <fantasquex at gmail.com>
DeltaFile
+13-5clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c
+13-51 files