LLVM/project f932646llvm/lib/Transforms/Utils Local.cpp, llvm/test/Transforms/SimplifyCFG branch-weight-overflow.ll

[SimplifyCFG][PGO] Add missing overflow check to ConstantFoldTerminator (#178964)

Branch weight metadata can overflow when folding large branch weights.
Updated branch weights to uint64_t, added check for overflow, and then
set branch weights using setFittedBranchWeights to ensure branch weight
metadata is not lost.
DeltaFile
+51-0llvm/test/Transforms/SimplifyCFG/branch-weight-overflow.ll
+8-4llvm/lib/Transforms/Utils/Local.cpp
+59-42 files

LLVM/project 690aa65mlir/lib/Dialect/Shape/IR Shape.cpp, mlir/test/Dialect/Shape canonicalize.mlir

[mlir][shape] Fix crash in ShapeOfOpToConstShapeOp (#180737)

This PR fixes a crash when `shape.shape_of` op has static arg and shape
result type. Fixes #180719.
DeltaFile
+10-4mlir/lib/Dialect/Shape/IR/Shape.cpp
+10-0mlir/test/Dialect/Shape/canonicalize.mlir
+20-42 files

LLVM/project 0aa4a01mlir/lib/Dialect/SparseTensor/IR SparseTensorDialect.cpp, mlir/test/Dialect/SparseTensor invalid.mlir

[mlir][sparse] Fix a crash if block not have terminator (#180741)

This PR fixes a crash in `verifyNumBlockArgs` if region not end with a
terminator. Fixes #180720.
DeltaFile
+14-0mlir/test/Dialect/SparseTensor/invalid.mlir
+6-1mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
+20-12 files

LLVM/project 1a45b52clang-tools-extra/clang-doc Generators.cpp Generators.h, clang-tools-extra/clang-doc/tool ClangDocMain.cpp

[clang-doc] Apply modernize-use-string-view to the code (#180332)

DeltaFile
+2-2clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+1-1clang-tools-extra/clang-doc/Generators.cpp
+1-1clang-tools-extra/clang-doc/Generators.h
+4-43 files

LLVM/project 91224e3libc/config config.json, libc/config/baremetal config.json

[libc] Disable math exceptions for baremetal (#180863)

To further save code size for baremetal builds, disable math function
exceptions.
DeltaFile
+1-1libc/config/baremetal/config.json
+1-1libc/config/config.json
+2-22 files

LLVM/project 7e734daclang/lib/CodeGen CGBuiltin.cpp, clang/test/CodeGen math-builtins-long.c builtins.c

Clang: Add nsz to llvm.minnum and llvm.maxnum emitted from fmin and fmax (#113133)

See: https://github.com/llvm/llvm-project/pull/112852

We will define llvm.minnum and llvm.maxnum with +0.0>-0.0, by default,
while libc doesn't require it.
DeltaFile
+40-40clang/test/Headers/__clang_hip_math.hip
+12-12clang/test/CodeGen/RISCV/math-builtins.c
+14-8clang/lib/CodeGen/CGBuiltin.cpp
+8-8clang/test/CodeGen/math-builtins-long.c
+6-6clang/test/CodeGen/builtins.c
+6-2clang/test/Headers/nvptx_device_math_complex.cpp
+86-763 files not shown
+98-849 files

LLVM/project 0f6ee50clang/lib/CIR/CodeGen CIRGenBuiltin.cpp CIRGenBuiltinX86.cpp, clang/test/CIR/CodeGenBuiltins builtins-elementwise.c

[CIR][X86] Add support for vpshl/vpshr builtins (#179538)

This patch also adds support for fshl/fshr operations so that
vpshl/vpshr intrinsics can lower to them
Part of: #167765
DeltaFile
+401-0clang/test/CIR/CodeGenBuiltins/X86/avx512vbmi2-builtins.c
+87-0clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
+17-2clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
+9-4clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
+514-64 files

LLVM/project 0c884aautils/bazel/llvm-project-overlay/clang/unittests BUILD.bazel

[FlowSensitive] [StatusOr] Add test fixture target to Bazel (#180302)

This can be used to make sure downstream extensions to the model still
pass the unit tests.
DeltaFile
+29-0utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
+29-01 files

LLVM/project 0e72620llvm/lib/CodeGen ExpandIRInsts.cpp, llvm/test/CodeGen/AMDGPU div_v2i128.ll div_i128.ll

[CodeGen] Expand power-of-2 div/rem at IR level in ExpandIRInsts.

Previously, power-of-2 div/rem operations wider than
MaxLegalDivRemBitWidth were excluded from IR expansion and left for
backend peephole optimizations. Some backends can fail to process such
instructions in case we switch off DAGCombiner.

Now ExpandIRInsts expands them into shift/mask sequences:
- udiv X, 2^C  ->  lshr X, C
- urem X, 2^C  ->  and X, (2^C - 1)
- sdiv X, 2^C  ->  bias adjustment + ashr X, C
- srem X, 2^C  ->  X - (((X + Bias) >> C) << C)

Special cases handled:
- Division/remainder by 1 or -1 (identity, negation, or zero)
- Exact division (sdiv exact skips bias, produces ashr exact)
- Negative power-of-2 divisors (result is negated)
- INT_MIN divisor (correct via countr_zero on bit pattern)
DeltaFile
+69-1,283llvm/test/CodeGen/AMDGPU/div_v2i128.ll
+55-93llvm/test/CodeGen/X86/div_i129_v_pow2k.ll
+148-0llvm/test/Transforms/ExpandIRInsts/X86/sdiv129.ll
+125-8llvm/lib/CodeGen/ExpandIRInsts.cpp
+115-0llvm/test/Transforms/ExpandIRInsts/X86/srem129.ll
+20-49llvm/test/CodeGen/AMDGPU/div_i128.ll
+532-1,4334 files not shown
+645-1,46310 files

LLVM/project 7952896mlir/include/mlir/Dialect/OpenACC OpenACCOps.td OpenACCCGOps.td, mlir/lib/Dialect/OpenACC/IR OpenACC.cpp

[mlir][acc] Fixed side effects for [first]private/reduction. (#180791)

This patch moves the definitions of memory effects for the data
entry/exit operations into C++ code. The main reason for this
is to modify the effects of [first]private and reduction
operations: they should not access `CurrentDeviceIdResource`
when they are located inside a compute construct.

The ODS to C++ migration was done with AI assistance. I reviewed
these changes and made sure it was an NFC change. After that
I modified [first]private and reduction implementations.
DeltaFile
+264-0mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
+79-85mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
+5-4mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
+348-893 files

LLVM/project ac1220flibc/cmake/modules LLVMLibCCompileOptionRules.cmake, libc/config config.json

[libc] Add option to disable printf bit int (#180832)

Requested as a binary size optimization. Updates the parser, converter
utils, config, tests, and docs.
DeltaFile
+15-1libc/src/stdio/printf_core/core_structs.h
+7-1libc/docs/dev/printf_behavior.rst
+6-0libc/src/stdio/printf_core/parser.h
+4-1libc/config/config.json
+4-1libc/config/baremetal/config.json
+4-0libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
+40-46 files not shown
+52-412 files

LLVM/project 59bcec2llvm/include/llvm/CAS OnDiskKeyValueDB.h, llvm/lib/CAS OnDiskKeyValueDB.cpp UnifiedOnDiskCache.cpp

[llvm][cas] Validate OnDiskKeyValueDB against the corresponding OnDiskGraphDB (#180852)

We were previously using the primary OnDiskGraphDB when validating the
upstream OnDiskKeyValueDB, which is incorrect since the values being
stored are direct offsets and therefore cannot be used across DBs
without translating to a hash value first.

rdar://170067863
DeltaFile
+23-7llvm/lib/CAS/OnDiskKeyValueDB.cpp
+1-14llvm/lib/CAS/UnifiedOnDiskCache.cpp
+1-7llvm/unittests/CAS/OnDiskKeyValueDBTest.cpp
+2-5llvm/include/llvm/CAS/OnDiskKeyValueDB.h
+7-0llvm/test/tools/llvm-cas/validation.test
+1-5llvm/lib/CAS/ActionCaches.cpp
+35-386 files

LLVM/project dc5ab0flibc/shared/math powf.h, libc/src/__support/math powf.h CMakeLists.txt

[libc][math] Refactor powf to Header Only. (#176531)

closes : https://github.com/llvm/llvm-project/issues/176517
DeltaFile
+1,041-0libc/src/__support/math/powf.h
+2-1,017libc/src/math/generic/powf.cpp
+22-10utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+23-0libc/shared/math/powf.h
+19-0libc/src/__support/math/CMakeLists.txt
+1-12libc/src/math/generic/CMakeLists.txt
+1,108-1,0393 files not shown
+1,111-1,0399 files

LLVM/project 90d49d3lldb/include/lldb/Utility UUID.h, lldb/unittests/Utility UUIDTest.cpp

[lldb] Implement DenseMapInfo for UUID (#180854)

Implement DenseMapInfo for UUID so that we can use UUIDs as keys in
DenseMap and DenseSet.
DeltaFile
+41-0lldb/unittests/Utility/UUIDTest.cpp
+22-0lldb/include/lldb/Utility/UUID.h
+63-02 files

LLVM/project 246f187clang Maintainers.md Maintainers.rst, clang/docs CMakeLists.txt Maintainers.md

[docs] Move Maintainers.rst to Maintainers.md in preparation to reformat

This change intentionally produces malformatted documentation, and is
only present to ensure git detects the file rename for blame purposes.
DeltaFile
+405-0clang/Maintainers.md
+0-405clang/Maintainers.rst
+2-2llvm/docs/Contributing.rst
+1-1clang/docs/CMakeLists.txt
+1-0clang/docs/Maintainers.md
+0-1clang/docs/Maintainers.rst
+409-4096 files

LLVM/project 44f2484clang Maintainers.md, clang/docs Maintainers.md

[clang] Convert Maintainers.md from rst to markdown

I link-ified the github usernames as well, and tried to match the LLVM
maintainer file formatting.

This move may cause issues with CMake incremental builds, but this can
be fixed by deleting the entire build director, or if you prefer to be
more targetted, just `build/tools/clang/docs`, since that will have a
stale Maintainers.rst file otherwise.
DeltaFile
+229-277clang/Maintainers.md
+2-1clang/docs/Maintainers.md
+231-2782 files

LLVM/project d8487e4libc/shared/math pow.h, libc/src/__support/math pow.h CMakeLists.txt

[libc][math] Refactor pow to Header Only. (#176529)

closes : #176516
DeltaFile
+545-0libc/src/__support/math/pow.h
+2-521libc/src/math/generic/pow.cpp
+20-5utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+23-0libc/shared/math/pow.h
+20-0libc/src/__support/math/CMakeLists.txt
+2-12libc/src/math/generic/CMakeLists.txt
+612-5383 files not shown
+615-5389 files

LLVM/project b62a97alibc/shared/math log2f.h, libc/src/__support/math log2f.h CMakeLists.txt

[libc][math] Refactor log2f to Header Only. (#176527)

closes : #176514
DeltaFile
+133-0libc/src/__support/math/log2f.h
+2-111libc/src/math/generic/log2f.cpp
+23-0libc/shared/math/log2f.h
+15-5utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+14-0libc/src/__support/math/CMakeLists.txt
+1-7libc/src/math/generic/CMakeLists.txt
+188-1233 files not shown
+191-1239 files

LLVM/project f80e3b3bolt/include/bolt/Core BinaryFunction.h BinaryContext.h, bolt/lib/Core BinaryContext.cpp BinaryFunction.cpp

[BOLT] Keep folded functions in BinaryFunctions map. NFC (#180392)

In relocation mode, keep folded functions in the BinaryFunctions map
instead of erasing them. Mark them as folded using setFolded() and skip
emitting them.
DeltaFile
+22-29bolt/lib/Core/BinaryContext.cpp
+25-18bolt/lib/Core/BinaryFunction.cpp
+13-7bolt/lib/Passes/PatchEntries.cpp
+12-0bolt/lib/Rewrite/RewriteInstance.cpp
+3-0bolt/include/bolt/Core/BinaryFunction.h
+0-3bolt/include/bolt/Core/BinaryContext.h
+75-576 files

LLVM/project 1794c31lld/include/lld/Common TargetOptionsCommandFlags.h, llvm/lib/LTO LTO.cpp

Fix formatting
DeltaFile
+10-5llvm/lib/LTO/LTO.cpp
+1-1lld/include/lld/Common/TargetOptionsCommandFlags.h
+11-62 files

LLVM/project a276e00llvm/lib/LTO LTOBackend.cpp

Restore static API name in LTOBackend.cpp
DeltaFile
+5-5llvm/lib/LTO/LTOBackend.cpp
+5-51 files

LLVM/project 54b0c8cllvm/include/llvm/LTO LTO.h, llvm/lib/LTO LTO.cpp

Plumb the Triple through runThinLTO APIs
DeltaFile
+12-26llvm/lib/LTO/LTO.cpp
+1-1llvm/include/llvm/LTO/LTO.h
+13-272 files

LLVM/project c65a046llvm/lib/Transforms/InstCombine InstCombineAddSub.cpp, llvm/test/Transforms/InstCombine zext-bool-add-sub.ll

[InstCombine][profcheck] Fix missing profdata for zext/sext transform and update tests
DeltaFile
+0-49llvm/utils/profcheck-xfail.txt
+8-12llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+1-1llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
+9-623 files

LLVM/project fb2feballvm/lib/Transforms/InstCombine InstCombineAddSub.cpp, llvm/test/Transforms/InstCombine zext-bool-add-sub.ll

[InstCombine][profcheck] Fix missing profdata for zext transform.
DeltaFile
+17-4llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+9-5llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
+0-1llvm/utils/profcheck-xfail.txt
+26-103 files

LLVM/project 6ecba1cllvm/lib/Transforms/InstCombine InstCombineSelect.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in symmetric select folding
DeltaFile
+6-3llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+0-1llvm/utils/profcheck-xfail.txt
+6-42 files

LLVM/project 7cda2dallvm/lib/Transforms/InstCombine InstCombineSelect.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in select factorization folding
DeltaFile
+12-12llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+0-1llvm/utils/profcheck-xfail.txt
+12-132 files

LLVM/project d4c225fllvm/lib/Transforms/InstCombine InstCombineSelect.cpp InstCombineAndOrXor.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in logical op creation and select folding
DeltaFile
+12-0llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+8-2llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+0-1llvm/utils/profcheck-xfail.txt
+20-33 files

LLVM/project 26fc9f2llvm/lib/Transforms/InstCombine InstCombineCalls.cpp InstCombineSelect.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in clamp folds and fix verifier errors
DeltaFile
+18-5llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+5-4llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+0-1llvm/utils/profcheck-xfail.txt
+23-103 files

LLVM/project ac89664llvm/lib/Transforms/InstCombine InstCombineSelect.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in nested select folding
DeltaFile
+6-2llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+1-1llvm/utils/profcheck-xfail.txt
+7-32 files

LLVM/project 5aa88acllvm/lib/Transforms/InstCombine InstCombineShifts.cpp InstCombineAddSub.cpp, llvm/utils profcheck-xfail.txt

InstCombine: Propagate profile metadata in shift-of-select folding
DeltaFile
+8-2llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
+3-0llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+2-1llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
+0-1llvm/utils/profcheck-xfail.txt
+13-44 files