LLVM/project ee07c80lldb/test/API/riscv/conflicting-extensions-disassembly TestConflictingExtensions.py Makefile, lldb/test/API/riscv/disassembler conflicting.out.yaml TestDisassembler.py

use yaml2obj
DeltaFile
+38-0lldb/test/API/riscv/disassembler/conflicting.out.yaml
+31-5lldb/test/API/riscv/disassembler/TestDisassembler.py
+32-0lldb/test/API/riscv/disassembler/a.out.yaml
+0-32lldb/test/API/riscv/conflicting-extensions-disassembly/TestConflictingExtensions.py
+28-0lldb/test/API/riscv/disassembler/stripped.out.yaml
+0-17lldb/test/API/riscv/conflicting-extensions-disassembly/Makefile
+129-545 files not shown
+129-9411 files

LLVM/project 28c8458llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp, llvm/lib/Transforms/Utils MatrixUtils.cpp

use flag

Created using spr 1.3.7
DeltaFile
+12-5llvm/lib/Transforms/Utils/MatrixUtils.cpp
+6-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+18-62 files

LLVM/project f0d3a8fllvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp, llvm/lib/Transforms/Utils MatrixUtils.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+6-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+2-2llvm/lib/Transforms/Utils/MatrixUtils.cpp
+8-32 files

LLVM/project f4b3c94llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp

use flag

Created using spr 1.3.7
DeltaFile
+6-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+6-11 files

LLVM/project c405df2llvm/lib/Transforms/Utils MatrixUtils.cpp

feedback

Created using spr 1.3.7
DeltaFile
+2-2llvm/lib/Transforms/Utils/MatrixUtils.cpp
+2-21 files

LLVM/project afcb830clang/include/clang/CIR/Dialect/IR CIRAttrs.td, clang/lib/CIR/CodeGen CIRGenDeclCXX.cpp CIRGenDecl.cpp

[CIR] Add CIRGen support for static local variables with non-constant initializers

This adds CIRGen infrastructure for C++ function-local static variables
that require guarded initialization (Itanium C++ ABI).

Changes:
- Add ASTVarDeclAttr to carry VarDecl AST through the pipeline
- Add emitGuardedInit() to CIRGenCXXABI for guarded initialization
- Add emitCXXGuardedInit() to CIRGenFunction
- Replace NYI in addInitializerToStaticVarDecl() with ctor region emission
- Set static_local attribute on GlobalOp and GetGlobalOp

The global's ctor region contains the initialization code, which will be
lowered by LoweringPrepare to emit the actual guard variable pattern with
__cxa_guard_acquire/__cxa_guard_release calls.
DeltaFile
+41-0clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+30-0clang/test/CIR/CodeGen/static-local.cpp
+18-0clang/lib/CIR/CodeGen/CIRGenDeclCXX.cpp
+14-3clang/lib/CIR/CodeGen/CIRGenDecl.cpp
+5-0clang/lib/CIR/CodeGen/CIRGenFunction.h
+3-2clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+111-57 files not shown
+124-1013 files

LLVM/project 75f738bclang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/Dialect/IR CIRDialect.cpp

[CIR] Add static_local attribute to GlobalOp and GetGlobalOp (#179826)

This attribute marks function-local static variables that require
guarded initialization (e.g., C++ static local variables with
non-constant initializers).

It will be used by CIRGen to communicate to LoweringPrepare which globals need guard variable emission.

This PR only adds the attribute and tests, CIRGen is in the next one.
DeltaFile
+33-0clang/test/CIR/IR/invalid-static-local.cir
+19-0clang/test/CIR/IR/static-local.cir
+15-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+4-0clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+71-14 files

LLVM/project b99ff35llvm/test/Transforms/LowerMatrixIntrinsics multiply-fused.ll

tests

Created using spr 1.3.7
DeltaFile
+11-6llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused.ll
+11-61 files

LLVM/project 1dadcc1llvm/test/Transforms/IndVarSimplify unreachable-exit.ll

upd

Created using spr 1.3.7
DeltaFile
+0-2llvm/test/Transforms/IndVarSimplify/unreachable-exit.ll
+0-21 files

LLVM/project 87e4d13llvm/test/CodeGen/AArch64 clmul-scalable.ll arm64-cvt-simd-fptoi.ll, llvm/test/Transforms/LoopVectorize vplan-printing-reductions.ll

fix

Created using spr 1.3.7
DeltaFile
+1,560-1,560llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-fp.s
+1,060-707llvm/test/CodeGen/AArch64/clmul-scalable.ll
+0-1,543llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
+1,542-0llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
+1,362-0llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll
+648-629llvm/test/CodeGen/AArch64/clmul-fixed.ll
+6,172-4,439667 files not shown
+34,170-19,223673 files

LLVM/project 270bc2cllvm/test/CodeGen/AArch64 clmul-scalable.ll arm64-cvt-simd-fptoi.ll, llvm/test/Transforms/LoopVectorize vplan-printing-reductions.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,560-1,560llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-fp.s
+1,060-707llvm/test/CodeGen/AArch64/clmul-scalable.ll
+0-1,543llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
+1,542-0llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
+1,362-0llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll
+648-629llvm/test/CodeGen/AArch64/clmul-fixed.ll
+6,172-4,439666 files not shown
+34,154-19,216672 files

LLVM/project 9906c84llvm/include/llvm/Transforms/Utils MatrixUtils.h, llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+11-5llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
+5-5llvm/lib/Transforms/Utils/MatrixUtils.cpp
+4-3llvm/include/llvm/Transforms/Utils/MatrixUtils.h
+3-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+0-1llvm/utils/profcheck-xfail.txt
+23-155 files

LLVM/project 028535dllvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp, llvm/lib/Transforms/Utils MatrixUtils.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+21-13llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-volatile.ll
+12-12llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
+11-6llvm/lib/Transforms/Utils/MatrixUtils.cpp
+11-5llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
+10-5llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+6-5llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops-large-matrixes.ll
+71-462 files not shown
+75-578 files

LLVM/project e595808llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp, llvm/test/Transforms/LowerMatrixIntrinsics select.ll

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

Created using spr 1.3.7

[skip ci]
DeltaFile
+11-5llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
+3-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+0-1llvm/utils/profcheck-xfail.txt
+14-73 files

LLVM/project 57bd8ccllvm/include/llvm/Transforms/Utils MatrixUtils.h, llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+11-5llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
+5-5llvm/lib/Transforms/Utils/MatrixUtils.cpp
+4-3llvm/include/llvm/Transforms/Utils/MatrixUtils.h
+3-1llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+0-1llvm/utils/profcheck-xfail.txt
+23-155 files

LLVM/project a4b8381clang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/Dialect/IR CIRDialect.cpp

[CIR] Add static_local attribute to GlobalOp and GetGlobalOp

This attribute marks function-local static variables that require
guarded initialization (e.g., C++ static local variables with
non-constant initializers). It is used by CIRGen to communicate
to LoweringPrepare which globals need guard variable emission.
DeltaFile
+33-0clang/test/CIR/IR/invalid-static-local.cir
+19-0clang/test/CIR/IR/static-local.cir
+15-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+4-0clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+71-14 files

LLVM/project 708d1c1clang/lib/Driver/ToolChains Gnu.cpp

[RISCV] Simply add the march/mabi strings to Flags for multilib selection (#180104)

It does't need to compare the march/mabi with multilib's before adding
such string into Flags. The negative one (!march/!mabi) has no effect
during multilib selection. We can select either a multilib with
identical march and mabi, or one with a subset of march and the same
mabi.
DeltaFile
+15-21clang/lib/Driver/ToolChains/Gnu.cpp
+15-211 files

LLVM/project c27895aclang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/Dialect/IR CIRDialect.cpp

[CIR] Add static_local attribute to GlobalOp and GetGlobalOp

This attribute marks function-local static variables that require
guarded initialization (e.g., C++ static local variables with
non-constant initializers). It is used by CIRGen to communicate
to LoweringPrepare which globals need guard variable emission.
DeltaFile
+33-0clang/test/CIR/IR/invalid-static-local.cir
+19-0clang/test/CIR/IR/static-local.cir
+15-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+4-0clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+71-14 files

LLVM/project 1923fa0clang/include/clang/CIR/Interfaces ASTAttrInterfaces.td ASTAttrInterfaces.h, clang/lib/CIR/Interfaces ASTAttrInterfaces.cpp CMakeLists.txt

[CIR] Add ASTVarDeclInterface for AST attribute access (#179825)

Add the ASTVarDeclInterface which provides methods to access clang AST
VarDecl information from CIR attributes. This interface enables:
- mangleStaticGuardVariable: Mangle guard variable names using clang's
  MangleContext
- isLocalVarDecl: Check if a variable is function-local
- getTLSKind: Get thread-local storage kind
- isInline: Check if the variable is inline
- getTemplateSpecializationKind: Get template specialization info
- getVarDecl: Direct access to the underlying VarDecl pointer

This infrastructure is needed for proper handling of static local
variables with guard variables in LoweringPrepare.
DeltaFile
+51-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.td
+22-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.h
+21-0clang/lib/CIR/Interfaces/ASTAttrInterfaces.cpp
+9-0clang/include/clang/CIR/Interfaces/CMakeLists.txt
+2-0clang/lib/CIR/Interfaces/CMakeLists.txt
+105-05 files

LLVM/project 0d98d2elldb/source/Plugins/Highlighter/TreeSitter TreeSitterHighlighter.h CMakeLists.txt

Address Alex' feedback
DeltaFile
+2-2lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.h
+1-0lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
+3-22 files

LLVM/project 48ecc95lldb/test/API/riscv/disassembler TestDisassembler.py

add unknown assert
DeltaFile
+6-0lldb/test/API/riscv/disassembler/TestDisassembler.py
+6-01 files

LLVM/project e7648d6clang/include/clang/CIR/Interfaces ASTAttrInterfaces.td ASTAttrInterfaces.h, clang/lib/CIR/Interfaces ASTAttrInterfaces.cpp CMakeLists.txt

[CIR] Add ASTVarDeclInterface for AST attribute access

Add the ASTVarDeclInterface which provides methods to access clang AST
VarDecl information from CIR attributes. This interface enables:
- mangleStaticGuardVariable: Mangle guard variable names using clang's
  MangleContext
- isLocalVarDecl: Check if a variable is function-local
- getTLSKind: Get thread-local storage kind
- isInline: Check if the variable is inline
- getTemplateSpecializationKind: Get template specialization info
- getVarDecl: Direct access to the underlying VarDecl pointer

This infrastructure is needed for proper handling of static local
variables with guard variables in LoweringPrepare.
DeltaFile
+51-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.td
+22-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.h
+21-0clang/lib/CIR/Interfaces/ASTAttrInterfaces.cpp
+9-0clang/include/clang/CIR/Interfaces/CMakeLists.txt
+2-0clang/lib/CIR/Interfaces/CMakeLists.txt
+105-05 files

LLVM/project a3b5152clang/lib/CodeGen CGExpr.cpp, clang/test/CodeGenCXX cxx2a-consteval.cpp template-cxx20.cpp

[clang] CodeGen: fix ConstantExpr LValue emission (#181057)

This fixes a regression introduced in #161029, though not the fault of
that patch, only by incidental changes regarding the preservation of
constant expression nodes.

The LValue emission of ConstantExpr was doing strange things with
regards to what type corresponds to the result of the constant
expression, which are not justified by any tests or in the discussions
of the relevant patches.

See

https://github.com/llvm/llvm-project/commit/09669e6c5fa1e8db9c1091cc264640fb0377d6b6
and https://github.com/llvm/llvm-project/pull/78041 and
https://github.com/llvm/llvm-project/commit/51e4aa87e05c45bebf9658a47980b1934c88be31

This simplifies it to just use the expression type.


    [2 lines not shown]
DeltaFile
+25-2clang/test/CodeGenCXX/cxx2a-consteval.cpp
+2-12clang/lib/CodeGen/CGExpr.cpp
+12-1clang/test/CodeGenCXX/template-cxx20.cpp
+39-153 files

LLVM/project 127d77f.github/workflows release-binaries.yml

workflows/release-binaries: Pass missing release-version input to upload-release-artifact (#180879)

This was causing the 22.1.0-rc3 uploads to fail.
DeltaFile
+1-0.github/workflows/release-binaries.yml
+1-01 files

LLVM/project c8f3aadlldb/source/Plugins/Highlighter/TreeSitter/Rust RustTreeSitterHighlighter.cpp, lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter-rust parser.c scanner.c

[lldb] Add tree-sitter based Rust syntax highlighting

This adds tree-sitter based Rust syntax highlighting to LLDB. It
consists of the RustTreeSitterHighlighter plugin and some vendored
tree-sitter code, which is licensed under MIT.

The vendored code consists of:

1. A few header files from tree-sitter, which are commonly shared by
   grammars.
2. The Rust grammar consisting of scanner.c and parser.c. These files
   are generated by tree-sitter.

[1] https://github.com/tree-sitter/tree-sitter
[2] https://github.com/tree-sitter/tree-sitter-rust

This is a stacked pull request on top of: #181279
DeltaFile
+225,095-0lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter-rust/parser.c
+411-0lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter-rust/scanner.c
+361-0lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter/include/tree_sitter/array.h
+291-0lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter/include/tree_sitter/parser.h
+206-0lldb/source/Plugins/Highlighter/TreeSitter/Rust/RustTreeSitterHighlighter.cpp
+41-0lldb/source/Plugins/Highlighter/TreeSitter/third-party/tree-sitter/include/tree_sitter/alloc.h
+226,405-011 files not shown
+226,566-217 files

LLVM/project 912ed5aclang/include/clang/CIR/Interfaces ASTAttrInterfaces.td ASTAttrInterfaces.h, clang/lib/CIR/Interfaces ASTAttrInterfaces.cpp CMakeLists.txt

[CIR] Add ASTVarDeclInterface for AST attribute access

Add the ASTVarDeclInterface which provides methods to access clang AST
VarDecl information from CIR attributes. This interface enables:
- mangleStaticGuardVariable: Mangle guard variable names using clang's
  MangleContext
- isLocalVarDecl: Check if a variable is function-local
- getTLSKind: Get thread-local storage kind
- isInline: Check if the variable is inline
- getTemplateSpecializationKind: Get template specialization info
- getVarDecl: Direct access to the underlying VarDecl pointer

This infrastructure is needed for proper handling of static local
variables with guard variables in LoweringPrepare.
DeltaFile
+51-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.td
+22-0clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.h
+21-0clang/lib/CIR/Interfaces/ASTAttrInterfaces.cpp
+9-0clang/include/clang/CIR/Interfaces/CMakeLists.txt
+2-0clang/lib/CIR/Interfaces/CMakeLists.txt
+105-05 files

LLVM/project d766461lldb/source/Plugins/Highlighter/TreeSitter CMakeLists.txt

Fix bogus component
DeltaFile
+0-1lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
+0-11 files

LLVM/project c14b57eclang/lib/CodeGen CGExpr.cpp, clang/test/CodeGenCXX cxx2a-consteval.cpp template-cxx20.cpp

[clang] CodeGen: fix ConstantExpr LValue emission

This fixes a regression introduced in #161029, though not the fault of that
patch, only by incidental changes regarding the preservation of constant expression
nodes.

The LValue emission of ConstantExpr was doing strange things with regards to
what type corresponds to the result of the constant expression, which are not
justified by any tests or in the discussions of the relevant patches.

See
https://github.com/llvm/llvm-project/commit/09669e6c5fa1e8db9c1091cc264640fb0377d6b6
and https://github.com/llvm/llvm-project/pull/78041 and
https://github.com/llvm/llvm-project/commit/51e4aa87e05c45bebf9658a47980b1934c88be31

This simplifies it to just use the expression type.

Since this regression was never released, there are no release notes.

Fixes #177807
DeltaFile
+25-2clang/test/CodeGenCXX/cxx2a-consteval.cpp
+2-12clang/lib/CodeGen/CGExpr.cpp
+12-1clang/test/CodeGenCXX/template-cxx20.cpp
+39-153 files

LLVM/project 3a08e2alldb/cmake/modules FindTreeSitter.cmake LLDBConfig.cmake, lldb/source/Plugins/Highlighter CMakeLists.txt

[lldb] Add tree-sitter based syntax highlighting

This adds the necessary infrastructure to use tree-sitter for syntax
highlighting in LLDB. It provides the base class for a tree-sitter
highlighter plugin. Its primary function is interfacing with the
tree-sitter library, and converting captures to highlighting styles.

Adding a new tree-sitter highlighter consists of creating an LLDB plugin
that inherits from this class. The plugin has two core responsibilities:

1. Loading the tree-sitter grammar.
2. Specifying the tree-sitter syntax highlighting query.

Everything else is handled by the base class, making it extremely easy
to add a new language.

For more context and the motivation behind using tree-sitter for syntax
highlighting, see #170250.
DeltaFile
+231-0lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.cpp
+77-0lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.h
+18-0lldb/cmake/modules/FindTreeSitter.cmake
+10-0lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
+3-0lldb/source/Plugins/Highlighter/CMakeLists.txt
+1-0lldb/cmake/modules/LLDBConfig.cmake
+340-06 files

LLVM/project bb716c7llvm/utils/gn/secondary/clang/lib/Driver BUILD.gn, llvm/utils/gn/secondary/clang/lib/Frontend BUILD.gn

gn build: Port d090311aa7df

e60a69ab8a9e created a dependency on clangFrontend from clangDriver.
This broke the build of clang-offload-bundler because it only depends
on Driver (and only in debug builds, probably because the dependency was
dead code in clang-offload-bundler). Add the dependency to fix the build,
which also ports d090311aa7df from CMake.
DeltaFile
+1-0llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
+0-1llvm/utils/gn/secondary/clang/lib/Frontend/BUILD.gn
+1-12 files