LLVM/project ffb7404clang-tools-extra/clangd/index SymbolID.h

[clangd] Add missing direct includes for bit.h. NFC (#202840)

This currently compile only because llvm/ADT/Hashing.h transitively
pulls in llvm/Support/SwapByteOrder.h (which includes llvm/ADT/bit.h).
DeltaFile
+1-0clang-tools-extra/clangd/index/SymbolID.h
+1-01 files

LLVM/project e7c7398compiler-rt/lib/lsan lsan_common.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.6-beta.1
DeltaFile
+3-0compiler-rt/lib/lsan/lsan_common.cpp
+3-01 files

LLVM/project fb2d670clang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

[CIR] Support zero-result ops in clangir TableGen lowering (#202273)

### summary 

This is follow-up to https://github.com/llvm/llvm-project/pull/199599

A CIR op can set the llvmOp field to have cir-tblgen auto-generate its
CIR→LLVM lowering instead of using a hand-written pattern.However, the
generated body forwards the result type via op.getType(), which only
compiles for single-result ops. As a result, ops with zero results could
not use this feature.

To fix this, teach CIRLoweringEmitter to emit an empty mlir::TypeRange{}
for zero-result ops. Then switch cir.lifetime.start and cir.lifetime.end
to use llvmOp (dropping their hand-written lowering). The lifetime.cir
test covers the generated path.
DeltaFile
+13-6clang/utils/TableGen/CIRLoweringEmitter.cpp
+0-15clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+2-0clang/include/clang/CIR/Dialect/IR/CIROps.td
+15-213 files

LLVM/project ef7d2c9llvm/utils/gn/secondary/llvm/tools/llvm-readtapi BUILD.gn

[gn] port 108b06f1797b3a6 (llvm-readtapi driver_executable) (#202826)
DeltaFile
+2-1llvm/utils/gn/secondary/llvm/tools/llvm-readtapi/BUILD.gn
+2-11 files

LLVM/project 0411e39llvm/lib/Analysis ScalarEvolution.cpp, llvm/unittests/Analysis ScalarEvolutionTest.cpp

[SCEV] Speed up forgetLoop by avoiding def-use walk for loop-header PHIs (#201572)

Every cached SCEV varies with Loop `L` transitively contains an
`AddRec`, and every `AddRec` for the loop is recorded in `LoopUsers[L]`.
`forgetMemoizedResults` already closes this set transitively through
`SCEVUsers` and `ExprValueMap`.
Therefore `forgetLoop` does not need to walk the def-use chain starting
from header PHIs, it only needs to initialize `ToForget` with
`LoopUsers[L]` and explicitly remove each header PHI's entries from
`ValueExprMap` and `ConstantEvolutionLoopExitValue`, push its cached
SCEVs into `ToForget`.
As a side effect, cached SCEVs that reside in the loop body but do not
depend on any `AddRec` for the loop (e.g. a `SCEVUnknown` for an icmp)
are no longer invalidated.
DeltaFile
+39-0llvm/unittests/Analysis/ScalarEvolutionTest.cpp
+6-16llvm/lib/Analysis/ScalarEvolution.cpp
+45-162 files

LLVM/project 3c21c3dclang/test/OffloadTools/clang-sycl-linker basic.ll triple.ll, clang/tools/clang-sycl-linker ClangSYCLLinker.cpp

[NFC][clang-sycl-linker] Standardize error messages to LLVM coding style (#202767)

Follow LLVM coding standards for error messages: use lowercase first
letter and no trailing period. This matches the style used throughout
LLVM tools (llvm-objcopy, lld, etc.) and aligns with the official
guidance in llvm/docs/CodingStandards.rst.

Updated corresponding test assertions in basic.ll and triple.ll.
DeltaFile
+12-12clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
+4-4clang/test/OffloadTools/clang-sycl-linker/basic.ll
+1-1clang/test/OffloadTools/clang-sycl-linker/triple.ll
+17-173 files

LLVM/project 350f485clang/include/clang/ScalableStaticAnalysisFramework/Core/Model EntityLinkage.h, clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary TUSummaryExtractor.cpp

[SSAF] Let function parameters inherit linkage from their parent functions (#201946)

SSAF treats parameters as entities and may not always associate them
back to their parent functions. Therefore, it needs to identify
parameters of functions with external linkage across different TUs.
Treating them as having no linkage (as in C++) causes the same parameter
in different TUs to be assigned different EntityIDs. As a result, the
behavior of the parameter across multiple TUs cannot be correlated.

rdar://178844032

---------

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>
DeltaFile
+62-0clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
+59-0clang/test/Analysis/Scalable/PointerFlow/external-inline-function-in-multi-tu.test
+18-0clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
+3-2clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.h
+142-24 files

LLVM/project 5e8d406llvm/test/CodeGen/RISCV clmul.ll clmulr.ll, llvm/test/CodeGen/RISCV/rvv clmulh-sdnode.ll clmul-sdnode.ll

[RISCV] Adopt SpacemitX60's scheduling model for `-mtune=generic` (#167008)

Per our discussions in RISC-V roundtable during LLVM Dev Meeting 2025,
there has been a consensus to create a base / generic scheduling model
for the most common performance tuning usages. As the first step, we
agree to use SpacemitX60's scheduling model for that purpose for the
time being, with an expectation to create a standalone generic model
that could evolve independently in the future.

This patch sets `-mtune=generic` to use SpacemitX60's scheduling model,
and documents the rationale behind it, including the roadmap ahead as we
discussed.
DeltaFile
+38,494-84,026llvm/test/CodeGen/RISCV/rvv/clmulh-sdnode.ll
+22,388-22,086llvm/test/CodeGen/RISCV/rvv/clmul-sdnode.ll
+19,087-24,391llvm/test/CodeGen/RISCV/clmul.ll
+10,473-12,572llvm/test/CodeGen/RISCV/clmulr.ll
+10,281-12,374llvm/test/CodeGen/RISCV/clmulh.ll
+8,361-8,920llvm/test/CodeGen/RISCV/rvv/expandload.ll
+109,084-164,369939 files not shown
+235,575-281,186945 files

LLVM/project ffa3c0allvm/lib/Transforms/Vectorize LoopVectorize.cpp LoopVectorizationPlanner.h, llvm/test/Transforms/LoopVectorize fold-epilogue-tail.ll

Patch 3: [LV] Add extra CM instace for EpilogueTF
DeltaFile
+87-29llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+47-0llvm/test/Transforms/LoopVectorize/AArch64/fold-epilogue-tail-costs.ll
+23-5llvm/test/Transforms/LoopVectorize/fold-epilogue-tail.ll
+5-5llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
+5-3llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+167-425 files

LLVM/project 87e5d38lld/MachO InputFiles.cpp, lld/test/MachO compact-unwind-local-label.s

[lld][MachO] Handle compact unwind entries with no matching symbol (#180009)

Context: This change is to support [MachO basic block hot-cold
splitting](https://discourse.llvm.org/t/rfc-support-fsplit-machine-functions-on-macho-arm64/89739)
- though it's presented below outside of this context.

Compact unwind entries can reference function addresses that have no
corresponding symbol in the object's symbol table (e.g. functions with
temporary local labels). Previously, this would trigger an assertion
failure in assert-enabled builds, or silently drop the unwind entry in
release builds, resulting in missing unwind info at runtime.

Fix this by synthesizing a local `Defined` symbol when no symbol exists
at the target address of a compact unwind entry, so that unwind info is
correctly emitted.

[Assisted-by](https://t.ly/Dkjjk): Cursor IDE + claude-opus-4.6-high +
gpt-5.2-xhigh
DeltaFile
+61-0lld/test/MachO/compact-unwind-local-label.s
+38-10lld/MachO/InputFiles.cpp
+99-102 files

LLVM/project 9f30981clang/include/clang/Driver OffloadBundler.h, clang/tools/clang-offload-bundler ClangOffloadBundler.cpp

[clang-offload-bundler] Convert `std::vector` to `llvm::SmallVector` in `OffloadBundlerConfig` (#192259)

Replace `std::vector<std::string>` with `llvm::SmallVector<std::string,
4>`
for TargetNames, InputFileNames, and OutputFileNames to avoid heap
allocation for small number of elements.
DeltaFile
+11-6clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
+4-5clang/include/clang/Driver/OffloadBundler.h
+15-112 files

LLVM/project e160695clang/lib/Sema HLSLExternalSemaSource.cpp SemaHLSL.cpp, clang/test/CodeGenHLSL/builtins InterlockedAdd.hlsl

[HLSL] Add InterlockedAdd HLSL functions (#195742)

This PR adds the `InterlockedAdd` function to HLSL.
For now, only integer references are accepted: resources passed as a
parameter, and this function as a member method to certain resources,
will be addressed in a separate PR.
Addresses https://github.com/llvm/llvm-project/issues/99122
Assisted by: Github Copilot
DeltaFile
+100-0clang/test/SemaHLSL/BuiltIns/InterlockedAdd-errors.hlsl
+77-0clang/lib/Sema/HLSLExternalSemaSource.cpp
+61-0clang/lib/Sema/SemaHLSL.cpp
+59-0clang/test/CodeGenHLSL/builtins/InterlockedAdd.hlsl
+52-0llvm/test/CodeGen/DirectX/InterlockedAdd.ll
+41-0llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll
+390-013 files not shown
+534-1119 files

LLVM/project c2d8fdfllvm/lib/Transforms/Vectorize LoopVectorize.cpp LoopVectorizationPlanner.h, llvm/test/Transforms/LoopVectorize fold-epilogue-tail.ll

Patch 3: [LV] Add extra CM instace for EpilogueTF
DeltaFile
+84-29llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+47-0llvm/test/Transforms/LoopVectorize/AArch64/fold-epilogue-tail-costs.ll
+23-5llvm/test/Transforms/LoopVectorize/fold-epilogue-tail.ll
+5-5llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
+5-3llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+164-425 files

LLVM/project 7483477llvm/lib/Transforms/Vectorize LoopVectorizationPlanner.h LoopVectorize.cpp

Patch 2: [LV][NFCI] Parameterize IAI instance for the Planner
DeltaFile
+3-7llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+4-3llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+7-102 files

LLVM/project d5f6086llvm/lib/Transforms/Vectorize LoopVectorize.cpp LoopVectorizationPlanner.h

Patch 1: [LV][NFCI] Parameterize CM instance for the Planner
DeltaFile
+57-48llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+30-20llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+87-682 files

LLVM/project 2350c1fllvm/unittests/Support/DynamicLibrary DynamicLibraryTest.cpp

[test][Support] Disable CFI-icall for DynamicLibrary Overload test (#202446) (#202684) (#202794)

The test performs manual symbol lookup and calls, which triggers
Control Flow Integrity indirect call checks.

Reland of #202446 and #202684 reverted with #202550 #202446.

Here we are going to use LLVM_NO_SANITIZE and check `__clang__`.
DeltaFile
+5-1llvm/unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
+5-11 files

LLVM/project be8f015flang/lib/Semantics resolve-names.cpp, flang/test/Semantics/OpenMP declare-target-resolve.f90

Add test and testcase for coarray
DeltaFile
+10-0flang/test/Semantics/OpenMP/declare-target-resolve.f90
+2-2flang/lib/Semantics/resolve-names.cpp
+12-22 files

LLVM/project 42df186bolt/include/bolt/Profile DataAggregator.h, bolt/lib/Profile DataAggregator.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.8-beta.1
DeltaFile
+24-4bolt/lib/Profile/DataAggregator.cpp
+1-0bolt/include/bolt/Profile/DataAggregator.h
+25-42 files

LLVM/project dfab397clang/include/clang/DependencyScanning DependencyScanningFilesystem.h, clang/lib/DependencyScanning DependencyScanningFilesystem.cpp

Revert "[clang][deps] Add in-flight query caching to `DependencyScanningFilesystemSharedCache`" (#202804)

Reverts llvm/llvm-project#199680

Causing a test failure on
https://lab.llvm.org/buildbot/#/builders/46/builds/36362.
DeltaFile
+150-147clang/lib/DependencyScanning/DependencyScanningFilesystem.cpp
+143-72clang/include/clang/DependencyScanning/DependencyScanningFilesystem.h
+0-211clang/unittests/DependencyScanning/DependencyScanningFilesystemTest.cpp
+13-56llvm/include/llvm/Support/VirtualFileSystem.h
+0-30llvm/unittests/Support/VirtualFileSystemTest.cpp
+26-0llvm/lib/Support/VirtualFileSystem.cpp
+332-5161 files not shown
+332-5187 files

LLVM/project 619148bclang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow PointerFlowTest.cpp, clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage UnsafeBufferUsageTest.cpp

- address comments
- CXXNewExpr is now supported so no longer good for robustness test. Use GNU statement expression instead.
DeltaFile
+5-8clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
+5-4clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
+10-122 files

LLVM/project 81cdb52lldb/source/Plugins/ObjectFile/Mach-O MachOTrie.h MachOTrie.cpp, lldb/unittests/ObjectFile/MachO MachOTrieTest.cpp

[lldb] Drop prefix & offset arguments in ParseTrieEntries (#202805)

I addressed Dave's review feedback locally but forgot to push the fix to
the PR branch. This removes the prefix and offset arguments from the
public API.
DeltaFile
+2-6lldb/source/Plugins/ObjectFile/Mach-O/MachOTrie.h
+3-4lldb/unittests/ObjectFile/MachO/MachOTrieTest.cpp
+3-2lldb/source/Plugins/ObjectFile/Mach-O/MachOTrie.cpp
+1-2lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+9-144 files

LLVM/project cf50b0clldb/docs/resources caveats.md

[lldb][docs] Drop stale Python 2 note from caveats page (NFC) (#202754)

Remove the Python 2 section from the caveats page. Python 2 has been
end-of-life since 2020 and is no longer shipped with current macOS, so
the xcrun guidance for it and the deprecation note are no longer useful.

As promised in #201256.
DeltaFile
+0-12lldb/docs/resources/caveats.md
+0-121 files

LLVM/project d9c79f6flang/lib/Semantics check-omp-structure.cpp check-omp-structure.h

[flang][OpenMP] Remove CheckSymbolName{,s}, NFC

These functions checked if each OmpObject had a symbol, and emitted
a diagnostic if not. Name not having a symbol is an internal compiler
error (at least now), and will be detected separately.

Remove these functions since they don't serve any purpose anymore.
DeltaFile
+1-38flang/lib/Semantics/check-omp-structure.cpp
+0-4flang/lib/Semantics/check-omp-structure.h
+1-422 files

LLVM/project 57782d4llvm/docs LangRef.md

Fix several migration artifacts

- Lines starting with `%` are markdown line comments. This comes up
  often when LLVM IR value names end up starting a new line in prose.
- Fix indentation in a few cases
- Use > prefix for intended block quote sections.
- Fix the VP section heading, the two-line "" heading underline wasn't
  caught in the initial migration.
DeltaFile
+76-76llvm/docs/LangRef.md
+76-761 files

LLVM/project d92c8f4llvm/lib/CodeGen Rematerializer.cpp

Add other missing include
DeltaFile
+1-0llvm/lib/CodeGen/Rematerializer.cpp
+1-01 files

LLVM/project fb1e4b1llvm/lib/Target/DirectX DXILPrepare.cpp DirectX.h, llvm/lib/Target/DirectX/DirectXIRPasses DXILAttributes.cpp DXILAttributes.h

[DirectX] Move getNonDXILAttributeMask to DirectXIRPasses (#202781)

DXILDebugInfo.cpp uses it and is part of DirectXIRPasses, but
DXILPrepare.cpp defined it and is part of DirectXCodeGen. DirectXCodeGen
has a dependency on DirectXIRPasses, so we cannot also add a dependency
from DirectXIRPasses back on DirectXCodeGen, and we need to move the
definition of getNonDXILAttributeMask() instead.

Fixes: #201336
DeltaFile
+77-0llvm/lib/Target/DirectX/DirectXIRPasses/DXILAttributes.cpp
+1-64llvm/lib/Target/DirectX/DXILPrepare.cpp
+22-0llvm/lib/Target/DirectX/DirectXIRPasses/DXILAttributes.h
+0-4llvm/lib/Target/DirectX/DirectX.h
+1-1llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
+1-0llvm/lib/Target/DirectX/DirectXIRPasses/CMakeLists.txt
+102-696 files

LLVM/project 0812848clang/lib/Sema SemaRISCV.cpp

[RISCV] Remove unnecessary check for Zvfh in SemaRISCV::checkRVVTypeSupport. NFC (#202788)

Zvfh implies Zvfhmin so we only need to check the latter
DeltaFile
+1-2clang/lib/Sema/SemaRISCV.cpp
+1-21 files

LLVM/project e6db723lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime AppleObjCTrampolineHandler.cpp AppleObjCTrampolineHandler.h

Handle objc_msgSend being a re-export symbol from libobjc.A.dylib. (#202776)

In some cases, objc_msgSend and the objc_msgSendSuper can be re-exported
symbols in libobjc.A.dylib. Handle that case here. There were a number
of failures in the ObjC stepping tests before this was handled, so we
didn't need more tests.

If there isn't a re-exported symbol, we'll fall back to a code symbol.

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
DeltaFile
+24-15lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
+1-0lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.h
+25-152 files

LLVM/project 2f861c2llvm/test/CodeGen/AArch64 bf16-v8-instructions.ll, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll accvgpr-spill-scc-clobber.mir

Merge remote-tracking branch 'origin/main' into users/ziqingluo/PR-178747892

 Conflicts:
        clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
        clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
        clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
DeltaFile
+12,982-11,930llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+9,251-3,645llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
+10,469-10llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
+8,268-12llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
+3,581-3,560llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+6,598-111llvm/test/CodeGen/X86/clmul-vector.ll
+51,149-19,2689,996 files not shown
+614,299-277,03810,002 files

LLVM/project cf0d201clang/include/clang/DependencyScanning DependencyScanningFilesystem.h, clang/lib/DependencyScanning DependencyScanningFilesystem.cpp

Revert "[clang][deps] Add in-flight query caching to `DependencyScanningFiles…"

This reverts commit 85ac9a1e00690b1a956aa1ede7fbb11a298b9a78.
DeltaFile
+150-147clang/lib/DependencyScanning/DependencyScanningFilesystem.cpp
+143-72clang/include/clang/DependencyScanning/DependencyScanningFilesystem.h
+0-211clang/unittests/DependencyScanning/DependencyScanningFilesystemTest.cpp
+13-56llvm/include/llvm/Support/VirtualFileSystem.h
+0-30llvm/unittests/Support/VirtualFileSystemTest.cpp
+26-0llvm/lib/Support/VirtualFileSystem.cpp
+332-5161 files not shown
+332-5187 files