LLVM/project 2893aa5libc/src/__support/math cos.h

[libc][math] Fix -Wshadow warnings in cos.h (#196342)

cos() does `using namespace range_reduction_double_internal;` and
range_reduction_double_internal after 51e9430a0c767 contains

    using LIBC_NAMESPACE::fputil::DoubleDouble;
    using Float128 = LIBC_NAMESPACE::fputil::DyadicFloat<128>;

So the local using statements for DoubleDouble and Float128 shadowed
these. Just remove the local using statements.

No behavior change.
DeltaFile
+0-2libc/src/__support/math/cos.h
+0-21 files

LLVM/project 93c1336libc/src/__support/File file.cpp, libc/src/__support/File/linux file.cpp

[libc] Move a few -Wshadow warnings in __support/File (#196810)

No behavior change.
DeltaFile
+5-5libc/src/__support/File/file.cpp
+1-1libc/src/__support/File/linux/file.cpp
+6-62 files

LLVM/project 865465dutils/bazel/llvm-project-overlay/clang BUILD.bazel

[Bazel] Fixes 2f4c387 (#196822)

This fixes 2f4c387147f1617e242dd500960410728e5ec35e.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
DeltaFile
+2-0utils/bazel/llvm-project-overlay/clang/BUILD.bazel
+2-01 files

LLVM/project dd23e41clang-tools-extra/clang-tidy/modernize UseTrailingReturnTypeCheck.cpp UseTrailingReturnTypeCheck.h

[clang-tidy][NFC] Move `ClassifiedToken` to cpp file (#196820)

`ClassifiedToken` is used in only the implementation of
`UseTrailingReturnTypeCheck`. Move it into the unnamed namespace of the
cpp file instead of it being in the header.
DeltaFile
+10-0clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
+0-6clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.h
+10-62 files

LLVM/project b50027fllvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/PhaseOrdering/AArch64 reduce_submuladd.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+140-76llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
+137-42llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
+31-98llvm/test/Transforms/PhaseOrdering/AArch64/reduce_submuladd.ll
+44-56llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
+24-60llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll
+65-14llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+441-34631 files not shown
+645-68337 files

LLVM/project 232aa78clang-tools-extra/clang-tidy/modernize UseTrailingReturnTypeCheck.cpp UseTrailingReturnTypeCheck.h

[clang-tidy] Move `ClassifiedToken` to cpp file

`ClassifiedToken` is used in only the implementation of `UseTrailingReturnTypeCheck`. Move it into the unnamed namespace of the cpp file instead of it being in the header.
DeltaFile
+10-0clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
+0-6clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.h
+10-62 files

LLVM/project 10f9417clang/lib/CodeGen CoverageMappingGen.cpp, clang/test/CoverageMapping system_macro_switch.cpp

[Coverage] Fix assertion failure when a -isystem header invokes a user macro (#195427)

```
  // a.cc
  static void foo(int x) {
    switch (x) {
  #define GENERIC(n) case n:
  #include "types.def"   // -isystem header invokes a user macro
      break;
    }
  }

  // sys/types.def
  #define MID(name) GENERIC(name)
  MID(0)
  MID(1)
  MID(2)
```


    [17 lines not shown]
DeltaFile
+42-0clang/test/CoverageMapping/system_macro_switch.cpp
+16-11clang/lib/CodeGen/CoverageMappingGen.cpp
+58-112 files

LLVM/project 2f4c387llvm/include/llvm/Support Hash.h, llvm/include/llvm/Transforms/Utils KCFIHash.h

Move KCFI type ID hash helpers out of LLVMSupport (#196784)

PR #167254 inappropriately introduced llvm/Support/Hash.{h,cpp} for the
KCFI helpers. The name is misleading — it has nothing to do with the
generic hashing facility in llvm/ADT/Hashing.h — and KCFI is a
CodeGen/IR feature that does not belong in the foundational Support
layer.

Move the files to llvm/lib/Transforms/Utils/KCFIHash.cpp, alongside
setKCFIType, which is the only existing KCFI helper in TransformUtils.

Also relocate the deprecated pre-xxh3 xxHash64 implementation into
KCFIHash.cpp, the sole user. clang/test/CodeGen/kcfi-generalize.c and
kcfi-normalize.c are end-to-end regression tests for the xxHash64 output
DeltaFile
+142-0llvm/lib/Transforms/Utils/KCFIHash.cpp
+0-75llvm/lib/Support/xxhash.cpp
+0-54llvm/lib/Support/Hash.cpp
+37-0llvm/include/llvm/Transforms/Utils/KCFIHash.h
+0-37llvm/include/llvm/Support/Hash.h
+0-12llvm/unittests/Support/xxhashTest.cpp
+179-1786 files not shown
+183-18812 files

LLVM/project 285ac8clibcxx/utils/ci run-buildbot

[libcxx] Switch to check-runtimes for generic-llvm-libc (#196780)
DeltaFile
+1-13libcxx/utils/ci/run-buildbot
+1-131 files

LLVM/project dc2f9fellvm/lib/Transforms/InstCombine InstCombineLoadStoreAlloca.cpp, llvm/test/Transforms/InstCombine store.ll

[InstCombine] Fold constant byte stores to integer stores (#196740)

Byte constants are equivalent to integer constants when stored to
memory. Replacing them in store instructions reduces IR differences and
enables existing optimizations over integer constants.
DeltaFile
+111-0llvm/test/Transforms/InstCombine/store.ll
+7-0llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
+118-02 files

LLVM/project 7504f6aflang/include/flang/Semantics openmp-utils.h, flang/lib/Semantics openmp-utils.cpp check-omp-loop.cpp

[flang][OpenMP] Optionally get final symbol in Get(Argument|Object)Symbol

Originally these functions returned the ultimate symbol for the one
obtained from the argument or object. However, this may be somewhat
unintuitive/unexpected, so instead return the original symbol, and
add a flag to optionally return the ultimate one.
DeltaFile
+15-6flang/lib/Semantics/openmp-utils.cpp
+2-10flang/lib/Semantics/check-omp-loop.cpp
+6-6flang/lib/Semantics/check-omp-structure.cpp
+4-2flang/include/flang/Semantics/openmp-utils.h
+27-244 files

LLVM/project ea4e329llvm/lib/CodeGen/SelectionDAG LegalizeVectorOps.cpp, llvm/test/CodeGen/NVPTX f16x2-instructions.ll

[llvm][RISCV] Optimize fcopysign for fixed vectors (#193802)

vfsgnj is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFCOPYSIGN already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
DeltaFile
+61-144llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
+169-30llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-sdnode.ll
+38-128llvm/test/CodeGen/Thumb2/mve-fmath.ll
+20-4llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
+288-3064 files

LLVM/project 7cc1f32llvm/lib/CodeGen/SelectionDAG LegalizeVectorOps.cpp, llvm/test/CodeGen/ARM vfloatintrinsics.ll

[llvm][RISCV] Optimize fabs for fixed vectors (#194554)

vfabs is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFABS already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
DeltaFile
+174-35llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfabs-sdnode.ll
+29-43llvm/test/CodeGen/Thumb2/mve-vabd.ll
+10-32llvm/test/CodeGen/Thumb2/mve-fp-negabs.ll
+9-27llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
+20-4llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
+2-2llvm/test/CodeGen/ARM/vfloatintrinsics.ll
+244-1436 files

LLVM/project 8730fb7llvm/lib/CodeGen/SelectionDAG LegalizeVectorOps.cpp, llvm/test/CodeGen/NVPTX f16-instructions.ll

[llvm][RISCV] Optimize fneg for fixed vectors (#194555)

vfneg is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFNEG already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
DeltaFile
+162-35llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfneg-sdnode.ll
+14-33llvm/test/CodeGen/Thumb2/mve-fp-negabs.ll
+20-4llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
+1-2llvm/test/CodeGen/NVPTX/f16-instructions.ll
+197-744 files

LLVM/project 9c95f37clang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen/AArch64 neon-perm.c

[CIR][AArch64] Lower NEON vuzp intrinsics (#195591)

### Summary

part of : https://github.com/llvm/llvm-project/issues/185382

lower `vuzp` intrinsics in:
https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#unzip-elements

this is a follow up : https://github.com/llvm/llvm-project/pull/195527

Lower `NEON::BI__builtin_neon_vuzp_v` and
`NEON::BI__builtin_neon_vuzpq_v`in CIRGenBuiltinAArch64.cpp by porting
by porting the existing incubator
logic(clangir/clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp) : two
bitcasts on the input vectors,two rounds of cir.vec.shuffle generating
the deinterleave (even/odd) shuffle patterns with indices 2*i+vi, each
stored via ptr_stride on the sret base pointer.
DeltaFile
+382-0clang/test/CodeGen/AArch64/neon/perm.c
+0-376clang/test/CodeGen/AArch64/neon-perm.c
+0-36clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_untyped.c
+20-2clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+402-4144 files

LLVM/project 02f78d0clang/lib/Interpreter IncrementalParser.h, clang/tools/libclang CIndexDiagnostic.h

[NFC] Fix C++23 build failures caused by incomplete types in `unique_ptr`
DeltaFile
+6-0llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+6-0llvm/lib/Target/BPF/BPFAsmPrinter.cpp
+1-4clang/lib/Interpreter/IncrementalParser.h
+2-2llvm/lib/Target/BPF/BPFAsmPrinter.h
+1-2clang/tools/libclang/CIndexDiagnostic.h
+2-1llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
+18-92 files not shown
+24-98 files

LLVM/project d0d40cfclang-tools-extra/clang-tidy/modernize UseStringViewCheck.cpp UseStringViewCheck.h, clang-tools-extra/docs/clang-tidy/checks/modernize use-string-view.rst

[clang-tidy] Reland "An option for conditional skipping overloaded functions in modernize-use-string-view" (#196387)
DeltaFile
+185-0clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-overloaded.cpp
+0-91clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.cpp
+10-0clang-tools-extra/docs/clang-tidy/checks/modernize/use-string-view.rst
+5-1clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.cpp
+3-2clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.h
+203-945 files

LLVM/project c74ecc9clang/lib/CodeGen CGBuiltin.cpp, llvm/include/llvm/IR IRBuilder.h

[IRBuilder] Split CreateAssumption to one with bundle and one with condition [NFC] (#196795)

as it is not possible to combine bundles and conditions from
https://github.com/llvm/llvm-project/pull/160460 reflect that in
CreateAssumption
DeltaFile
+14-15llvm/lib/IR/IRBuilder.cpp
+7-6llvm/include/llvm/IR/IRBuilder.h
+2-4llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+1-1clang/lib/CodeGen/CGBuiltin.cpp
+24-264 files

LLVM/project 2162c16clang-tools-extra/clang-tidy/bugprone UnhandledCodePathsCheck.cpp, clang-tools-extra/clang-tidy/hicpp MultiwayPathsCoveredCheck.cpp

[clang-tidy] Rename hicpp-multiway-paths-covered to bugprone-unhandled-code-paths (#191625)

Part of the work in https://github.com/llvm/llvm-project/issues/183462.

Closes https://github.com/llvm/llvm-project/issues/183464.

Splitting the check into two more focused checks was considered during
discussion, but since clang-tidy does not support one-to-many aliases, a
single name covering both behaviors was chosen instead that is more
clear than `multiway-paths-covered`.

---------

Co-authored-by: Zeyi Xu <mitchell.xu2 at gmail.com>
DeltaFile
+468-0clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-code-paths.cpp
+0-468clang-tools-extra/test/clang-tidy/checkers/hicpp/multiway-paths-covered.cpp
+0-175clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
+174-0clang-tools-extra/clang-tidy/bugprone/UnhandledCodePathsCheck.cpp
+3-93clang-tools-extra/docs/clang-tidy/checks/hicpp/multiway-paths-covered.rst
+95-0clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-code-paths.rst
+740-73610 files not shown
+855-84116 files

LLVM/project 6983aa7llvm/lib/Target/AArch64 AArch64InstrInfo.td AArch64ISelLowering.cpp, llvm/test/CodeGen/AArch64 store-float-conversion.ll tbl-loops.ll

[AArch64] Improve post-inc stores of SIMD/FP values (#151372)

Add patterns to match post-increment truncating stores from lane 0 of
wide integer vectors (v4i32/v2i64) to narrower types (i8/i16/i32). This
avoids transferring the value through a GPR when storing.

Also remove the pre-legaliztion early-exit in `combineStoreValueFPToInt`
as it prevented the optimization from applying in some cases.
DeltaFile
+260-0llvm/test/CodeGen/AArch64/store-float-conversion.ll
+7-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+0-3llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+1-2llvm/test/CodeGen/AArch64/tbl-loops.ll
+268-54 files

LLVM/project 8272f19flang/lib/Semantics rewrite-parse-tree.cpp

[flang] Format rewrite-parse-tree.cpp, NFC

It's a 4-line change that makes the file invariant under clang-format.
DeltaFile
+4-4flang/lib/Semantics/rewrite-parse-tree.cpp
+4-41 files

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

[flang][OpenMP] Consistent names for non-executable directives, NFC (#196803)

Change
  OpenMPGroupprivate      -> OmpGroupprivateDirective
  OpenMPThreadprivate     -> OmpThreadprivateDirective
  OpenMPRequiresConstruct -> OmpRequiresDirective
  OpenMPUtilityConstruct  -> OmpUtilityDirective
DeltaFile
+13-11flang/include/flang/Parser/parse-tree.h
+10-10flang/lib/Parser/openmp-parsers.cpp
+10-10flang/lib/Semantics/resolve-directives.cpp
+7-7flang/lib/Semantics/check-omp-structure.cpp
+9-4flang/lib/Semantics/unparse-with-symbols.cpp
+6-6flang/lib/Lower/OpenMP/OpenMP.cpp
+55-4814 files not shown
+97-8820 files

LLVM/project 0b98750llvm/utils/gn/secondary/clang/unittests/DependencyScanning BUILD.gn

[gn] Make ClangDependencyScanningTests depend on Testing/Support (#196809)

Needed after ebb9a79cd370c.
DeltaFile
+1-0llvm/utils/gn/secondary/clang/unittests/DependencyScanning/BUILD.gn
+1-01 files

LLVM/project b2f37f4clang/lib/Format ContinuationIndenter.cpp, clang/unittests/Format AlignmentTest.cpp

clang-format: ensure ternary operands are aligned (#196697)

Set ParentState::AlignedTo for ternary operands.
DeltaFile
+16-0clang/lib/Format/ContinuationIndenter.cpp
+10-0clang/unittests/Format/AlignmentTest.cpp
+26-02 files

LLVM/project e7ea212libc/src/__support freetrie.h

[libc] Fix -Wshadow warnings in freetrie.h (#196529)
DeltaFile
+2-2libc/src/__support/freetrie.h
+2-21 files

LLVM/project 2491cc2clang/docs ReleaseNotes.rst, clang/include/clang/Basic Builtins.td

[clang] constexpr `__builtin_elementwise_{max,min}num`
DeltaFile
+42-80clang/lib/AST/ByteCode/InterpBuiltin.cpp
+52-0clang/test/Sema/constant-builtins-vector.cpp
+18-30clang/lib/AST/ExprConstant.cpp
+2-2clang/include/clang/Basic/Builtins.td
+3-0clang/docs/ReleaseNotes.rst
+117-1125 files

LLVM/project ad92988llvm/lib/Target/X86 X86InstrCompiler.td X86ISelLowering.cpp, llvm/test/CodeGen/X86 atomic-load-store.ll

[X86] Cast atomic vectors in IR to support floats

This commit casts floats to ints in an atomic load during AtomicExpand to support
floating point types. It also is required to support 128 bit vectors in SSE/AVX.
DeltaFile
+98-288llvm/test/CodeGen/X86/atomic-load-store.ll
+15-0llvm/lib/Target/X86/X86InstrCompiler.td
+7-0llvm/lib/Target/X86/X86ISelLowering.cpp
+2-0llvm/lib/Target/X86/X86ISelLowering.h
+122-2884 files

LLVM/project a6344c0flang/include/flang/Parser parse-tree.h, flang/lib/Parser openmp-parsers.cpp

[flang][OpenMP] Consistent names for non-executable directives, NFC

Change
  OpenMPGroupprivate      -> OmpGroupprivateDirective
  OpenMPThreadprivate     -> OmpThreadprivateDirective
  OpenMPRequiresConstruct -> OmpRequiresDirective
  OpenMPUtilityConstruct  -> OmpUtilityDirective
DeltaFile
+13-11flang/include/flang/Parser/parse-tree.h
+10-10flang/lib/Parser/openmp-parsers.cpp
+10-10flang/lib/Semantics/resolve-directives.cpp
+7-7flang/lib/Semantics/check-omp-structure.cpp
+9-4flang/lib/Semantics/unparse-with-symbols.cpp
+6-6flang/lib/Semantics/check-omp-structure.h
+55-4814 files not shown
+97-8820 files

LLVM/project 3de25f5clang/include/clang/Analysis/Analyses/LifetimeSafety LifetimeSafety.h, clang/include/clang/Basic DiagnosticGroups.td DiagnosticSemaKinds.td

[LifetimeSafety] Warn on incorrectly placed `[[clang::lifetimebound]]` attributes (#196144)

Adds new warning that is emitted when parameter is marked as
`[[clang::lifetimebound]]` but is not returned in one way or another
(tracked via `OriginEscapeFact`).

Closes #182935
DeltaFile
+89-0clang/test/Sema/warn-lifetime-safety-lifetimebound.cpp
+27-12clang/lib/Sema/SemaLifetimeSafety.h
+24-3clang/lib/Analysis/LifetimeSafety/Checker.cpp
+10-2clang/include/clang/Basic/DiagnosticGroups.td
+5-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+4-0clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
+159-171 files not shown
+160-177 files

LLVM/project 2b26355llvm/lib/Transforms/Vectorize VectorCombine.cpp, llvm/test/Transforms/PhaseOrdering/X86 horizontal-reduce-smax.ll horizontal-reduce-smin.ll

Revert "[VectorCombine] foldShuffleChainsToReduce - add support for partial vector reductions" (#196796)

Reverts llvm/llvm-project#195119 while reported assertions are investigated.
DeltaFile
+0-50llvm/test/Transforms/VectorCombine/fold-shuffle-chains-to-reduce.ll
+32-8llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-smax.ll
+32-8llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-smin.ll
+32-8llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-umax.ll
+32-8llvm/test/Transforms/PhaseOrdering/X86/horizontal-reduce-umin.ll
+6-33llvm/lib/Transforms/Vectorize/VectorCombine.cpp
+134-1156 files