LLVM/project 8f2f1a6libclc/clc/lib/generic/math clc_sincos_helpers.inc clc_sincos_helpers_fp16.inc, libclc/test/math cos.cl

libclc: Fix UB in trig functions with nan inputs

The conversion to int is undefined if the source value is a nan.
DeltaFile
+33-29libclc/test/math/cos.cl
+2-1libclc/clc/lib/generic/math/clc_sincos_helpers.inc
+2-1libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
+2-1libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
+2-1libclc/clc/lib/generic/math/clc_trigpi_helpers.inc
+2-0libclc/clc/lib/generic/math/clc_trigpi_helpers.cl
+43-331 files not shown
+44-337 files

LLVM/project 350c2d8llvm/unittests/Target/AMDGPU GCNRegPressureTest.cpp

[AMDGPU] Fix `GCNRegPressureTest`'s super-class to ensure proper target initialization (#211030)

The typo made it so that all tests in the file would be skipped if no
other testsuite explicitly initialized the AMDGPU target (for example
when running `./unittests/Target/AMDGPU/AMDGPUTests
--gtest_filter=GCNRegPressureTest.*`). `AMDGPUCodeGenTestBase`
initializes the target so tests always run as long as LLVM is built with
the AMDGPU target.
DeltaFile
+1-1llvm/unittests/Target/AMDGPU/GCNRegPressureTest.cpp
+1-11 files

LLVM/project 9b362c7utils/bazel/llvm-project-overlay/llvm/include/llvm/Config llvm-config.h

[bazel] Only set LLVM_ENABLE_DIA_SDK in bazel build defs to zero if not set by build args (#210723)

Windows lldb build support via bazel is still a work in progress.
LLVM_ENABLE_DIA_SDK enables windows specific functionality. With it
hard-coded to 0 here, an override via build args via buck2 (internally
at Meta) of
'-DLLVM_ENABLE_DIA_SDK=1' had no effect. So modify this set of
configurations to allow that build arg to take precedence while avoiding
a larger amount of changes for windows/bazel lldb support (for now).

As cannot build with bazel locally, I will rely on CI to confirm lint
and building.
DeltaFile
+4-1utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
+4-11 files

LLVM/project cc31bb5llvm/lib/Transforms/Vectorize/SandboxVectorizer Scheduler.cpp, llvm/unittests/Transforms/Vectorize/SandboxVectorizer SchedulerTest.cpp

[SBVec] Refill ready list during topdown scheduling

Visit nodes which are ready according to the direction of scheduling.
DeltaFile
+44-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp
+9-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
+53-32 files

LLVM/project e959a28mlir/lib/Dialect/OpenACC/Transforms ACCRoutineToGPUFunc.cpp, mlir/test/Dialect/OpenACC acc-cg-to-gpu-bound-routine-call.mlir

[mlir][openacc] Do not erase acc routine information early (#210813)

acc routine information is used in ACCCGToGPU to compute parallelism. If
the info is missing, predicated region might be wrong and lead to
deadlock.

Just keep them in ACCRountineToGPUFunc and they will be cleaned up later
in the pipeline.
DeltaFile
+28-0mlir/test/Dialect/OpenACC/acc-cg-to-gpu-bound-routine-call.mlir
+0-2mlir/lib/Dialect/OpenACC/Transforms/ACCRoutineToGPUFunc.cpp
+28-22 files

LLVM/project fd8d9d5.github/workflows libcxx-build-and-test.yaml

[libc++] Target the release runners set from the LLVM 23 release branch
DeltaFile
+3-3.github/workflows/libcxx-build-and-test.yaml
+3-31 files

LLVM/project db494cc.github/workflows release-binaries.yml release-binaries-all.yml

workflows: Add missing checkouts when using validate-release-version (#210471)

We need to make sure all composite workflows we use are checked out
manually from th egit repo.

(cherry picked from commit 429c88d37f1f02e68ebc1fc7b0da4511ce6407e3)
DeltaFile
+5-5.github/workflows/release-binaries.yml
+7-0.github/workflows/release-binaries-all.yml
+12-52 files

FreeBSD/ports 52f8a8amath/saga/files patch-src_tools_io_io__webservices_soilgrids.cpp

math/saga: Fix nullptr error

saga-gis/src/tools/io/io_webservices/soilgrids.cpp:433:57: error:
invalid operands to binary expression ('bool' and 'std::nullptr_t')
         bResult = Get_Variable(Variable, Distribution, Layer) != NULL;

The upstream fix will be released with the next bugfix version.

Reported by:    package builders
DeltaFile
+11-0math/saga/files/patch-src_tools_io_io__webservices_soilgrids.cpp
+11-01 files

LLVM/project c991dbdllvm/include/llvm/Analysis MemorySSAUpdater.h, llvm/lib/Analysis MemorySSAUpdater.cpp

[MemorySSA] Make getPreviousDef iterative to avoid stack overflow (#205159)

MemorySSAUpdater::getPreviousDefRecursive walked the CFG
predecessor-first
using native recursion (mutually recursive with getPreviousDefFromEnd).
On
functions with very deep control flow - e.g. long chains of blocks
produced
by large auto-generated kernels/shaders - the recursion depth scales
with the
number of blocks and can overflow the native stack.

Rewrite the walk as an explicit worklist of frames on the heap. Each
frame
tracks the block being processed and a resume stage so a child block's
result
can be folded back into its parent, exactly mirroring the previous
recursive
control flow. Behaviour is otherwise unchanged: cache lookups,

    [13 lines not shown]
DeltaFile
+203-88llvm/lib/Analysis/MemorySSAUpdater.cpp
+48-0llvm/unittests/Analysis/MemorySSATest.cpp
+1-1llvm/include/llvm/Analysis/MemorySSAUpdater.h
+252-893 files

LLVM/project ac5aea3llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/Target/AMDGPU/AsmParser AMDGPUAsmParser.cpp

AMDGPU: Validate processor and features in TargetID parsing (#209304)

TargetID::parseTargetIDString previously only checked that the string
was structurally a 4-component triple followed by a processor field. It
accepted unrecognized processors and silently ignored malformed or
unsupported feature modifiers. Work towards improving validation so in
the future clang's copy of TargetID can be replaced.

Co-authored-by: Claude (Opus 4.8)
DeltaFile
+112-46llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+109-0llvm/unittests/TargetParser/TargetParserTest.cpp
+19-2llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+7-3llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+5-3llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
+3-2llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+255-561 files not shown
+258-577 files

OpenBSD/ports rfjOzMameta/tor-browser Makefile, www/tor-browser Makefile.inc

   Tor Browser: update to 15.0.19
VersionDeltaFile
1.118.2.5+6-6www/tor-browser/browser/distinfo
1.67.2.5+2-2www/tor-browser/noscript/distinfo
1.124.2.5+2-2meta/tor-browser/Makefile
1.121.2.5+1-1www/tor-browser/Makefile.inc
1.197.2.5+1-1www/tor-browser/browser/Makefile
1.74.2.5+1-1www/tor-browser/noscript/Makefile
+13-136 files

OpenBSD/ports pfmDCBnmeta/tor-browser Makefile, www/tor-browser Makefile.inc

   Tor Browser: update to 15.0.19
VersionDeltaFile
1.128+6-6www/tor-browser/browser/distinfo
1.133+2-2meta/tor-browser/Makefile
1.74+2-2www/tor-browser/noscript/distinfo
1.130+1-1www/tor-browser/Makefile.inc
1.81+1-1www/tor-browser/noscript/Makefile
1.207+1-1www/tor-browser/browser/Makefile
+13-136 files

LLVM/project 5c57127llvm/test/CodeGen/AMDGPU peephole-fold-imm.mir

add bad pseudo_scalar_trans_restriction test
DeltaFile
+14-0llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
+14-01 files

LLVM/project 0f398c5mlir/lib/Dialect/SparseTensor/IR SparseTensorDialect.cpp, mlir/lib/Dialect/SparseTensor/Transforms/Utils CodegenUtils.cpp CodegenUtils.h

[mlir][SparseTensor] Reject sparse encoding on non-primary types (#209591)

SparseTensorConversion rewrite patterns assume element types are valid
primary types, but the dialect does not actually enforce this
restriction. This change makes it so that sparse tensor encodings
gracefully reject invalid primary types by verifying the encoding.

Closes #202787
Supersedes and closes #208913
DeltaFile
+80-80mlir/test/Dialect/SparseTensor/vectorize_reduction.mlir
+98-1mlir/test/Dialect/SparseTensor/conversion_invalid.mlir
+22-22mlir/test/Dialect/SparseTensor/constant_index_map.mlir
+14-0mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
+0-12mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
+0-5mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
+214-1202 files not shown
+218-1238 files

OpenBSD/ports 18Pki8awww/gitea Makefile

   add NOT_FOR_ARCHS, no longer builds on i386 and unlikely on 32-bit arm

   # gitea.dev/vendor/modernc.org/sqlite/lib
   vendor/modernc.org/sqlite/lib/sqlite.go:161:15: undefined: TBitvec
   vendor/modernc.org/sqlite/lib/sqlite.go:165:17: undefined: TBtCursor
   vendor/modernc.org/sqlite/lib/sqlite.go:173:21: undefined: TBtreePayload
   vendor/modernc.org/sqlite/lib/sqlite.go:428:18: undefined: TCallCount
   [..]
VersionDeltaFile
1.142+3-0www/gitea/Makefile
+3-01 files

OpenZFS/src 484229atests/zfs-tests/tests Makefile.am

ZTS: ensure zfs_channel_program_support test is installed

Sponsored-by: TrueNAS
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Signed-off-by: Rob Norris <rob.norris at truenas.com>
Closes #18836
DeltaFile
+1-0tests/zfs-tests/tests/Makefile.am
+1-01 files

LLVM/project 5b1fa37clang/lib/StaticAnalyzer/Core RegionStore.cpp ExprEngine.cpp, clang/test/Analysis issue-210183.cpp initializer.cpp

[analyzer] Fix crash in RegionStoreManager::bindArray from constructor array-to-pointer decay (#210649)

ProcessInitializer() strips implicit casts from a CXXCtorInitializer's
init expression via IgnoreImplicit(), then decides whether to treat the
initializer as a direct array-to-array member copy by checking
Init->getType()->isArrayType(). For a pointer member initialized via
array-to-pointer decay of a reference-to-array constructor parameter
(e.g. `Foo(T (&arr)[N]) : ptr_(arr) {}`), IgnoreImplicit() strips the
ArrayToPointerDecay cast, exposing the underlying array-typed
expression, so this check misfires even though the field itself is a
pointer, not an array. That branch fetches the raw region address of the
whole array, bypassing the normal decay logic (which produces an
ElementRegion), so the pointer member ends up holding the address of the
whole array typed as the array itself, instead of an ElementRegion at
index 0.

Later, dereferencing and storing through that mistyped pointer routes
into RegionStoreManager::bindArray() (instead of bindScalar()), which
unconditionally casts its Init value to nonloc::CompoundVal, asserting

    [35 lines not shown]
DeltaFile
+34-0clang/test/Analysis/issue-210183.cpp
+9-1clang/lib/StaticAnalyzer/Core/RegionStore.cpp
+3-5clang/test/Analysis/initializer.cpp
+1-1clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
+47-74 files

LLVM/project 1982236mlir/lib/Analysis/Presburger IntegerRelation.cpp, mlir/unittests/Analysis/Presburger IntegerRelationTest.cpp

[mlir][Analysis][Presburger] Remove redundant local vars after composition (#211023)

Call `removeRedundantLocalVars()` at the end of
`IntegerRelation::compose` to simplify existential constraints generated
when projecting out intermediate dimensions.

Removing redundant local vars also happens in
`IntegerRelation::mergeAndCompose` and `FlatAffineRelation::compose`.

When composing A->B with B->C, intermediate vars B are converted to
local existential variables. When performing multiple compositions, this
causes bloat of existential variables that impact later performance,
bounds checks, and emptiness checks.

Signed-off-by: Asra Ali <asraa at google.com>
DeltaFile
+19-0mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
+3-0mlir/lib/Analysis/Presburger/IntegerRelation.cpp
+22-02 files

LLVM/project a252743libc/utils/MPFRWrapper MPCommon.h

guard for LD
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files

LLVM/project f931df6libc/shared/math ceilf128.h, libc/src/__support/math ceilf128.h

formatting
DeltaFile
+2-2libc/test/shared/shared_math_test.cpp
+1-1libc/shared/math/ceilf128.h
+1-1libc/src/__support/math/ceilf128.h
+1-1libc/src/math/ceilf128.h
+1-1libc/src/math/generic/ceilf128.cpp
+1-1libc/test/src/math/ceilf128_test.cpp
+7-76 files

LLVM/project d4b0934libc/test/shared shared_math_constexpr_test.cpp, libc/test/src/math/smoke ceilf128_test.cpp

chore: format
DeltaFile
+5-5libc/utils/MPFRWrapper/MPFRUtils.cpp
+4-4libc/utils/MPFRWrapper/MPCommon.h
+2-3libc/test/shared/shared_math_constexpr_test.cpp
+1-1libc/test/src/math/smoke/ceilf128_test.cpp
+1-1libc/utils/MPFRWrapper/MPCommon.cpp
+13-145 files

LLVM/project 00877d0libc/utils/MPFRWrapper MPCommon.h

add template for Float128 separately
DeltaFile
+12-1libc/utils/MPFRWrapper/MPCommon.h
+12-11 files

LLVM/project 8b5cd24libc/utils/MPFRWrapper MPCommon.h

non-native mpfr_get_float128
DeltaFile
+5-0libc/utils/MPFRWrapper/MPCommon.h
+5-01 files

LLVM/project 57f6894libc/utils/MPFRWrapper CMakeLists.txt MPCommon.cpp

test mpfr_get_float128
DeltaFile
+61-61libc/utils/MPFRWrapper/CMakeLists.txt
+1-1libc/utils/MPFRWrapper/MPCommon.cpp
+62-622 files

LLVM/project bc1ed1alibc/utils/MPFRWrapper MPCommon.h

nit
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files

LLVM/project adc56a5libc/utils/MPFRWrapper MPFRUtils.cpp

nit
DeltaFile
+13-0libc/utils/MPFRWrapper/MPFRUtils.cpp
+13-01 files

LLVM/project dfceb17libc/utils/MPFRWrapper MPCommon.h

nit
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files

LLVM/project ed7e695libc/utils/MPFRWrapper MPCommon.h

nits
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files

LLVM/project e203d40libc/utils/MPFRWrapper MPCommon.h

nits
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files

LLVM/project 96f9888libc/utils/MPFRWrapper MPCommon.h

nits
DeltaFile
+1-1libc/utils/MPFRWrapper/MPCommon.h
+1-11 files