LLVM/project 03e19abllvm/lib/Analysis ValueTracking.cpp, llvm/test/Transforms/InstCombine frexp-implied-exponent-range-dominating-conditions.ll

ValueTracking: Generalize known frexp exponent range to any constant

Extend computeKnownExponentRangeFromContext beyond the special case of a
dominating fabs(V) compare against exactly 1.0 to any finite limit.

Generalizing below 1.0 exposes a soundness issue: frexp(0) has exponent
0, so a bound derived assuming a nonzero value could wrongly exclude it
when the limit implies a negative maximum exponent. Query fcZero and clamp
the maximum exponent to at least 0 when the source may be zero.

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+485-38llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll
+34-19llvm/lib/Analysis/ValueTracking.cpp
+519-572 files

LLVM/project 5ddad72lldb/include/lldb/Protocol/MCP Protocol.h, lldb/source/Plugins/Protocol/MCP ProtocolServerMCP.cpp

[lldb-mcp] Replace byte forwarding with a protocol-aware multiplexer (#208506)

To serve several LLDB instances behind one endpoint it has to act as a
multiplexer. This PR adds a Multiplexer that presents a unified MCP
server to the client. It answers initialize and tools/list locally, and
forwards tools/call and the resource requests to the different instances
through an mcp::Client (added in #208371), relaying the answer back.

For now, this still drives a single backend. Discovering and routing
across several instances is coming next.

Assisted-by: Claude
DeltaFile
+173-0lldb/tools/lldb-mcp/Multiplexer.cpp
+86-0lldb/tools/lldb-mcp/Multiplexer.h
+37-36lldb/tools/lldb-mcp/lldb-mcp.cpp
+4-0lldb/include/lldb/Protocol/MCP/Protocol.h
+2-2lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
+3-0lldb/source/Protocol/MCP/Protocol.cpp
+305-381 files not shown
+306-387 files

LLVM/project 94fa636llvm/docs ORCv2.md Remarks.md

[docs] Finish MyST migration for selected docs
DeltaFile
+261-274llvm/docs/ORCv2.md
+218-239llvm/docs/Remarks.md
+208-157llvm/docs/AMDGPUExecutionSynchronization.md
+127-122llvm/docs/SPIRVUsage.md
+77-104llvm/docs/NVPTXUsage.md
+56-58llvm/docs/CompileCudaWithLLVM.md
+947-95413 files not shown
+1,097-1,10319 files

LLVM/project 1e3ea26llvm/docs NVPTXUsage.md JITLink.md

[docs] Convert selected rst docs with rst2myst
DeltaFile
+2,408-2,922llvm/docs/NVPTXUsage.md
+509-575llvm/docs/JITLink.md
+475-496llvm/docs/ORCv2.md
+469-488llvm/docs/Instrumentor.md
+356-333llvm/docs/Remarks.md
+313-346llvm/docs/HowToUpdateDebugInfo.md
+4,530-5,16013 files not shown
+6,592-7,31719 files

LLVM/project b766b85llvm/docs NVPTXUsage.md NVPTXUsage.rst

[docs] Rename selected LLVM docs to Markdown
DeltaFile
+4,767-0llvm/docs/NVPTXUsage.md
+0-4,767llvm/docs/NVPTXUsage.rst
+0-1,177llvm/docs/JITLink.rst
+1,177-0llvm/docs/JITLink.md
+0-974llvm/docs/ORCv2.rst
+974-0llvm/docs/ORCv2.md
+6,918-6,91832 files not shown
+13,451-13,45138 files

LLVM/project d981ae2llvm/lib/Transforms/Utils CallPromotionUtils.cpp, llvm/test/Transforms/SampleProfile icp_target_feature.ll

Reapply "[PGO][ICP] Prevent indirect call promotion to functions with incompatible target features" (#208774)

Reverts llvm/llvm-project#208079

We're still seeing build failures without this, so reapply for now.
DeltaFile
+61-0llvm/test/Transforms/SampleProfile/icp_target_feature.ll
+21-0llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
+82-02 files

LLVM/project 7c35673mlir/lib/Conversion/VectorToXeGPU VectorToXeGPU.cpp, mlir/test/Conversion/VectorToXeGPU transfer-read-to-xegpu.mlir transfer-write-to-xegpu.mlir

[mlir][xegpu] Add support for 1D SLM case in vector-to-xepgu (#208276)

Currently vector-to-xegpu only support 2D SLM buffers. However
load/store_matrix op definition allows 1D access.

Assisted by: Claude
DeltaFile
+24-19mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
+15-5mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
+6-6mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
+45-303 files

LLVM/project efec9e9clang/lib/Driver/ToolChains AMDGPU.cpp, clang/test/Driver hip-include-path.hip

clang/AMDGPU: Forward host system includes in offload compiles

Commit 640079288c5e merged the AMDGPU toolchain subclasses but dropped the
HIPAMDToolChain::AddClangSystemIncludeArgs override, which forwarded to the
host toolchain.

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+10-0clang/test/Driver/hip-include-path.hip
+7-0clang/lib/Driver/ToolChains/AMDGPU.cpp
+17-02 files

LLVM/project 077fe47llvm/lib/Target/AMDGPU SIRegisterInfo.cpp

[AMDGPU] Fix scratch address materialization in SVS frame index fallback
DeltaFile
+4-16llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
+4-161 files

LLVM/project 4d834cdclang-tools-extra/clangd/unittests CodeCompleteTests.cpp IndexActionTests.cpp, clang/lib/Sema SemaCodeComplete.cpp

[clangd] CodeCompletion surface param names if possible (#206716)

Resolves issue https://github.com/clangd/clangd/issues/2651
DeltaFile
+40-0clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
+29-3clang/lib/Sema/SemaCodeComplete.cpp
+27-0clang-tools-extra/clangd/unittests/IndexActionTests.cpp
+96-33 files

LLVM/project beffef6lldb/docs python_extensions.md

[lldb][docs] Try to fix forward the Sphinx automodapi doc generation (#208608)

Fixes LLDB doc generation errors for me locally
DeltaFile
+25-15lldb/docs/python_extensions.md
+25-151 files

LLVM/project 00fa7eaclang/lib/CodeGen CodeGenModule.cpp, llvm/lib/Target/AArch64 AArch64AsmPrinter.cpp

Address review comments
DeltaFile
+72-8llvm/test/CodeGen/AArch64/build-attributes-pauthabi.ll
+24-6llvm/test/CodeGen/AArch64/note-gnu-property-elf-pauthabi.ll
+24-5llvm/test/CodeGen/AArch64/ptrauth-elf-got-function-symbols.ll
+10-0llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
+3-0clang/lib/CodeGen/CodeGenModule.cpp
+133-195 files

LLVM/project c03584allvm/lib/Target/Hexagon HexagonXQFloatGenerator.cpp, llvm/test/CodeGen/Hexagon/autohvx xqf-mult-normalize-second-operand.mir

[Hexagon] Fix wrong operand in XQFloat qf32 multiply normalization (#208489)

In convertNormalizeMultOp32, when only the second operand of a
V6_vmpy_qf32 comes from an add/sub/mul unit (secondconvert), the
generated multiply incorrectly used the raw second operand (Reg2)
instead of the first operand (Reg1). This dropped the first operand and
multiplied the normalized second operand by the un-normalized second
operand.

This patch fixed the multiply to use Reg1 and the normalized input_mpy2,
matching the correct arrangement used elsewhere. The bug was not
observed on v81 (which takes the V81normalizeMultF32 path); it only
affected the v79 fallback.

Co-authored-by: Santanu Das <quic_santdas at qti.qualcomm.com>
DeltaFile
+32-0llvm/test/CodeGen/Hexagon/autohvx/xqf-mult-normalize-second-operand.mir
+2-2llvm/lib/Target/Hexagon/HexagonXQFloatGenerator.cpp
+34-22 files

LLVM/project 5ea4550llvm/test/CodeGen/AMDGPU llvm.amdgcn.wmma.gfx1250.w32.ll flat-saddr-load.ll

[AMDGPU] Add GFX1250 unclaused VMEM workaround (#208467)
DeltaFile
+500-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
+480-0llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
+392-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
+366-0llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
+348-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
+332-0llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
+2,418-0190 files not shown
+12,520-27196 files

LLVM/project 4cd865fclang/lib/AST ExprConstant.cpp, clang/lib/AST/ByteCode Interp.cpp

[clang] Fix constexpr placement new of arrays. (#196669)

The existing code tried to implement a overly generous rule, and it
didn't really work. Restrict the accepted constructs to what we can
easily support. Adjust the representation of the destination pointer to
match the array which will be constructed.

Fixes #117294
DeltaFile
+66-45clang/test/AST/ByteCode/placement-new.cpp
+33-4clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
+17-11clang/lib/AST/ByteCode/Interp.cpp
+17-9clang/lib/AST/ExprConstant.cpp
+133-694 files

LLVM/project 16c7a3cclang/docs ReleaseNotes.rst, clang/include/clang/Basic DiagnosticCommonKinds.td

[Clang] [C++26] Expansion Statements (Part 11)
DeltaFile
+113-0clang/test/AST/ast-print-expansion-stmts.cpp
+54-0clang/test/AST/ast-dump-expansion-stmt.cpp
+7-1clang/www/cxx_status.html
+0-4clang/include/clang/Basic/DiagnosticCommonKinds.td
+2-0clang/docs/ReleaseNotes.rst
+176-55 files

LLVM/project 6bf597dclang/test/CodeGenCXX cxx2c-enumerating-expansion-statements.cpp cxx2c-iterating-expansion-stmt.cpp

[Clang] [C++26] Expansion Statements (Part 8)
DeltaFile
+1,518-0clang/test/CodeGenCXX/cxx2c-enumerating-expansion-statements.cpp
+551-0clang/test/CodeGenCXX/cxx2c-iterating-expansion-stmt.cpp
+532-0clang/test/CodeGenCXX/cxx2c-destructuring-expansion-stmt.cpp
+430-0clang/test/CodeGenCXX/cxx2c-expansion-stmts-control-flow.cpp
+208-0clang/test/CodeGenCXX/cxx2c-expansion-stmts-templates.cpp
+134-0clang/test/CodeGenCXX/cxx2c-expansion-stmts-mangling.cpp
+3,373-03 files not shown
+3,410-39 files

LLVM/project eee6ab9clang/include/clang/Basic DiagnosticSemaKinds.td, clang/lib/Sema SemaExpand.cpp TreeTransform.h

[Clang] [C++26] Expansion Statements (Part 6)
DeltaFile
+106-6clang/lib/Sema/SemaExpand.cpp
+23-3clang/lib/Sema/TreeTransform.h
+2-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+131-93 files

LLVM/project 0a286daclang/include/clang/Sema ScopeInfo.h Sema.h, clang/lib/Parse ParseStmt.cpp

[Clang] [C++26] Expansion Statements (Part 9)
DeltaFile
+135-0clang/test/SemaCXX/cxx2c-expansion-stmts-control-flow.cpp
+38-9clang/lib/Sema/SemaLookup.cpp
+28-2clang/lib/Sema/SemaStmt.cpp
+10-2clang/lib/Parse/ParseStmt.cpp
+7-2clang/include/clang/Sema/ScopeInfo.h
+4-2clang/include/clang/Sema/Sema.h
+222-171 files not shown
+228-177 files

LLVM/project b8c1300clang/lib/AST ExprConstant.cpp, clang/lib/AST/ByteCode Compiler.cpp Compiler.h

[Clang] [C++26] Expansion Statements (Part 7)
DeltaFile
+1,590-0clang/test/SemaCXX/cxx2c-expansion-stmts.cpp
+42-0clang/lib/AST/ByteCode/Compiler.cpp
+40-0clang/lib/AST/ExprConstant.cpp
+11-0clang/test/SemaCXX/cxx2c-expansion-statements-shadow.cpp
+2-1clang/lib/AST/ByteCode/Compiler.h
+3-0clang/lib/Sema/SemaDeclCXX.cpp
+1,688-16 files

LLVM/project 4e3cf19clang/include/clang/Basic DiagnosticSemaKinds.td LangOptions.def, clang/include/clang/Options Options.td

[Clang] [C++26] Expansion Statements (Part 10)
DeltaFile
+73-0clang/test/SemaCXX/cxx2c-expansion-stmts-limit.cpp
+18-0clang/lib/Sema/SemaExpand.cpp
+9-0clang/test/SemaCXX/cxx2c-fexpansion-statements.cpp
+4-0clang/include/clang/Options/Options.td
+4-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+1-0clang/include/clang/Basic/LangOptions.def
+109-01 files not shown
+110-07 files

LLVM/project 86d4172clang/include/clang/Basic DiagnosticSemaKinds.td, clang/include/clang/Sema Sema.h

[Clang] [C++26] Expansion Statements (Part 5)
DeltaFile
+314-17clang/lib/Sema/SemaExpand.cpp
+74-0clang/lib/Sema/TreeTransform.h
+11-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+8-0clang/lib/Sema/SemaStmt.cpp
+6-0clang/include/clang/Sema/Sema.h
+413-175 files

LLVM/project f4a2a7cclang/include/clang/Sema Sema.h, clang/lib/Sema SemaStmt.cpp

[Clang] [C++26] Expansion Statements (Part 4)
DeltaFile
+277-227clang/lib/Sema/SemaStmt.cpp
+40-0clang/include/clang/Sema/Sema.h
+317-2272 files

LLVM/project 01f3768llvm/lib/Analysis ValueTracking.cpp, llvm/test/Transforms/InstCombine frexp-implied-exponent-range-dominating-conditions.ll

ValueTracking: Fix off by one in known frexp exponent range (#208295)

Also restrict the optimization to the exactly 1 case for now.
There was an additional bug for values less than 1 to be fixed
separately.

Fixes #208192

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+814-21llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll
+11-4llvm/lib/Analysis/ValueTracking.cpp
+825-252 files

LLVM/project 2b0a79eclang/lib/StaticAnalyzer/Checkers/WebKit RawPtrRefCallArgsChecker.cpp RawPtrRefMemberChecker.cpp, clang/test/Analysis/Checkers/WebKit unretained-call-args.mm uncounted-obj-arg.cpp

[alpha.webkit.UncountedCallArgsChecker] Improve the warning text (#202724)

This PR improves UncountedCallArgsChecker and its variant's warning
message to explicitly state the argument expression, the qualified
callee type as well as the type which needs to be kept alive.
DeltaFile
+121-28clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
+48-48clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
+43-42clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
+34-34clang/test/Analysis/Checkers/WebKit/call-args.cpp
+21-21clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
+5-18clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
+272-19118 files not shown
+352-23724 files

LLVM/project 4bf0737.github/workflows build-ci-container-tooling.yml, .github/workflows/containers/github-action-ci-tooling Dockerfile

[Github] Add ids container (#208498)

This will be used for the ids check workflow. This will enable us to use
a PGO optimized compiler that we also use elsewhere, which should help
speed up the builds on top of reducing redundant work like needing to
configure/build ids for every job. This also makes things a bit more
hermetic.

This is a bit of a hack with how the ids build is setup now (e.g.,
copying over libLLVM.so), but that's something that can be rectified
pretty easily later.
DeltaFile
+51-0.github/workflows/containers/github-action-ci-tooling/Dockerfile
+3-0.github/workflows/build-ci-container-tooling.yml
+54-02 files

LLVM/project a7cbe3cllvm/lib/Target/AArch64 AArch64AsmPrinter.cpp AArch64InstrInfo.td, llvm/test/CodeGen/AArch64 ptrauth-intrinsic-auth-resign-with-blend.ll

Add more test cases; other minor changes
DeltaFile
+382-6llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
+10-8llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
+6-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+398-143 files

LLVM/project b14b7b9cmake/Modules GetTripleCMakeSystemName.cmake, llvm/include/llvm/TargetParser TripleName.def

cmake: Derive CMake system name from a triple via new mechanism

This is a reimplementation of the cmake functionality first implemented in
6e4e181c83, which has now been reverted twice. Implement the raw cmake functionality
without introducing the uses yet.

The runtimes build needs to translate the build target (configured with a target
triple) to cmake's naming scheme, to use for CMAKE_SYSTEM_NAME. Use the OS/environment
list from TargetParser as the source of truth; add an additional entry for the
cmake name to ensure the build system and compiler always recognize the same set
of names.

Upgrade the previous cmake regexes to a new python script which parses the
authoritative def file. The new script logic should match Triple::normalize's
permissiveness for various legacy and malformed triple shapes. This should be
more maintainable than the previous cmake regexes, since there's now a unit test
mirroring the triple unit test.

Co-Authored-By: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+118-110llvm/include/llvm/TargetParser/TripleName.def
+196-0llvm/utils/get_triple_system_name_test.py
+155-0llvm/utils/get_triple_system_name.py
+40-0cmake/Modules/GetTripleCMakeSystemName.cmake
+4-4llvm/lib/TargetParser/Triple.cpp
+6-0llvm/test/tools/TargetParser/get-triple-system-name.test
+519-1146 files

LLVM/project ca9680dllvm/lib/Transforms/Utils CallPromotionUtils.cpp, llvm/test/Transforms/SampleProfile icp_target_feature.ll

Revert "Revert "[PGO][ICP] Prevent indirect call promotion to functions with …"

This reverts commit 9ff1d7a21e6d23088eb5dac38f95edd4329c50b7.
DeltaFile
+61-0llvm/test/Transforms/SampleProfile/icp_target_feature.ll
+21-0llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
+82-02 files

LLVM/project e6dcf89cmake/Modules GetTripleCMakeSystemName.cmake, llvm/include/llvm/TargetParser TripleName.def

cmake: Derive CMake system name from a triple via new mechanism

This is a reimplementation of the cmake functionality first implemented in
6e4e181c83, which has now been reverted twice. Implement the raw cmake functionality
without introducing the uses yet.

The runtimes build needs to translate the build target (configured with a target
triple) to cmake's naming scheme, to use for CMAKE_SYSTEM_NAME. Use the OS/environment
list from TargetParser as the source of truth; add an additional entry for the
cmake name to ensure the build system and compiler always recognize the same set
of names.

Upgrade the previous cmake regexes to a new python script which parses the
authoritative def file. The new script logic should match Triple::normalize's
permissiveness for various legacy and malformed triple shapes. This should be
more maintainable than the previous cmake regexes, since there's now a unit test
mirroring the triple unit test.

Co-Authored-By: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+118-110llvm/include/llvm/TargetParser/TripleName.def
+198-0llvm/utils/get_triple_system_name_test.py
+157-0llvm/utils/get_triple_system_name.py
+40-0cmake/Modules/GetTripleCMakeSystemName.cmake
+4-4llvm/lib/TargetParser/Triple.cpp
+6-0llvm/test/tools/TargetParser/get-triple-system-name.test
+523-1146 files