LLVM/project ee159a1llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

Revert "[SLP][NFC] Refactor to prepare for constant stride stores (#185997)"

This reverts commit 26f344e1703229aea20df616b1dbc949fbc332e1.
DeltaFile
+260-471llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+260-4711 files

LLVM/project 4814a9fllvm/lib/ExecutionEngine/Orc LinkGraphLinkingLayer.cpp

[ORC] Fix typo in comment. NFC. (#188664)
DeltaFile
+1-1llvm/lib/ExecutionEngine/Orc/LinkGraphLinkingLayer.cpp
+1-11 files

LLVM/project 6556183llvm/lib/Target/RISCV RISCVInstrInfoXqci.td, llvm/test/CodeGen/RISCV xqciac.ll

[RISCV] Add compress pattern for QC_SHLADD Rd, Rs1, Rd, 4 to QC_C_MULIADD Rd, Rs1, 16 (#188516)
DeltaFile
+5-0llvm/test/MC/RISCV/xqciac-valid.s
+2-2llvm/test/CodeGen/RISCV/xqciac.ll
+2-0llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
+9-23 files

LLVM/project 5a2fedflibc/src/__support/CPP/type_traits is_constant_evaluated.h, libc/src/__support/macros attributes.h config.h

[libc][msvc] Re-enable __builtin_is_constant_evaluated for MSVC. (#188663)
DeltaFile
+6-1libc/src/__support/macros/attributes.h
+1-1libc/src/__support/CPP/type_traits/is_constant_evaluated.h
+2-0libc/src/__support/macros/config.h
+9-23 files

LLVM/project dfcc765llvm/lib/Transforms/Vectorize VectorCombine.cpp, llvm/test/Transforms/VectorCombine/LoongArch shuffle-identity-miscompile.ll lit.local.cfg

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+20-16llvm/lib/Transforms/Vectorize/VectorCombine.cpp
+28-0llvm/test/Transforms/VectorCombine/LoongArch/shuffle-identity-miscompile.ll
+4-0llvm/test/Transforms/VectorCombine/LoongArch/lit.local.cfg
+52-163 files

LLVM/project 3241fd3llvm/test/Transforms/VectorCombine/LoongArch shuffle-identity-miscompile.ll lit.local.cfg

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+26-0llvm/test/Transforms/VectorCombine/LoongArch/shuffle-identity-miscompile.ll
+4-0llvm/test/Transforms/VectorCombine/LoongArch/lit.local.cfg
+30-02 files

LLVM/project 976a107llvm/test/Transforms/VectorCombine/LoongArch shuffle-identity-miscompile.ll lit.local.cfg

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+26-0llvm/test/Transforms/VectorCombine/LoongArch/shuffle-identity-miscompile.ll
+4-0llvm/test/Transforms/VectorCombine/LoongArch/lit.local.cfg
+30-02 files

LLVM/project 406ac8aclang/include/clang/CIR/Dialect/IR CIRCUDAAttrs.td, clang/lib/CIR/CodeGen CIRGenModule.cpp

Avoid copies from `std::string`
DeltaFile
+23-17clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+7-4clang/lib/CIR/CodeGen/CIRGenModule.cpp
+1-1clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
+31-223 files

LLVM/project 901073aclang/test/Preprocessor riscv-target-features.c, llvm/lib/Target/RISCV RISCVInstrInfoP.td

[RISCV] Update P extension to 0.21 (#188121)

Add the new shift and pnclip instructions.

Spec PR https://github.com/riscv/riscv-p-spec/pull/237
DeltaFile
+57-13llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+36-0llvm/test/MC/RISCV/rv64p-valid.s
+24-0llvm/test/MC/RISCV/rv32p-valid.s
+4-4llvm/test/MC/RISCV/attribute-arch.s
+3-3clang/test/Preprocessor/riscv-target-features.c
+1-1llvm/test/CodeGen/RISCV/attributes.ll
+125-215 files not shown
+130-2611 files

LLVM/project 983b202clang-tools-extra/test/clang-tidy/checkers/android cloexec-memfd-create.cpp cloexec-accept4.cpp, clang-tools-extra/test/clang-tidy/checkers/bugprone spuriously-wake-up-functions.c posix-return.cpp

[clang-tidy][NFC] Use mock header instead of #define NULL in tests (#188420)

Since stddef.h in the mock headers of clang-tidy tests now provides
`#define NULL 0L`, we can migrate manual `#define NULL` in these tests
to standard `#include`s.
DeltaFile
+3-4clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
+2-1clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.cpp
+2-1clang-tools-extra/test/clang-tidy/checkers/bugprone/spuriously-wake-up-functions.c
+2-1clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
+2-1clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
+2-1clang-tools-extra/test/clang-tidy/checkers/android/cloexec-accept4.cpp
+13-912 files not shown
+25-2118 files

LLVM/project 048238blibcxx/include __hash_table

Format

Created using spr 1.3.6-beta.1
DeltaFile
+6-2libcxx/include/__hash_table
+6-21 files

LLVM/project b95b902lldb/include/lldb/Target Process.h, lldb/source/Target Process.cpp ProcessTrace.cpp

[LLDB] Use shared_ptr for m_current_private_state_thread (#188542)

Avoids manual memory management.

Uses `shared_ptr` instead of `unique_ptr` because we store references to
the current thread in a backup variable.

Simplifies the private thread `is_secondary` semantics by providing a
backup storage for the current thread instead of a boolean value with a
contract to manage the backup separately.
DeltaFile
+47-52lldb/include/lldb/Target/Process.h
+43-46lldb/source/Target/Process.cpp
+1-1lldb/source/Target/ProcessTrace.cpp
+91-993 files

LLVM/project bf1287blibcxx/include __hash_table, libcxx/test/extensions/gnu/hash_map copy.pass.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.6-beta.1
DeltaFile
+8-4libcxx/include/__hash_table
+4-0libcxx/test/extensions/gnu/hash_map/copy.pass.cpp
+12-42 files

LLVM/project 620d322llvm/test/CodeGen/AMDGPU memintrinsic-unroll.ll, llvm/test/CodeGen/X86 vector-interleaved-load-i64-stride-7.ll vector-interleaved-store-i64-stride-7.ll

Merge remote-tracking branch 'origin' into users/ziqingluo/eng/PR-171920065
DeltaFile
+6,835-6,798llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+6,432-6,562llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
+4,982-4,991llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
+4,590-4,623llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
+4,364-4,820llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
+3,814-3,848llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-8.ll
+31,017-31,6424,731 files not shown
+248,747-112,5604,737 files

LLVM/project 2beba0ellvm/lib/Target/AMDGPU AMDGPUCoExecSchedStrategy.h

Add a comment

Change-Id: I447f7f1fb185b18924cfd98249b5a0a05fef2484
DeltaFile
+7-0llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
+7-01 files

LLVM/project bdbe816lldb/test/API/functionalities/scripted_frame_provider/circular_dependency TestFrameProviderCircularDependency.py, lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix TestFrameProviderPassThroughPrefix.py

[lldb/test] Remove stale Windows expectedFailure decorators (NFC)

The @expectedFailureAll decorators for Windows (llvm.org/pr24778) are no
longer needed on test_circular_dependency_handle_command_in_init and
test_provider_receives_parent_frames.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
DeltaFile
+0-1lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix/TestFrameProviderPassThroughPrefix.py
+0-1lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py
+0-22 files

LLVM/project 47e4282libunwind/test floatregister.pass.cpp aarch64_za_unwind.pass.cpp, libunwind/test/support func_bounds.h

[libunwind][Apple] Improve test coverage on Apple platforms (#186423)

Introduces a macro abstraction around capturing the bounds of a
function, which many platforms handle subtly differently (Mach-O, and
ELF, for example).

Also introduce an arm64[^-]* -> aarch64 available feature, to enable
more tests that would otherwise be excluded on Apple platforms, whose
target triples tend to take the form e.g. 'arm64-apple-macosx', rather
than 'aarch64-apple-macosx'.

Third, we implement the has-sme check using the appropriate sysctl, as
getauxval is not available on Darwin platforms.
DeltaFile
+40-0libunwind/test/support/func_bounds.h
+8-9libunwind/test/floatregister.pass.cpp
+14-1libunwind/test/aarch64_za_unwind.pass.cpp
+5-10libunwind/test/unwind_leaffunction.pass.cpp
+5-10libunwind/test/signal_unwind.pass.cpp
+5-10libunwind/test/forceunwind.pass.cpp
+77-402 files not shown
+89-408 files

LLVM/project bc987f9mlir/test/CAPI smt.c

[mlir][CAPI] Fix unused-but-set-variable warning in smt.c (NFC) (#188473)

llvm-project/mlir/test/CAPI/smt.c:37:21: warning: variable 'result' set
but not used [-Wunused-but-set-variable]
   37 |   MlirLogicalResult result = mlirTranslateModuleToSMTLIB(
      |                     ^
1 warning generated.
DeltaFile
+1-0mlir/test/CAPI/smt.c
+1-01 files

LLVM/project dfee017llvm/lib/Target/AMDGPU AMDGPUCoExecSchedStrategy.cpp AMDGPUCoExecSchedStrategy.h, llvm/test/CodeGen/AMDGPU coexec-sched-effective-stall.mir

[AMDGPU] Add MemoryPipeline scheduling to Coexec sched

Change-Id: I52c476834155823d1ba998cdbbcb3ad6a7e6f2f5
DeltaFile
+323-0llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
+77-23llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
+18-0llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
+418-233 files

LLVM/project cd394f7clang/include/clang/ScalableStaticAnalysisFramework/Analyses PointerAssignments.h, clang/lib/Analysis UnsafeBufferUsage.cpp

[SSAF][PointerAssignments] Add PointerAssignments summary and extractor

Implement PointerAssignments summary and extractor, which uses
EntityPointerLevel. An assignment is extracted as a pair of
EntityPointerLevels. Extracted assignments form a directed graph
encoding abstracted pointer flow information.

rdar://172429193
DeltaFile
+1,150-0clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerAssignmentsTest.cpp
+383-0clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerAssignments/PointerAssignmentsExtractor.cpp
+105-0clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerAssignments/PointerAssignments.cpp
+64-0clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerAssignments.h
+40-0clang/test/Analysis/Scalable/UnsafeBufferUsage/tu-summary.json
+17-7clang/lib/Analysis/UnsafeBufferUsage.cpp
+1,759-77 files not shown
+1,808-2513 files

LLVM/project bc88773llvm/include/llvm/Analysis IncrementalUpdateProfileAnalysis.h, llvm/include/llvm/Transforms/Scalar JumpThreading.h

verify incremental prof updates
DeltaFile
+48-114llvm/lib/Transforms/Scalar/JumpThreading.cpp
+68-0llvm/lib/Analysis/IncrementalUpdateProfileAnalysis.cpp
+64-0llvm/include/llvm/Analysis/IncrementalUpdateProfileAnalysis.h
+20-16llvm/test/Transforms/JumpThreading/select.ll
+3-26llvm/include/llvm/Transforms/Scalar/JumpThreading.h
+3-6llvm/test/Transforms/JumpThreading/static-profile.ll
+206-16223 files not shown
+241-19229 files

LLVM/project 5e83028clang/include/clang/ScalableStaticAnalysisFramework/Analyses UnsafeBufferUsage.h, clang/lib/Analysis UnsafeBufferUsage.cpp

[SSAF][UnsafeBufferUsage] Implement AST visitor that respects the constribution model and refactor

Previously, the UnsafeBufferUsage Extractor relied on the
`-Wunsafe-buffer-usage` API to traverse ASTs. The traversal did not
fully respect the contribution model of SSAF---RecordDecls inside
functions were not treated as contributors. Their fields were counted
as contributions of the enclosing function.

This commit adds an AST visitor that respects the contribution model
and will be shared by SSAF analyses.  The UnsafeBufferUsage Extractor
still relies on `-Wunsafe-buffer-usage` to provide the unsafe pointer
matching function.

In addition, this commit
- Factors common code in analyses to 'lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h'.
- Registers the UnsafeBufferUsage extractor.
- Removes 'UnsafeBufferUsageExtractor.h' since it is useless except
  for the unit test. The unit test now directly uses proxy functions
  defined in 'UnsafeBufferUsageExtractor.cpp'.
DeltaFile
+723-0clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsageTest.cpp
+0-702clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
+119-134clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
+146-0clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
+60-57clang/lib/Analysis/UnsafeBufferUsage.cpp
+61-0clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage.h
+1,109-8938 files not shown
+1,128-1,04614 files

LLVM/project ff4d49bclang/test/CodeGenOpenCL builtins-amdgcn-gfx1250-wmma-w32.cl, llvm/lib/IR AutoUpgrade.cpp

[AMDGPU] Disable neg_lo[0:1] and neg_hi[0:1] on wmma_f32_16x16x32_bf16

This is the pilot change, the rest will follow the same idea.
DeltaFile
+46-46clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
+53-31llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+51-9llvm/lib/IR/AutoUpgrade.cpp
+30-30llvm/test/CodeGen/AMDGPU/wmma-nop-hoisting.mir
+4-52llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
+20-20llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir
+204-18813 files not shown
+268-21519 files

LLVM/project daf7fe2clang/include/clang/Analysis/Analyses UnsafeBufferUsage.h, clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage UnsafeBufferUsage.h

[ssaf][UnsafeBufferUsage] Add support for extracting unsafe pointers from all kinds of contributors (#184899)

- Generalize the `-Wunsafe-buffer-usage` API for finding unsafe pointers
in all kinds of `Decl`s
- Add support in SSAF-based UnsafeBufferUsage analysis for extracting
from various contributors
- Mock implementation of HandleTranslationUnit

rdar://171735836

This is a follow-up PR to
https://github.com/llvm/llvm-project/pull/182941
DeltaFile
+138-4clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
+113-25clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
+44-17clang/lib/Analysis/UnsafeBufferUsage.cpp
+8-1clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
+2-0clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
+305-475 files

LLVM/project 0dd85a0clang/include/clang/ScalableStaticAnalysisFramework/Analyses PointerAssignments.h, clang/lib/Analysis UnsafeBufferUsage.cpp

[SSAF][PointerAssignments] Add PointerAssignments summary and extractor

Implement PointerAssignments summary and extractor, which uses
EntityPointerLevel. An assignment is extracted as a pair of
EntityPointerLevels. Extracted assignments form a directed graph
encoding abstracted pointer flow information.

rdar://172429193
DeltaFile
+1,150-0clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerAssignmentsTest.cpp
+383-0clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerAssignments/PointerAssignmentsExtractor.cpp
+105-0clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerAssignments/PointerAssignments.cpp
+64-0clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerAssignments.h
+40-0clang/test/Analysis/Scalable/UnsafeBufferUsage/tu-summary.json
+17-7clang/lib/Analysis/UnsafeBufferUsage.cpp
+1,759-77 files not shown
+1,808-2513 files

LLVM/project 11cbd37flang/docs/MeetingNotes/2026 2026-03-25.md

[flang] Adding Flang Community Call Meeting Notes for 3/25/2026 (#188597)
DeltaFile
+106-0flang/docs/MeetingNotes/2026/2026-03-25.md
+106-01 files

LLVM/project d7a39ccllvm/utils git-llvm-push git-llvm-push.md

[Utils] Add ability to configure git-llvm-push from .gitconfig (#187398)

This lets someone set git config options at whatever scope (per-repo,
global, etc.) for the options that they care about. This provides
similar functionality to just wrapping the script in a shell script with
one's desired options without the need to do that.

We need to be careful about how when we get the flags and how to execute
the git command to get the flags. For now, we do this before normal
argument parsing and fail silently to avoid printing output if someone
passes something like --quiet through the git config. This means options
like --verbose and --dry-run don't work for this specific command, but I
think that is a reasonable tradeoff.
DeltaFile
+25-1llvm/utils/git-llvm-push
+16-0llvm/utils/git-llvm-push.md
+41-12 files

LLVM/project b7d8831llvm/utils/lit/lit run.py

[lit] dealloc ApplyResult objects as they're waited on (#188642)

In _wait_for(), all async tasks are waited for. However, the objects
are held in the async_result list until the function calls complete.
This leads to about 3.6gig mem usage on my system when running
check-llvm, even though these objects aren't needed after the ar.get()
call.

Dealloc them as we go instead.

Addresses #188641
DeltaFile
+4-1llvm/utils/lit/lit/run.py
+4-11 files

LLVM/project b6ef20ellvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn] port 0eb8f018a1c8
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-01 files

LLVM/project e1cd558lldb/include/lldb/Target Thread.h, lldb/source/Target Thread.cpp

[lldb] Fix circular dependency and deadlock in scripted frame providers (#187411)

When a scripted frame provider calls back into the thread's frame
machinery (e.g. via HandleCommand or EvaluateExpression), two problems
arise:

1. GetStackFrameList() re-enters the SyntheticStackFrameList
 construction, causing infinite recursion.
2. ClearStackFrames() tries to read-lock the StackFrameList's
 shared_mutex that is already write-locked by GetFramesUpTo,
 causing a deadlock.

This patch fixes those issues by tracking when a provider is actively
fetching frames via a per-host-thread map (m_provider_frames_by_thread)
keyed by HostThread. The map is pushed/popped in
SyntheticStackFrameList::FetchFramesUpTo before calling into the
provider. GetStackFrameList() checks it to route re-entrant calls:

- The provider's own host thread gets the parent frame list, preventing

    [14 lines not shown]
DeltaFile
+138-0lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix/TestFrameProviderPassThroughPrefix.py
+101-9lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py
+109-0lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix/frame_provider.py
+74-0lldb/source/Target/Thread.cpp
+60-0lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/frame_provider.py
+24-0lldb/include/lldb/Target/Thread.h
+506-97 files not shown
+589-1013 files