[all-commits] [llvm/llvm-project] 1b2196: [flang][cuda] Add entry point for set/get default ...

Shilei Tian via All-commits all-commits at lists.llvm.org
Mon Feb 23 07:56:54 PST 2026


  Branch: refs/heads/users/shiltian/remove-unused-dump-code-feature
  Home:   https://github.com/llvm/llvm-project
  Commit: 1b2196bd8234252d94851c5d98e2f4df9de9b65b
      https://github.com/llvm/llvm-project/commit/1b2196bd8234252d94851c5d98e2f4df9de9b65b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/unittests/Runtime/CUDA/CMakeLists.txt
    A flang-rt/unittests/Runtime/CUDA/DefaultStream.cpp
    M flang/include/flang/Runtime/CUDA/allocator.h

  Log Message:
  -----------
  [flang][cuda] Add entry point for set/get default stream (#181440)


  Commit: 4833c51d11e5ec0306fe0386d1be487de7a5e4b6
      https://github.com/llvm/llvm-project/commit/4833c51d11e5ec0306fe0386d1be487de7a5e4b6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Revert "[TableGen] Introduce MatcherList to manage a linked list of Matchers. NFC (#177875)"

This reverts commit 39613943855e6a82b1bb4c3d16fbaf2289a5d739.

It's failing across multiple build bots.


  Commit: bb71a33c8fe4b294c76edc3d3ebc478a0f45f469
      https://github.com/llvm/llvm-project/commit/bb71a33c8fe4b294c76edc3d3ebc478a0f45f469
  Author: Lance Wang <lancewang at google.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] Fix #176920 Add MLIRBindingsPythonLibHeaders library (#181447)

MLIRBindingsPythonLibHeaders includes internal headers.


  Commit: e640d38b0d2b4691ee722738f81443e716693598
      https://github.com/llvm/llvm-project/commit/e640d38b0d2b4691ee722738f81443e716693598
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Simplify Extension Predicates, Compatibility (#181255)

This pushes some of our simplifications to extension dependencies into
other parts of RISCVISAInfo and into the tablegen predicates.

The key affected pieces are:
- Error messages around Zcd incompatibilities now reference only `zcd`.
- We now have a big list of extensions that are rv32-only.


  Commit: d2be26a9f2b75e87969c5943d48ea66c5f336d6d
      https://github.com/llvm/llvm-project/commit/d2be26a9f2b75e87969c5943d48ea66c5f336d6d
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/CodeGen/attr-no-outline.c
    A clang/test/CodeGenObjC/attr-no-outline.m
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/attr-no-outline.c
    A clang/test/Sema/attr-no-outline.cpp

  Log Message:
  -----------
  [clang] Add clang::no_outline Attribute (#163666)

This change:

- Adds a `[[clang::no_outline]]` function attribute for C and C++. There
is no equivalent GNU syntax for this attribute, so no `__attribute__`
syntax.
- Uses the presence of `[[clang::no_outline]]` to add the `nooutline`
attribute to IR function definitions.
- Adds test for the above.

The `nooutline` attribute disables both the Machine Outliner (enabled at
Oz for some targets), and the IR Outliner (disabled by default).

Fixes #144135


  Commit: e003440b8e2cf0fe01515a9b957fada77cabcdf5
      https://github.com/llvm/llvm-project/commit/e003440b8e2cf0fe01515a9b957fada77cabcdf5
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M clang/test/CXX/drs/cwg16xx.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/drs/cwg24xx.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/test/CXX/drs/cwg4xx.cpp

  Log Message:
  -----------
  [clang][NFC] Add missing indentation for expected-notes in C++ DR tests


  Commit: 74599c69920831ff04cf13a4bab5cea40984aadb
      https://github.com/llvm/llvm-project/commit/74599c69920831ff04cf13a4bab5cea40984aadb
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    A clang/test/Driver/print-enabled-extensions/riscv-spacemit-a100.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add SpacemiT A100 processor definition (#174052)


  Commit: 74be8edf939427e100b505027298d7d2552f08cd
      https://github.com/llvm/llvm-project/commit/74be8edf939427e100b505027298d7d2552f08cd
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp

  Log Message:
  -----------
  [GlobalISel] Fix type mismatch in LegalizerHelper ternary (#180865)

### Summary

Fix type mismatch in ternary expression that causes GCC `-Werror=extra`
to fail.

### Details

GCC's `-Werror=extra` enforces stricter type consistency in ternary
expressions, in this case unsigned and an enum literal.

### Tested

- Built with ToT clang and GCC 13.3.0 on Linux x86_64 (not really
because there are other warnings, but this one is gone).
- All existing tests pass


  Commit: bc50d9aa85f9ad1d8f0d389ef988cfc7996aa77f
      https://github.com/llvm/llvm-project/commit/bc50d9aa85f9ad1d8f0d389ef988cfc7996aa77f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvfofp8min.td

  Log Message:
  -----------
  [RISCV] Convert some multiclasses in RISCVInstrInfoV.td to classes if they only have one child def. NFC (#181408)

The child def requires an empty string which looks odd. Use classes and
inheritance instead.


  Commit: 7fd56a0d748bcda6d123f15c636b6a2912130a16
      https://github.com/llvm/llvm-project/commit/7fd56a0d748bcda6d123f15c636b6a2912130a16
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpowi.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll

  Log Message:
  -----------
  [RISCV] Calculate max call frame size in RISCVTargetLowering::finalizeLowering. (#181302)

I want to enable the frame pointer when the call frame size is too large
to access emergency spill slots. To do that I need to know the call
frame size early enough to reserve FP.

The code here is copied from AArch64. ARM does the same. I did not check
other targets.

Splitting this off separately because it stops us from unnecessarily
reserving the base pointer in the some RVV tests. That appears to due to
this check

(!hasReservedCallFrame(MF) && (!MFI.isMaxCallFrameSizeComputed() ||
MFI.getMaxCallFrameSize() != 0))) &&

By calculating early !MFI.isMaxCallFrameSizeComputed() is no longer true
and the size is zero.


  Commit: cfc311ed789e87b9febb56095d4173a225ce7a64
      https://github.com/llvm/llvm-project/commit/cfc311ed789e87b9febb56095d4173a225ce7a64
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/bindings/interface/SBBreakpointListExtensions.i
    M lldb/bindings/interface/SBFileSpecListExtensions.i
    M lldb/bindings/interface/SBMemoryRegionInfoListExtensions.i
    M lldb/bindings/interface/SBModuleSpecListExtensions.i
    M lldb/bindings/interface/SBProcessInfoListExtensions.i
    M lldb/bindings/interface/SBStringListExtensions.i
    M lldb/bindings/interface/SBThreadCollectionExtensions.i
    M lldb/bindings/interface/SBTypeExtensions.i
    M lldb/test/API/functionalities/breakpoint/breakpoint_names/TestBreakpointNames.py
    M lldb/test/API/functionalities/completion/TestCompletion.py
    M lldb/test/API/lang/cpp/namespace/TestNamespace.py
    M lldb/test/API/python_api/debugger/TestDebuggerAPI.py
    M lldb/test/API/python_api/find_in_memory/TestFindInMemory.py
    M lldb/test/API/python_api/sbmodule/TestSBModule.py
    M lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py
    M lldb/test/API/python_api/type/TestTypeList.py

  Log Message:
  -----------
  [lldb/API] Add __getitem__ subscript support to python SBAPI list class (#181457)

This patch adds __getitem__ method to the SBAPI list classes that were
missing subscript support, enabling Pythonic index access (e.g.,
list[0], list[-1]) in Python bindings.

The implementation adds __getitem__ to the following classes:
- SBStringList
- SBFileSpecList
- SBProcessInfoList
- SBMemoryRegionInfoList
- SBThreadCollection
- SBBreakpointList
- SBModuleSpecList
- SBTypeList

Each implementation follows the same pattern:
- Type validation (raises TypeError for non-integer indices)
- Range validation with negative index support (raises IndexError for
out-of-range)
- Delegates to the appropriate Get*AtIndex() method

The changes are in SWIG interface extension files (.i), implementing the
__getitem__ method in Python bindings while maintaining compatibility
with existing Get*AtIndex() API.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 78d995758dd369cec9664863c47d2d46d459bc08
      https://github.com/llvm/llvm-project/commit/78d995758dd369cec9664863c47d2d46d459bc08
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/RISCV.cpp
    R lld/ELF/Arch/RISCVInternalRelocations.h
    M lld/ELF/Target.cpp
    M lld/test/ELF/riscv-vendor-relocations.s

  Log Message:
  -----------
  Revert "[LLD] Add support for statically resolved vendor-specific RISCV relocations. (#169273)" (#181336)

This reverts commit 0c6d7a40187e5e6cbdff1cf5dbdb6fe91054bef4 and
follow-up 7dfa132936a89a966befb6045f306cb9905c6dab.

It landed prematurely with multiple issues in the implementation and
tests.


  Commit: d6dee9055dbf4bb495080b37c6f28e27062ef0b2
      https://github.com/llvm/llvm-project/commit/d6dee9055dbf4bb495080b37c6f28e27062ef0b2
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/RISCV.cpp

  Log Message:
  -----------
  [ELF] Move RISCV scanSectionImpl next to getRelExpr. NFC

Move scanSectionImpl and scanSection to right after getRelExpr and
before relocate, matching the ordering used in X86_64.cpp and PPC64.cpp.


  Commit: 2693adf197d778f0c0c4d05efd2d8c1419c2cc73
      https://github.com/llvm/llvm-project/commit/2693adf197d778f0c0c4d05efd2d8c1419c2cc73
  Author: Abhijeet <abhijeetsharma2002 at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16addf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16addf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16addf128.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16addf128 to header only (#181058)

Resolves #181018
Part of #147386


  Commit: 5c14267374799ca2ecb4a4965eed820ac72af786
      https://github.com/llvm/llvm-project/commit/5c14267374799ca2ecb4a4965eed820ac72af786
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vwabdau.c
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvabd.td
    A llvm/test/CodeGen/RISCV/rvv/vabd.ll
    A llvm/test/CodeGen/RISCV/rvv/vabdu.ll
    A llvm/test/CodeGen/RISCV/rvv/vabs.ll
    A llvm/test/CodeGen/RISCV/rvv/vwabda.ll
    A llvm/test/CodeGen/RISCV/rvv/vwabdau.ll

  Log Message:
  -----------
  [Clang][RISCV] Add Zvabd intrinsics

Doc:

* https://github.com/riscv/integer-vector-absolute-difference
* https://github.com/riscv-non-isa/rvv-intrinsic-doc/pull/424

Authored-by: Zhenxuan Sang <sang at bytedance.com>
Co-Authored-by: Pengcheng Wang <wangpengcheng.pp at bytedance.com>

Reviewers: preames, topperc, kito-cheng

Pull Request: https://github.com/llvm/llvm-project/pull/180929


  Commit: a1d856a8941abceb6683d3204cfdf53cc0291f69
      https://github.com/llvm/llvm-project/commit/a1d856a8941abceb6683d3204cfdf53cc0291f69
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanhf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanhf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanhf.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor tanhf implementation to header-only in src/__support/math folder. (#178554)

Part of https://github.com/llvm/llvm-project/issues/147386
closes https://github.com/llvm/llvm-project/issues/178493


  Commit: bcf0ecf7865942738c180f2dbbe01cec671b4b23
      https://github.com/llvm/llvm-project/commit/bcf0ecf7865942738c180f2dbbe01cec671b4b23
  Author: Menace <155697298+ProfessionalMenace at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ffma.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ffma.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ffma.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor ffma implementation to header-only in src/__support/math folder (#175304).

Part of #147386

in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450


  Commit: 20605617ac69de3dad49139a3de34b4dd2609607
      https://github.com/llvm/llvm-project/commit/20605617ac69de3dad49139a3de34b4dd2609607
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/switch-icmp.ll

  Log Message:
  -----------
  Reapply "[msan] Switch switch() from strict handling to (icmp eq)-style handling" (#180636) (#181112)

This reverts https://github.com/llvm/llvm-project/pull/180636 i.e.,
relands https://github.com/llvm/llvm-project/pull/179851.

It was originally reverted because of buildbot failures. When compiling
switch statements with many cases (e.g., AMDGPUGenMCCodeEmitter.inc has
>30,000 cases), MSan's instrumentation created an extremely long chained
expression for the shadow computation. Although that was legal LLVM IR,
it caused the subsequent JumpThreadingPass to have a stack overflow.

This reland avoids the issue by limiting the number of cases considered
(`-msan-switch-precision`), with the tradeoff of niche false negatives
(only in the case where the condition is partly uninitialized and the
first x cases still have a defined comparison, but a case # > x does not
have a fully-defined comparison).

This reland also adds some TODOs for possible improvements.

----

Original commit message:

Currently, the SwitchInst:
```
switch i32 %Val, label %else [ i32 0, label %A
                               i32 1, label %B
                               i32 2, label %C ]
```
is strictly handled i.e., MSan will check that %Val is fully
initialized. This is appropriate nearly all the time.

However, sometimes the compiler may convert (icmp + br) into a switch
statement. (icmp + br) has different semantics: MSan allows icmp eq/ne
with partly initialized inputs to still result in a fully initialized
output, if there exists a bit that is initialized in both inputs with a
differing value e.g., suppose:
```
%A   = 00000000 00001010
%B   = 00000000 00000110
%C   = 00000000 00000011

%Val = 00000001 ???????? (where ? denotes an uninitialized bit)
```
Even though %Val has uninitialized bits, the initialized '1' bit
immediately to the left, compared to the corresponding initialized '0'
bit in %A/%B/%C suffices to prove that %Val does not match any of those
cases. This is similar to a real-world case with std::optional (where
the has_value bit may be initialized but the value is not).

This patch adds this relaxed icmp logic to the switch instrumentation as
well, to make MSan's behavior equivalent under optimization.

Note that this edge case only applies if the switch input value
definitively does not match *any* of the cases (matching any of the
cases requires an exact, fully initialized match). If it is uncertain
whether the switch input value could, depending on the uninitialized
bits, match one of the cases or not, MSan will report
use-of-uninitialized memory.


  Commit: 8ccc40ee0ecfe1acb83a47539d4d824e167132cb
      https://github.com/llvm/llvm-project/commit/8ccc40ee0ecfe1acb83a47539d4d824e167132cb
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/hypotf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/hypotf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/hypotf16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor hypotf16 to Header Only (#180511).

closes #175337
part of #175336


  Commit: ab25249e63aba72be5365e5dc08c8d3c34d23276
      https://github.com/llvm/llvm-project/commit/ab25249e63aba72be5365e5dc08c8d3c34d23276
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    R libcxx/test/benchmarks/algorithms/push_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/sorting/push_heap.bench.cpp

  Log Message:
  -----------
  [libc++] Refactor std::push_heap benchmark (#181343)

We're trying to get the time it takes to run all the benchmarks down, so
that we can run them on a regular basis. This patch saves us ~8 minutes
per run.

Fixes #177028


  Commit: 84ce7b1f1d2997d1880f9b24ee6e6a75d4045e0a
      https://github.com/llvm/llvm-project/commit/84ce7b1f1d2997d1880f9b24ee6e6a75d4045e0a
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/llrint-conv.ll
    M llvm/test/CodeGen/X86/lrint-conv-i64.ll
    M llvm/test/CodeGen/X86/vector-llrint.ll
    M llvm/test/CodeGen/X86/vector-lrint.ll

  Log Message:
  -----------
  [X86] Avoid custom lowering `llrint` on non-x87 targets (#181339)

Fixes #181265


  Commit: 45e666a8531c1148bdb170b9a120f99e1500c427
      https://github.com/llvm/llvm-project/commit/45e666a8531c1148bdb170b9a120f99e1500c427
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/test/CodeGen/asm.c
    R llvm/include/llvm/CodeGen/CallBrPrepare.h
    A llvm/include/llvm/CodeGen/InlineAsmPrepare.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/InlineAsm.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/CodeGen/CMakeLists.txt
    R llvm/lib/CodeGen/CallBrPrepare.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    A llvm/lib/CodeGen/InlineAsmPrepare.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/callbr-prepare.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    A llvm/test/CodeGen/X86/asm-constraints-rm.ll
    A llvm/test/CodeGen/X86/inline-asm-prepare-memory.ll
    M llvm/test/CodeGen/X86/inlineasm-sched-bug.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/tools/opt/optdriver.cpp
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn

  Log Message:
  -----------
  [Clang][inlineasm] Add special support for "rm" output constraints (#92040)

Clang isn't able to support multiple constraints on inputs and outputs,
like "rm". Instead, it picks the "safest" one to use, i.e. the memory
constraint for "rm". This leads to obviously horrible code:

  asm __volatile__ ("pushf\n\t"
                    "popq %0"
                    : "=rm" (x));

is compiled to:

        pushf
	popq -8(%rsp)
	movq	-8(%rsp), %rax

It gets worse when inlined into other functions, because it may
introduce
a stack where none is needed.

With this change, Clang now generates IR for the more optimistic choice
("r"). All but the fast register allocator are able to fold registers if
it turns out that register pressure is too high.

This leaves the fast register allocator. The fast register allocator, as
the name suggests, is built for execution speed, not code quality. Thus,
we add special processing to convert the "optimistic" IR into the
"conservative" choice (again at the IR level), which we know it can
handle.

We focus on "rm" for the initial commit, but that can be expanded in the
future for other constraints where Clang generates ++ungood code (like
"g").

Fixes: https://github.com/llvm/llvm-project/issues/20571


  Commit: 6e23353c396098bf5cedf26091179f9d8dacb2e9
      https://github.com/llvm/llvm-project/commit/6e23353c396098bf5cedf26091179f9d8dacb2e9
  Author: 陈子昂 <2802328816 at qq.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/dag-stlf-mismatch.ll

  Log Message:
  -----------
  [DAGCombiner] Fix crash caused by illegal InterVT in ForwardStoreValueToDirectLoad (#181175)

This patch fixes an assertion failure in ForwardStoreValueToDirectLoad
during DAGCombine.

The crash occurs when `STLF (Store-to-Load Forwarding)` creates an
illegal intermediate bitcast type (e.g., `v128i1` when bridging a
128-bit store to a `<32 x i1>` load on X86). Since `v128i1` is not a
legal mask type for the backend, it violates the expectations of the
LegalizeDAG pass.

The fix adds a `TLI.isTypeLegal(InterVT)` check to ensure that the
intermediate type used for the transformation is supported by the
target.

Fixes #181130


  Commit: 87b9805f6c9f980f77c7b605d5f06fa9acd2a573
      https://github.com/llvm/llvm-project/commit/87b9805f6c9f980f77c7b605d5f06fa9acd2a573
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Use free arm Windows runners for PRs (#181477)

We are running low on budget, so we need to disable this temporarily.


  Commit: a636dd4c37f12594275de2fe180ca35bc04d76ea
      https://github.com/llvm/llvm-project/commit/a636dd4c37f12594275de2fe180ca35bc04d76ea
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineAsmPrepare.cpp

  Log Message:
  -----------
  [inlineasm] The CFG is not necessarily preserved.


  Commit: c4721872af5605e10f06c256aae033ef15053525
      https://github.com/llvm/llvm-project/commit/c4721872af5605e10f06c256aae033ef15053525
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/test/CodeGen/asm.c
    A llvm/include/llvm/CodeGen/CallBrPrepare.h
    R llvm/include/llvm/CodeGen/InlineAsmPrepare.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/InlineAsm.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/CallBrPrepare.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    R llvm/lib/CodeGen/InlineAsmPrepare.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/callbr-prepare.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    R llvm/test/CodeGen/X86/asm-constraints-rm.ll
    R llvm/test/CodeGen/X86/inline-asm-prepare-memory.ll
    M llvm/test/CodeGen/X86/inlineasm-sched-bug.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/tools/opt/optdriver.cpp
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn

  Log Message:
  -----------
  Revert "[Clang][inlineasm] Add special support for "rm" output constraints (#92040)"

This change landed without approval.

This reverts commit 45e666a8531c1148bdb170b9a120f99e1500c427.
This reverts commit a636dd4c37f12594275de2fe180ca35bc04d76ea.


  Commit: 1ee03d1e097f05cc9811a0e4a3e7e13e35340b6d
      https://github.com/llvm/llvm-project/commit/1ee03d1e097f05cc9811a0e4a3e7e13e35340b6d
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/bindings/python/CMakeLists.txt
    M lldb/bindings/python/python-swigsafecast.swig
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/use/python-reference.rst
    A lldb/docs/use/tutorials/scripted-symbol-locator.md
    A lldb/examples/python/templates/scripted_symbol_locator.py
    M lldb/include/lldb/API/SBFileSpec.h
    M lldb/include/lldb/API/SBModule.h
    M lldb/include/lldb/API/SBModuleSpec.h
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Core/PluginManager.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedSymbolLocatorInterface.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedSymbolLocatorPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedSymbolLocatorPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    A lldb/source/Plugins/SymbolLocator/Scripted/CMakeLists.txt
    A lldb/source/Plugins/SymbolLocator/Scripted/SymbolLocatorScripted.cpp
    A lldb/source/Plugins/SymbolLocator/Scripted/SymbolLocatorScripted.h
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    A lldb/test/API/functionalities/scripted_symbol_locator/Makefile
    A lldb/test/API/functionalities/scripted_symbol_locator/TestScriptedSymbolLocator.py
    A lldb/test/API/functionalities/scripted_symbol_locator/main.c
    A lldb/test/API/functionalities/scripted_symbol_locator/source_locator.py
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp

  Log Message:
  -----------
  [lldb] Add ScriptedSymbolLocator plugin for source file resolution (#181334)

## Summary                                                        
                                                                    
Based on discussion from
[RFC](https://discourse.llvm.org/t/rfc-python-callback-for-source-file-resolution/83545),
this PR adds a new `SymbolLocatorScripted` plugin that allows Python
scripts to implement custom symbol and source file resolution logic.
This enables downstream users to build custom symbol servers, source
file remapping, and build artifact resolution entirely in Python.
                                                                    
  ### Changes

- Adds `LocateSourceFile()` to the SymbolLocator plugin interface,
called during source path resolution with a fully loaded `ModuleSP`, so
the plugin has access to the module's UUID, file paths, and symbols.
- Adds `SymbolLocatorScripted` plugin that delegates all four
SymbolLocator methods (`LocateExecutableObjectFile`,
`LocateExecutableSymbolFile`, `DownloadObjectAndSymbolFile`,
`LocateSourceFile`) to a user-provided Python class.
- Adds `ScriptedSymbolLocatorPythonInterface` to bridge C++ calls to
Python, with proper GIL management and error handling.
- Results for `LocateSourceFile` are cached per (module UUID, source
file) pair.
- The Python class is configured via: `settings set
plugin.symbol-locator.scripted.script-class module.ClassName`

  ### Python class interface

  ```python
  class MyLocator:
      def __init__(self, exe_ctx, args): ...
      def locate_source_file(self, module, original_source_file):
  ...
      def locate_executable_object_file(self, module_spec): ...
      def locate_executable_symbol_file(self, module_spec,
  default_search_paths): ...
      def download_object_and_symbol_file(self, module_spec,
  force_lookup, copy_executable): ...
```

  ### Test plan
```
  Added TestScriptedSymbolLocator.py with 3 test cases:
  - test_locate_source_file — verifies the locator resolves source
  files, receives a valid SBModule with UUID, and remaps paths correctly
  - test_locate_source_file_none_fallthrough — verifies returning
None falls through to default LLDB resolution, and that having no script
  class set works normally
  - test_invalid_script_class — verifies graceful handling of
  invalid class names without crashing
```

Co-authored-by: Rahul Reddy Chamala <rachamal at fb.com>


  Commit: 945db339632895e18721882b0a71e9d41d9c4ef7
      https://github.com/llvm/llvm-project/commit/945db339632895e18721882b0a71e9d41d9c4ef7
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/Target.h
    M lldb/source/Target/Target.cpp
    M lldb/test/API/functionalities/scripted_symbol_locator/TestScriptedSymbolLocator.py

  Log Message:
  -----------
  [lldb] Fix Windows build and remote test failure for ScriptedSymbolLocator (#181488)

## Summary
- Move `GetScriptedSymbolLocatorClassName()` from inline in `Target.h`
to out-of-line in `Target.cpp` to avoid collision with Windows
`winuser.h` `#define GetClassName GetClassNameW` macro.
- Replace `LaunchSimple(None, None, os.getcwd())` with
`lldbutil.run_to_breakpoint_do_run()` in `test_locate_source_file` to
fix test failure on remote platforms where the local working directory
doesn't exist.

Fixes CI failures from #181334.

## Test plan
- [ ] Windows (aarch64-windows) build passes
- [ ] remote-linux-win test passes
- [ ] Existing ScriptedSymbolLocator tests pass on local platforms

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>


  Commit: 02aa032f6ff63b9f56ff171d4984e537006b6e84
      https://github.com/llvm/llvm-project/commit/02aa032f6ff63b9f56ff171d4984e537006b6e84
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp

  Log Message:
  -----------
  [lldb] Fix pid_t redefinition on Windows in ScriptInterpreterPythonInterfaces (#181492)

## Summary
- Move `#include "lldb/Core/PluginManager.h"` after `#include
"ScriptInterpreterPythonInterfaces.h"` so Python's `pyconfig.h` defines
`pid_t` before `PosixApi.h` gets included. This fixes the `C2371:
'pid_t': redefinition; different basic types` error on all Windows
builders.

Fixes CI failures from #181334 / #181488.

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>


  Commit: d7a24d30f62bc07b79f055474ecb4fe7d656e33d
      https://github.com/llvm/llvm-project/commit/d7a24d30f62bc07b79f055474ecb4fe7d656e33d
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/ranges_shift_right.h
    M libcxx/include/__algorithm/shift_right.h
    M libcxx/include/algorithm
    M libcxx/include/module.modulemap.in
    M libcxx/include/version
    M libcxx/modules/std/algorithm.inc
    A libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.shift/assert.shift_right.pass.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges_shift_right.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Implement `ranges::shift_right` (#177847)

Implement the `ranges::shift_right` algorithm from
[P2440R1](https://wg21.link/P2440R1).

Fixes #134062
Fixes #105184


  Commit: 0773c83e6666ac5cbd4c9b89ebb2e78e7c494821
      https://github.com/llvm/llvm-project/commit/0773c83e6666ac5cbd4c9b89ebb2e78e7c494821
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp

  Log Message:
  -----------
  [lldb] Fix pid_t redefinition on Windows in ScriptInterpreterPythonInterfaces (#181493)

## Summary
Include `lldb-python.h` as the first include inside the
`LLDB_ENABLE_PYTHON` block in `ScriptInterpreterPythonInterfaces.cpp`,
matching the pattern used by every other Python interface `.cpp` file in
this directory.

On Windows, `lldb-python.h` defines `NO_PID_T` before including
`Python.h`. This prevents `PosixApi.h` (transitively included via
`lldb-private.h`) from redefining `pid_t` with a conflicting type
(`uint32_t` vs `int`).

The issue was introduced by #181334 (ScriptedSymbolLocator plugin),
which added a new header whose include chain transitively reaches
`PosixApi.h`.

Fixes Windows build failures on lldb-aarch64-windows, lldb-x86_64-win,
and lldb-remote-linux-win.

## Test plan
- [ ] lldb-aarch64-windows build passes
- [ ] lldb-x86_64-win build passes
- [ ] lldb-remote-linux-win build passes

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>


  Commit: de4f473f884e1b59378bf04d37023f6fc7f3601a
      https://github.com/llvm/llvm-project/commit/de4f473f884e1b59378bf04d37023f6fc7f3601a
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp

  Log Message:
  -----------
  [lldb] Fix Windows linker error for MakeSBModuleSpec in lldb-server (#181494)

## Summary
Move the definition of `ScriptInterpreter::MakeSBModuleSpec` from
`ScriptInterpreter.cpp` to `ScriptedPythonInterface.cpp`.

`MakeSBModuleSpec` constructs an `SBModuleSpec`, whose symbols live in
the API library (`liblldb`). `ScriptInterpreter.cpp` is part of
`lldbInterpreter`, which is also linked into `lldb-server` — and
`lldb-server` does not link the API library. On Windows, this causes
`LNK2019: unresolved external symbol` for `SBModuleSpec`'s constructor
and destructor.

`ScriptedPythonInterface.cpp` is part of the Python plugin library,
which only links into `liblldb` where the API symbols are available. The
method retains friend access to `SBModuleSpec` since it is still a
member of `ScriptInterpreter` regardless of which `.cpp` file defines
it.

Fixes Windows linker failure from #181334.

## Test plan
- [ ] Existing ScriptedSymbolLocator tests pass

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>


  Commit: 7b052c4c0e00476fa8bfae72568ceeb05e75f89c
      https://github.com/llvm/llvm-project/commit/7b052c4c0e00476fa8bfae72568ceeb05e75f89c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M .github/workflows/build-libc-container.yml

  Log Message:
  -----------
  [Github][libc] Also build arm container (#181497)

Some of the libc full build tests also run on AArch64 machines. We need
to build an ARM container or otherwise the container fails to start and
we never end up running anything.


  Commit: 846e022a5d145ede7d7558c03d4a1559b96b34d3
      https://github.com/llvm/llvm-project/commit/846e022a5d145ede7d7558c03d4a1559b96b34d3
  Author: rchamala <36907958+rchamala at users.noreply.github.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp

  Log Message:
  -----------
  [lldb] NFC: Use standard comment for lldb-python.h include (#181498)

## Summary
Use the standard `// LLDB Python header must be included first.` comment
to match every other Python interface `.cpp` file in this directory, as
suggested by @JDevlieghere.

## Test plan
NFC - comment only change.

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>


  Commit: cd38f8486b58d3dc6a09dfd10bdf0a88d976f3d5
      https://github.com/llvm/llvm-project/commit/cd38f8486b58d3dc6a09dfd10bdf0a88d976f3d5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/smax-idx.ll

  Log Message:
  -----------
  [LV] Add argmin test for epilogue vectorization w/o wide canonical IV.

Add additional epilogue vectorization test coverage for
https://github.com/llvm/llvm-project/pull/170223.

Also regenerate check lines for related tests.


  Commit: aecc4997bf120f8f3d80417024decf1c3a286bc5
      https://github.com/llvm/llvm-project/commit/aecc4997bf120f8f3d80417024decf1c3a286bc5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/test/ELF/ppc64-tls-missing-gdld.s

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for PPC64 (#181496)

Implement PPC64::scanSectionImpl, following the pattern established for
x86. This merges the getRelExpr and TLS handling for SHF_ALLOC sections
into the target-specific scanner, enabling devirtualization and
eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle TLS GD, LD, and DTPREL directly, eliminating
  handleTlsRelocation, getTlsGdRelaxSkip, and adjustTlsExpr overrides.
  Use handleTlsIe for TLS IE, enabling IE-to-LE optimization even when
  ppc64DisableTLSRelax is set (lifted a limitation from
  the workaround patch https://reviews.llvm.org/D92959).
- Use processAux for R_PPC64_PCREL_OPT. Remove the PPC64-specific
  special case from process().
- Replace RE_PPC64_RELAX_GOT_PC with R_RELAX_GOT_PC, which computes
  the same value (sym + addend - PC).
- Replace RE_PPC64_RELAX_TOC with R_GOTREL, moving the
  ctx.arg.tocOptimize check to relocateAlloc.
- Switch relocateAlloc from expr-based to type-based dispatch.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc.


  Commit: caf2a4846b4f32598a74b234c2d74032210f5bde
      https://github.com/llvm/llvm-project/commit/caf2a4846b4f32598a74b234c2d74032210f5bde
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve2-histcnt-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/PowerPC/vplan-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/X86/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/icmp-uniforms.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/phi-with-fastflags-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-iv-transforms.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-before-execute.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  [VPlan] Use -vplan-print-after in more VPlan tests

use vplan-print-after instead of -debug/-debug-only in more tests,
auto-generate some checks.


  Commit: 1d48322502a0b6ef6e0843adb8023106a4e27840
      https://github.com/llvm/llvm-project/commit/1d48322502a0b6ef6e0843adb8023106a4e27840
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Windows/rtlsizeheap_zero.cpp

  Log Message:
  -----------
  [ASan] [Windows] Fix a new test in mingw mode

The new test case added in 781719778003ca298ca57e486ab629b7f384844b
didn't work in mingw mode; defines set through `/D` only works when
using the clang-cl compiler driver, not the regular clang compiler
driver.

Switch this to use `-D`, which works with both plain clang and
clang-cl, so we don't need to use a lit macro for expanding
the right option to use.


  Commit: 9de9522263a0e8165a4d9f885b0ccbc3482ebb86
      https://github.com/llvm/llvm-project/commit/9de9522263a0e8165a4d9f885b0ccbc3482ebb86
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Revisit tests for CWG2917 and CWG3005 after Core updates (#181513)

This patch revisits the status of tests for two aforementioned Core
issues.
I agree with the analysis in #170410, so no changes are made to CWG2917
test.
In case of CWG3005, Core approved the 2025-09-12 proposed resolution,
which the test was written against in the first place.

Fixes #170410


  Commit: 052f2f8cd17f3ff8bcb7b53a777a232d9ac36965
      https://github.com/llvm/llvm-project/commit/052f2f8cd17f3ff8bcb7b53a777a232d9ac36965
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Update cxx_dr_status.html


  Commit: 5e87f8147d680f340948d428f44b93a239a22464
      https://github.com/llvm/llvm-project/commit/5e87f8147d680f340948d428f44b93a239a22464
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for PPC32 (#181517)

Implement PPC::scanSectionImpl, following the pattern established for
x86 (#178846) and PPC64 (#181496). This merges the getRelExpr and TLS
handling for SHF_ALLOC sections into the target-specific scanner,
enabling devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle R_PPC_PLTREL24 inline with addend masking via processAux,
  removing the EM_PPC special case from process().
- Handle TLS GD/LD/IE directly, eliminating handleTlsRelocation,
  getTlsGdRelaxSkip, and adjustTlsExpr overrides. Use handleTlsIe
  for TLS IE, and handleTlsGd for R_PPC_GOT_TLSGD16.
- Use R_DTPREL unconditionally for DTPREL relocations, removing
  R_RELAX_TLS_LD_TO_LE_ABS (PPC32 was the only user).
- Move TLS relaxation dispatch from relocateAlloc into relocate,
  removing the relocateAlloc override.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and .eh_frame.


  Commit: abf1d0bea04ab5d5ed1be3708ce1cd86707d5c8f
      https://github.com/llvm/llvm-project/commit/abf1d0bea04ab5d5ed1be3708ce1cd86707d5c8f
  Author: Miko <110693261+mikomikotaishi at users.noreply.github.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [clang][Python] Use fstrings instead of string concatenations (#173861)

This PR replaces string concatenations and the older `%` string
interpolation with fstrings. These changes were originally part of
#173845 but have been moved to a new PR.


  Commit: a4cb2b00df606a6fd42dd4a8273e61fc8696939a
      https://github.com/llvm/llvm-project/commit/a4cb2b00df606a6fd42dd4a8273e61fc8696939a
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanhf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanhf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanhf16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor tanhf16 implementation to header-only in src/__support/math folder. (#178645)

Part of https://github.com/llvm/llvm-project/issues/147386
closed https://github.com/llvm/llvm-project/issues/178492


  Commit: 5a6f504922f9cb11f80f0c436ea203c035d92584
      https://github.com/llvm/llvm-project/commit/5a6f504922f9cb11f80f0c436ea203c035d92584
  Author: Atharv Mane <atharvamane19 at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16add.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16add.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16add.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16add to header only (#181392)

Resolves #181016
Part of #147386


  Commit: cfe1b46b46e7470a5f4162bfeae2440fb99cfed6
      https://github.com/llvm/llvm-project/commit/cfe1b46b46e7470a5f4162bfeae2440fb99cfed6
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vaaddu.ll

  Log Message:
  -----------
  [DAGCombiner] Fold trunc(build_vector(ext(x), ext(x)) -> build_vector(x,x) (#179857)

The original implementation performed the transformation when
isTruncateFree was true:
 truncate(build_vector(x, x)) -> build_vector(truncate(x), truncate(x)).
    
In some cases, x comes from an ext, try to pre-truncate build_vectors
source operands
 when the source operands of build_vectors comes from an ext.
    
 Testcase from: https://gcc.godbolt.org/z/bbxbYK7dh


  Commit: 35e04701dd3a0352176de6cafc6ac4e0f18b9089
      https://github.com/llvm/llvm-project/commit/35e04701dd3a0352176de6cafc6ac4e0f18b9089
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/InputFiles.h
    M lld/test/ELF/ppc64-tls-missing-gdld.s

  Log Message:
  -----------
  [ELF,PPC64] Scope checkPPC64TLSRelax to section and simplify TLS markers

checkPPC64TLSRelax detects TLS GD/LD without TLSGD/TLSLD markers
(generated from old IBM XL) and disables TLS optimization. Previously it
set a per-file flag (ppc64DisableTLSRelax). Now scope it in the section
being scanned.

In addition, simplify the R_PPC64_TLSGD/R_PPC64_TLSLD marker handling:
the redundant `sym.setFlags(NEEDS_TLSIE)` is unnecessary as the
preceding GOT_TLSGD relocation already sets it.


  Commit: 2dd94a48695c98f51518125f4eb9677a82911523
      https://github.com/llvm/llvm-project/commit/2dd94a48695c98f51518125f4eb9677a82911523
  Author: SiliconA-Z <gfunni234 at gmail.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/bitmanip.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctls-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir

  Log Message:
  -----------
  [GlobalISel] Optimize CTPOP lowering to match SelDAG (#181499)

Prevent multiplication when only having 16 bits.


  Commit: 08c5c0da6775154b3437b2548f4528f83e74f87c
      https://github.com/llvm/llvm-project/commit/08c5c0da6775154b3437b2548f4528f83e74f87c
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/pass-by-value.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-ignore-macros.cpp

  Log Message:
  -----------
  [clang-tidy] Add IgnoreMacros option to modernize-pass-by-value (#181465)

Part of #156153


  Commit: 45bee6efe9d69e49ca223bdea77353753549c2c9
      https://github.com/llvm/llvm-project/commit/45bee6efe9d69e49ca223bdea77353753549c2c9
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    A mlir/include/mlir/Bindings/Python/IRInterfaces.h
    M mlir/lib/Bindings/Python/DialectTransform.cpp
    M mlir/lib/Bindings/Python/IRInterfaces.cpp
    R mlir/lib/Bindings/Python/IRInterfaces.h

  Log Message:
  -----------
  [mlir][Python] fix IRInterfaces.h (#181522)

https://github.com/llvm/llvm-project/pull/176920 added `IRInterfaces.h`
but didn't include it in either the list of [installed
headers](https://github.com/llvm/llvm-project/blob/a1d7cda1d7ca4983e02727f589952b02626d2dc8/mlir/python/CMakeLists.txt#L557)
or `mlir/Bindings/Python`. This breaks downstreams. So just move the
header to `mlir/Bindings/Python`


  Commit: 5548b24d18ad9e856bcb354a17b52c15fa37bf73
      https://github.com/llvm/llvm-project/commit/5548b24d18ad9e856bcb354a17b52c15fa37bf73
  Author: Aditya Singh <aditya26189 at kgpian.iitkgp.ac.in>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive for generic lambda parameters in readability-non-const-parameter (#179051)

Fixes #177354

### Summary
The `readability-non-const-parameter` check produces false positives on
generic lambda parameters, not fully resolved by #177345.

### Problem
Generic lambdas with explicit template parameters create dependent
contexts that cannot be analyzed at parse time:

```cpp
auto lambda = []<typename T>(int *p) {
  T x(*p);   // No longer warns
};
```


  Commit: 02429c46330fca6d057684aa05e1efd813fe0de3
      https://github.com/llvm/llvm-project/commit/02429c46330fca6d057684aa05e1efd813fe0de3
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [LV] Fix strict weak ordering violation in handleUncountableEarlyExits sort (#181462)

The sort comparator used VPDT.dominates() which returns true for
dominates(A, A), violating the irreflexivity requirement of strict weak
ordering. With _GLIBCXX_DEBUG enabled (LLVM_ENABLE_EXPENSIVE_CHECKS=ON),
std::sort validates this property and aborts:

Error: comparison doesn't meet irreflexive requirements, assert(!(a <
a)).

Use properlyDominates() instead, which correctly returns false for equal
inputs while preserving the intended dominance-based ordering.

This fixes a crash introduced by ede1a9626b89 ("[LV] Vectorize early
exit loops with multiple exits.").


  Commit: b33350f5ff3a29508cf3ba69b10683afc378e905
      https://github.com/llvm/llvm-project/commit/b33350f5ff3a29508cf3ba69b10683afc378e905
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/RadixTree.h

  Log Message:
  -----------
  [ADT] Fix RadixTree singular iterator use in findOrCreate (#181510)

The root node's Key is initialized with default-constructed (singular)
iterators. When findOrCreate calls llvm::mismatch(Key, Curr->Key) on the
first loop iteration where Curr is the root, these singular iterators
are passed to std::mismatch. _GLIBCXX_DEBUG correctly rejects them as
not forming a valid iterator range.

Skip the mismatch when Curr is the root node since its key is
conceptually empty, making the mismatch a no-op.

Fixes a test failure in ADTTests/RadixTreeTypeTest introduced by
5fda2a5d9c1a ("[NFC][ADT] Add RadixTree (#164524)").


  Commit: 104e82b75defd23ade610a5a75cd95244638ec0b
      https://github.com/llvm/llvm-project/commit/104e82b75defd23ade610a5a75cd95244638ec0b
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/PPC64.cpp

  Log Message:
  -----------
  [ELF,PPC64] Inline toAddr16Rel and TLS remapping into the main relocate switch

Delete the toAddr16Rel helper and the GOT_TLS-to-GOT16 remapping switch,
inlining their val adjustments as fallthrough cases in the main switch.
This reduces relocate() from 4 switches on type to 2 (TLS relaxation
pre-switch with early returns, and the unified write switch).


  Commit: 8d971c0360f91729cc5120ffd361f7b55e97f2ab
      https://github.com/llvm/llvm-project/commit/8d971c0360f91729cc5120ffd361f7b55e97f2ab
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Reapply "[TableGen] Introduce MatcherList to manage a linked list of Matchers. NFC (#177875)"

With fixes to the slice_after functions to avoid dereferencing the
before_begin() iterator. Deferencing the iterator casts a pointer
to the BeforeBegin object to Matcher*, but the BeforeBegin object
is not a Matcher. This caused a failure when built with gcc.

Original commit message:

The previous memory management involved passing around references to the
std::unique_ptr next pointer in each Matcher. Scopes and
SwitchOpcode/SwitchType did not use std::unique_ptr internally, but
would sometimes need to have the pointers to their children moved to
temporary std::unique_ptrs that may be modified and then put back into
the Scope/Switch. Other code used manual deletion.

This patch introduces a MatcherList object that encapsulates list
management and ownership. The interface is based on std::forward_list
using the libcxx implementation for reference.

Once a Matcher is added to a MatcherList it can only be in that list or
spliced into another list. This ensures it is always owned by a list
that will be responsible for deleting it.

Scope and SwitchOpcode/Type children are now MatcherLists rather than
Matcher*. A nice side effect of this is that we no longer need a Size
field in each Matcher to store the size of Scope/Switch children during
emission. This field was only used for the Matcher that the Scope/Switch
children pointed to. Now we can store it in the MatcherList instead.

There is no change to the generated output.

There's still a little bit of cleanup that can be done in follow ups. For example,
renaming "TheMatcher" and merging FactorScope and FactorNodes together.


  Commit: 4ab66e444bab26b2f018f9408282eaa8b958d785
      https://github.com/llvm/llvm-project/commit/4ab66e444bab26b2f018f9408282eaa8b958d785
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Combine FactorNodes and FactorScope. NFC

These were separated in 31db7afacf4dae051fcd0da22e440813663b61f3
due to the complexity of the rebindable unique_ptr. With the
switch to MatcherList, the code is not as complicated.


  Commit: 241b8876ddc7c8805cd0ab4f8265842c0782023e
      https://github.com/llvm/llvm-project/commit/241b8876ddc7c8805cd0ab4f8265842c0782023e
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Silence a warning (NFC)

llvm-project/llvm/utils/TableGen/DAGISelMatcherOpt.cpp:495:16:
 error: unused variable 'Tmp' [-Werror,-Wunused-variable]
      Matcher *Tmp =
               ^
1 error generated.


  Commit: ee9aeb4e05aa8edd2077b79f6712ea353ef5be77
      https://github.com/llvm/llvm-project/commit/ee9aeb4e05aa8edd2077b79f6712ea353ef5be77
  Author: Wang Yaduo <wangyaduo at linux.alibaba.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp

  Log Message:
  -----------
  [NFC] Fix typos 'bicast' -> 'bitcast' (#180890)

Fix typos bicast -> bitcast. I find this when I'm resovling a codegen
prepare optimazation.


  Commit: afd4df07ab0262482829d4410a6bae9f2809d37b
      https://github.com/llvm/llvm-project/commit/afd4df07ab0262482829d4410a6bae9f2809d37b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - add DemandedElts, OrZero arguments and support for zero constants (#181485)

Update the signature for isKnownToBeAPowerOfTwo methods to take
DemandedElts and OrZero arguments.

So far all I've done is add OrZero support for constants
(scalars/buildvector/splat), with the intention to incrementally extend
support in the future (or spread the work as beginner GFI patches).

Similarly the DemandedElts argument is currently only used for constant
build vector tests but support can be extended in future patches.

Fixes #178938


  Commit: 47abe868314d2b2d71d188723bda41ea3d4641f7
      https://github.com/llvm/llvm-project/commit/47abe868314d2b2d71d188723bda41ea3d4641f7
  Author: Alex Wang <yesterda9 at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/CFG.cpp
    A clang/test/Analysis/cfg-assignment-eval-order.cpp
    M clang/test/Analysis/missing-bind-temporary.cpp
    M clang/test/Analysis/scopes-cfg-output.cpp

  Log Message:
  -----------
  [clang][CFG] Sequence RHS before LHS for overloaded assignment operators in CFG to match C++17 rules (#181113)

Fixes #180521


  Commit: f26e8595c3073fafc822bfcdd3ca9dec32ab573b
      https://github.com/llvm/llvm-project/commit/f26e8595c3073fafc822bfcdd3ca9dec32ab573b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Use VPlan::getConstantInt in a few more cases (NFC).

VPlan::getConstantInt() allows for slightly more compact creation of
VPIRValues wrapping ConstantInts.


  Commit: c0c2e38d4a69e21c16a0a34ebecf888caadcb81f
      https://github.com/llvm/llvm-project/commit/c0c2e38d4a69e21c16a0a34ebecf888caadcb81f
  Author: AidinT <at.aidin at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/CMakeLists.txt
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td

  Log Message:
  -----------
  [MLIR] Generate DataLayoutDialectInterface using ODS (#181217)

This PR converts DataLayoutDialectInterface to a ODS dialect
interface.


  Commit: f3a816598dc281666fbe799776656249f52afda3
      https://github.com/llvm/llvm-project/commit/f3a816598dc281666fbe799776656249f52afda3
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h

  Log Message:
  -----------
  [VPlan] Add VPSymbolicValue for UF. (NFC)

Add a symbolic unroll factor (UF) to VPlan similar to VF & VFxUF that
gets replaced with the concrete UF during plan execution, similar to how VF
is used for the vectorization factor. This is a preparatory change that
allows transforms to use the symbolic UF before the concrete UF is
determined.

Note that the old getUF that returns the concrete UF after unrolling has
been renamed to getConcreteUF.

Split off from the re-commit of 8d29d093096
(https://github.com/llvm/llvm-project/pull/149706) as suggested.


  Commit: bcbb04acf5b136b98ce1edf4cbd0de283ca24756
      https://github.com/llvm/llvm-project/commit/bcbb04acf5b136b98ce1edf4cbd0de283ca24756
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/LayoutOverrideSource.cpp

  Log Message:
  -----------
  [clang] Add explicit std::move(...) to avoid a few copies (#180478)

Moving an std::shared_ptr is always profitable (marginally).

Moving a clang::LayoutOverrideSource::Layout may be profitable depending
on the size of the underlying llvm::SmallVector.

Changes suggested by performance-use-std-move from #179467


  Commit: 152d811de1c8ef450117d522696ec0271e4572e8
      https://github.com/llvm/llvm-project/commit/152d811de1c8ef450117d522696ec0271e4572e8
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  Revert "[clang][Python] Use fstrings instead of string concatenations (#173861)"

This reverts commit abf1d0bea04ab5d5ed1be3708ce1cd86707d5c8f,
because its title and description are entirely wrong.
f-strings is what was initially proposed, but then it was decided
to go with `str.format`.


  Commit: 0f7791e9d82d7d40981eb1a781a61c1e988997fd
      https://github.com/llvm/llvm-project/commit/0f7791e9d82d7d40981eb1a781a61c1e988997fd
  Author: Miko <110693261+mikomikotaishi at users.noreply.github.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [clang][Python] Use str.format instead of string concatenations (#173861)

This PR replaces string concatenations and the older `%` string
interpolation with `str.format`. Changes along those lines were
originally a part of #173845, but they were moved to a new PR,
where it was decided that `str.format` is preferable over
f-strings.

Changes in this commit are identical to
abf1d0bea04ab5d5ed1be3708ce1cd86707d5c8f, but commit title and
description were changed to correctly reflect the changes.


  Commit: 70905e0afae2e2f14c405bca514494c5b1449822
      https://github.com/llvm/llvm-project/commit/70905e0afae2e2f14c405bca514494c5b1449822
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/IR/Constant.h
    M llvm/lib/Analysis/BranchProbabilityInfo.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/Lint.cpp
    M llvm/lib/Analysis/Local.cpp
    M llvm/lib/Analysis/MustExecute.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/FuzzMutate/IRMutator.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/X86/X86LowerAMXType.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/unittests/Analysis/ValueLatticeTest.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M polly/lib/Support/SCEVValidator.cpp
    M polly/lib/Transform/ZoneAlgo.cpp

  Log Message:
  -----------
  [RFC][IR] Remove `Constant::isZeroValue` (#181521)

`Constant::isZeroValue` currently behaves same as
`Constant::isNullValue` for all types except floating-point, where it
additionally returns true for negative zero (`-0.0`). However, in
practice, almost all callers operate on integer/pointer types where the
two are equivalent, and the few FP-relevant callers have no meaningful
dependence on the `-0.0` behavior.

This PR removes `isZeroValue` to eliminate the confusing API. All
callers are changed to `isNullValue` with no test failures.

`isZeroValue` will be reintroduced in a future change with clearer
semantics: when null pointers may have non-zero bit patterns,
`isZeroValue` will check for bitwise-all-zeros, while `isNullValue` will
check for the semantic null (which
may be non-zero).


  Commit: e86750b29fa0ff207cd43213d66dabe565417638
      https://github.com/llvm/llvm-project/commit/e86750b29fa0ff207cd43213d66dabe565417638
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    A llvm/test/tools/llubi/assume_false.ll
    A llvm/test/tools/llubi/assume_poison.ll
    A llvm/test/tools/llubi/br_poison.ll
    A llvm/test/tools/llubi/call_mismatched_signature.ll
    A llvm/test/tools/llubi/call_poison.ll
    A llvm/test/tools/llubi/controlflow.ll
    A llvm/test/tools/llubi/indirectbr_invalid.ll
    A llvm/test/tools/llubi/indirectbr_poison.ll
    A llvm/test/tools/llubi/infinite_loop.ll
    M llvm/test/tools/llubi/int_arith.ll
    A llvm/test/tools/llubi/invoke_poison.ll
    A llvm/test/tools/llubi/stack_overflow.ll
    A llvm/test/tools/llubi/switch_poison.ll
    A llvm/test/tools/llubi/unreachable.ll
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llubi/lib/Value.h
    M llvm/tools/llubi/llubi.cpp

  Log Message:
  -----------
  [llubi] Add basic support for icmp, terminators and function calls (#181393)

Note: icmp with integers is also introduced in this patch, as it is
needed to compute branch conditions.


  Commit: b19606721a3d29325e237b1c94efc463edae82b8
      https://github.com/llvm/llvm-project/commit/b19606721a3d29325e237b1c94efc463edae82b8
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml

  Log Message:
  -----------
  [Github][libc] Use a container for fullbuild tests (#181436)

This avoids needing to set up deps every time and avoids failures due to
failed dependency installation.

Closed #150490.


  Commit: c087fff25a2420ff7023445973e72f3261385b5d
      https://github.com/llvm/llvm-project/commit/c087fff25a2420ff7023445973e72f3261385b5d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    A llvm/test/tools/llubi/struct.ll
    A llvm/test/tools/llubi/vector.ll
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llubi/lib/Value.h

  Log Message:
  -----------
  [llubi] Add basic support for vector and aggregate ops (#181544)


  Commit: 255b493673e65201986d443c64db0a251a4ddbe8
      https://github.com/llvm/llvm-project/commit/255b493673e65201986d443c64db0a251a4ddbe8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/big-number-reduced-values.ll

  Log Message:
  -----------
  [SLP]Do not overflow number of the reduced values

Need to trunc the total number of the reduced values, in case if the
number is too big

Fixes #181520


  Commit: 38702e0a04319a7d7d6d46d34dde6804adeaad3a
      https://github.com/llvm/llvm-project/commit/38702e0a04319a7d7d6d46d34dde6804adeaad3a
  Author: Tirthankar Mazumder <tmazumder.github at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/InstCombine/icmp-add.ll

  Log Message:
  -----------
  [InstCombine][NFC] Add test for existing fold (#181555)

Resolves #73417.

The fold described in #73417 is already present in LLVM `main`, but it
isn't tested for specifically. This PR adds a test for this fold, based
on the IR in the topmost comment of that issue.


  Commit: ec095a5d47a4bf5cd7755d440be5431739a9244f
      https://github.com/llvm/llvm-project/commit/ec095a5d47a4bf5cd7755d440be5431739a9244f
  Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-and-or.ll

  Log Message:
  -----------
  [InstCombine] Optimise the expression `(C && A) || (!C && B)` with `FoldOrOfLogicalAnds` (#178438)


  Commit: 7f5c1b95b9d28bd4322bc2eb0c12cc3cc59bf0d6
      https://github.com/llvm/llvm-project/commit/7f5c1b95b9d28bd4322bc2eb0c12cc3cc59bf0d6
  Author: Yi Zhang <cathyzhyi at google.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] fix #181217 (#181556)

fix #181217


  Commit: 6f253e87ddac3c3fffd71c6c5ccfa457096bc191
      https://github.com/llvm/llvm-project/commit/6f253e87ddac3c3fffd71c6c5ccfa457096bc191
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll

  Log Message:
  -----------
  Reapply "[VPlan] Run narrowInterleaveGroups during general VPlan optimizations. (#149706)"

This reverts commit 8d29d09309654541fb2861524276ada6a3ebf84c.

The underlying issue causing the revert has been fixed independently
as 301fa24671256734df6b7ee65f23ad885400108e.

Original message:
Move narrowInterleaveGroups to to general VPlan optimization stage.

To do so, narrowInterleaveGroups now has to find a suitable VF where all
interleave groups are consecutive and saturate the full vector width.

If such a VF is found, the original VPlan is split into 2:
 a) a new clone which contains all VFs of Plan, except VFToOptimize, and
 b) the original Plan with VFToOptimize as single VF.

The original Plan is then optimized. If a new copy for the other VFs has
been created, it is returned and the caller has to add it to the list of
candidate plans.

Together with https://github.com/llvm/llvm-project/pull/149702, this
allows to take the narrowed interleave groups into account when
computing costs to choose the best VF and interleave count.

One example where we currently miss interleaving/unrolling when
narrowing interleave groups is https://godbolt.org/z/Yz77zbacz

PR: https://github.com/llvm/llvm-project/pull/149706


  Commit: f3b96cbf20137562ff069e315f7915524a350d08
      https://github.com/llvm/llvm-project/commit/f3b96cbf20137562ff069e315f7915524a350d08
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll

  Log Message:
  -----------
  [ScalarizeMaskedMemIntrin] Remove redundant RUN: line

5cfd815c14f378c50018f6967c027b758c3996a6 introduced redundant run lines
when doing some NewPM related cleanup. Remove them given they are
identical. LegacyPM coverage is handled through llc.


  Commit: 04ef765b65040e1df4cafaf3dacc26fa5d48e519
      https://github.com/llvm/llvm-project/commit/04ef765b65040e1df4cafaf3dacc26fa5d48e519
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M libcxx/include/module.modulemap.in
    M libcxx/test/benchmarks/containers/sequence/sequence_container_benchmarks.h
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_forward_iterator.compile.pass.cpp
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_input_iterator.compile.pass.cpp
    M libcxx/test/libcxx/input.output/filesystems/class.path/path.req/is_pathable.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/dereference.pass.cpp
    M libcxx/test/libcxx/iterators/iterator.requirements/iterator.concepts/cpp20_iter_traits.compile.pass.cpp
    M libcxx/test/libcxx/iterators/iterator_with_data.pass.cpp
    M libcxx/test/libcxx/iterators/product_iterator.pass.cpp
    M libcxx/test/libcxx/iterators/unwrap_iter.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/pstl.move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_stable_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/ranges_sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/ranges_shuffle.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/ranges.reverse.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges.shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_right.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.binary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.unary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/pstl.all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/pstl.any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/pstl.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/ranges.find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/ranges.find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.fold/requirements.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/ranges.is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/pstl.none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.starts_with/ranges.starts_with.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.binary.search/equal.range/ranges_equal_range.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/make.heap/ranges_make_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/pop.heap/ranges_pop_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/push.heap/ranges_push_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_inplace_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.max.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.min.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/requires_forward_iterator.verify.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.nth.element/ranges_nth_element.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/includes/ranges_includes.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.difference/ranges_set_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/ranges_set_intersection.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/ranges_set_symmetric_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.union/ranges_set_union.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort.copy/ranges_partial_sort_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort/ranges_partial_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/pstl.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/ranges.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/pstl.stable_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/ranges.stable.sort.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/source.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.operations/distance.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/cxx20_iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/lwg3664.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/iterator.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/indirectcallable/projected/projected.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.bidir/bidirectional_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.forward/forward_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.input/input_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.iterator/input_or_output_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.random.access/random_access_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.cust/iterator.cust.swap/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/arrow.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/assign.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/count.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.conv.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/decrement.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/deref.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/increment.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/member_types.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.default_sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.eq.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.size.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/plus.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/subscript.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/three_way_compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/types.h
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.conv/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/sized_sentinel.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/test_neg_one.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/pstl.reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init_op.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.binary.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.unary.pass.cpp
    M libcxx/test/std/ranges/range.access/size.pass.cpp
    M libcxx/test/std/ranges/range.access/ssize.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adaptor.object/range_adaptor_closure.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/all_t.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/begin_end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/data.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/empty.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/dangling.cache.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/types.h
    M libcxx/test/std/ranges/range.adaptors/range.filter/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/types.h
    M libcxx/test/std/ranges/range.adaptors/range.take.while/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/ctor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/plus_minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/sentinel.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/subscript.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/std/ranges/range.factories/range.iota.view/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/ctad.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/elements_of.pass.cpp
    M libcxx/test/std/ranges/range.utility/view.interface/view.interface.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range_deduction.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/string.view/string.view.cons/from_iterator_sentinel.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/pred.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/ranges_uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/support/module.modulemap
    M libcxx/test/support/test.support/test_proxy.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  [libc++] Add test_iterators.h to the modulemap (#181351)

and fix all the missing includes found by it.


  Commit: e819483c20ea502e9a0f3cc29276cc05a3f35e98
      https://github.com/llvm/llvm-project/commit/e819483c20ea502e9a0f3cc29276cc05a3f35e98
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-safety-invalidations.cpp

  Log Message:
  -----------
  [LifetimeSafety] 'erase' does not invaldiate node-based containers (#181216)

```cpp
// This pattern was previously flagged as a lifetime violation
for (auto it = my_map.begin(); it != my_map.end(); ) {
    if (should_delete(*it)) {
        my_map.erase(it++); // Safe in map, but flagged as invalidating 'it'
    } else {
        ++it;
    }
}
```


  Commit: 8988fb751669a7e47deb4aa3f3f5fd03ccc95831
      https://github.com/llvm/llvm-project/commit/8988fb751669a7e47deb4aa3f3f5fd03ccc95831
  Author: edisongz <edisongz123 at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaCodeComplete.cpp
    A clang/test/CodeCompletion/objc-cast-parenthesized-expr.m

  Log Message:
  -----------
  [clang][ObjC][CodeComplete] Fix crash on C-Style cast with parenthesized operand in ObjC++ (#180343)

In ObjC++ mode, code-completion after a C-style cast like
`(int*)(0x200)` crashed because the inner parenthesized expression was
parsed as a `ParenListExpr` (null type) due to `AllowTypes` propagation.

Fixes https://github.com/llvm/llvm-project/issues/180125


  Commit: 6d033abb71d69e387595e7f7480ca45992e80181
      https://github.com/llvm/llvm-project/commit/6d033abb71d69e387595e7f7480ca45992e80181
  Author: Michal Paszkowski <michal at michalpaszkowski.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    A llvm/test/Transforms/InstCombine/phi-int2ptr-different-addrspace.ll

  Log Message:
  -----------
  [InstCombine] Avoid invalid bitcast across address spaces in foldIntegerTypedPHI (#181064)

Only use a PtrToInt's source pointer as an available pointer value when
its pointer type exactly matches the inttoptr target type. This prevents
creating an invalid bitcast between differing address spaces during
foldIntegerTypedPHI.


  Commit: 6ce9e363e0022d6f3ef42363cfb1761aaed4f77b
      https://github.com/llvm/llvm-project/commit/6ce9e363e0022d6f3ef42363cfb1761aaed4f77b
  Author: Aayush Sabharwal <aayush.sabharwal at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-cttz.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-cttz-zero-undef.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-cttz.mir
    M llvm/test/CodeGen/AMDGPU/cttz.ll
    M llvm/test/CodeGen/X86/GlobalISel/legalize-trailing-zeros-undef.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-trailing-zeros.mir

  Log Message:
  -----------
  [GISel] handle CTTZ in `computeKnownBits` (#181474)

Addresses part of #150515. Adapted from the CTLZ code below this


  Commit: 901e543c15bd5e46a33dc19354a35da0278aaf7b
      https://github.com/llvm/llvm-project/commit/901e543c15bd5e46a33dc19354a35da0278aaf7b
  Author: Darshan Bhat <darshanbhatsirsi at gmail.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/ExpandOps.cpp
    M mlir/test/Dialect/Math/expand-math.mlir

  Log Message:
  -----------
  [mlir][Math] Fix math-expand-ops crash on math.ctlz with index type (#181539)

Fixes #179847
math.ctlz expansion called getIntOrFloatBitWidth() on the operand type
without checking. Index type has no fixed bitwidth and is not int/float,
so the assertion in Type::getIntOrFloatBitWidth() could fire.

- In convertCtlzOp, bail out with notifyMatchFailure when the element
type is not integer or float, so expansion is only applied to types with
a defined bitwidth.
- Add a test in expand-math.mlir that math.ctlz on index is left
unchanged by the pass (no crash, op preserved).


  Commit: 3ec6ca7d58c4a1a7ee68df41388d71c4e4b858d0
      https://github.com/llvm/llvm-project/commit/3ec6ca7d58c4a1a7ee68df41388d71c4e4b858d0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Reduce number of call to FactorNodes. NFC

Previously we recursively called FactorNodes all the way down the
tree any time FactorNodes was called. Additionally, on returning
from the recursiion we would flatten any child ScopeMatchers into
the parent.

There are additional calls to FactorNodes every time a new ScopeMatcher
is created. These calls cause a lot of visiting of parts of the tree that
have already been factored as much as possible.

We can remove the primary recursion by ensuring we flatten
scopes when building a new ScopeMatcher. If the Matcher we are
going to insert into the new ScopeMatcher is itself a ScopeMatcher,
we add the children into the new ScopeMatcher instead. This makes
the FactorNodes call for the newly created scope more powerful
eliminating the need for the recursion.


  Commit: 3f83bf3594fc782b36c9d1eb9e1e37c1a2886ac0
      https://github.com/llvm/llvm-project/commit/3f83bf3594fc782b36c9d1eb9e1e37c1a2886ac0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Revert "[TableGen] Reduce number of call to FactorNodes. NFC"

This reverts commit 3ec6ca7d58c4a1a7ee68df41388d71c4e4b858d0.

Failing a couple bots even though it passed locally.


  Commit: 5a0261c5534d05085d4b0d969a257cb85ac9c0b4
      https://github.com/llvm/llvm-project/commit/5a0261c5534d05085d4b0d969a257cb85ac9c0b4
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M lld/ELF/RelocScan.h
    M lld/ELF/Relocations.cpp

  Log Message:
  -----------
  [ELF] Defer ctx.hasTlsIe assignment to postScanRelocations. NFC

Move ctx.hasTlsIe stores from the relocation scan phase to
postScanRelocations. The ctx.hasTlsIe value is ignored for
`!shared` case, so we can remove some redundant assignment.


  Commit: fa5c2eb8dd1d258a8f5da70dea1b8237f262eead
      https://github.com/llvm/llvm-project/commit/fa5c2eb8dd1d258a8f5da70dea1b8237f262eead
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp

  Log Message:
  -----------
  [NFC][X86] Pass ConstantInt for step size in createLoop

createLoop is always called with a constant step size. Propagate the
type information so that it can be used later when deriving profile
information when possible.

Reviewers: phoebewang, RKSimon, mtrofin

Pull Request: https://github.com/llvm/llvm-project/pull/181577


  Commit: ab88d9af5371ef62a636fc780c88cf6d3487c584
      https://github.com/llvm/llvm-project/commit/ab88d9af5371ef62a636fc780c88cf6d3487c584
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libcxx/include/module.modulemap.in
    M libcxx/test/benchmarks/containers/sequence/sequence_container_benchmarks.h
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_forward_iterator.compile.pass.cpp
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_input_iterator.compile.pass.cpp
    M libcxx/test/libcxx/input.output/filesystems/class.path/path.req/is_pathable.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/dereference.pass.cpp
    M libcxx/test/libcxx/iterators/iterator.requirements/iterator.concepts/cpp20_iter_traits.compile.pass.cpp
    M libcxx/test/libcxx/iterators/iterator_with_data.pass.cpp
    M libcxx/test/libcxx/iterators/product_iterator.pass.cpp
    M libcxx/test/libcxx/iterators/unwrap_iter.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/pstl.move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_stable_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/ranges_sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/ranges_shuffle.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/ranges.reverse.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges.shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_right.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.binary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.unary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/pstl.all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/pstl.any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/pstl.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/ranges.find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/ranges.find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.fold/requirements.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/ranges.is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/pstl.none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.starts_with/ranges.starts_with.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.binary.search/equal.range/ranges_equal_range.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/make.heap/ranges_make_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/pop.heap/ranges_pop_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/push.heap/ranges_push_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_inplace_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.max.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.min.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/requires_forward_iterator.verify.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.nth.element/ranges_nth_element.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/includes/ranges_includes.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.difference/ranges_set_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/ranges_set_intersection.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/ranges_set_symmetric_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.union/ranges_set_union.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort.copy/ranges_partial_sort_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort/ranges_partial_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/pstl.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/ranges.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/pstl.stable_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/ranges.stable.sort.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/source.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.operations/distance.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/cxx20_iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/lwg3664.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/iterator.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/indirectcallable/projected/projected.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.bidir/bidirectional_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.forward/forward_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.input/input_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.iterator/input_or_output_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.random.access/random_access_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.cust/iterator.cust.swap/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/arrow.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/assign.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/count.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.conv.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/decrement.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/deref.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/increment.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/member_types.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.default_sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.eq.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.size.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/plus.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/subscript.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/three_way_compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/types.h
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.conv/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/sized_sentinel.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/test_neg_one.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/pstl.reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init_op.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.binary.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.unary.pass.cpp
    M libcxx/test/std/ranges/range.access/size.pass.cpp
    M libcxx/test/std/ranges/range.access/ssize.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adaptor.object/range_adaptor_closure.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/all_t.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/begin_end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/data.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/empty.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/dangling.cache.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/types.h
    M libcxx/test/std/ranges/range.adaptors/range.filter/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/types.h
    M libcxx/test/std/ranges/range.adaptors/range.take.while/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/ctor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/plus_minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/sentinel.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/subscript.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/std/ranges/range.factories/range.iota.view/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/ctad.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/elements_of.pass.cpp
    M libcxx/test/std/ranges/range.utility/view.interface/view.interface.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range_deduction.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/string.view/string.view.cons/from_iterator_sentinel.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/pred.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/ranges_uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/support/module.modulemap
    M libcxx/test/support/test.support/test_proxy.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  Revert "[libc++] Add test_iterators.h to the modulemap (#181351)"

This reverts commit 04ef765b65040e1df4cafaf3dacc26fa5d48e519.

This was causing buildbot failures for premerge:
1. https://lab.llvm.org/staging/#/builders/192/builds/20135


  Commit: 0f517054b9bcc0a74e76b29207720eb3e87ac602
      https://github.com/llvm/llvm-project/commit/0f517054b9bcc0a74e76b29207720eb3e87ac602
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M lldb/docs/CMakeLists.txt
    M lldb/docs/python_extensions.rst
    M lldb/docs/use/python-reference.rst
    A lldb/docs/use/tutorials/hunting-down-symbols.md
    R lldb/docs/use/tutorials/scripted-symbol-locator.md

  Log Message:
  -----------
  [lldb/docs] Add Scripted Symbol Locator to website documentation (#181594)

This patch adds documentation for the Scripted Symbol Locator plugin
system, including tutorial (renamed to hunting-down-symbols.md to match
other tutorial naming conventions) and cleans up API reference for the
website.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 193c1f4af7f1bd9249c99bc3c0b7d9ebe4698d11
      https://github.com/llvm/llvm-project/commit/193c1f4af7f1bd9249c99bc3c0b7d9ebe4698d11
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Reapply "[TableGen] Reduce number of call to FactorNodes. NFC"

With a fix to avoid deferencing a before_begin iterator.

Original commit message:

Previously we recursively called FactorNodes all the way down the
tree any time FactorNodes was called. Additionally, on returning
from the recursiion we would flatten any child ScopeMatchers into
the parent.

There are additional calls to FactorNodes every time a new ScopeMatcher
is created. These calls cause a lot of visiting of parts of the tree that
have already been factored as much as possible.

We can remove the primary recursion by ensuring we flatten
scopes when building a new ScopeMatcher. If the Matcher we are
going to insert into the new ScopeMatcher is itself a ScopeMatcher,
we add the children into the new ScopeMatcher instead. This makes
the FactorNodes call for the newly created scope more powerful
eliminating the need for the recursion


  Commit: badb215d0364076c7790966f5033d6d81b6da7cd
      https://github.com/llvm/llvm-project/commit/badb215d0364076c7790966f5033d6d81b6da7cd
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/include/clang/Lex/Lexer.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/Preprocessor.cpp

  Log Message:
  -----------
  [clang] Optimize Lexer hot path to reduce compile time (#177153)

This patch fix this compile time regression that introduced in
https://github.com/llvm/llvm-project/pull/173789.
- Introduce a `TokenFlag::PhysicalStartOfLine` flag to replace
`IsAtPhysicalStartOfLine` in a brunch of `Lexer` member functions and
remove `ExportContextualKeywordInfo` struct.
- Handle `import`, `module` and `export` keyword in `HandleIdentifier`
instead of in a `Lexer` hot path.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 915eb46f51e92dc36a65516fc0f42f24374b6346
      https://github.com/llvm/llvm-project/commit/915eb46f51e92dc36a65516fc0f42f24374b6346
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Revert "Reapply "[TableGen] Reduce number of call to FactorNodes. NFC""

This reverts commit 193c1f4af7f1bd9249c99bc3c0b7d9ebe4698d11.

Still failing on the bots, but it doesn't show up in my local
testing with multiple compilers.


  Commit: e54f838bd59abed2b35ad8c08ca5de3cb99f59cb
      https://github.com/llvm/llvm-project/commit/e54f838bd59abed2b35ad8c08ca5de3cb99f59cb
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid assert failure on non-identifier names in `readability-container-size-empty` (#181557)

Closes https://github.com/llvm/llvm-project/issues/181552


  Commit: 23374f95ed1362cfcabcb1a1a95bc81fc58b70b9
      https://github.com/llvm/llvm-project/commit/23374f95ed1362cfcabcb1a1a95bc81fc58b70b9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  Reapply "[TableGen] Reduce number of call to FactorNodes. NFC"

With more fixes to avoid deferencing a before_begin iterator.

Original commit message:

Previously we recursively called FactorNodes all the way down the
tree any time FactorNodes was called. Additionally, on returning
from the recursiion we would flatten any child ScopeMatchers into
the parent.

There are additional calls to FactorNodes every time a new ScopeMatcher
is created. These calls cause a lot of visiting of parts of the tree that
have already been factored as much as possible.

We can remove the primary recursion by ensuring we flatten
scopes when building a new ScopeMatcher. If the Matcher we are
going to insert into the new ScopeMatcher is itself a ScopeMatcher,
we add the children into the new ScopeMatcher instead. This makes
the FactorNodes call for the newly created scope more powerful
eliminating the need for the recursion


  Commit: 3519aaecef05ccc8eedb0854567b3685871052ec
      https://github.com/llvm/llvm-project/commit/3519aaecef05ccc8eedb0854567b3685871052ec
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libcxx/include/module.modulemap.in
    M libcxx/test/benchmarks/containers/sequence/sequence_container_benchmarks.h
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_forward_iterator.compile.pass.cpp
    M libcxx/test/libcxx/algorithms/specialized.algorithms/special.mem.concepts/nothrow_input_iterator.compile.pass.cpp
    M libcxx/test/libcxx/input.output/filesystems/class.path/path.req/is_pathable.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/arithmetic.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/comparison.pass.cpp
    M libcxx/test/libcxx/iterators/capacity_aware_iter/dereference.pass.cpp
    M libcxx/test/libcxx/iterators/iterator.requirements/iterator.concepts/cpp20_iter_traits.compile.pass.cpp
    M libcxx/test/libcxx/iterators/iterator_with_data.pass.cpp
    M libcxx/test/libcxx/iterators/product_iterator.pass.cpp
    M libcxx/test/libcxx/iterators/unwrap_iter.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/ranges.fill_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.generate/ranges_generate_n.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.move/pstl.move.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/is_partitioned.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_partition_point.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/ranges_stable_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/ranges_sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/sample.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/ranges_shuffle.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/ranges_remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/ranges_replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_copy_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.replace/replace_if.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/ranges.reverse.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges.shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges_shift_right.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_left.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/shift_right.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/binary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.binary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/pstl.transform.unary.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.transform/unary_transform.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/ranges_unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_copy_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.adjacent.find/adjacent_find_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.all_of/pstl.all_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.any_of/pstl.any_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/pstl.count_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/pstl.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/find_end_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.end/ranges.find_end.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/find_first_of_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.first.of/ranges.find_first_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/pstl.find_if_not.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.fold/requirements.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/ranges.is_permutation.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.none_of/pstl.none_of.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.starts_with/ranges.starts_with.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.binary.search/equal.range/ranges_equal_range.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/is_heap_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/make.heap/ranges_make_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/pop.heap/ranges_pop_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/push.heap/ranges_push_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.lex.comparison/lexicographical_compare_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_inplace_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/ranges_merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.max.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.min.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.min.max/requires_forward_iterator.verify.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.nth.element/ranges_nth_element.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/includes/ranges_includes.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.difference/ranges_set_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/ranges_set_intersection.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.symmetric.difference/ranges_set_symmetric_difference.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.union/ranges_set_union.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/is_sorted_until_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort.copy/ranges_partial_sort_copy.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/partial.sort/ranges_partial_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/pstl.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/ranges.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/pstl.stable_sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/ranges.stable.sort.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/source.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.operations/distance.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/cxx20_iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/lwg3664.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/iterator.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/indirectcallable/projected/projected.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.bidir/bidirectional_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.forward/forward_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.input/input_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.iterator/input_or_output_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.random.access/random_access_iterator.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.cust/iterator.cust.swap/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/arrow.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/assign.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/count.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.conv.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/decrement.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/deref.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/increment.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/iterator_traits.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/member_types.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.default_sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.eq.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/minus.size.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/plus.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/subscript.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/counted.iterator/three_way_compare.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.default.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/ctor.sentinel.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/iterators.common/types.h
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/iter.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.conv/base.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/move.iterators/sized_sentinel.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_move.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.nonmember/iter_swap.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/test_neg_one.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/pstl.reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/reduce/reduce_init_op.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.binary.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/transform.reduce/pstl.transform_reduce.unary.pass.cpp
    M libcxx/test/std/ranges/range.access/size.pass.cpp
    M libcxx/test/std/ranges/range.access/ssize.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adaptor.object/range_adaptor_closure.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.adjacent/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/all_t.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/begin_end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/data.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/empty.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/range.owning.view/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.as.rvalue/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/range.chunk.by.iter/types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/dangling.cache.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/types.h
    M libcxx/test/std/ranges/range.adaptors/range.filter/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.overview/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join.with/range.join.with.view/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.iterator/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/types.h
    M libcxx/test/std/ranges/range.adaptors/range.take.while/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/ctor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/base.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/plus_minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/sentinel.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/subscript.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip.transform/size.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/ctor.views.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/arithmetic.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.default.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/deref.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/member_types.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/singular.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/ctor.other.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/minus.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/std/ranges/range.factories/range.iota.view/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/ctad.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.elementsof/elements_of.pass.cpp
    M libcxx/test/std/ranges/range.utility/view.interface/view.interface.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range_deduction.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp
    M libcxx/test/std/strings/string.view/string.view.cons/from_iterator_sentinel.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bm/pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pred.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.search/func.search.bmh/pred.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/ranges_uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/support/module.modulemap
    M libcxx/test/support/test.support/test_proxy.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  Reapply "[libc++] Add test_iterators.h to the modulemap (#181351)"

Another test committed recently was missing an include.

This reverts commit ab88d9af5371ef62a636fc780c88cf6d3487c584.


  Commit: edfe43cc9ebf207f3a1b3bbad932ba1159d5e211
      https://github.com/llvm/llvm-project/commit/edfe43cc9ebf207f3a1b3bbad932ba1159d5e211
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Factor common VPDT-sort in sink-replicate (NFC) (#179214)


  Commit: 12b561a5e208655f31138d314f6af52ea785ee06
      https://github.com/llvm/llvm-project/commit/12b561a5e208655f31138d314f6af52ea785ee06
  Author: Alexey Moksyakov <moksyakov.alexey at huawei.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/runtime/instr.cpp
    M bolt/runtime/sys_aarch64.h
    M bolt/test/runtime/AArch64/instrumentation-ind-call.c

  Log Message:
  -----------
  [bolt][aarch64] Change indirect call instrumentation snippet (#180229)

Indirect call instrumentation snippet uses x16 register in exit handler
to go to destination target

    __bolt_instr_ind_call_handler_func:
            msr  nzcv, x1
            ldp  x0, x1, [sp], #16
            ldr  x16, [sp], #16
            ldp  x0, x1, [sp], #16
            br   x16	<-----

This patch adds the instrumentation snippet by calling instrumentation
runtime library through indirect call instruction and adding the wrapper
to store/load target value and the register for original indirect
instruction.

Example:
            mov x16, foo

    infirectCall:
            adrp x8, Label
            add  x8, x8, #:lo12:Label
            blr x8

Before:

    Instrumented indirect call:
            stp     x0, x1, [sp, #-16]!
            mov     x0, x8
            movk    x1, #0x0, lsl #48
            movk    x1, #0x0, lsl #32
            movk    x1, #0x0, lsl #16
            movk    x1, #0x0
            stp     x0, x1, [sp, #-16]!
            adrp    x0, __bolt_instr_ind_call_handler_func
            add     x0, x0, #:lo12:__bolt_instr_ind_call_handler_func
            blr     x0

    __bolt_instr_ind_call_handler:  (exit snippet)
            msr     nzcv, x1
            ldp     x0, x1, [sp], #16
            ldr     x16, [sp], #16
            ldp     x0, x1, [sp], #16
            br      x16    <- overwrites the original value in X16

    __bolt_instr_ind_call_handler_func:  (entry snippet)
            stp     x0, x1, [sp, #-16]!
            mrs     x1, nzcv
            adrp    x0, __bolt_instr_ind_call_handler
            add     x0, x0, x0, #:lo12:__bolt_instr_ind_call_handler
            ldr     x0, [x0]
            cmp     x0, #0x0
            b.eq    __bolt_instr_ind_call_handler
            str     x30, [sp, #-16]!
            blr     x0     <--- runtime lib store/load all regs
            ldr     x30, [sp], #16
            b       __bolt_instr_ind_call_handler


_________________________________________________________________________

After:

            mov     x16, foo
    infirectCall:
            adrp    x8, Label
            add     x8, x8, #:lo12:Label
            blr     x8

    Instrumented indirect call:
            stp     x0, x30, [sp, #-16]!
            mov     x0, callsiteid
            stp    x8, x0, [sp, #-16]!
            adrp    x8, __bolt_instr_ind_call_handler_func
            add     x8, x8, #:lo12:__bolt_instr_ind_call_handler_func
            blr     x8       <--- call trampoline instr lib
            ldr     x8, [sp], #16
            ldp     x0, x30, [sp], #16
            blr     x8       <--- original indirect call instruction

    // don't touch regs besides x0, x1
    __bolt_instr_ind_call_handler:  (exit snippet)
            ret     <---- return to original function with indirect call

    __bolt_instr_ind_call_handler_func: (entry snippet)
            adrp    x0, __bolt_instr_ind_call_handler
            add     x0, x0, #:lo12:__bolt_instr_ind_call_handler
            ldr     x0, [x0]
            cmp     x0, #0x0
            b.eq    __bolt_instr_ind_call_handler
            str     x30, [sp, #-16]!
            blr     x0     <--- runtime lib store/load all regs
            ldr     x30, [sp], #16
            b       __bolt_instr_ind_call_handler


  Commit: 2380e12fd61b687b82a1a67cb0161c9d6a77f4f6
      https://github.com/llvm/llvm-project/commit/2380e12fd61b687b82a1a67cb0161c9d6a77f4f6
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/zvlsseg-spill.mir

  Log Message:
  -----------
  [RISCV] Start zvlsseg-spill.mir test before regalloc. NFC

Currently this starts from the beginning of the codegen pipeline, but
because it has pseudos that directly define physical registers this
triggers an assertion in an upcoming change to RISCVVLOptimizer. In the
full pipeline a vector pseudo should only define virtual VR registers.

Move it to before regalloc to avoid the crash. It could probably be
moved further to just before prologepilog but we would need to change
the input to handle vsetvli insertion too.


  Commit: 820d15c8e68fc6405c5ceb9e96b387013bf1f5e7
      https://github.com/llvm/llvm-project/commit/820d15c8e68fc6405c5ceb9e96b387013bf1f5e7
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vl-opt.ll

  Log Message:
  -----------
  [RISCV] Add test for reducing vl of vlseg2e32.v. NFC


  Commit: 7bf2d5f14b2cd0a26f4779673dd8c51b46dea095
      https://github.com/llvm/llvm-project/commit/7bf2d5f14b2cd0a26f4779673dd8c51b46dea095
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    A llvm/test/CodeGen/X86/fold-call-4.ll
    M llvm/test/CodeGen/X86/fold-call.ll
    A llvm/test/CodeGen/X86/tailcall-mem_enoughregs.ll

  Log Message:
  -----------
  [x86] Enable indirect tail calls with more arguments (#137643)

X86ISelDAGToDAG's `isCalleeLoad` / `moveBelowOrigChain` tries to move
the load instruction next to the call so they can be folded, but it
would only allow a single CopyToReg node in between.

This patch makes it look through multiple CopyToReg, while being careful
to only perform the transformation when the load+call can be folded.

As part of that, it also replaces the `X86tcret_1reg` and `X86tcret_6regs`,
which checks that there are enough free registers to compute the call
address, with a more correct `X86tcret_enough_regs` that the
`moveBelowOrigChain` is also gated on.

Fixes #136848


  Commit: 0a3db57e511d9c09d5c58847c5e0235cee894aa8
      https://github.com/llvm/llvm-project/commit/0a3db57e511d9c09d5c58847c5e0235cee894aa8
  Author: Alexey Moksyakov <moksyakov.alexey at huawei.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M bolt/test/runtime/AArch64/instrumentation-ind-call.c

  Log Message:
  -----------
  [bolt][nfc] fix typo in test (#181611)

Fixed the typo in instrument-ind-call test


  Commit: 074391e6a1a273fac68b705f15812465126dd83a
      https://github.com/llvm/llvm-project/commit/074391e6a1a273fac68b705f15812465126dd83a
  Author: Anton Sidorenko <anton.sidorenko at mail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    A llvm/test/CodeGen/RISCV/twoaddr-tied.mir
    M llvm/test/CodeGen/X86/pmulh.ll

  Log Message:
  -----------
  [TwoAddressInstruction] Iterate through tied regs when analyzing revcopy (#179940)

Reversed copy is the following chain from FromReg to ToReg:
    %Tmp1 = copy %Tmp2;
    %FromReg = copy %Tmp1;
    %ToReg = add %FromReg ...
    %Tmp2 = copy %ToReg;

TwoAddressInstruction pass tries to preserve or create (by commuting)
such chains. Otherwise, there will be unavoidable copy.

This patch considers operations with tied operand a copy-like ones (in
terms of reversed copy chain), e.g.:
    %Tmp1 = copy %Tmp2;
    %Tmp1 = fma %Tmp1 (tied-def 0), ...
    %FromReg = copy %Tmp1;
    %ToReg = add %FromReg ...
    %Tmp2 = copy %ToReg;

This helps at least for RISC-V RVV where two forms of FMA exists:
1. vfmadd.vv vd, vs1, vs2, where vd is a dst and src multiplicand: vd[i]
= +(vs1[i] * vd[i]) + vs2[i]
2. vfmacc.vv vd, vs1, vs2, where vd is a dst and src addend: vd[i] =
+(vs1[i] * vs2[i]) + vd[i]

For the example above, vfmacc is a more preferable form of FMA than
vfmadd. However, without this patch twoaddress instruction pass does not
see the difference between these two instructions and might commute
vfmacc to vfmadd for the example above. This will lead to the extra
copy.

The patch also changes the default value of dataflow-edge-limit. This
option controls the depth of reverved copy search algorithm. With the
introduction of tied operands analysis I consider such a change
reasonable since the old default value = 3 effectively stops the
analysis earlier than any chain is found.


  Commit: 88c0a1db8507f2014abf696da66dc0b3fe1b4be6
      https://github.com/llvm/llvm-project/commit/88c0a1db8507f2014abf696da66dc0b3fe1b4be6
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    A llvm/test/Analysis/CostModel/WebAssembly/extract-last-active.ll
    A llvm/test/Analysis/CostModel/WebAssembly/lit.local.cfg

  Log Message:
  -----------
  Revert "[WebAssembly] Mark extract.last.active as having invalid cost." (#181545)

The failures should have been resolved with
https://github.com/llvm/llvm-project/pull/180290 (which also added
WebAssembly tests).

This reverts commit
https://github.com/llvm/llvm-project/commit/811fb223af2b3e2d68c99b346f4b75dcf3de3417.

---

This is the same as #180942, but with a `lit.local.cfg` added to the
CostModel test folder.


  Commit: f152625bb850fe88224887eb2da2ce8c78f12abc
      https://github.com/llvm/llvm-project/commit/f152625bb850fe88224887eb2da2ce8c78f12abc
  Author: Konrad Kleine <kkleine at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/unittests/Support/FormatVariadicTest.cpp

  Log Message:
  -----------
  [Support] Fixup for formatting hex on 32 bit (#181338)

Without the `PRIx64`, the test won't work on 32 bit architectures.

See this comment:
https://github.com/llvm/llvm-project/pull/180498#issuecomment-3891979182

The issue is that `PRIx64` expands differently depending on the
architecture. In the original code modified in #180498 the [macro was
used](https://github.com/llvm/llvm-project/pull/180498/changes#diff-5dcf6451d2bf9e9e3a8d28b0212263a8db576045b1d4eab80cca1bfd13a3bb76L356):

```diff
-  OS << format("0x%*.*" PRIx64, HexDigits, HexDigits, Address);
+  OS << formatv("0x{0:x-}",
+                fmt_align(Address, AlignStyle::Right, HexDigits, '0'));
```

I simply didn't use it in my test because on my architecture the
`PRIx64` wasn't necessary.

This is a fixup for #180498 and it should unblock the
[clang-armv7-vfpv3-2stage](https://lab.llvm.org/buildbot/#/builders/135)
builder.


  Commit: e698d03ee24d93f4c316daf218f04fdbae72f0bd
      https://github.com/llvm/llvm-project/commit/e698d03ee24d93f4c316daf218f04fdbae72f0bd
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolutionDivision.cpp
    M llvm/test/Analysis/Delinearization/a.ll
    M llvm/test/Analysis/Delinearization/divide_by_one.ll
    M llvm/test/Analysis/Delinearization/fixed_size_array.ll
    M llvm/test/Analysis/Delinearization/multidim_ivs_and_integer_offsets_nts_3d.ll
    A llvm/test/Analysis/Delinearization/wraps.ll
    M llvm/test/Analysis/DependenceAnalysis/DADelin.ll
    M llvm/test/Analysis/ScalarEvolutionDivision/sdiv.ll

  Log Message:
  -----------
  [SCEVDivision] Prevent propagating nowrap flags when numerator is an addrec (#154745)

In ScalarEvolutionDivision, when the numerator is an addrec, its nowrap
flags are unconditionally propagated to the quotient and remainder.
However, this is not always correct.
This pass is only used by Delinearization, and just dropping these flags
doesn't affect Delinearization's accuracy in almost all cases.
Therefore, this patch conservatively stop propagating the nowrap flags
from the numerator to the quotient and remainder.

Fix #152566


  Commit: e316ea188a641bf90031e6ad5774b8e3eeee2c4a
      https://github.com/llvm/llvm-project/commit/e316ea188a641bf90031e6ad5774b8e3eeee2c4a
  Author: Marcell Leleszi <mleleszi at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/utils/docgen/wctype.yaml

  Log Message:
  -----------
  [libc][wctype] Add missing functions to wctype docs (#181478)

#170525

Adds missing wctype.h functions to docs.


  Commit: 8153f78e7fc60418d25ede9ae46652583698e66a
      https://github.com/llvm/llvm-project/commit/8153f78e7fc60418d25ede9ae46652583698e66a
  Author: Marcell Leleszi <mleleszi at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/wctype_utils.h
    M libc/test/src/__support/CMakeLists.txt
    A libc/test/src/__support/wctype_utils_test.cpp

  Log Message:
  -----------
  [libc][wctype] Reland internal UTF8 wctype classification functions (#181468)

Reland #174607

#174607 broke libc++ because the LIBC_CONF_WCTYPE_MODE macro wasn't
defined when called from libc++. Defaulted LIBC_CONF_WCTYPE_MODE to
LIBC_WCTYPE_MODE_ASCII when not configured
(https://github.com/llvm/llvm-project/commit/ffd355b0879066adc9889593570af8f0df85f1a8)


  Commit: bde3ef4f655e83466998466df9ee2c7f541ad028
      https://github.com/llvm/llvm-project/commit/bde3ef4f655e83466998466df9ee2c7f541ad028
  Author: David Green <david.green at arm.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    R llvm/test/CodeGen/Thumb2/mve-intrinsics/strict-round.ll
    A llvm/test/CodeGen/Thumb2/mve-strict-round.ll

  Log Message:
  -----------
  [ARM] Move MVE test into the correct place. NFC


  Commit: e6fdcf32894801af6c7cbfd0376f822635c8e6d2
      https://github.com/llvm/llvm-project/commit/e6fdcf32894801af6c7cbfd0376f822635c8e6d2
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/canonicalize.h
    A libc/shared/math/canonicalizebf16.h
    A libc/shared/math/canonicalizef.h
    A libc/shared/math/canonicalizef128.h
    A libc/shared/math/canonicalizef16.h
    A libc/shared/math/canonicalizel.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/canonicalize.h
    A libc/src/__support/math/canonicalizebf16.h
    A libc/src/__support/math/canonicalizef.h
    A libc/src/__support/math/canonicalizef128.h
    A libc/src/__support/math/canonicalizef16.h
    A libc/src/__support/math/canonicalizel.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/canonicalize.cpp
    M libc/src/math/generic/canonicalizebf16.cpp
    M libc/src/math/generic/canonicalizef.cpp
    M libc/src/math/generic/canonicalizef128.cpp
    M libc/src/math/generic/canonicalizef16.cpp
    M libc/src/math/generic/canonicalizel.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor canonicalize function family to header-only (#181467)

closes: #181466


  Commit: 3f0f8349ac9dc3d1f245912121207b5465a08473
      https://github.com/llvm/llvm-project/commit/3f0f8349ac9dc3d1f245912121207b5465a08473
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/test/Fir/select.fir

  Log Message:
  -----------
  [flang] fix codegen of fir.select with only default case (#181373)

The case where fir.select only has a "unit" block target (i.e., it is a
switch with only the default case) was not handled correctly in codegen.


  Commit: deedc7bfe3159dfe08d0a74c9822c6d5157c6fe8
      https://github.com/llvm/llvm-project/commit/deedc7bfe3159dfe08d0a74c9822c6d5157c6fe8
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/DeleteUnreachableTargets.cpp
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    A flang/test/Lower/OpenMP/target-dead-code.f90
    A flang/test/Transforms/OpenMP/delete-unreachable-targets.mlir
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [Flang][OpenMP] Don't generate code for unreachable target regions. (#178937)

When a target region is placed inside a constant false condition (e.g.,
`if (.false.)`), the dead code gets eliminated on the host side,
removing the `omp.target` operation entirely. However, the device-side
compilation pipeline is unaware of this elimination and attempts to
generate kernel code. Since the host never created offload metadata for
the eliminated target, the device-side kernel function lacks the
"kernel" attribute, causing `OpenMPOpt` to fail with an assertion when
it expects all outlined kernels to have this attribute. The problem can
be seen with the following code:

```fortran
program cele
  implicit none
  real :: V
  integer :: i
  if (.false.) then
    !$omp target teams distribute parallel do
    do i = 1, 5
      V = V * 2
    end do
    !$omp end target teams distribute parallel do
  end if
end program
```

It currently fails with the following assertion:

```
Assertion `omp::isOpenMPKernel(*Kernel) && "Expected kernel function!"' failed.
llvm/lib/Transforms/IPO/OpenMPOpt.cpp:4291
```

This PR adds `DeleteUnreachableTargetsPass` that identifies `omp.target`
operations in unreachable code blocks and removes them.


  Commit: 054021d8c0ea38e609c08e8cd97c99592bf44dac
      https://github.com/llvm/llvm-project/commit/054021d8c0ea38e609c08e8cd97c99592bf44dac
  Author: DannyDaoBoYang <daobo.yang41 at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinpif16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinpif16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinpif16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor sinpif16 to header only. (#178503)

Closes #176476
Part of #147386


  Commit: 2b7c1f9d82994fddac7b33a5be6c31b3e8059be2
      https://github.com/llvm/llvm-project/commit/2b7c1f9d82994fddac7b33a5be6c31b3e8059be2
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dbg-tail-folding-by-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/induction-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
    M llvm/test/Transforms/LoopVectorize/X86/end-pointer-signed.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/multi-exit-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
    M llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
    M llvm/test/Transforms/LoopVectorize/if-reduction.ll
    M llvm/test/Transforms/LoopVectorize/induction-wrapflags.ll
    M llvm/test/Transforms/LoopVectorize/interleave-with-i65-induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-gep-nowrap-flags.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/pr37248.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/reverse-induction-gep-nowrap-flags.ll
    M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-known-true.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll

  Log Message:
  -----------
  [VPlan] Directly unroll VectorEndPointerRecipe (#172372)

Directly unroll VectorEndPointerRecipe following 0636225b ([VPlan]
Directly unroll VectorPointerRecipe, #168886). It allows us to leverage
existing VPlan simplifications to optimize.

Co-authored-by: Luke Lau <luke at igalia.com>
Co-authored-by: Florian Hahn <flo at fhahn.com>


  Commit: 3272ba7b8fd7672b92eb969e71533b4115e74ecd
      https://github.com/llvm/llvm-project/commit/3272ba7b8fd7672b92eb969e71533b4115e74ecd
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M polly/lib/Pass/PhaseManager.cpp

  Log Message:
  -----------
  [Polly] Honor 'scops' phase being disabled (#180380)

`opt -passes=polly-custom<detect>`, or `stopafter=detect` would still
run the ScopInfo analysis even though it should run when explicitly
enabled or required by another phase.


  Commit: c9fa7424c71eacd2d8c20855186c070536934785
      https://github.com/llvm/llvm-project/commit/c9fa7424c71eacd2d8c20855186c070536934785
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/test/CodeGenObjC/attr-no-outline.m

  Log Message:
  -----------
  [clang][test] Set triple explicitly for attr-no-outline.m test (#181621)

The test fails on targets that have a different LLVM IR lowering (e.g.
RISC-V which produces `signext i32` for the return type). Rather than
complicate the test with more complex patterns, just set the triple
explicitly to x86-64 (as various other generic clang/test/CodeGen* tests
do).

Test was introduced by #163666.

This fixes RISC-V CI.


  Commit: b205396086ef60143ba4849579c01c04241a23f6
      https://github.com/llvm/llvm-project/commit/b205396086ef60143ba4849579c01c04241a23f6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/IPO/GlobalSplit.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [IR] Add ConstantExpr::getPtrAdd() (#181365)

Add a ConstantExpr::getPtrAdd() API that creates a getelementptr i8
constant expression, similar to IRBuilder::CreatePtrAdd(). In the future
this will create a ptradd expression.


  Commit: 1f65d4dda14cfea4323fd7139e222d26c7dc365d
      https://github.com/llvm/llvm-project/commit/1f65d4dda14cfea4323fd7139e222d26c7dc365d
  Author: halbi2 <hehiralbi at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [Clang] make most enums trivially equality comparable (#169079)

std::equal(std::byte) currently has sub-optimal codegen due to enum
types not being recognized as trivially equality comparable. In order to
fix this we make them trivially comparable. In the process I factored
out into a standalone function EqualityComparisonIsDefaulted and
refactored the test cases.

Enum types cannot have operator== which is a hidden friend.

Fixes #132672


  Commit: aa31013b521bcd8c14b48fb7cac723c580042e23
      https://github.com/llvm/llvm-project/commit/aa31013b521bcd8c14b48fb7cac723c580042e23
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp

  Log Message:
  -----------
  [SPIRV] Rounding Mode decorations in OpenCL builtins only make sense when floating point types are involved (#181208)

The backend was adding fp-rounding mode flags to
`uchar convert_uchar_rte(uint)`. These builtins are equivalent to `uchar
convert_uchar(uint)` which simply truncates its input, since there is no
floating-point value involved.

Related to https://github.com/llvm/llvm-project/issues/180936

This is consistent with what was implemented in the translator in
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/3120 and
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/3128


  Commit: a591a44653eabdb7ec0c158019f97c9b1547a5ea
      https://github.com/llvm/llvm-project/commit/a591a44653eabdb7ec0c158019f97c9b1547a5ea
  Author: Chris Cotter <ccotter14 at bloomberg.net>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/docs/ThreadSanitizer.rst
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/tsan/rtl/CMakeLists.txt
    A compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.cpp
    A compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.h
    M compiler-rt/lib/tsan/rtl/tsan_flags.inc
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface_ann.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.h
    M compiler-rt/lib/tsan/tests/unit/CMakeLists.txt
    A compiler-rt/lib/tsan/tests/unit/tsan_percent_test.cpp
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [tsan] Introduce Adaptive Delay Scheduling to TSAN (#178836)

This commit introduces an "adaptive delay" feature to the
ThreadSanitizer runtime to improve race detection by perturbing thread
schedules. At various synchronization points (atomic operations,
mutexes, and thread lifecycle events), the runtime may inject small
delays (spin loops, yields, or sleeps) to explore different thread
interleavings and expose data races that would otherwise occur only in
rare execution orders.

This change is inspired by prior work, which is discussed in more detail
on

https://discourse.llvm.org/t/rfc-tsan-implementing-a-fuzz-scheduler-for-tsan/80969.
In short, https://reviews.llvm.org/D65383 was an earlier unmerged
attempt at adding a random delays. Feedback on the RFC led to the
version in this commit, aiming to limit the amount of delay.

The adaptive delay feature uses a configurable time budget and tiered
sampling strategy to balance race exposure against performance impact.
It prioritizes high-value synchronization points with clear
happens-before relationships: relaxed atomics receive lightweight spin
delays with low sampling, synchronizing atomics (acquire / release /
seq_cst) receive moderate delays with higher sampling, and mutex and
thread lifecycle operations receive the longest delays with highest
sampling.

The feature is disabled by default and incurs minimal overhead when not
enabled. Nearly all checks are guarded by an inline check on a global
variable that is only set when enable_adaptive_delay=1. Microbenchmarks
with tight loops of atomic operations showed no meaningful performance
difference between an unmodified TSAN runtime and this version when
running with empty TSAN_OPTIONS.

An LLM assisted in writing portions of the adaptive delay logic,
including the TimeBudget class, tiering concept, address sampler, and
per-thread quota system. I reviewed the output and made amendments to
reduce duplication and simplify the behavior. I also replaced the LLM's
original double-based calculation logic with the integer-based Percent
class. The LLM also helped write unit test cases for Percent.

cc @dvyukov 

## Examples

I used the delay scheduler to find novel bugs that rarely or never
occurred with the unmodified TSAN runtime. Some of the bugs below were
found with earlier versions of the delay scheduler that I iterated on,
but with this most recent implementation in this PR, I can still find
the bugs far more reliably than with the standard TSAN runtime.

- A use-after-free in the
[BlazingMQ](https://github.com/bloomberg/blazingmq) broker during
ungraceful producer disconnect.
 - Race in stdexec: https://github.com/NVIDIA/stdexec/pull/1395
- Race in stdexec's MPSC queue:
https://github.com/NVIDIA/stdexec/pull/1812
- A few races in [BDE](https://github.com/bloomberg/bde) thread enabled
data structures/algorithms.
- The "Data race on variable a" test from
https://ceur-ws.org/Vol-2344/paper9.pdf is more reliably reproduced with
more aggressive adaptive scheduler options

# Outstanding work

- The
[RFC](https://discourse.llvm.org/t/rfc-tsan-implementing-a-fuzz-scheduler-for-tsan/80969)
suggests moving the scheduler to sanitizer_common, so that ASAN can
leverage this. This should be done (should it be done in this PR?).
 - Missing interceptors for libdispatch


  Commit: 339e2005d897c88bf857fc5f5956457411779e8c
      https://github.com/llvm/llvm-project/commit/339e2005d897c88bf857fc5f5956457411779e8c
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-arithmetic.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll

  Log Message:
  -----------
  [NFC][SPIRV] Disable spirv-val in tests for constrained intrinsics (#181516)

Currently it errors out due to FPRoundingMode misplacement.


  Commit: ef864494bdfb9284a59b909421c5f839d78df1ed
      https://github.com/llvm/llvm-project/commit/ef864494bdfb9284a59b909421c5f839d78df1ed
  Author: stevenwdv <stevenwdv at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/tools/obj2yaml/dwarf2yaml.cpp

  Log Message:
  -----------
  `dwarf2yaml.cpp` optimizations (#179048)

DWARF to YAML optimizations: Add a lot of vector reserves & moves.

See also https://github.com/WebAssembly/binaryen/pull/8257

---------

Co-authored-by: stevenwdv <stevenwdv at users.noreply.github.com>


  Commit: 2c194a1d2269c299e8dfecd9bd3aea3e3a838fc2
      https://github.com/llvm/llvm-project/commit/2c194a1d2269c299e8dfecd9bd3aea3e3a838fc2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll

  Log Message:
  -----------
  [X86] broadcast-elm-cross-splat-vec.ll - cleanup check prefixes and regnerate (#181631)

The file had missing checks due to collisions and a lot of redundancy between x86/x64 and isa levels


  Commit: 37adb1dd1e0802075e9c722a50fa5f56fec372cc
      https://github.com/llvm/llvm-project/commit/37adb1dd1e0802075e9c722a50fa5f56fec372cc
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp

  Log Message:
  -----------
  [GCOVProfiling] Remove unnecessary zero-index GEPs

These are no-ops.


  Commit: dc34267274410e6ad4ba5a398f179095770c8bd2
      https://github.com/llvm/llvm-project/commit/dc34267274410e6ad4ba5a398f179095770c8bd2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Frontend/Offloading/OffloadWrapper.cpp

  Log Message:
  -----------
  [OffloadWrapper] Remove unnecessary zero-index GEPs (#181632)

These are no-ops.


  Commit: e216dc2cb068df3f556bb8c87f4cc7e75e870948
      https://github.com/llvm/llvm-project/commit/e216dc2cb068df3f556bb8c87f4cc7e75e870948
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp

  Log Message:
  -----------
  [OpenMPIRBuilderTest] Remove unnecessary zero-index GEP

This is a no-op.


  Commit: 20aff2085c358d3e112b245494161ddb9ffe0410
      https://github.com/llvm/llvm-project/commit/20aff2085c358d3e112b245494161ddb9ffe0410
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - use switch() to match against each opcode. NFC. (#181637)

isKnownToBeAPowerOfTwo has gotten to a size now that we should use a general switch like other value tracking helpers.


  Commit: a250eda48f4435396319e68fed148842a3692b2e
      https://github.com/llvm/llvm-project/commit/a250eda48f4435396319e68fed148842a3692b2e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll

  Log Message:
  -----------
  [X86] broadcast-elm-cross-splat-vec.ll - avoid AND(ADD(X,1),1) pattern in tests (#181638)

This will fold to AND(NOT(X),1) in an upcoming fold, defeating the
purpose of the repeated constant tests


  Commit: aef9959859827f2c30e0c3983253a07dd0b654a6
      https://github.com/llvm/llvm-project/commit/aef9959859827f2c30e0c3983253a07dd0b654a6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/unittests/Transforms/Utils/CallPromotionUtilsTest.cpp

  Log Message:
  -----------
  [IR] Add ConstantExpr::getInBoundsPtrAdd() (#181639)

As a followup to https://github.com/llvm/llvm-project/pull/181365, this
adds the `getInBoundsPtrAdd()` variant and updates code to use it.


  Commit: e442173c8bcd138a5193890954859e4809b2d4ea
      https://github.com/llvm/llvm-project/commit/e442173c8bcd138a5193890954859e4809b2d4ea
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M flang/include/flang/Parser/openmp-utils.h
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Semantics/check-omp-loop.cpp

  Log Message:
  -----------
  [flang][OpenMP] Implement iterator that flattens BLOCK constructs (#180981)

In OpenMP a canonical loop nest may be enclosed in a BLOCK construct.
Specifically, the two loops below are considered to form a valid loop
sequence:
```f90
  do i = 1, n
  end do
  block
    do j = 1, m
    end do
  end block
```
Implement an extension to parser::Block::iterator that will treat the
example above as
```f90
  do i = 1, n
  end do
  do j = 1, m
  end do
```
that is, as if the BLOCK/ENDBLOCK statement were deleted. This will make
the analysis of loop nests easier, since any such code will not have to
deal with BLOCK constructs itself.


  Commit: f13301084923ed131aaea7fbadb9307a76bb21f6
      https://github.com/llvm/llvm-project/commit/f13301084923ed131aaea7fbadb9307a76bb21f6
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/AttributeDetail.h
    M mlir/lib/IR/BuiltinAttributes.cpp
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    A mlir/test/IR/dense-elements-type-interface.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h

  Log Message:
  -----------
  [mlir][IR] Generalize `DenseElementsAttr` to custom element types (#179122)

`DenseElementsAttr` supports only a hard-coded list of element types:
`int`, `index`, `float`, `complex`. This commit generalizes the
`DenseElementsAttr` infrastructure: it now supports arbitrary element
types, as long as they implement the new `DenseElementTypeInterface`.

The `DenseElementTypeInterface` has the following helper functions:
- `getDenseElementBitSize`: Query the size of an element in bits. (When
storing an element in memory, each element is padded to a full byte.
This is an existing limitation of the `DenseElementsAttr`; with an
exception for `i1`.)
- `convertToAttribute`: Attribute factory / deserializer. Converts bytes
into an MLIR attribute. The attribute provides the assembly format /
printer for a single element.
- `convertFromAttribute`: Serializer. Converts an MLIR attribute into
bytes.

Note: `convertToAttribute` / `convertFromAttribute` are mainly for
writing test cases. For performance reasons, `DenseElementsAttr` users
should work with raw bytes / elements and avoid any API that
materializes MLIR attributes. However, MLIR attributes typically have
human-readable parsers/printers, making them suitable for lit tests and
debugging.

This PR introduces an additional assembly format for
`DenseElementsAttrs`. There are now two formats. (The existing one is
kept for compatibility reasons.)
- Literal-first (existing): `dense<[1, 2, 3]> : tensor<3xi32>`
- Type-first (new): `dense<tensor<3xi32> : [1 : i32, 2 : i32, 3 : i32]>`

The new syntax is needed to disambiguate between "literal" (e.g., `1`)
and attribute (e.g., `1 : i32`) when parsing the first token. In the
literal-first syntax, we only parse literals. In the type-first syntax,
we only parse attributes.

The existing `int`, `index`, `float`, `complex` types also implement the
`DenseElementTypeInterface`. This allows us to implement
`DenseElementsAttr::get` and `AttributeElementIterator::operator*` in a
generic way.

RFC:
https://discourse.llvm.org/t/rfc-allow-custom-element-types-in-denseelementattr/89656


  Commit: 3765b09d20e01976a6ab6f8b922a6b93751fbf44
      https://github.com/llvm/llvm-project/commit/3765b09d20e01976a6ab6f8b922a6b93751fbf44
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-all-indirect-accesses.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-indirect-extern-uses-max-reachable-alignment.ll

  Log Message:
  -----------
  [AMDGPU] Regenerate test checks (NFC)


  Commit: fb0a3a8e9ea46053b3a70c3844163640c5c3478f
      https://github.com/llvm/llvm-project/commit/fb0a3a8e9ea46053b3a70c3844163640c5c3478f
  Author: Veera <32646674+veera-sivarajan at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll

  Log Message:
  -----------
  [MemCpyOptimizer] Prevent Merging a Store Into Memset of an `undef` (#181609)

MemCopyOptimizer was merging a store instruction into a memset of an
`undef` value and emitted a large memset for the memset and store
combined.

This PR prevents MemCopyOptimizer from merging a store instruction into
a
memset of an `undef` value since it can be removed by subsequent cleanup
passes.

Helps https://github.com/rust-lang/rust/issues/152541


  Commit: db19a57597c1e26ed5a6fa54fb9cfc7edaa77bd1
      https://github.com/llvm/llvm-project/commit/db19a57597c1e26ed5a6fa54fb9cfc7edaa77bd1
  Author: Alexey Moksyakov <moksyakov.alexey at huawei.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M bolt/test/runtime/AArch64/instrumentation-ind-call.c

  Log Message:
  -----------
  [bolt][nfc] Exclude Call id verification from instrument-ind-call test (#181655)

The instrument-ind-call test checks the correctness of instrumented
snippet by the set of registers are used, the call id value is
meaningless (platform depend) and should be exclude from test.


  Commit: 2bee460f010839ff1fe45f2391f1737b29c00439
      https://github.com/llvm/llvm-project/commit/2bee460f010839ff1fe45f2391f1737b29c00439
  Author: Fady Farag <com.webkit.iidmsa at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libcxx/include/__functional/function.h

  Log Message:
  -----------
  [libc++] Prevent ADL on _Block_copy/_Block_release (#179614)

Suppress ADL on Blocks runtime calls in std::function.


  Commit: 5d5301dc0cc4a84fb91f103e4afec62de4622e33
      https://github.com/llvm/llvm-project/commit/5d5301dc0cc4a84fb91f103e4afec62de4622e33
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Thread.cpp
    A lldb/test/API/terminal/hidden_frame_markers/Makefile
    A lldb/test/API/terminal/hidden_frame_markers/TestHiddenFrameMarkers.py
    A lldb/test/API/terminal/hidden_frame_markers/main.cpp

  Log Message:
  -----------
  [lldb] add a marker around hidden frames (#181143)

This is a reland of https://github.com/llvm/llvm-project/pull/167550.
Instead of relying on libcpp for testing, we emulate our own hidden
frames. This was originally causing tests failures on Windows.


  Commit: 62882485e0eb4ad600d952dc2f5fd889db1eb298
      https://github.com/llvm/llvm-project/commit/62882485e0eb4ad600d952dc2f5fd889db1eb298
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Remove uses of `SPIRVType` in `SPIRVUtils` (#181663)

Replace them with `SPIRVTypeInst`.


  Commit: 4831bf9e48553faff6095ec087557375bcaf4341
      https://github.com/llvm/llvm-project/commit/4831bf9e48553faff6095ec087557375bcaf4341
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/test/IR/affine-map.mlir

  Log Message:
  -----------
  [MLIR] Fix bug in AffineExpr simplifyAdd (#181613)

Fix bug in AffineExpr simplifyAdd. This was leading to an incorrect
construction of affine expressions in certain cases; the expression was
being wrongly simplified to a modulo one.

Test cases for affine expr simplification by construction in
lib/IR/AffineExpr.cpp were earlier added to a transforms pass' tests;
add basic ones to test/IR/ while on this.


  Commit: 083f00b3ede46f682fd21c891b45c0db49ad95fb
      https://github.com/llvm/llvm-project/commit/083f00b3ede46f682fd21c891b45c0db49ad95fb
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.h
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/AttributeDetail.h
    M mlir/lib/IR/BuiltinAttributes.cpp
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    R mlir/test/IR/dense-elements-type-interface.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h

  Log Message:
  -----------
  Revert "[mlir][IR] Generalize `DenseElementsAttr` to custom element types" (#181692)

Reverts llvm/llvm-project#179122.

This PR broke the Windows build:
https://lab.llvm.org/buildbot/#/builders/207/builds/13576


  Commit: 67e56cf9f1f948ab0ebf4197e0cf71e2c5cf4f20
      https://github.com/llvm/llvm-project/commit/67e56cf9f1f948ab0ebf4197e0cf71e2c5cf4f20
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/Coroutines/ArgAddr.ll
    M llvm/test/Transforms/Coroutines/coro-align16.ll
    M llvm/test/Transforms/Coroutines/coro-align32.ll
    M llvm/test/Transforms/Coroutines/coro-align64-02.ll
    M llvm/test/Transforms/Coroutines/coro-align64.ll
    M llvm/test/Transforms/Coroutines/coro-align8-02.ll
    M llvm/test/Transforms/Coroutines/coro-align8.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-01.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-02.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-03.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-04.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-06.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-08.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-with-addrspace.ll
    M llvm/test/Transforms/Coroutines/coro-async-dyn-align.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
    M llvm/test/Transforms/Coroutines/coro-byval-param.ll
    M llvm/test/Transforms/Coroutines/coro-catchswitch.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
    M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-01.ll
    M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-04.ll
    M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-05.ll
    M llvm/test/Transforms/Coroutines/coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-padding.ll
    M llvm/test/Transforms/Coroutines/coro-param-copy.ll
    M llvm/test/Transforms/Coroutines/coro-retcon-remat.ll
    M llvm/test/Transforms/Coroutines/coro-spill-after-phi.ll
    M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-defs-before-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
    M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
    M llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll
    M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll

  Log Message:
  -----------
  [NFCI][Coroutines] update tests to autogenerated formatting (#178358)

The best practices for llvm is to use the update scripts instead of
manually writing tests, so update tests to use the script, where the
change is subjectively minor. These tests are necessary to update again
for my branch to change CoroFrame to using all opaque ptradd instead of
typed gep and alloca. Currently that pass uses whatever random type the
largest non-overlapping alloca happened to have when the other alloca
were re-written to replace be replaced by it. In this future branch, it
will all just uses simple ptrgep operations. This is part of an
on-going series of PRs to fully deprecate using getAllocatedType and
replace it with getAllocationSize, because it had no semantic meaning,
just like typed pointers were deprecated for opaque pointers.


  Commit: 19149a89b233676db75ca49ba81cca6ae31ea62c
      https://github.com/llvm/llvm-project/commit/19149a89b233676db75ca49ba81cca6ae31ea62c
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/CodeGen/AArch64/arm64-prefetch-ir.ll
    M llvm/test/MC/AArch64/armv9.6a-pcdphint.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64][llvm] Remove +pcdphint gating (#181633)

Remove gating of `stshh` since this is an instruction from the
HINT space, and therefore is a NOP on cores that don't implement
it, so gating is superfluous. gcc doesn't gate this, so remove
for better compatibility.


  Commit: 962e60e705b411a8a5df99ef3dedae41fdf7a519
      https://github.com/llvm/llvm-project/commit/962e60e705b411a8a5df99ef3dedae41fdf7a519
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/lib/Basic/OffloadArch.cpp

  Log Message:
  -----------
  [NFC][Clang] Add missing LLVM license header (#181445)


  Commit: d74617b06f51605bf3c12753f5dc4d10381e2337
      https://github.com/llvm/llvm-project/commit/d74617b06f51605bf3c12753f5dc4d10381e2337
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp

  Log Message:
  -----------
  [DA] Remove `DependenceInfo::removeMatchingExtensions` (#171809)

If two subscripts has same cast operation (`sext` or `zext`),
`removeMatchingExtensions` strips off them. Due to the following
reasons, remaining this function is not useful and risky:

- If the operand of the cast operation has proper nowrap properties,
SCEV usually strips off the cast operation automatically. It's not very
meaningful to do it on DA side.
- If the operand doesn't have nowrap properties, stripping off the cast
operation may lead to incorrect result. Especially, if it can be
negative, removing `zext` would change the interpretation of the value
in a signed sense.
- This function is part of the root cause of #148435.

Although I've not found any cases where incorrect results are produced
by this function, but I think it doesn't make sense to keep it. As far
as I have checked, there are no regressions after removing this
function.

Resolve #169809


  Commit: f03ff95ce20f282db22b40997ee1daa01c01e581
      https://github.com/llvm/llvm-project/commit/f03ff95ce20f282db22b40997ee1daa01c01e581
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    A lldb/cmake/modules/FindTreeSitter.cmake
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/include/lldb/Core/Highlighter.h
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/source/Plugins/Highlighter/CMakeLists.txt
    A lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
    A lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.cpp
    A lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.h

  Log Message:
  -----------
  [lldb] Add tree-sitter based syntax highlighting (#181279)

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.


  Commit: 54a8b206a9d5f35c9d6cf508e30e56289e000b0c
      https://github.com/llvm/llvm-project/commit/54a8b206a9d5f35c9d6cf508e30e56289e000b0c
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp

  Log Message:
  -----------
  [clang-tidy] Refactor `modernize-redundant-void-arg` (#173340)

Essentially, instead of having individual matchers for functions, and
for pointers to functions, and for casts to functions, and for typedefs
of functions, and (you get the point), this PR unifies them into one
`FunctionTypeLoc`-based matcher.

This refactor is not entirely NFC:
- First, it changes the diagnostic message. What used to be `redundant
void argument list in {function definition, lambda expression, etc.}` is
now just `redundant void argument list`. I don't think we're losing any
important information though.
- Second, it causes the check to fire in more places than it did before.
Specifically, it now removes the 2 `void`s in this test case:

https://github.com/llvm/llvm-project/blob/01effcd82dfbd3ce880a20c335334045191f217b/clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp#L434-L442
Seeing as this check does want to remove `void` in macros, I believe
this is fixing an FN. And I don't believe I'm violating the intent of
the test case, because [the intent was just to ensure the check doesn't
crash when encountering it](https://reviews.llvm.org/D14204).


  Commit: fd54aa9e3aab8f682129dfc5f82dc8f8775c66bc
      https://github.com/llvm/llvm-project/commit/fd54aa9e3aab8f682129dfc5f82dc8f8775c66bc
  Author: Madhur Kumar <152476790+MadhurKumar004 at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    A llvm/test/Transforms/InstCombine/X86/x86-fp-minmax-negzero.ll

  Log Message:
  -----------
  [instcombine][x86]: simplifyx86fpmaxmin - allow negzero for single operand (#180418)

Fixes #175552


  Commit: f530c161a7eeabc0c4b3f0f7c95900bff3be15c5
      https://github.com/llvm/llvm-project/commit/f530c161a7eeabc0c4b3f0f7c95900bff3be15c5
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.h
    M llvm/lib/Frontend/OpenMP/OMP.cpp

  Log Message:
  -----------
  [OpenMP] Make isPrivatizingClause version-sensitive (#181691)

Some pre-existing clauses (e.g. use_device_ptr) are privatizing in
OpenMP 6.0, but not in 5.2. Make the check more accurate by considering
the effective spec version.


  Commit: f46c2c46d19996911271c40d4b4bc4cc6ad0e591
      https://github.com/llvm/llvm-project/commit/f46c2c46d19996911271c40d4b4bc4cc6ad0e591
  Author: AidinT <at.aidin at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/Interfaces.td
    M mlir/include/mlir/Reducer/CMakeLists.txt
    A mlir/include/mlir/Reducer/DialectReductionPatternInterface.td
    M mlir/include/mlir/Reducer/ReductionPatternInterface.h
    M mlir/include/mlir/TableGen/Interfaces.h
    M mlir/lib/Reducer/CMakeLists.txt
    M mlir/lib/TableGen/Interfaces.cpp
    M mlir/test/mlir-tblgen/dialect-interface.td
    M mlir/tools/mlir-tblgen/DialectInterfacesGen.cpp

  Log Message:
  -----------
  [MLIR] Convert DialectReductionPatternInterface using ODS (#180640)

This PR converts `DialectReductionPatternInterface` using ODS.

It also introduces a new Interface Method class:

`PureVirtualInterfaceMethod` which creates the method as pure virtual.


  Commit: 36a716f3c219d7077bb041cb6477ee674137ccbd
      https://github.com/llvm/llvm-project/commit/36a716f3c219d7077bb041cb6477ee674137ccbd
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py

  Log Message:
  -----------
  [lldb] fix a typo in decorator's docstring (#181697)


  Commit: e6e94a64d24ad25548af4ab8949b9a39d015c19c
      https://github.com/llvm/llvm-project/commit/e6e94a64d24ad25548af4ab8949b9a39d015c19c
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lld/ELF/Config.h

  Log Message:
  -----------
  [NFC][ELF] Remove unused Config::hasTlsIe (#181680)

This was obsoleted by Ctx::hasTlsIe when the latter was introduced, but
the old Config::hasTlsIe was not removed at the same time.

Fixes: 2b153088be4a ("[ELF] Set DF_STATIC_TLS for AArch64/PPC32/PPC64")


  Commit: c69a6be4278f9b65c3e2b7536f0b04fe8d572afc
      https://github.com/llvm/llvm-project/commit/c69a6be4278f9b65c3e2b7536f0b04fe8d572afc
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h

  Log Message:
  -----------
  [analyzer][Z3][NFCI] Simplify getExpr* functions by taking a RetTy reference (#180801)

Let me start by: This is some ancient code and was never really uphold
to the greatest quality standards.

It turns out the `RetTy` was almost always provided, and in the cases
when it wasn't, we could just pass a dummy and discard the result.

Probably the APIs could be refactored, but I decided not to. The code
mostly works, let's not stir up the mud.

Addresses
https://github.com/llvm/llvm-project/pull/168034#discussion_r2785236941


  Commit: 21bc4aa6a305d8aacd58a99bf0a11100ec0af602
      https://github.com/llvm/llvm-project/commit/21bc4aa6a305d8aacd58a99bf0a11100ec0af602
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Use a new helper function for -register-info-debug. NFC. (#181704)

Use a new helper function for printing things derived from InfoByHwMode.


  Commit: a33db04a63f4aa03178905529e01c4dcd5412cf8
      https://github.com/llvm/llvm-project/commit/a33db04a63f4aa03178905529e01c4dcd5412cf8
  Author: accauble <accauble at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/unittests/Target/LanguageTest.cpp
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/BinaryFormat/Dwarf.h
    M llvm/lib/BinaryFormat/Dwarf.cpp

  Log Message:
  -----------
  Add DW_LNAME_HIP (#180999)

In PR #89980, DW_LNAME_HIP was not added because of a value conflict
with DW_LNAME_Assembly. The value of DW_LNAME_HIP has been updated (see
https://dwarfstd.org/languages-v6.html). This commit adds DW_LNAME_HIP.
Tests added by that PR accommodates the new SourceLanguageName.


  Commit: d7f32c28a79a6b6701e0d54791b87115bd60f125
      https://github.com/llvm/llvm-project/commit/d7f32c28a79a6b6701e0d54791b87115bd60f125
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lld/test/ELF/eh-frame-hdr-sdata8.s

  Log Message:
  -----------
  [ELF,test] eh-frame-hdr-sdata8.s: use AT() to avoid huge PT_LOAD segments

Use AT() to ensure output sections with huge addresses are placed in separate
PT_LOAD segments. Without this, 2.lds and 3.lds created a huge PT_LOAD
segment, making the sparse file size larger than 4GiB, unsupported by
some 32-bit systems.

https://github.com/llvm/llvm-project/pull/179089#issuecomment-3908549089


  Commit: 180f7823cf1952e43b5f27c2deab3318c8d96ace
      https://github.com/llvm/llvm-project/commit/180f7823cf1952e43b5f27c2deab3318c8d96ace
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libcxx/src/atomic.cpp

  Log Message:
  -----------
  [libc++] Fix FreeBSD atomic timed wait system call (#180400)

This PR fixes atomic timed wait on FreeBSD platforms.

When we added timed wait support, on FreeBSD platform, we were looking
only the `UMTX_OP_WAIT` section of the FreeBSD doc
https://man.freebsd.org/cgi/man.cgi?query=_umtx_op&apropos=0&sektion=2&manpath=FreeBSD+16.0-CURRENT&format=html
. Somehow we missed the generic section that describes the timeout
parameter that applies to all operations. As a consequence, we missed
the part that the FreeBSD is expecting the `size` to be casted to
`uintptr_t`, then passed in to the `void*` parameter.

This PR fixes the issue by casting the type to what the system requires.

As drive by, this PR also
- uses simple `timespec` instead of the extended one
- as documentation suggests, "Interval counting is always performed by
the monotonic wall clock", and "If the flag is absent, the timeout value
is relative", which means that using the simple version is enough and
using the extended version is unnecessarily complex and might be
confusing to the people who aren't familiar with the API. And using
`timespec` is also consistent with the code in Linux case.
- directly reintepret_cast the comparison value to __cxx_contention_t
- As FreeBSD only supports the old ABI at the moment, the input is ever
going to be the exact type `__cxx_contention_t`. Copying to local buffer
is unnecessary and confusing.


  Commit: 8f1f42102c975446d4fa5d105707f1cd137a33e9
      https://github.com/llvm/llvm-project/commit/8f1f42102c975446d4fa5d105707f1cd137a33e9
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/docs/use/python-reference.rst
    A lldb/docs/use/tutorials/custom-symbol-resolution.md
    R lldb/docs/use/tutorials/hunting-down-symbols.md

  Log Message:
  -----------
  [lldb/docs] Update Scripted Symbol Locator tutorial title (NFC) (#181717)

This patch addresses some post-merge comments from llvm-project#181594,
where the tutorial name for Scripted Symbol Locator was missing a word
and wasn't capitalized properly.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 3b732934c6e038fff061d8c4a7a5fdfe716a602e
      https://github.com/llvm/llvm-project/commit/3b732934c6e038fff061d8c4a7a5fdfe716a602e
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td

  Log Message:
  -----------
  Fix type mismatch in ARM calling convention ternary (#180872)

GCC's -Wextra flags the ternary in the ARM half-precision calling
convention setup because the branches have different types. Use
static_cast to make both sides consistent.

Built with ToT clang and GCC 13.3.0 on Linux x86_64. All existing tests
pass.


  Commit: 3b2233acd49eeab9276507648315de547192fedb
      https://github.com/llvm/llvm-project/commit/3b2233acd49eeab9276507648315de547192fedb
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/Dialect/SMT.h
    M mlir/lib/Bindings/Python/DialectSMT.cpp
    M mlir/lib/CAPI/Dialect/SMT.cpp

  Log Message:
  -----------
  [MLIR][Python][SMT] Expose TypeIds for SMT Types (#181719)

Enables, among other things, the registration of type casters.


  Commit: e559d0a97a3dcce5df1e0d64c60a8808096c4b7d
      https://github.com/llvm/llvm-project/commit/e559d0a97a3dcce5df1e0d64c60a8808096c4b7d
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Fix -Wunused-variable in non-assertion builds


  Commit: 7ec7907b80f8137f06bfb84b47f4a9b4805402ba
      https://github.com/llvm/llvm-project/commit/7ec7907b80f8137f06bfb84b47f4a9b4805402ba
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/loads-with-large-distance.ll

  Log Message:
  -----------
  [SLP] Fix a very long loads offset, being stored in DenseMap

Added a check for a very long offset to avoid a crash in the compiler

Fixes #181682


  Commit: 2d70091f517c03f473f8a7f2f2960fcc9e19f0bc
      https://github.com/llvm/llvm-project/commit/2d70091f517c03f473f8a7f2f2960fcc9e19f0bc
  Author: moscickimilosz <Milosz.Moscicki at imgtec.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp

  Log Message:
  -----------
  [mlir][spirv][nfc] Refactor deserialization of decorations (#181700)

Move all single integer literal decorations into a common case in spirv
deserializer. There was an unnnecessary duplication of switch cases that
served the same purpose.

Change OpDecoration -> OpDecorate as that is the correct name of the op


  Commit: 86f167b9dfaf31306d524e1288f50954df6a657a
      https://github.com/llvm/llvm-project/commit/86f167b9dfaf31306d524e1288f50954df6a657a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll

  Log Message:
  -----------
  AMDGPU: Use promotion to f32 path for log/log10 for f16 by default (#180240)


  Commit: cc67cb624de33a2e187f700eeb7ec3a1fd6756fe
      https://github.com/llvm/llvm-project/commit/cc67cb624de33a2e187f700eeb7ec3a1fd6756fe
  Author: Perceval Anichini <45268488+maneex at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add AfterComma option for BreakConstructorInitializers (#180541)

This patch introduces a new `AfterComma` value for the
`BreakConstructorInitializers` style option. This style keeps the
constructor initializer colon on the same line as the constructor
declaration and breaks after each comma in the initializer list.

Example formatting:
```cpp
Constructor() : initializer1(),
                initializer2()
```

This style provides an alternative to the existing BeforeColon,
BeforeComma, and AfterColon options, allowing developers to maintain the
colon on the constructor line while placing each initializer on its own
line after commas.

---------

Co-authored-by: Perceval <perceval at trilogic.fr>


  Commit: 792f40533b73ab165edeafe868d49e583381bc1c
      https://github.com/llvm/llvm-project/commit/792f40533b73ab165edeafe868d49e583381bc1c
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [NFC][SPIRV] Rework `isConstReg` to remove `SPIRVType` (#181647)

Using `SPIRVType *` in the `Visited` set seems rather accidental, since
the instructions that this function traverses are expected to be a
constant definition.

Made the function iterative to avoid the `Visited` set declaration on
the caller.

Related to https://github.com/llvm/llvm-project/issues/180788


  Commit: 4e3b4fb9b8705f824b32471395a33a6793fe7bb8
      https://github.com/llvm/llvm-project/commit/4e3b4fb9b8705f824b32471395a33a6793fe7bb8
  Author: Yi Zhang <cathyzhyi at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] fix #180640 (#181724)

fix #180640


  Commit: 5460a202eae086b18a532b564633f15b221e8506
      https://github.com/llvm/llvm-project/commit/5460a202eae086b18a532b564633f15b221e8506
  Author: Prathamesh Tagore <63031630+meshtag at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir][remove-dead-values] Replace appropriate operation results with poison (#181013)

Before erasing the operation, replace all result values with live-uses
by
ub.poison values. This is important to maintain IR validity. For
example,
if we have an op with one of its results used by another op, erasing the
op without replacing its corresponding result would leave us with a
dangling operand in the user op. By replacing the result with a
ub.poison
value, we ensure that the user op still has a valid operand, even though
it's a poison value which will be cleaned up later if it can be cleaned
up. This keeps the IR valid for further simplification and
canonicalization while fixing a related crash in the canonicalizer.

Fixes https://github.com/llvm/llvm-project/issues/179944


  Commit: f9bca14a33888e70e2f9f1aa1f4a4edd3d7e5dfd
      https://github.com/llvm/llvm-project/commit/f9bca14a33888e70e2f9f1aa1f4a4edd3d7e5dfd
  Author: Berkay Sahin <berkaysahindev at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation-vectorlike-classes.cpp

  Log Message:
  -----------
  [clang-tidy] Handle inherited push_back/emplace_back in inefficient-vector-operation (#181476)

- Fix to match calls where `push_back`/`emplace_back` are inherited and
the implicit object argument is wrapped in implicit casts.
- Add a dedicated regression test for configured vector-like classes.

Fixes #181427


  Commit: aec1c984266c49308f40ab2127b2e58b437fdbfe
      https://github.com/llvm/llvm-project/commit/aec1c984266c49308f40ab2127b2e58b437fdbfe
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/RelocScan.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/test/ELF/systemz-plt.s
    M lld/test/ELF/systemz-tls-gd.s

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for SystemZ (#181563)

Implement SystemZ::scanSectionImpl, following the pattern established
for x86 (#178846) and PPC64 (#181496). This merges the getRelExpr and
TLS handling for SHF_ALLOC sections into the target-specific scanner,
enabling devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic `rs.scan()` path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle TLS GD, LD, and DTPREL directly, eliminating
  handleTlsRelocation, getTlsGdRelaxSkip, and adjustTlsExpr overrides.
  Replace R_RELAX_TLS_GD_TO_IE_GOT_OFF with R_GOT_OFF and
  R_RELAX_TLS_GD_TO_LE/R_RELAX_TLS_LD_TO_LE with R_TPREL, using
  type-based dispatch in relocate() for marker relocation types.
- Handle TLS IE inline without IE-to-LE optimization. Cannot use
  `handleTlsIe`.
- Remove `sortRels`: instead of sorting relocations to process GDCALL
  before PLT32DBL, skip PLT32DBL by peeking ahead at the next
  relocation to check for a TLS marker (GDCALL/LDCALL).
  This fixes SHT_CREL as an alternative to #149640
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and .eh_frame.

Fix #149511


  Commit: 7e653d06c1931bf9823da711d3ce3b2e2f797d9f
      https://github.com/llvm/llvm-project/commit/7e653d06c1931bf9823da711d3ce3b2e2f797d9f
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/test/TableGen/ConcatenatedSubregs.td
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Simplify printing of simple InfoByHwModes (#181714)

For the -register-info-debug output, don't bother printing a brace
enclosed list for simple InfoByHwModes, where every entry is the
default.


  Commit: 684778b71094c3a119f00aeaf423c98937f2ae57
      https://github.com/llvm/llvm-project/commit/684778b71094c3a119f00aeaf423c98937f2ae57
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp

  Log Message:
  -----------
  [LifetimeSafety] Move unique_ptr::release() handling to handleMovedArgsInCall (#181005)


  Commit: 650a62f970aee31de29b3e88a4c8036001659197
      https://github.com/llvm/llvm-project/commit/650a62f970aee31de29b3e88a4c8036001659197
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL] Add async variants of pre-gfx12 LDS load intrinsics (#181072)

These are MLIR wrappers around #180466.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: e17de2ec232296f56d497b7be068b14769a89619
      https://github.com/llvm/llvm-project/commit/e17de2ec232296f56d497b7be068b14769a89619
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td

  Log Message:
  -----------
  [NFC][mlir][ROCDL] Add asyncmark, wait.asyncmark examples (#181742)

Examples were requested in post-commit review, add them


  Commit: 149fa17adfed7b50f456586e817c872e98f3be21
      https://github.com/llvm/llvm-project/commit/149fa17adfed7b50f456586e817c872e98f3be21
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/load_lds.mlir
    M mlir/test/Dialect/AMDGPU/ops.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Update gather_to_lds with explicit-async support (#181082)

This commit takes advantage of the new `load.async.to.lds` intrinsic in
order to add an `async` mode to `gather_to_lds`. In this mode,
completion of the load needs to be managed with `asyncmark` and
`wait.asyncmark` intrinsics instead of being implicitly derived by alias
analysis.

This commit adds the flag, a lowering for it, and updates tests.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: c4e8adf7bbc8c1bcf2d3c8c808ca9a52677ce9c2
      https://github.com/llvm/llvm-project/commit/c4e8adf7bbc8c1bcf2d3c8c808ca9a52677ce9c2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/test/Transforms/LoopVectorize/X86/predicated-instruction-cost.ll

  Log Message:
  -----------
  [VPlan] Skip gather/scatters in useEmulatedMaskMemRefHack.

The legacy cost model skips gather/scatters when determining the
predicated stores in useEmulatedMaskMemRefHack. Match the behavior in
the VPlan-based implementation. This fixes a cost divergence in the
attached test.


  Commit: 7c3c9c45f85da6f786858358f2643bc6f46c51b4
      https://github.com/llvm/llvm-project/commit/7c3c9c45f85da6f786858358f2643bc6f46c51b4
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Model/EntityId.h
    M clang/include/clang/Analysis/Scalable/Model/EntityIdTable.h
    M clang/include/clang/Analysis/Scalable/Model/PrivateFieldNames.def
    A clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
    M clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Implement JSONFormat (#180021)

This PR implements JSON serialization and deserialization support for
SSAF. To enable error reporting, the interface of `SerializationFormat`
APIs has been updated to return `llvm::Expected`. Error messages
produced by the `JSONFormat` implementation include multiline context
indicating the _conceptual_ path that led to the failure.

rdar://168770769
rdar://168929437

Assisted-By: claude


  Commit: d85576d3685d2db72e52bf555125539af3211dda
      https://github.com/llvm/llvm-project/commit/d85576d3685d2db72e52bf555125539af3211dda
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/docs/gpu/rpc.rst
    M libc/shared/rpc.h
    M libc/shared/rpc_dispatch.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/OSUtil/gpu/exit.cpp
    M libc/src/__support/OSUtil/gpu/io.cpp
    M libc/src/stdio/gpu/clearerr.cpp
    M libc/src/stdio/gpu/fclose.cpp
    M libc/src/stdio/gpu/feof.cpp
    M libc/src/stdio/gpu/ferror.cpp
    M libc/src/stdio/gpu/fflush.cpp
    M libc/src/stdio/gpu/fgets.cpp
    M libc/src/stdio/gpu/file.h
    M libc/src/stdio/gpu/fopen.cpp
    M libc/src/stdio/gpu/fseek.cpp
    M libc/src/stdio/gpu/ftell.cpp
    M libc/src/stdio/gpu/remove.cpp
    M libc/src/stdio/gpu/rename.cpp
    M libc/src/stdio/gpu/ungetc.cpp
    M libc/src/stdio/gpu/vfprintf_utils.h
    M libc/src/stdlib/gpu/abort.cpp
    M libc/src/stdlib/gpu/system.cpp
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M libc/test/integration/startup/gpu/rpc_lane_test.cpp
    M libc/test/integration/startup/gpu/rpc_stream_test.cpp
    M libc/test/integration/startup/gpu/rpc_test.cpp
    M llvm/tools/llvm-gpu-loader/server.h
    M offload/plugins-nextgen/common/src/RPC.cpp
    M openmp/device/src/Misc.cpp

  Log Message:
  -----------
  [libc] Replace RPC 'close()' mechanism with RAII handler (#181690)

Summary:
Closing ports was previously done manually, This makes the protocol more
error prone as unclosed ports will leak and eventually the locks will
run out. I believe the original fear was that the RAII portion would
negatively impact code generation but I have not noticed anything
significant.


  Commit: 4973c9b90ec673e10feaef65bce8b667c4903624
      https://github.com/llvm/llvm-project/commit/4973c9b90ec673e10feaef65bce8b667c4903624
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M clang/test/Driver/aarch64-v97a.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/MC/AArch64/armv9.7a-memsys.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64][llvm] Remove +cmh gating (#181662)

Remove gating of `shuh` and `stcph` since these are instructions from
the HINT space, and therefore is a NOP on cores that don't implement it,
so gating is superfluous. gcc doesn't gate these, so remove for better
compatibility.


  Commit: 31438d5a92982b5dffcb718ac0ac108f791eefc6
      https://github.com/llvm/llvm-project/commit/31438d5a92982b5dffcb718ac0ac108f791eefc6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp

  Log Message:
  -----------
  [NFC][TableGen] Use convertInitializerToInt in CodeGenRegister (#180968)


  Commit: eb85fc740c4a73c6faf095cf83afe8b155d36b27
      https://github.com/llvm/llvm-project/commit/eb85fc740c4a73c6faf095cf83afe8b155d36b27
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineVerifier.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Minor code cleanup in MIR FrameIndex verification (#181551)

Use variable names conforming to LLVM CS and shorten the code a bit
using `dyn_cast_if_present`.


  Commit: 227d8d33c638985fcf2bd74e35323143d4b0df51
      https://github.com/llvm/llvm-project/commit/227d8d33c638985fcf2bd74e35323143d4b0df51
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/ProgramStack.h
    M llvm/lib/Support/CrashRecoveryContext.cpp
    M llvm/lib/Support/ProgramStack.cpp

  Log Message:
  -----------
  [llvm][clang] Revert split stacks implementation from runOnNewStack (#181743)

This was potentially causing Clang to emit out of stack space warnings
in rare cases, so I'm reverting it until I can verify the issue. This
keeps the API change as that's known not to be the issue.


  Commit: 4e8b7bdfea73905be8129cb33a69a6f20bf52134
      https://github.com/llvm/llvm-project/commit/4e8b7bdfea73905be8129cb33a69a6f20bf52134
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M .ci/buildbot/worker.py

  Log Message:
  -----------
  [CI][ScriptedBuilder] Avoid python 3.12-only option (#181746)

The shutil.rmtree(onexc=) parameter was only added in Python 3.12. Use
onerror= instead whose callback signature takes a different third
parameter which is ignored anyway.


  Commit: 41c6aa67a343021fd2453443b2eb5964a4029a08
      https://github.com/llvm/llvm-project/commit/41c6aa67a343021fd2453443b2eb5964a4029a08
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Model/PrivateFieldNames.def
    M clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.h
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/EntityLinkageTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Add EntityLinkage data structure (#181718)

This commit introduces the `EntityLinkage` class to represent the
linkage properties (`None`, `Internal`, `External`) of entities in the
SSAF framework and integrates it into the `TUSummary` class to enable
tracking this information across translation units.

rdar://162571047

Assisted-By: Claude


  Commit: 2ff4ec172a9e22f214a558a8a37a30ac4174b9c1
      https://github.com/llvm/llvm-project/commit/2ff4ec172a9e22f214a558a8a37a30ac4174b9c1
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/revec-split-entry.ll

  Log Message:
  -----------
  [SLP]Fix revec in split nodes

Initially split nodes do not support vector entries in revec mode, patch
fixes the issue by adding analysis for the scale factor

Fixes #181546


  Commit: 7c2109f02a0b30b900a1b5a91ad8d8758f75e33b
      https://github.com/llvm/llvm-project/commit/7c2109f02a0b30b900a1b5a91ad8d8758f75e33b
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.cpp
    M lldb/source/Plugins/Highlighter/TreeSitter/TreeSitterHighlighter.h

  Log Message:
  -----------
  [lldb] Fix compile error when tree-sitter is enabled

Not sure how this slipped in, I must have messed up something with the
stacked pull requests.


  Commit: 7679d02d6607a6f1e9908c2a9e1c5f6c9627f300
      https://github.com/llvm/llvm-project/commit/7679d02d6607a6f1e9908c2a9e1c5f6c9627f300
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    A llvm/test/CodeGen/X86/atomic-nocx16-win.ll

  Log Message:
  -----------
  [X86] Correctly call 16 byte atomic helpers on x86_64 Windows (#181356)

On x86_64 Windows, i128 values are returned in xmm0, and as arguments to
functions, they are passed indirectly (rather than in a GPR pair) - see
WinX86_64ABIInfo::classify in Clang [1].

When AtomicExpandPass generates a libcall, it normally generates one
with i128 arguments and return types. This type isn't lowered correctly
(it ends up passed or returned in a pair of GPRs).

To fix this issue, make AtomicExpandPass use the v2i64 type instead of
i128 here, just like Clang would do for an explicit function call; this
type ends up lowered correctly.

This fixes https://github.com/mstorsjo/llvm-mingw/issues/538 and
https://github.com/llvm/llvm-project/issues/136428.

[1]
https://github.com/llvm/llvm-project/blob/llvmorg-21.1.8/clang/lib/CodeGen/Targets/X86.cpp#L3390-L3408


  Commit: 6d9169553029ddc6ea9834e63d08a6a17e96ea2e
      https://github.com/llvm/llvm-project/commit/6d9169553029ddc6ea9834e63d08a6a17e96ea2e
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Relocations.cpp

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for Hexagon (#181596)

Implement Hexagon::scanSectionImpl, following the pattern established
for x86 (#178846) and PPC64. This merges the getRelExpr and TLS handling
for
SHF_ALLOC sections into the target-specific scanner, enabling
devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle GD PLT relocations inline, always setting NEEDS_PLT. Remove
  the R_HEX_GD_PLT special case from process().
- Handle TLS IE, GD GOT, and TPREL directly, bypassing
  handleTlsRelocation. Remove EM_HEXAGON from the execOptimize check.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and scanEhSection.


  Commit: d5607ad55c5e56383d33e6ec0f582a687d75dedb
      https://github.com/llvm/llvm-project/commit/d5607ad55c5e56383d33e6ec0f582a687d75dedb
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M polly/include/polly/ScopInfo.h
    M polly/lib/Analysis/ScopInfo.cpp
    M polly/lib/Pass/PhaseManager.cpp

  Log Message:
  -----------
  [Polly][ScopInfo] Lazy Scop instantiation (#179535)

The old NPM was using ScopInfo pass introduced in
https://reviews.llvm.org/D20962, which in contrast to the LPM was using
ScopInfoRegionPass. ScopInfo was instantiating all Scop objects
immediately. After codegenning, all Scop objects need to be recomputed
anyway, making this approach wastful. The PhaseManager inherited this
behaviour from the NPM, leading to some concerns.

Replace the instantiate-all behavior of ScopInfo with an on-demand
instantiation. SCoPs now must be iterated using ScopDetection instead
using ScopInfo, but only some unsed legacy NPM passes (now removed) were
doing that anyway.


  Commit: be28e55d2d76dfa6f75a282d84a7edfb483b2470
      https://github.com/llvm/llvm-project/commit/be28e55d2d76dfa6f75a282d84a7edfb483b2470
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libcxx/include/__vector/vector.h

  Log Message:
  -----------
  [libc++] Memoise `size()` in `vector::__assign_with_size` (#180288)

This is an optimisation from the size-based vector project that's
applicable to all vector implementations.


  Commit: e8a78814f62da8047383433152a0973568511c95
      https://github.com/llvm/llvm-project/commit/e8a78814f62da8047383433152a0973568511c95
  Author: David Green <david.green at arm.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
    M llvm/test/CodeGen/AArch64/aarch64-smull.ll
    M llvm/test/CodeGen/AArch64/reassocmls.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Reassociate add sub mul. (#180753)

This is a port of performSubAddMULCombine from D143143. The mid end will
reassociate sub(sub(x, m1), m2) to sub(x, add(m1, m2)). This
reassociates it back to allow the creation of more mls instructions.


  Commit: 4a4ab28f94bdc7f81903d65d87318e023393914e
      https://github.com/llvm/llvm-project/commit/4a4ab28f94bdc7f81903d65d87318e023393914e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
    A lldb/source/Plugins/Highlighter/TreeSitter/README.md
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/CMakeLists.txt
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/HighlightQuery.h.in
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/SwiftTreeSitterHighlighter.cpp
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/SwiftTreeSitterHighlighter.h
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/tree-sitter-swift/LICENSE
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/tree-sitter-swift/grammar.js
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/tree-sitter-swift/highlights.scm
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/tree-sitter-swift/scanner.c
    A lldb/source/Plugins/Highlighter/TreeSitter/Swift/tree-sitter-swift/tree-sitter.json
    M lldb/unittests/Highlighter/CMakeLists.txt
    M lldb/unittests/Highlighter/HighlighterTest.cpp

  Log Message:
  -----------
  [lldb] Add tree-sitter based Swift syntax highlighting (#181297)

This adds tree-sitter based Swift syntax highlighting to LLDB. It
consists of the SwiftTreeSitterHighlighter plugin and the vendored Swift
grammar [1], which is licensed under MIT.

[1] https://github.com/alex-pinkus/tree-sitter-swift


  Commit: ac545c7ea8c1afce005e7bdaa34e86d899509d9c
      https://github.com/llvm/llvm-project/commit/ac545c7ea8c1afce005e7bdaa34e86d899509d9c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libclc/CMakeLists.txt
    M libclc/clc/lib/amdgcn/workitem/clc_get_global_offset.cl
    M libclc/clc/lib/amdgcn/workitem/clc_get_work_dim.cl
    M libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl
    M libclc/opencl/lib/amdgcn-amdhsa/workitem/get_local_size.cl

  Log Message:
  -----------
  libclc: Remove old clang version checks (#181701)


  Commit: 3ea89622be1a54ad9da37ee13bc597d605906495
      https://github.com/llvm/llvm-project/commit/3ea89622be1a54ad9da37ee13bc597d605906495
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel

  Log Message:
  -----------
  [bazel] Unbreak the build after f03ff95ce20f282db22b40997ee1daa01c01e581


  Commit: 101f88aa99b83f904d709c96953098faf7f73991
      https://github.com/llvm/llvm-project/commit/101f88aa99b83f904d709c96953098faf7f73991
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/shared/rpc.h
    M libc/shared/rpc_util.h

  Log Message:
  -----------
  [libc] Fix move destruction double-freeing ports after move to RAII

Summary:
Recently I changed the interface to use RAII to close the ports. This
exposed a problem where the default move constructor was invoked in the
optional wrapping, this caused the destructor to fire twice on the
server, obviously causing havok. This PR changes the move destructor to
be deleted so this never happens again. Now everything is constructed
once  and only references are allowed. The optional class had to be
fixed to properly set in_use so we run the destructor properly as well.


  Commit: 140d65f138f2153b61a11a7eceabf8b1b99b7c9b
      https://github.com/llvm/llvm-project/commit/140d65f138f2153b61a11a7eceabf8b1b99b7c9b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/shared/rpc.h
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_opcodes.h
    M libc/shared/rpc_util.h

  Log Message:
  -----------
  [libc][NFC] Fix comments and macros in the RPC interface

Summary:
Typos and missing include header guards should be fixed now.


  Commit: 1f008b6b15a8b49559e6dbe8f9c4c4edcfa657c3
      https://github.com/llvm/llvm-project/commit/1f008b6b15a8b49559e6dbe8f9c4c4edcfa657c3
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/Target.h

  Log Message:
  -----------
  [lldb/Target] Remove unused include

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 051fb5a1d01daa205356edf0197407fa1363acbc
      https://github.com/llvm/llvm-project/commit/051fb5a1d01daa205356edf0197407fa1363acbc
  Author: Eric Feng <55723758+efric at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  [ADT] Remove misleading is_const check in MutableArrayRef constructor (#181758)

The `std::negation<std::is_const<C>>` check here seems semantically
inaccurate; we should care about whether the container provides mutable
element access, not the constness of the container itself. This was
already being checked but was previously being dropped prior to the
change from `const C&` to `C&` in
https://github.com/llvm/llvm-project/pull/181190. That was sufficient in
itself to fix the referenced issue
https://github.com/llvm/llvm-project/issues/181176

---------

Signed-off-by: Eric Feng <Eric.Feng at amd.com>


  Commit: e496e3c273b1d7bb6e4665748c1ade65926d5041
      https://github.com/llvm/llvm-project/commit/e496e3c273b1d7bb6e4665748c1ade65926d5041
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/HostInfoBase.h
    M lldb/include/lldb/Host/macosx/HostInfoMacOSX.h
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
    M lldb/unittests/ObjectFile/MachO/TestObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb][macOS] Index shared cache files by UUID & filename (#180874)

The shared cache index only had accessors for getting a file from a
shared cache by filename. In some environments like iOS Simulator, a
filename can be either the actual realpath name of the framework in an
SDK or simulator runtime install location, or rooted on / like
/System/LibraryFrameworks/SwiftUI.framework. Because the searches for
binaries were by filename, this divergence would be a problem. However,
searching for binaries by the binary's UUID can remove that ambiguity.

I changed HostInfoMacOSX's store of SharedCacheImageInfo's to have a
std::vector of all of the SharedCacheImageInfo's in a shared cache. Then
I create a mapping of filename-to-SharedCacheImageInfo* and a mapping of
UUID-to-SharedCacheImageInfo*, both pointing into the now-frozen
std::vector. I added a HostInfo::GetSharedCacheImageInfo method to fetch
an entry by shared-cache UUID + file UUID, in addition to the previous
shared-cache UUID + filename.

Have HostInfoMacOSX store the filenames it gets from the libdyld SPI in
ConstStrings to make it clear that they have infinite lifetime in the
process, and we don't need to do anything further.

rdar://148939795

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 0667781abfe55cb112e99e950bf6030aa102388f
      https://github.com/llvm/llvm-project/commit/0667781abfe55cb112e99e950bf6030aa102388f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/tsan/rtl/BUILD.gn

  Log Message:
  -----------
  [gn] port a591a44653ea


  Commit: 942f5fbb51b82a6a465547eb8de6f02ccfc8a277
      https://github.com/llvm/llvm-project/commit/942f5fbb51b82a6a465547eb8de6f02ccfc8a277
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/include/lldb/Host/BUILD.gn

  Log Message:
  -----------
  [gn] port 4a4ab28f94bdc7


  Commit: ab3d742f6f3f78533a208788ae00c019bbc13b33
      https://github.com/llvm/llvm-project/commit/ab3d742f6f3f78533a208788ae00c019bbc13b33
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    A libc/config/gpu/spirv/entrypoints.txt
    A libc/config/gpu/spirv/headers.txt
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-macros/time-macros.h
    M libc/include/llvm-libc-types/fenv_t.h
    M libc/shared/rpc_util.h
    M libc/src/__support/macros/properties/architectures.h
    M libc/src/__support/macros/properties/cpu_features.h
    M libc/src/__support/time/gpu/time_utils.cpp
    M libc/src/__support/time/gpu/time_utils.h
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add basic support for building SPIR-V libraries (#181049)

This is to add support to build libc for building with spirv backend,
for use with OpenMP kernels


  Commit: 0065a55cb9b2b2919cf58d69b54927cc26d3edb2
      https://github.com/llvm/llvm-project/commit/0065a55cb9b2b2919cf58d69b54927cc26d3edb2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn] port some of 6b75eaea794f6

Needed for 1a7c110dfc92e.


  Commit: 7806a0b699acc654844d0332283d6370d47bb689
      https://github.com/llvm/llvm-project/commit/7806a0b699acc654844d0332283d6370d47bb689
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

  Log Message:
  -----------
  [CodeGen] Silence a warning (NFC)

llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:4665:12:
 error: unused variable 'NumElts' [-Werror,-Wunused-variable]
  unsigned NumElts = DemandedElts.getBitWidth();
           ^
1 error generated.


  Commit: b37174efc0a5296f3a5b6f4c14d5820772e2d928
      https://github.com/llvm/llvm-project/commit/b37174efc0a5296f3a5b6f4c14d5820772e2d928
  Author: Arun Thangamani <arun.thangamani at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/Utils/X86VectorUtils.h
    M mlir/lib/Dialect/X86Vector/Transforms/VectorContractBF16ToFMA.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/VectorContractToPackedTypeDotProduct.cpp
    M mlir/lib/Dialect/X86Vector/Utils/X86VectorUtils.cpp
    M mlir/test/Dialect/X86Vector/vector-contract-bf16-to-fma.mlir
    M mlir/test/Dialect/X86Vector/vector-contract-to-packed-type-dotproduct.mlir

  Log Message:
  -----------
  [mlir][x86vector] Shuffle BF16 vector.contract output for Flat layout. (#174590)

This patch shuffles the output of a `bf16` type `non-vnni` packed
`vector.contract` operation (`flat` layout). The output of the
contraction operation is shuffle to match the `flat` layout, before get
stored in the `acc` matrix.

Following this transform schedule, the `vector.contract` will be lowered
to one of the following operations:
- x86vector::DotBF16Op with `B` matrix shuffled to compensate the `flat`
layout (supported as part of this PR), or
- vector.fma with loads + broadcast using `bf16` packed operations
(supported as part of this PR).


  Commit: a65c4f4d2b84b5a80ffc7ae2fb19781258167952
      https://github.com/llvm/llvm-project/commit/a65c4f4d2b84b5a80ffc7ae2fb19781258167952
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py

  Log Message:
  -----------
  [lldb][windows] deactivate unicode tests on Windows (#181698)

https://github.com/llvm/llvm-project/pull/181143 introduced a regression
in Windows build bots, which is due to some Unicode characters not being
rendered properly.

The proper fix is to be able to configure the characters that are
rendered, and to force them to be ascii characters.


  Commit: fb41009de5739b7f8a6a188c6da30464c1f71168
      https://github.com/llvm/llvm-project/commit/fb41009de5739b7f8a6a188c6da30464c1f71168
  Author: LukeZhuang <lukebloodytears at gmail.com>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv32.mir
    A llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv64.mir

  Log Message:
  -----------
  [RISCV] Add test cases showing RegisterScavenger crash (#181537)


  Commit: f978a7d023a224d3efc6af5e4ae31bd6b24e622b
      https://github.com/llvm/llvm-project/commit/f978a7d023a224d3efc6af5e4ae31bd6b24e622b
  Author: Chris Cotter <ccotter14 at bloomberg.net>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.cpp
    M compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.h

  Log Message:
  -----------
  [tsan] Only init AdaptiveDelay if enabled (#181757)

In #178836, while refactoring from a virtual class design to a
non-virtual design, the logic ended up such that AdaptiveDelayImpl was
always constructed, even if the adaptive delay feature was not enabled.
Adaptive delay itself was always disabled if the flag was off, this just
prevents the ctor from running at all.

@dvyukov


  Commit: 530c938485d7c4119e8df3f57e288f9f20a183cd
      https://github.com/llvm/llvm-project/commit/530c938485d7c4119e8df3f57e288f9f20a183cd
  Author: Vito Secona <77039267+secona at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td

  Log Message:
  -----------
  [mlir][sparse][nfc] replace sparse_tensor.pointers in docs (#181636)

The `-sparse-tensor-conversion` and `-sparse-tensor-codegen`
descriptions use `sparse_tensor.pointers` which doesn't exist. It
was renamed to `sparse_tensor.positions`.


  Commit: c985f285e4911affa46ea79e21263cbaf4c8322f
      https://github.com/llvm/llvm-project/commit/c985f285e4911affa46ea79e21263cbaf4c8322f
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/allocatable_gpu_reduction.mlir

  Log Message:
  -----------
  [OMPIRBuilder] Hoist alloca's to entry blocks of compiler-emitted GPU reduction functions (#181359)

Fixes a bug in GPU reductions when `-O0` was used to compile GPU
reductions. There were invalid memory accesses at runtime for the
following example:

```fortran
program test_array_reduction()
  integer :: red_array(1)
  integer :: i

  red_array = 0

  !$omp target teams distribute parallel do reduction(+:red_array)
  do i = 1, 100
    red_array(1) = red_array(1) + 4422
  end do
  !$omp end target teams distribute parallel do

  print *, red_array
end program test_array_reduction
```

The issue was caused by alloca's for some temp values in the combiner
region of the reduction op being inlined beyond the entry blocks of the
GPU reduction functions emitted by the compiler.

This PR fixes the issue by hoisting all alloca's to the entry block
after the reduction functions are completely emitted by the compiler.


  Commit: 2b4a462e9533159b7cca82aff50e077738463ea6
      https://github.com/llvm/llvm-project/commit/2b4a462e9533159b7cca82aff50e077738463ea6
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/i1-copy.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/atomic-optimizer-strict-wqm.ll
    M llvm/test/CodeGen/AMDGPU/divergent-branch-uniform-condition.ll
    M llvm/test/CodeGen/AMDGPU/dual-source-blend-export.ll
    M llvm/test/CodeGen/AMDGPU/expand-waitcnt-profiling.ll
    M llvm/test/CodeGen/AMDGPU/group-image-instructions.ll
    M llvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
    M llvm/test/CodeGen/AMDGPU/imm.ll
    M llvm/test/CodeGen/AMDGPU/issue98474-need-live-out-undef-subregister-def.ll
    M llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bvh.stack.push.pop.rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.prim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/load-local-redundant-copies.ll
    M llvm/test/CodeGen/AMDGPU/memory_clause.ll
    M llvm/test/CodeGen/AMDGPU/required-export-priority.ll
    M llvm/test/CodeGen/AMDGPU/ret.ll
    M llvm/test/CodeGen/AMDGPU/scheduler-rp-calc-one-successor-two-predecessors-bug.ll
    M llvm/test/CodeGen/AMDGPU/si-annotate-cf-kill.ll
    M llvm/test/CodeGen/AMDGPU/si-scheduler-exports.ll
    M llvm/test/CodeGen/AMDGPU/skip-if-dead.ll
    M llvm/test/CodeGen/AMDGPU/subreg-coalescer-crash.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll
    M llvm/test/MC/AMDGPU/exp-gfx10.s
    M llvm/test/MC/AMDGPU/exp-gfx11.s
    M llvm/test/MC/AMDGPU/exp-pregfx11.s
    M llvm/test/MC/AMDGPU/exp.s
    M llvm/test/MC/AMDGPU/gfx10_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx11_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx7_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx8_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx9_asm_exp.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_exp.txt

  Log Message:
  -----------
  [AMDGPU] Add missing comma between export target and first export data (#181641)

The new format matches the official ISA spec and ensures the
disassembler prints 'export mrt0, v0, off, off, off' instead of 'export
mrt0 v0, off, off, off'.

No functional encoding changes; printing/AsmString only.


  Commit: 89eb7329bfad4b5096edee93fcf907542704ce7b
      https://github.com/llvm/llvm-project/commit/89eb7329bfad4b5096edee93fcf907542704ce7b
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSDIRInstructions.td
    A llvm/test/MC/AMDGPU/gfx13_asm_vdsdir.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vdsdir_alias.s

  Log Message:
  -----------
  [AMDGPU] Add VDSDIR encoding to gfx13 (#181620)


  Commit: 6f0759d5687eb81d775c590512bdc876b390d7c8
      https://github.com/llvm/llvm-project/commit/6f0759d5687eb81d775c590512bdc876b390d7c8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/test/Transforms/SafeStack/X86/byval.ll
    M llvm/test/Transforms/SafeStack/X86/setjmp2.ll

  Log Message:
  -----------
  [SafeStack] Use ptrmask instead of ptrtoint+and+inttoptr (#181649)

Use the provenance-preserving ptrmask intrinsic instead of
ptrtoint+and+inttoptr for pointer alignment.


  Commit: 5933294bb1a81bfb00a3cd04cee274dcebfc575a
      https://github.com/llvm/llvm-project/commit/5933294bb1a81bfb00a3cd04cee274dcebfc575a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-all-indirect-accesses.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-indirect-extern-uses-max-reachable-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-precise-allocate-to-module-struct.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-single-var-ambiguous.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-single-var-unambiguous.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-table.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-zero-size-arr.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll

  Log Message:
  -----------
  [AMDGPULowerLDS] Avoid unnecessary ptrtoint/inttoptr roundtrip (#181671)

Store pointers instead of integers in the table, and load them as
pointers.


  Commit: 86bd00348e5a47b4f87b03d0be78879ed4fd7f52
      https://github.com/llvm/llvm-project/commit/86bd00348e5a47b4f87b03d0be78879ed4fd7f52
  Author: Takuto Ikuta <tikuta at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Diagnostic.h
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    A clang/test/Modules/GH170429.cpp

  Log Message:
  -----------
  [Clang][Modules] Ensure global diagnostic overrides are respected in system modules (#180684)

When a template is instantiated from a system module, the
location-specific
diagnostic state (from 'Diag.GetDiagStateForLoc(Loc)') often has
'SuppressSystemWarnings' set to true because the location itself is
within
a system header defined by the module map.

Clang provides mechanisms like 'AllowWarningInSystemHeaders' RAII
(used for deprecated warnings in 'SemaAvailability.cpp') that are
intended
to temporarily override this suppression. Previously, this was done by
modifying the current diagnostic state's 'SuppressSystemWarnings' bit.
However, since 'getDiagnosticSeverity' checks the state associated with
the
diagnostic's location, this current-state override was ignored for code
inside system modules.

This patch introduces a new 'ForceSystemWarnings' flag in
'DiagnosticsEngine'
that acts as a global, non-hermetic override.
'AllowWarningInSystemHeaders'
now uses this flag. 'getDiagnosticSeverity' is updated to respect this
flag,
ensuring that intended overrides work even for diagnostics triggered
within
system modules.

Importantly, this preserves the hermeticity of explicit modules for
normal
compilation: a user passing '-Wsystem-headers' will not see unrelated
system
warnings from a module that was built with system warnings suppressed,
because '-Wsystem-headers' only modifies the initial 'DiagState' and not
the
global 'ForceSystemWarnings' flag.

The included test 'GH170429.cpp' verifies:
1. Deprecated warnings from system modules are shown during
user-triggered instantiation.
2. Warnings with 'ShowInSystemHeader' (e.g., -Wdelete-non-virtual-dtor)
continue to work.
3. Hermeticity of explicit modules is preserved: unrelated warnings
suppressed during
module build (e.g., -Wextra-semi) remain suppressed even if the user
compiles with
   -Wsystem-headers.

Fixes #170429


  Commit: 9637a9665d27f5a241c0ab3170112f03f1e2e868
      https://github.com/llvm/llvm-project/commit/9637a9665d27f5a241c0ab3170112f03f1e2e868
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR|BUILD] Fix for #174590 (#181785)

[MLIR|BUILD] Fix for #174590


  Commit: d189201d17c0ff5b9837e75b79bca281f4b6821a
      https://github.com/llvm/llvm-project/commit/d189201d17c0ff5b9837e75b79bca281f4b6821a
  Author: jay0x <90309873+blazie2004 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/test/Semantics/OpenMP/nested_parallel_sections_valid.f90
    M flang/test/Semantics/OpenMP/workshare04.f90
    M flang/test/Semantics/OpenMP/workshare05.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix nested PARALLEL SECTIONS validation (#179419)

### Problem
Flang’s OpenMP semantic checker was mistakenly rejecting valid nested
constructs such as PARALLEL SECTIONS, PARALLEL DO, and other combined
parallel work-sharing directives.

The checker treated all work-sharing constructs identically and enforced
the work-sharing region nesting rules, even for a combined parallel
work-sharing construct that defined its own parallel region.

This resulted in the checker reporting the use of nested PARALLEL
SECTIONS within another parallel region as illegal OpenMP code

### Fixes: https://github.com/llvm/llvm-project/issues/179250

---------

Co-authored-by: Jay Satish Kumar Patel <kumarpat at pe31.hpc.amslabs.hpecorp.net>


  Commit: d72bc0903ff001264027963f34963a13bb914185
      https://github.com/llvm/llvm-project/commit/d72bc0903ff001264027963f34963a13bb914185
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    A llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll

  Log Message:
  -----------
  AMDGPU: Use fpmath metadata on f16 log/log10 intrinsics (#180489)

result by default, and the old expansion with the afn flag. The
old result was good enough for OpenCL conformance, so consider
the fpmath metadata and use the fast path. This is done in
AMDGPUCodeGenPrepare for the same reason that sqrt is handled here,
which is the DAG does not have a way to access fpmath metadata
from the original instruction.

This is not yet of practical use, because the log calls sourced
from OpenCL are not actually marked with this metadata and there
isn't a method to produce it from the source languages.


  Commit: 4fd9c1fccb0308d63bf6c18c03fd1409de7423e8
      https://github.com/llvm/llvm-project/commit/4fd9c1fccb0308d63bf6c18c03fd1409de7423e8
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR|BUILD] Fix for #174590 (2) (#181786)

Also adds the dependency to `X86VectorUtils` which was missed in the
previous fix.


  Commit: 48a1652eb63cb77ae563bb11f4c48bf90e7914d5
      https://github.com/llvm/llvm-project/commit/48a1652eb63cb77ae563bb11f4c48bf90e7914d5
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/addp-shuffle.ll
    M llvm/test/CodeGen/AArch64/arm64-trn.ll
    M llvm/test/CodeGen/AArch64/arm64-uzp.ll

  Log Message:
  -----------
  [AArch64] optimize manual addp (#181549)

add patterns for 64-bit `addp` and `faddp`

```
vpadd_s16_intrin:
        addp    v0.4h, v0.4h, v1.4h
        ret

vpadd_s16_manual:
        uzp1    v2.4h, v0.4h, v1.4h
        uzp2    v0.4h, v0.4h, v1.4h
        add     v0.4h, v2.4h, v0.4h
        ret
```

So, add some logic to catch the deinterleaving shuffle and convert to
`addp`.


  Commit: d2d620d4beafa53acfab6d689214913705776aa6
      https://github.com/llvm/llvm-project/commit/d2d620d4beafa53acfab6d689214913705776aa6
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    A llvm/test/MC/ARM/thumb-state-on-hidden-func.s

  Log Message:
  -----------
  [MC][ARM] Don't set funcs to Thumb as a side effect of .hidden (#181156)

When assembling a source file which switches between Arm and Thumb state
using `.arm` and `.thumb`, if you defined a function in Arm state and
mark it as hidden at dynamic link time using `.hidden`, but don't
actually issue the `.hidden` directive until you have switched back to
Thumb state, then the function would be accidentally marked as Thumb as
a side effect of making it hidden.

This happened in `ARMELFStreamer::emitSymbolAttribute`, and the comment
suggests that it was semi-deliberate: it was intended to happen as a
side effect of `.type foo,%function`, because the function label might
have already been defined without a type, and shouldn't be marked as
Thumb until it's known that it's a function. But I think it was an
accident that the same behavior also applies to any other addition of a
symbol attribute, such as `.hidden`: the call to `setIsThumbFunc` was
conditioned on whether the symbol has function type after setting the
attribute, not whether function type was the attribute _actually being
set_. So if you set the symbol to function type and _then_ use
`.hidden`, the condition would match again.

Fixes #180358, in which this came up in real-world code: rustc's IR
output included a top-level function in the form of inline asm, defined
in Arm state, and marked it as hidden via the LLVM IR `declare`, so that
LLVM didn't emit the `.hidden` directive until after it had switched
back to Thumb state.

The new test case includes a check for the _intended_ behavior of the
code in `emitSymbolAttribute`, to confirm that that still works.


  Commit: d7f32f1fbf83da2faa4acdcaf2a4d4885a2d068c
      https://github.com/llvm/llvm-project/commit/d7f32f1fbf83da2faa4acdcaf2a4d4885a2d068c
  Author: Richard Dzenis <richard at dzenis.dev>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/AST/Stmt.cpp
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp

  Log Message:
  -----------
  [clang] Fix some static initialization race-conditions (#181367)

- clang/StaticAnalyzer: fix static init in findKnownClass. Prior to this patch two threads running in findKnownClass could result in a race condition.
- clang/Stmt: fix StmtClassNameTable array initialization: prior to this patch there was a race condition when two threads check`if(Initialized)` at the same time.
- clang/ParsedAttrInfo: fix race condition in getAttributePluginInstances. Prior to this patch two threads could enter `if(empty())` check.
- clang/CodeGen: correctly restore diagnostic handler in HandleTranslationUnit. Prior to this patch an early exit from HandleTranslationUnit could result in not restoring previous diagnostic handler.


  Commit: 48210ccbe58ef7b9799e1b9fc89edb2fe2ebc6bf
      https://github.com/llvm/llvm-project/commit/48210ccbe58ef7b9799e1b9fc89edb2fe2ebc6bf
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-safety-fixits.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp

  Log Message:
  -----------
  [LifetimeSafety] Correctly place lifetimebound attr in corner cases (#181699)

Closes https://github.com/llvm/llvm-project/issues/180344.


  Commit: 5375d3c7f5693cce4f401c04c2163df0b9d94bed
      https://github.com/llvm/llvm-project/commit/5375d3c7f5693cce4f401c04c2163df0b9d94bed
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Utility/AnsiTerminal.h
    M lldb/unittests/Utility/AnsiTerminalTest.cpp

  Log Message:
  -----------
  [lldb] Improve ansi::OutputWordWrappedLines (#181165)

This PR fixes a few issues including one that prevented the use of
llvm::StringRef. Follow up to #180947.

Some behaviour for rarely seen inputs has been defined. For example
empty strings. In normal use with command descriptions we do not expect
this to happen, but now it's a utility function, it's easier to reason
about if we cover all possible inputs.

* Empty string in now results in an empty string out. Rather than a
single newline. This is less surprising, since no lines were split.
* Bugs were fixed in the handling of single word inputs. If a single
word cannot fit within the column limit we just print it unmodified.
* Leading spaces are trimmed from input and if that results in no text,
empty string is returned. Another unexpected input, but cheap to handle
and makes the rest of the code a bit simpler.
* llvm::StringRef is now used for the input text. This was enabled by
fixing a bug in checking whether end had reached final_end. I think the
previous logic caused us to read out of bounds by 1 byte sometimes.
* Some buggy test output has changed but this is fine, no one is relying
on that buggy behaviour.

Ultimately I may wipe out all these changes later with a new
implementaion, but I think it's a good approach to do this
incremenetally at first.


  Commit: 93c93ff199a1a2b1c7beb74c966080793a0b1afd
      https://github.com/llvm/llvm-project/commit/93c93ff199a1a2b1c7beb74c966080793a0b1afd
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Format/Format.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTestMacroExpansion.cpp

  Log Message:
  -----------
  [Format] Configure ASSIGN_OR_RETURN macros for Google style (#169037)

These macros are used by many of the Google projects, e.g.:
-
https://chromium.googlesource.com/chromium/src/+/133.0.6943.141/base/types/expected_macros.h#104
-
https://github.com/protocolbuffers/protobuf/blob/1477683618b83e07bb8ec1d19b718e0d4d5c8357/src/google/protobuf/stubs/status_macros.h#L62

---------

Co-authored-by: Daniel Jasper <djasper at google.com>


  Commit: 1b0cbdb8e8a91e5aeb0698684d408aef2e47bc85
      https://github.com/llvm/llvm-project/commit/1b0cbdb8e8a91e5aeb0698684d408aef2e47bc85
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/TableGen/HwModeBitSet.td
    M llvm/test/TableGen/HwModeSubRegs.td
    M llvm/utils/TableGen/RegisterBankEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Use standard name for default mode in debug printing (#181739)

In comments in generated files and in -register-info-debug output, use
the standard name "DefaultMode" for consistency, instead of hard coding
an alternative name "Default".


  Commit: a6b7f42bc802dbc15940a829f8e52209385d4283
      https://github.com/llvm/llvm-project/commit/a6b7f42bc802dbc15940a829f8e52209385d4283
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/ReplaceWithVeclib.cpp
    M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
    M llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec.ll

  Log Message:
  -----------
  [CodeGen] Teach ReplaceWithVeclib to use correct calling convention (#180773)

We correctly replace calls to the LLVM intrinsic with the vector
math variant, but fail to also copy the calling convention. This
is important for veclibs such as ArmPL where the aarch64_vector_pcs
convention reduces the number of registers that need saving
across calls.


  Commit: 64c32e709dea11dc44d3a9829320c07970f9f712
      https://github.com/llvm/llvm-project/commit/64c32e709dea11dc44d3a9829320c07970f9f712
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp

  Log Message:
  -----------
  [DSE] Separate DSEState methods to out-of-line declarations (NFC)

By the time `DSEState` evolved, the majority of the methods bodies
had grown inside the struct, interleaving declarations and logic.
Minor opportunity to improve readability by refactoring methods out
of the anonymous namespace, close to the exisiting ones.


  Commit: 15057eb8ce6361bade6d2fe73d72ef8558351394
      https://github.com/llvm/llvm-project/commit/15057eb8ce6361bade6d2fe73d72ef8558351394
  Author: Andrei Elovikov <andrei.elovikov at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    A llvm/test/Transforms/LoopVectorize/VPlan/predicator.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll

  Log Message:
  -----------
  [VPlan] Add VPlan-dump-based test for predication (#180794)


  Commit: b7e54b933389a12ecd5990ed28f0efb87b082ab4
      https://github.com/llvm/llvm-project/commit/b7e54b933389a12ecd5990ed28f0efb87b082ab4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td

  Log Message:
  -----------
  [clang][NFC] Remove unused diagnostic (#181790)


  Commit: c15f71d279e3913ceba65e34d5834a5fc59f41a4
      https://github.com/llvm/llvm-project/commit/c15f71d279e3913ceba65e34d5834a5fc59f41a4
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp

  Log Message:
  -----------
  [NFC][SPIRV] Remove `SPIRVType` from comments (#181652)

`SPIRVType` was deprecated and is being removed, so clean comments that
reference it.

In these contexts, `SPIRVType` used to mean _"a SPIRV type"_.


  Commit: 2b90b630bb081d1ba9348ef2b60f26841142e159
      https://github.com/llvm/llvm-project/commit/2b90b630bb081d1ba9348ef2b60f26841142e159
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/test/CodeGen/X86/win_cst_pool.ll

  Log Message:
  -----------
  [LLVM][CodeGen] Add suppport for vector ConstantInt/FP to scalarConstantToHexString. (#180978)


  Commit: 74044a797eaed56fad32ffff22cd3304d836ef7a
      https://github.com/llvm/llvm-project/commit/74044a797eaed56fad32ffff22cd3304d836ef7a
  Author: DEBADRIBASAK <32904247+DEBADRIBASAK at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    A clang/test/Sema/warn-lifetime-safety-cfg-bailout.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add bailout for large CFGs (#170444)

This PR introduces a flag for setting a threshold size for CFG blocks
above which lifetime safety analysis will skip processing those CFGs.
The major contributor of compilation time increase due to lifetime
safety analysis is the costly join operation during loan propagation.
This can be avoided at the cost of introducing some false negatives by
ignoring some large CFG blocks.

The `block-size-threshold` flag accepts an integer value which serves as
the threshold. CFG blocks with size above this threshold are ignored.
This value is only used if an integer > 0 is passed to it. By default it
is set to 0 and no CFG blocks are skipped during analysis. The CFG block
size refers to the number of facts associated with a CFG block. This PR
also adds a debug-only option that dumps the sizes of CFG blocks
associated with an analysis context:

Example output (for `llvm-project/llvm/lib/Demangle/Demangle.cpp`):

With different values for `MaxCfgBlocks` the values for
`task-clock:uppp_event` are as follows (the files are taken from there
top files
[here](https://llvm-compile-time-tracker.com/compare_clang.php?from=128eacfaba78162c944c073270db02e237b7b851&to=e39caf5a04aadf6053470b7843a4d987250083f1&stat=instructions%3Au&sortBy=absolute-difference))


| | CompilerInvocation.cpp | | | SemaARM.cpp | | | X86ISelLowering.cpp |
| |

|:---------------:|:----------------------:|:----------------------:|:----------------------:|:--------------:|:------------------------:|:----------------------:|:-------------------:|:-----------------------:|:-----------------------:|
| | No bailout | >5000 | >1000 | No bailout | >5000 | >1000 | No bailout
| >5000 | >1000 |
| Total Time | 27,143,500,000 | 27,108,750,000 (-0.1%) | 27,058,000,000
(-0.3%) | 13,819,750,000 | 13,807,750,000 (-0.086%) | 13,790,500,000
(-0.2%) | 49,580,250,000 | 49,248,500,000 (-0.67%) | 49,422,000,000
(-0.42%) |
| Lifetime Safety | 97,000,000 | 95,500,000 (-1.5%) | 91,250,000 (-5.9%)
| 68,750,000 | 64,500,000 (-6.18%) | 63,750,000 (-7.27%) | 131,500,000 |
130,250,000 (-0.9%) | 124,500,000 (-5.3%) |


  Commit: cdaeecabf73705616236f8f8a328b2d8b9134c65
      https://github.com/llvm/llvm-project/commit/cdaeecabf73705616236f8f8a328b2d8b9134c65
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll

  Log Message:
  -----------
  [VPlan] Only remove backedge if IV is still incremented by VFxUF.

After 6f253e87dd, VFxUF may have been replaced by UF, in which case the
simplification is no longer correct. Tighten check to make sure the
increment is still what we expect.

Fixes a miscompile in the added test case.


  Commit: 2b4da2e2a8b8e41521355698a62a975f75806bcd
      https://github.com/llvm/llvm-project/commit/2b4da2e2a8b8e41521355698a62a975f75806bcd
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/predicator.ll

  Log Message:
  -----------
  [LV] Update predicator.ll test checks.

VPlan printing output changed on main before patch was merged.
Regenerate check lines.


  Commit: 3f73c86909caca7ffc0d8f306f401bc6fc6ec70e
      https://github.com/llvm/llvm-project/commit/3f73c86909caca7ffc0d8f306f401bc6fc6ec70e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/source/Target/Target.cpp
    M lldb/unittests/Expression/ExpressionTest.cpp

  Log Message:
  -----------
  [lldb][Target][NFC] Update error messages according to LLVM-coding style (#181795)

The [LLVM coding style
guide](https://llvm.org/docs/CodingStandards.html#error-and-warning-messages)
says:

> start the first sentence with a lowercase letter, and finish the last
sentence
> without a period

This patch updates the erorr messages added in
https://github.com/llvm/llvm-project/pull/179208 accordingly.

(addresses
https://github.com/llvm/llvm-project/pull/179208#issuecomment-3912273053)


  Commit: 0b5b306b3e3762fb1826064d60462b702e869334
      https://github.com/llvm/llvm-project/commit/0b5b306b3e3762fb1826064d60462b702e869334
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    R lld/test/wasm/large-debug-section.test
    R lld/test/wasm/large-section.test
    R lld/test/wasm/section-too-large.test
    M lld/wasm/InputChunks.h
    M lld/wasm/OutputSections.cpp

  Log Message:
  -----------
  Revert "[lld][Webassembly] Avoid a signed overflow on large sections (#178287)"

This reverts commit c703f5a1632973dd6eade473614dfbed1b088d9e.

I have reverted this change as it was failing lld arm 32bit buildbot.
https://lab.llvm.org/staging/#/builders/160/builds/1189


  Commit: cc76b20ec4eea8196d934d8f853a3d6d06d02f1d
      https://github.com/llvm/llvm-project/commit/cc76b20ec4eea8196d934d8f853a3d6d06d02f1d
  Author: Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py

  Log Message:
  -----------
  [lldb][test] TestQuitWithProcess: Increase timeout to fix ARM flakiness (#181660)

TestQuitWithProcess.py is randomly failing on Arm Linux buildbot. The
test validates LLDB's ability to quit cleanly killing active processes
with a timeout value set to 15 seconds which could be insufficient for
any resource limited platforms under heavy load.

This patch increase the timeout to 30 seconds to accommodate any
resource limits.

https://lab.llvm.org/buildbot/#/builders/18/builds/24801


  Commit: 7d010cb9cf5df683aef9d3325b026721f3309170
      https://github.com/llvm/llvm-project/commit/7d010cb9cf5df683aef9d3325b026721f3309170
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/Maintainers.md

  Log Message:
  -----------
  Move Stanislav Gatev to the inactive maintainers list (#180939)

While reaching out to folks for a maintainers list refresh, Stanislav
asked to step down due to other commitments. Thank you for all your
help!


  Commit: 47a969ef889c9e244dfb34e6a4c4dbb5bf03ea60
      https://github.com/llvm/llvm-project/commit/47a969ef889c9e244dfb34e6a4c4dbb5bf03ea60
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/DAPForward.h
    M lldb/tools/lldb-dap/Handler/DataBreakpointInfoRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/LocationsRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/ScopesRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/DAPTypes.cpp
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/ProtocolUtils.cpp
    M lldb/tools/lldb-dap/ProtocolUtils.h
    M lldb/tools/lldb-dap/SBAPIExtras.h
    M lldb/tools/lldb-dap/Variables.cpp
    M lldb/tools/lldb-dap/Variables.h
    M lldb/unittests/DAP/DAPTypesTest.cpp
    M lldb/unittests/DAP/ProtocolRequestsTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/DAP/VariablesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Refactor variablesReference storage and scope management. (#179262)

This commit refactors the Variables class into a
VariableReferenceStorage with variableReferences of different
ReferenceKinds.

The variablesReference is now a uint32_t.
The most significant byte (bits 24 - 31) holds the reference kind and
the remaining 3 bytes (bits 0 -23) holds the actual reference.

We have (at the moment) 3 reference kinds.
Temporary => 0b0000 => 0x00
Permanent => 0b0001 => 0x01
Scope     => 0b0010 => 0x03

The actual variablesReference can be used to get a `VariableStore`.

VariableStore holds variables in a group.
It has two implementations:
- ScopeStore: Holds variables within frame scopes (locals, globals,
registers). This is lazy-loaded and only fetched when variable(s) in the
scope is requested.
- ExpandableValueStore: Holds SBValue and fetches it's variable children
when requested.

ReferenceKindPool:
   The variablesReference created starts from 1 with the mask of the
   Reference kind applied.
   It holds vector of VariableStore of one Referencekind,
   This allows constant lookup of a reference

Example:
```md

| maskedVariablesReference | Mask | variablesReference | RefrenceKind | VariableStore |
|--------------------------|------|--------------------|--------------|---------------|
| 20        -> 0x00000014  | 0x00 | 20 -> 0x00000014   | temporary    | ValueStore    |
| 268435476 -> 0x01000014  | 0x01 | 20 -> 0x00000014   | permanent    | ValueStore    |
| 536870932 -> 0x01000014  | 0x02 | 20 -> 0x00000014   | scope        | ScopeStore    |
```


  Commit: 900778e40dd77685cd3d7f8a784fc830c2a76a34
      https://github.com/llvm/llvm-project/commit/900778e40dd77685cd3d7f8a784fc830c2a76a34
  Author: Fedor Nikolaev <fridrixnm at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - add DemandedElts + OrZero handling to ISD::SELECT/VSELECT cases (#181753)

Pass DemandedElts and OrZero arguments through SELECT/VSELECT nodes when
checking if values are power-of-two.

Add unit tests for scalar SELECT (OrZero) and vector VSELECT
(DemandedElts + OrZero).

Resolves #181645


  Commit: 0e1cc6138e8e0380e35cda1217df69666f10561d
      https://github.com/llvm/llvm-project/commit/0e1cc6138e8e0380e35cda1217df69666f10561d
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M offload/test/lit.cfg

  Log Message:
  -----------
  [Offload][test] Use just-compiled lld and llvm-symbolizer (#181793)

In a bootstrapping build with LLVM_ENABLE_PROJECTS=lld, the lld
executable will be found in LLVM's bin/ directory. But `check-offload`
will currently ignore it because the JIT plugin will look for `lld` in
`$PATH`. Similarly, the sanitizer tests require llvm-symbolizer during
execution to FileCheck the expected stack trace.

Add the llvm tools directory to `$PATH` so tests can use lld and
llvm-symbolizer in it. It should be prefered over a system-installed
lld/llvm-symbolizer.

Fixes the JIT and sanitizer tests of
[openmp-offload-amdgpu-clang-flang](https://lab.llvm.org/staging/#/builders/105).


  Commit: 0106783f0306604d5c4bd35e2d32273f03f77fbb
      https://github.com/llvm/llvm-project/commit/0106783f0306604d5c4bd35e2d32273f03f77fbb
  Author: AidinT <at.aidin at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/CMakeLists.txt
    A mlir/include/mlir/Target/LLVMIR/LLVMTranslationDialectInterface.td
    M mlir/include/mlir/Target/LLVMIR/LLVMTranslationInterface.h
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt

  Log Message:
  -----------
  [MLIR] convert LLVMTranslationDialectInterface using ODS (#181391)

This PR converts LLVMTranslationDialectInterface using ODS


  Commit: c88d2bc3f3e4a4e310196c4e6f73f511c8dc9ade
      https://github.com/llvm/llvm-project/commit/c88d2bc3f3e4a4e310196c4e6f73f511c8dc9ade
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/tools/lldb-dap/Variables.h

  Log Message:
  -----------
  [lldb-dap] Fix missing ampersand in the deleted constructor (#181818)

Fails to compile when cross compiling


  Commit: 19dbbee8d05ea972f079bbb92b9797a7079055cb
      https://github.com/llvm/llvm-project/commit/19dbbee8d05ea972f079bbb92b9797a7079055cb
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopInterchange/interchangeable.ll
    M llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
    M llvm/test/Transforms/LoopInterchange/phi-ordering.ll
    M llvm/test/Transforms/LoopInterchange/pr43176-move-to-new-latch.ll
    M llvm/test/Transforms/LoopInterchange/pr45743-move-from-inner-preheader.ll
    M llvm/test/Transforms/LoopInterchange/reduction2mem.ll
    M llvm/test/Transforms/LoopInterchange/update-condbranch-duplicate-successors.ll

  Log Message:
  -----------
  [LoopInterchange] Update tests generated by UTC (NFC) (#181804)

Update the LoopInterchange tests that use UTC to generate assertions, in
order to avoid irrelevant changes during other developments. Most of the
changes are simply the result of re-running UTC, but this patch also
includes a few additional minor adjustments by hand:

- Rename IR value names to suppress warnings by UTC.
- Delete `NOTE: Assertions have been ...` from the test file that
actually doesn't use UTC.
- Delete unnecessary `-pass-remarks-missed=...`.
- Add a store instruction for an unused GEP result, which could
otherwise affect other developments.


  Commit: 9a0861e27950447d7a73057bf19b91d7199c6d6c
      https://github.com/llvm/llvm-project/commit/9a0861e27950447d7a73057bf19b91d7199c6d6c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/semanticly-same.ll

  Log Message:
  -----------
  [SLP] semanticly-same.ll - regenerate tests to reduce diff in #181731 (#181819)


  Commit: 7be392e0ea13f96aae8e7082a3c0206e09cd2f03
      https://github.com/llvm/llvm-project/commit/7be392e0ea13f96aae8e7082a3c0206e09cd2f03
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    M clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    M clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h

  Log Message:
  -----------
  [clang][ssaf] Fix building on gcc-7 and MinGW/Cygwin (#181812)

So we had two problems:
1) gcc-7 does not fully support C++17 mandatory NRVO, so we need
   an explicit std::move in return statements to workaround this.
2) MinGW/Cygwin is picky about extern templates; this actually bit me
   once, so I'll think about how to mitigate in long term, but for now
   just add the missing declarations.

Reported in:
https://github.com/llvm/llvm-project/pull/180021#issuecomment-3912981241
https://github.com/llvm/llvm-project/pull/180021#issuecomment-3914252777


  Commit: 19a6a2810ee35724a5967f7780242dbfd677283e
      https://github.com/llvm/llvm-project/commit/19a6a2810ee35724a5967f7780242dbfd677283e
  Author: Samrudh Nelli <samrudhnelli at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/AST/ByteCode/constexpr.c
    M clang/test/Sema/constexpr.c

  Log Message:
  -----------
  [clang] Fix crashes when initializing constexpr int* with floating-point (#180376)

Call isNullPointer() only when we are sure that Rvalue is a pointer.
Fixes #180313

---------

Co-authored-by: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>


  Commit: 75aa83c0c035a7a10f0f48355c93858f003b8e4e
      https://github.com/llvm/llvm-project/commit/75aa83c0c035a7a10f0f48355c93858f003b8e4e
  Author: DaKnig <37626476+DaKnig at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll

  Log Message:
  -----------
  [SDAG] foldSelectToABD - canonicalize compare of abd (#180952)


  Commit: 4f92cf9599c4077c08b7fac0a21624e55da572f9
      https://github.com/llvm/llvm-project/commit/4f92cf9599c4077c08b7fac0a21624e55da572f9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/combine-clmul.ll

  Log Message:
  -----------
  [X86] combine-clmul.ll - pull out canonicalization tests from #177566 (#181820)


  Commit: 7c1d517ebe7ae9347c8598bfccb16d92d1752862
      https://github.com/llvm/llvm-project/commit/7c1d517ebe7ae9347c8598bfccb16d92d1752862
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrFP.td
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    M llvm/test/CodeGen/SystemZ/builtin-setjmp-spills.ll
    M llvm/test/CodeGen/SystemZ/fp-move-02.ll
    A llvm/test/CodeGen/SystemZ/remat.ll

  Log Message:
  -----------
  [SystemZ] Enable rematerialization for scalar loads (#179838)

We can avoid the unnecessary spill by marking loads as rematerializable
and just directly loading from where the argument was originally passed
on the stack. TargetTransformInfo::isReMaterializableImpl checks to make
sure that any loads are MI.isDereferenceableInvariantLoad(), so we
should be able to move the load down to the remat site.

Related: [#166774](https://github.com/llvm/llvm-project/pull/166774)

---------

Co-authored-by: anoopkg6 <anoopkg6 at github.com>


  Commit: f560e4cfb1f9d3c71d7617f6e54f54eeba9f3239
      https://github.com/llvm/llvm-project/commit/f560e4cfb1f9d3c71d7617f6e54f54eeba9f3239
  Author: Ferran Toda <ferran.todacasaban at bsc.es>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/OpenMP/fuse01.f90
    A flang/test/Lower/OpenMP/fuse02.f90
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Dialect/OpenMP/cli-fuse.mlir
    A mlir/test/Dialect/OpenMP/invalid-fuse.mlir
    A mlir/test/Target/LLVMIR/openmp-cli-fuse01.mlir
    A mlir/test/Target/LLVMIR/openmp-cli-fuse02.mlir
    A openmp/runtime/test/transform/fuse/do-looprange.f90
    A openmp/runtime/test/transform/fuse/do.f90

  Log Message:
  -----------
  [MLIR][OpenMP] Add omp.fuse operation (#168898)

This patch is a follow-up from #161213 and adds the omp.fuse loop
transformation for the OpenMP dialect. Used for lowering a `!$omp fuse`
in Flang.

Added Lowering and end2end tests.


  Commit: 9991a5fb45cf49a2d07e98872dc6920b17d026d1
      https://github.com/llvm/llvm-project/commit/9991a5fb45cf49a2d07e98872dc6920b17d026d1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/BlockFrequency.h
    M llvm/lib/Support/BlockFrequency.cpp

  Log Message:
  -----------
  [BlockFrequency] Add operator<< overload (#181703)

This makes it more convenient to debug BFI issues.


  Commit: 09a06156864497f6810549464a98b25b3735577a
      https://github.com/llvm/llvm-project/commit/09a06156864497f6810549464a98b25b3735577a
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll

  Log Message:
  -----------
  [VPlan] Simplify worklist in reassociateHeaderMask. NFC (#181595)

Addresses review comments from
https://github.com/llvm/llvm-project/pull/180898#pullrequestreview-3791945590.
We don't need to recursively collect direct users of the header mask, we
can do that as a separate step so that the main worklist loop only
handles potentially reassociatable candidates.

Also add back mention of tail folding to comment and a TODO.


  Commit: db547e8846c9830f6843d41c310f8f707a470914
      https://github.com/llvm/llvm-project/commit/db547e8846c9830f6843d41c310f8f707a470914
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/openmp-offload-gpu.c

  Log Message:
  -----------
  [Clang][OpenMP][Driver] Make linker to link Device RTL  when built for SPIRV (#180066)

This is to make linker to link ompdevice library when building for
OpenMP using SPIRV


  Commit: ef52df43653b1e941a494d0915137c7559c7c9cd
      https://github.com/llvm/llvm-project/commit/ef52df43653b1e941a494d0915137c7559c7c9cd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/external-bin-op-user.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gather-node-same-reduced.ll
    M llvm/test/Transforms/SLPVectorizer/X86/shl-to-add-transformation4.ll

  Log Message:
  -----------
  [SLP]Do not increase depth for type-changing nodes and NotProfitableForVectorization removal

The patch changes the maximum tree size analysis. 1. Do not increase
depth for type changing nodes (like casts and compares), allowing more
deeper trees to be built. 2. Removes NotProfitableForVectorization
workaround, not needed anymore after throttling enabled

Reviewers: hiraditya, RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/180950


  Commit: 34c535ba02a7ffb512dd03bc4e5ff8471c494f5d
      https://github.com/llvm/llvm-project/commit/34c535ba02a7ffb512dd03bc4e5ff8471c494f5d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Minor code cleanup in RegisterInfoEmitter (#181479)

Minor cleanup in codegen for `getSubClassWithSubReg` and
`getSubRegisterClass`:
- Use `getMinimalTypeForRange` to determine the entry type for table.
- Extract common code for table lookup into a lambda.


  Commit: 2297964799f14a97f9c007d3b88682cc000e8fe6
      https://github.com/llvm/llvm-project/commit/2297964799f14a97f9c007d3b88682cc000e8fe6
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR|BUILD] Fix for #181391 (#181833)


  Commit: 5317575dd53bdb6f97a93109721d7e2dd00b17a1
      https://github.com/llvm/llvm-project/commit/5317575dd53bdb6f97a93109721d7e2dd00b17a1
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M offload/test/lit.cfg

  Log Message:
  -----------
  Reapply x2 "[Offload][lit] Link against SPIR-V DeviceRTL if present" (#181429)

The change to `llvm-zorg` to start building the DeviceRTL for SPIR-V on
our builder finally got taken by the infra, so we can merge this now.

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 3bfe8216210674b298ccf3fce7642ca04981c7a9
      https://github.com/llvm/llvm-project/commit/3bfe8216210674b298ccf3fce7642ca04981c7a9
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/source/Core/ThreadedCommunication.cpp

  Log Message:
  -----------
  [lldb][windows] handle ERROR_INVALID_HANDLE error (#181809)

On Windows, `ThreadedCommunication::ReadThread` can fail with
`ERROR_INVALID_HANDLE` when the ConPTY is closed. Currently it's not
caught, causing the `ReadThread` to continue forever because `done` is
never set to `true`. This causes an infinite hang.


  Commit: b849b641511a04fb3ffbb7549895268cc79e5b46
      https://github.com/llvm/llvm-project/commit/b849b641511a04fb3ffbb7549895268cc79e5b46
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv32.mir
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv64.mir

  Log Message:
  -----------
  [RISCV] Use -filetype=null in riscv-scavenge-crash-2nd-pass-rv*.mir tests. NFC


  Commit: 20e32ececd08347a8f5d169487d824de30990bae
      https://github.com/llvm/llvm-project/commit/20e32ececd08347a8f5d169487d824de30990bae
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    A llvm/test/CodeGen/AMDGPU/si-pre-emit-peephole-preserve-loop-info.mir

  Log Message:
  -----------
  [AMDGPU] Teach SIPreEmitPeephole pass to preserve MachineLoopInfo (#178868)

`optimizeVccBranch` in `SIPreEmitPeephole` performs CFG modifications
(i.e converting conditional branches to unconditional) which can
invalidate `MachineLoopInfo`. This patch incrementally updates `MLI`
before each `removeSuccessor()` call; if the edge being removed is the
last back-edge to a loop header, the loop is destroyed from `MLI`
(blocks and subloops are reparented to the parent loop).


  Commit: 897173ec7d2036d9b8b9d24690c2ed82865f5bfc
      https://github.com/llvm/llvm-project/commit/897173ec7d2036d9b8b9d24690c2ed82865f5bfc
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h

  Log Message:
  -----------
  [SPIRV] Fix `SPIRVTypeInst` `DenseMapInfo` implementation (#181667)

The previous `DenseMapInfo` implementation was wrong.

The new implementation relies completely on
`DenseMapInfo<MachineInst*>`'s. To do this, we use "tag dispatch" to
call a special constructor only accessible by `DenseMapInfo` that
bypasses the assertion when building the empty/tombstone keys.


  Commit: e50bed6da4e783cb84190f8148d7b60e2ee7440c
      https://github.com/llvm/llvm-project/commit/e50bed6da4e783cb84190f8148d7b60e2ee7440c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/test/UnitTest/FEnvSafeTest.cpp
    M libc/test/include/complex_test.cpp
    M libc/test/integration/src/__support/GPU/fixedstack_test.cpp
    M libc/test/integration/src/__support/GPU/match.cpp
    M libc/test/integration/src/__support/GPU/scan_reduce.cpp
    M libc/test/integration/src/__support/GPU/shuffle.cpp
    M libc/test/integration/src/stdio/gpu/printf_test.cpp
    M libc/test/integration/src/stdlib/gpu/malloc_stress.cpp
    M libc/test/integration/startup/gpu/init_fini_array_test.cpp
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M libc/test/integration/startup/gpu/rpc_test.cpp
    M libc/test/src/stdio/fopen_test.cpp
    M libc/test/src/stdlib/strtof_test.cpp
    M libc/test/src/stdlib/strtold_test.cpp
    M libc/test/src/time/mktime_test.cpp

  Log Message:
  -----------
  [libc] Fix warnings for the GPU test suite (#181763)

Summary:
A lot of fixes mostly around unused variables.


  Commit: a1701fe17fe6b639944e9f9c2166d44e9fea185c
      https://github.com/llvm/llvm-project/commit/a1701fe17fe6b639944e9f9c2166d44e9fea185c
  Author: Koakuma <koachan at protonmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrAliases.td
    M llvm/test/MC/Sparc/sparc-vis3.s

  Log Message:
  -----------
  [SPARC][IAS] Add lzd alias for lzcnt (#179487)

This is used in e.g GMP assembly code.


  Commit: 3787aa12c5b37d3073276e009ec211a0c1006843
      https://github.com/llvm/llvm-project/commit/3787aa12c5b37d3073276e009ec211a0c1006843
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    M clang/test/Analysis/fixed-address-notes.c
    M clang/test/Analysis/suppress-dereferences-from-any-address-space.c

  Log Message:
  -----------
  [analyzer] Suppress core.FixedAddressDereference reports with volatile pointee (#181644)

In short, those who use `volatile` probably know better their own
hardware, so let's not bother them with FPs.

Note that dereferencing NULL pointers will still be reported, because
that's the core.NullDereference checker's responsibility.

See the discussion motivating this change:

https://discourse.llvm.org/t/what-are-the-precise-semantics-of-the-address-space-attribute/89752/9

Also relates to
https://github.com/llvm/llvm-project/pull/132404#issuecomment-3816874305

rdar://170466245


  Commit: 304d763325ad7fed305ee647542c87e8e8afee3f
      https://github.com/llvm/llvm-project/commit/304d763325ad7fed305ee647542c87e8e8afee3f
  Author: David Green <david.green at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-indexed-memory.ll
    A llvm/test/CodeGen/AArch64/arm64_32-indexed-memory.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Split arm64-indexed-memory.ll into arm64_32-indexed-memory.ll and extend tests. NFC

This helps to keep the tests focussed, showing more clearly the differences
between the GISel and SDAG. The arm64_32 tests are separated out into a new
file.

Some i8->i16 tests have also been added and zext variants of some sext tests.


  Commit: c34238890c0bf6c3c3ff97254be05bdee9841415
      https://github.com/llvm/llvm-project/commit/c34238890c0bf6c3c3ff97254be05bdee9841415
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pmadd.ll

  Log Message:
  -----------
  [X86] combine widening `shl` + adjacent addition into `VPMADDWD` (#179326)

I added an optimization for `VPMADDWD` earlier in
https://github.com/llvm/llvm-project/pull/174149. That one is used in
the adler32 checksum. That PR missed another pattern, used in base64
decoding, that uses a `shl` instead of a `mul`, but also should optimize
to `VPMADDWD`.

To make the shift semantically equal to the multiplication case, I'm
bailing on shifts by more than 15, because `1 << 16` is not
representable in an `i16`.

code-wise I suspect that I'm missing some convenient way to access the
integer values of a constant vector.


  Commit: aab9412a69a07787e9ec98b25709d709b7b537a6
      https://github.com/llvm/llvm-project/commit/aab9412a69a07787e9ec98b25709d709b7b537a6
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Strengthen materializeFactors with assert (NFC) (#181665)

This fixes a TODO.


  Commit: 7018ddfb985210df2c4a64b23a2beba3294904be
      https://github.com/llvm/llvm-project/commit/7018ddfb985210df2c4a64b23a2beba3294904be
  Author: Andrei Elovikov <andrei.elovikov at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/runtime-check-dependent-on-stride.ll

  Log Message:
  -----------
  [NFC][VPlan] Test showing that unit-stride-mv should be done later in pipeline (#180292)

Right now memory dependencies checks and speculation for unit-strideness
are performed somewhat simultaneously. This is wrong because:

* Ideally, if accesses aren't unit-strided in runtime we might want to
take a version with gather/strided load (longer term). Those two loops
should share legality checks and the dispatch based on stride should
only happen after the legality condition has been satisfied.
* Even if we don't generate multiple vector loops (current situation),
not vectorizing at all is worse than generating gather-only vector loop.

This PR adds a test for the latter as that could be a first step in
adding full support for the former.

This isn't target-specific, but gathers aren't supported in generic
target and result in very ugly scalarized code/CHECKs, hence put the
test under RISCV/.

Co-authored-by: Florian Hahn <flo at fhahn.com>


  Commit: 24fad91ca90835981c56cdb958a1f683bd111bd1
      https://github.com/llvm/llvm-project/commit/24fad91ca90835981c56cdb958a1f683bd111bd1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/test/OpenMP/distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_hold.cpp
    M clang/test/OpenMP/target_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp

  Log Message:
  -----------
  [Clang] Regenerate test checks (NFC)

To reduce spurious diffs in future changes.


  Commit: 73e7eb4e7914a02b6dd4ca80e87b8dc895e9850b
      https://github.com/llvm/llvm-project/commit/73e7eb4e7914a02b6dd4ca80e87b8dc895e9850b
  Author: Justice Adams <jadams23 at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M .ci/green-dragon/relay-clang-stage2-sanitizers.groovy
    M .ci/green-dragon/relay-clang-stage2-thinlto.groovy
    M .ci/green-dragon/relay-lnt-ctmark.groovy
    M .ci/green-dragon/relay-test-suite-verify-machineinstrs.groovy

  Log Message:
  -----------
  [green dragon] limit relay jobs to prevent concurrent builds (#181854)

Limit the relay jobs to prevent eating up infra resources


  Commit: ff30eabc79aafeeb24871279e3faf6b484b62018
      https://github.com/llvm/llvm-project/commit/ff30eabc79aafeeb24871279e3faf6b484b62018
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ScalarizeMaskedMemIntr][ProfCheck] Correctly annotate branch weights (#181568)

There are two cases in ScalarizeMaskedMemIntr where conditional branches
are created using conditionals derived from the mask. Given these are
synthesized ad we do not have VP metadata for them, we need to mark them
as unknown.


  Commit: 1ed85c7976ce8ec0873c310efbdec3f65d711a94
      https://github.com/llvm/llvm-project/commit/1ed85c7976ce8ec0873c310efbdec3f65d711a94
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/ret-attrs.cpp

  Log Message:
  -----------
  [NFC] Remove forgotten self-reminder comment that is no longer relevant (#181849)


  Commit: dfc54694fa369cca9db3881ab66b63518f3391d6
      https://github.com/llvm/llvm-project/commit/dfc54694fa369cca9db3881ab66b63518f3391d6
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
    A mlir/lib/Dialect/OpenACC/Transforms/ACCDeclareGPUModuleInsertion.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
    A mlir/test/Dialect/OpenACC/acc-declare-gpu-module-insertion.mlir

  Log Message:
  -----------
  [mlir][acc] Add pass to insert acc declare globals into GPU module (#181383)

Adds a new OpenACC pass that copies globals with the `acc.declare`
attribute into the GPU module so that device code (acc routine, compute
regions) can reference them.

---------

Co-authored-by: Susan Tan <zujunt at nvidia.com>


  Commit: fb46677a858697afa116c4252e84050a07bc6a70
      https://github.com/llvm/llvm-project/commit/fb46677a858697afa116c4252e84050a07bc6a70
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/test/Analysis/misc-ps-eager-assume.m

  Log Message:
  -----------
  [NFC][analyzer] Remove StmtNodeBuilder (#181431)

The class `StmtNodeBuilder` was practically equivalent to its base class
`NodeBuilder` -- its data members and constructors were identical and
the only distinguishing feature was that it supported two additional
methods that were not present in `NodeBuilder`.

This commit moves those two methods to `NodeBuilder` (there is no reason
why they cannot be defined there) and replaces all references to
`StmtNodeBuilder` with plain `NodeBuilder`.

Note that previously `StmtNodeBuilder` had a distinguishing feature
where its destructor could pass nodes to an "enclosing node builder" but
this became dead code somewhen in the past, so my previous commit
320d0b5467b9586a188e06dd2620126f5cb99318 removed it.


  Commit: 03ad6549fcc49bcdc3c93cad293e603f2d05e96c
      https://github.com/llvm/llvm-project/commit/03ad6549fcc49bcdc3c93cad293e603f2d05e96c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/funnel-shift.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll

  Log Message:
  -----------
  [DAGCombiner] Combine (fshl A, X, Y) | (shl X, Y) --> fshl (A|X), X, Y (#180887)

Similar for (fshr X, B, Y) | (srl X, Y) --> fshr X, (X|B), Y

This is similar to the FSHL/FSHR handling in
hoistLogicOpWithSameOpcodeHands but here we treat a shl/shr like a
fshl/fshr with 0.

The pattern doesn't require X to be the same in both sides, but that's
what occurred in the case I was looking at so that's what is
implemented.

Alive2: https://alive2.llvm.org/ce/z/eUou-u


  Commit: 7131244f383161b000b36da60df63dfbb22b3a52
      https://github.com/llvm/llvm-project/commit/7131244f383161b000b36da60df63dfbb22b3a52
  Author: Muzammiluddin Syed <muzasyed at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
    M mlir/test/Dialect/AMDGPU/canonicalize.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Allow packing of exactly 4 elements. (#181843)

`amdgpu.scaled_mfma` ops ingest byte sized scales stored in 4-byte
registers. To avoid unnecessary padding (where we only ever use the
first byte in this 4-byte register), this canonicalization finds
opportunities to enable packing multiple scales into 4-byte chunks
whenever possible. Note this is necessary but not sufficient to avoid
byte loads from LDS.

This canonicalization should try to pack scales that are extracted from
an alloc in shared mem of size 4 bytes or larger (meaning packing to 4
bytes is possible). Currently we bail out if it is exactly 4 bytes long
which is incorrect and fixed in this PR.

---------

Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>


  Commit: d3e683cabf908d6594721d2dc4a799cafad825ab
      https://github.com/llvm/llvm-project/commit/d3e683cabf908d6594721d2dc4a799cafad825ab
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/SystemZ.cpp
    M lld/test/ELF/systemz-tls-ld.s

  Log Message:
  -----------
  [ELF][SystemZ] Fix R_390_TLS_LDO32/64 in non-SHF_ALLOC sections

These can appear in .debug_info so, like other architectures (e.g.
X86_64), we still need to handle them in getRelExpr.

Fixes: aec1c984266c ("[ELF] Add target-specific relocation scanning for SystemZ (#181563)")


  Commit: 8a491301eea5ec217503a6df9445efc183357150
      https://github.com/llvm/llvm-project/commit/8a491301eea5ec217503a6df9445efc183357150
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    R flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90

  Log Message:
  -----------
  [NFC][Flang][OpenMP] Remove obsolete declare simd lowering TODO test (#181756)

The TODO test for Flang OpenMP `declare simd` lowering is no longer
needed, as the lowering was implemented in
https://github.com/llvm/llvm-project/pull/175604.


  Commit: 60e50a4729c54f21c21ed1c42c9b1cfe9c83bdb6
      https://github.com/llvm/llvm-project/commit/60e50a4729c54f21c21ed1c42c9b1cfe9c83bdb6
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp

  Log Message:
  -----------
  [CIR] Fix handling of boolean builtin expressions (#181444)

Previously we were generating a signed 1-bit integer constant for
builtin expressions that returned a boolean value. This caused a
verification error of mismatched types when we tried to store this
constant result to a pointer-to-bool location. This change adds a check
for boolean types.


  Commit: 5addddf8f1e54eadbe9ffaadcda8b2a168e2d51c
      https://github.com/llvm/llvm-project/commit/5addddf8f1e54eadbe9ffaadcda8b2a168e2d51c
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts][NFC] Move soft xcnt deletion to separate function (#181760)

This patch simplifies the logic of `insertWaitcntInBlock()` by moving
the code that removes the redundant soft xcnt instructions to a new
function: `removeRedundantSoftXcnts()`.

While doing so, this patch also cleans up the logic a bit by dropping
the AtomiRMWState and the corresponding functions.

This helps in several ways:
- insertWaitcntInBlock() will now do what its name suggests, i.e., only
insert and not remove.
- it makes it clear that removal of softxcnts is orthogonal to insertion
of waitcnts.
- we won't have to worry about both erased and new instruction in
insertWaitcntInBlock()'s loop.

The change should be NFC.


  Commit: 3c32747a7c8d964d26484f9a64ed7a0f3c2170b3
      https://github.com/llvm/llvm-project/commit/3c32747a7c8d964d26484f9a64ed7a0f3c2170b3
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M flang-rt/unittests/Runtime/CUDA/DefaultStream.cpp
    M flang/include/flang/Optimizer/Builder/CUDAIntrinsicCall.h
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/module/cuda_runtime_api.f90

  Log Message:
  -----------
  [flang][cuda] Lower set/get default stream (#181775)


  Commit: 1229c23723f82cd9e940516ff55721b29d2b8c07
      https://github.com/llvm/llvm-project/commit/1229c23723f82cd9e940516ff55721b29d2b8c07
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/test/CodeGenHLSL/semantics/semantic.explicit-mix-builtin.vs.hlsl
    A clang/test/CodeGenHLSL/semantics/semantic.nested.vs.hlsl

  Log Message:
  -----------
  [Clang][HLSL] Fix struct semantic store (#181681)

The store to a nested semantic had an issue we the field index was not
increased when walking through it.
One of the check-in test was bad, causing this to slip by.

Fixes #181674


  Commit: a166de9d43be7cefd0ed28471f7766a2b4c7fcc9
      https://github.com/llvm/llvm-project/commit/a166de9d43be7cefd0ed28471f7766a2b4c7fcc9
  Author: Giorgio Marletta <57546456+giorgio-marletta at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/MCA/InstrBuilder.cpp
    M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-forwarding.s
    A llvm/test/tools/llvm-mca/RISCV/Andes45/zero-reg.s

  Log Message:
  -----------
  [llvm-mca] Missing data dependencies due to constant registers not being cached (#177990)

Commit 385f59f modified MCA InstrBuilder methods `populateReads` and
`populateWrites` to discard information about constant registers and
avoid creating non-existent dependency chains.

However, information about reads and writes is cached based on
instruction descriptions. In this way, if the same instruction is
encountered multiple times with (before) and without (after) a constant
register, the cached entry will not contain information about that
specific register, resulting in missing data dependencies.

This patch moves the check of constant registers to `createInstruction`,
so that cached entries will also take into account constant registers
and, if necessary, they will be discarded later when creating the
instruction.


  Commit: ade05a3ae234160a0ccc8b071d31ecbb7931d64e
      https://github.com/llvm/llvm-project/commit/ade05a3ae234160a0ccc8b071d31ecbb7931d64e
  Author: Yi Zhang <cathyzhyi at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] fix #181383 (#181867)

fix #181383


  Commit: 49571d59a9c235bc0ca1ab29b42c18850e72c1ae
      https://github.com/llvm/llvm-project/commit/49571d59a9c235bc0ca1ab29b42c18850e72c1ae
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:

  Log Message:
  -----------
  Fix Bazel build for dfc5469 (#181868)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: a4962c477c4d23a20aac0ff85afdda19e8f15404
      https://github.com/llvm/llvm-project/commit/a4962c477c4d23a20aac0ff85afdda19e8f15404
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp

  Log Message:
  -----------
  [CIR] Fix emission of functions referenced by member-pointer (#181452)

While working on attributes for these, I discovered that when a function
was referenced only via a member function pointer (see no-odr-use.cpp
test for the example that failed!), that we were incorrectly generating
the type of the function to not include the 'this' pointer. This
restores that behavior by making sure we generate the type for the
member-pointer type correctly.


  Commit: 1d57656549fa894b884e4c4d695750acab6378de
      https://github.com/llvm/llvm-project/commit/1d57656549fa894b884e4c4d695750acab6378de
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Add braces for else per LLVM coding standard (#181750)

Add braces for else bodies if the if body has braces.


  Commit: 26f944bb50b0f585ba1be805368a987ad5543a07
      https://github.com/llvm/llvm-project/commit/26f944bb50b0f585ba1be805368a987ad5543a07
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/revec-non-pow2.ll

  Log Message:
  -----------
  [SLP]Fix an ArrayRef out-of-bounds access in slice

If the revec is enabled, may have the number of parts (registers) for
the combined node, not a single element node, so need to check for
potential out-of-bounds access

Fixes #181798


  Commit: 99263d55748ffb6c9e768dbe505fd9404a860993
      https://github.com/llvm/llvm-project/commit/99263d55748ffb6c9e768dbe505fd9404a860993
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/openmp-offload-gpu.c

  Log Message:
  -----------
  Revert "[Clang][OpenMP][Driver] Make linker to link Device RTL  when built for SPIRV" (#181876)

Reverts llvm/llvm-project#180066


  Commit: 46ed6201cc3a39b66404bb04fb84f6cec658a9a7
      https://github.com/llvm/llvm-project/commit/46ed6201cc3a39b66404bb04fb84f6cec658a9a7
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    R llvm/test/CodeGen/AArch64/fp16_i16_intrinsic_scalar.ll
    M llvm/test/CodeGen/AArch64/fp16_intrinsic_scalar_1op.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Remove fallbacks for fpcvt intrinsics with 16-bit operands (#179693)

Previously, GlobalISel failed to lower neon fpcvt intrinsics, as
RegBankSelect was not keeping the result on a fpr.
An additional fix is needed for the fpcvtz intrinsics, as these are the
"default" floating point convert intrinsics. As a result, Instruction
Selection has patterns mapping the FPCVTZ intrinsic to the
architecture-agnostic G_FP_TO*I_SAT node.
This also provides the opportunity for more optimisations to be made to
the code before Selection.


  Commit: 3dd1a3ddcb757fa92a18fa504383fc4481bc2d43
      https://github.com/llvm/llvm-project/commit/3dd1a3ddcb757fa92a18fa504383fc4481bc2d43
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
    M lldb/test/API/commands/target/stop-hooks/on-core-load/TestStopHookOnCoreLoad.py
    M lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
    M lldb/test/Shell/Register/Core/x86-32-linux-multithread.test
    M lldb/test/Shell/Register/Core/x86-32-netbsd-multithread.test
    M lldb/test/Shell/Register/Core/x86-64-linux-multithread.test
    M lldb/test/Shell/Register/Core/x86-64-netbsd-multithread.test
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp

  Log Message:
  -----------
  [LLDB][ELF CORE] Only display a stop reason when there is a valid signo (#172781)

This patch fixes where ELF cores will report all threads as `STOP REASON
0`.

This was/is a large personal annoyance of mine; added a test to verify a
default elf core process/thread has no valid stop reason.


  Commit: a5aaa9dc63ce6ce5ce4f90bdb882a361294a262c
      https://github.com/llvm/llvm-project/commit/a5aaa9dc63ce6ce5ce4f90bdb882a361294a262c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll

  Log Message:
  -----------
  [SLP]Convert compares from zexts, promoted to selects, to inversed op, if improves codegen

Some of the zext i1 (cmp) + select sequences can be transformed by
inverting compare predicates to remove extra shuffles, like
zext 1 (cmp ne) + select (cmp eq), 0, 2 can be modeled as select <2
x > (cmp ne), <1, 2>, zeroinitializer

Reviewers: RKSimon, hiraditya

Pull Request: https://github.com/llvm/llvm-project/pull/181580


  Commit: e09a5874401af2a28d8cd42d12921fd9a2066fd1
      https://github.com/llvm/llvm-project/commit/e09a5874401af2a28d8cd42d12921fd9a2066fd1
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/unittests/Highlighter/HighlighterTest.cpp

  Log Message:
  -----------
  [lldb] Add test for Swift syntax highligher plugin (#181879)

Check that if tree-sitter support is enabled, the tree-sitter-swift
plugin is used for eLanguageTypeSwift. This part of the test
accidentally got lost during a conflict resolution.


  Commit: 7edf569ce6cbfcd3d3831f34230edeb1c3390a6a
      https://github.com/llvm/llvm-project/commit/7edf569ce6cbfcd3d3831f34230edeb1c3390a6a
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-setjmp-longjmp.c

  Log Message:
  -----------
  [CIR] Upstream support for setjmp & longjmp builtins (#178989)

This adds support in CIR for the setjmp & longjmp builtins.


  Commit: 1ce4d9411ab00925aec1aa6a70adcc3e1067511b
      https://github.com/llvm/llvm-project/commit/1ce4d9411ab00925aec1aa6a70adcc3e1067511b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineSetCC - pull out repeated getTargetLoweringInfo calls. NFC. (#181873)


  Commit: 4581b0890c33484f099d9c6a6d473192c97b976d
      https://github.com/llvm/llvm-project/commit/4581b0890c33484f099d9c6a6d473192c97b976d
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/GsymCreator.cpp

  Log Message:
  -----------
  [gsymutil] Verify output string table size and address info offsets do not exceed 32-bit max (#181458)

Previously, https://github.com/llvm/llvm-project/pull/165940 fixed
llvm-dwarfdump and llvm-gsymutil so that they can correctly **consume**
>4GB dSYM. However, if the dSYM is large enough, `llvm-gsymutil` can
still **produce** invalid gSYM.

This change add validation into gsymutil, so that it will fail when the
output string table or address info offsets will exceed 32-bit max.

Similar to https://github.com/llvm/llvm-project/pull/165940, it may be
difficult to auto-test this change. For manual testing, I cannot find a
large enough dSYM for which the gSYM would hit the limits (I have a 9GB
dSYM which produces a 1.7GB gSYM). I'm open to ideas if anyone has any.


  Commit: 51d128fb1efa443765ae04474ff43905d8719595
      https://github.com/llvm/llvm-project/commit/51d128fb1efa443765ae04474ff43905d8719595
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/basic_types.hlsl
    A clang/test/CodeGenHLSL/matrix_types.hlsl

  Log Message:
  -----------
  [Matrix][HLSL] Allow memory layout to change via flags (#181866)

fixes #181859

This also fixes an issue introduced in
https://github.com/llvm/llvm-project/pull/179861

where we were doing the array vector layout in row major as DXC would
define it.


  Commit: 7c4b8d827126461b305ef9d2885d4907704bef36
      https://github.com/llvm/llvm-project/commit/7c4b8d827126461b305ef9d2885d4907704bef36
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll

  Log Message:
  -----------
  [X86] Add (_BitInt(128) & (1 << BitNo)) != 0 test coverage from #147216 (#181880)


  Commit: 637d3dc1225e041ab020cd664e1d709099aa5f30
      https://github.com/llvm/llvm-project/commit/637d3dc1225e041ab020cd664e1d709099aa5f30
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    M clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
    M clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
    M llvm/include/llvm/Support/Registry.h

  Log Message:
  -----------
  [clang][ssaf] Fix UB caused by missing virtual dtor of FormatInfoEntry (#181838)

In the `llvm::Registry` the `Add` will create a `unique_ptr` of the
desired derived type on the heap; then it puts it into the linked list
of base pointers.
Consequently, when destructing the registry, it needs to call the
matching dtor for the object, so that must be virtual.

In this patch, I fix it by marking it virtual, and also put a static
assert to prevent future mistakes of this kind.

FYI: The static assert must be in dependent context to ensure that `T`
is complete by the time hitting the static assert.

Fixes https://github.com/Quuxplusone/llvm-project/issues/51


  Commit: 98c76d36432ccd85b88a82949391bd0ce7243bfd
      https://github.com/llvm/llvm-project/commit/98c76d36432ccd85b88a82949391bd0ce7243bfd
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    M clang/include/clang/Analysis/Scalable/Model/EntityId.h
    M clang/include/clang/Analysis/Scalable/Model/EntityIdTable.h
    M clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Model/EntityName.h
    M clang/include/clang/Analysis/Scalable/Model/SummaryName.h
    M clang/include/clang/Analysis/Scalable/TUSummary/EntitySummary.h
    M clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.h
    M clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryBuilder.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/TUSummary/TUSummaryBuilder.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    M clang/unittests/Analysis/Scalable/Registries/MockTUSummaryBuilder.h
    M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
    A clang/unittests/Analysis/Scalable/TUSummaryBuilderTest.cpp
    A clang/unittests/Analysis/Scalable/TestFixture.cpp
    A clang/unittests/Analysis/Scalable/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Implement TUSummaryBuilder with test infrastructure (#181220)

Also adds a ssaf::TestFixture to provide access to the private fields of
the SSAF object for introspection.

Assisted-By: claude

rdar://168773578


  Commit: 42618de278c275f5ee7f2ebf0d9691e488dd2474
      https://github.com/llvm/llvm-project/commit/42618de278c275f5ee7f2ebf0d9691e488dd2474
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lld/wasm/Driver.cpp
    M lld/wasm/InputChunks.cpp
    M lld/wasm/InputFiles.cpp
    M lld/wasm/Relocations.cpp
    M lld/wasm/SymbolTable.cpp
    M lld/wasm/SymbolTable.h
    M lld/wasm/Symbols.cpp
    M lld/wasm/Symbols.h
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/SyntheticSections.h
    M lld/wasm/Writer.cpp
    M lld/wasm/WriterUtils.cpp

  Log Message:
  -----------
  [lld][WebAssembly] clang-format lld/wasm files. NFC (#181871)

This was originally done back in 2018 in 4821ebf73, and things seem to
have strayed a little since then.

I noticed this while reviewing #175800.


  Commit: 98d8b69dfc8ac946e86085dbacc2f7fa72ce9c38
      https://github.com/llvm/llvm-project/commit/98d8b69dfc8ac946e86085dbacc2f7fa72ce9c38
  Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    A llvm/test/CodeGen/Hexagon/expand-vecreduce-add.ll
    A llvm/test/CodeGen/Hexagon/hvx-full-reduce.ll
    A llvm/test/CodeGen/Hexagon/hvx-partial-reduce.ll

  Log Message:
  -----------
  [Hexagon] Support partial reduction intrinsics (#179797)

This commit has changes necessary for using vrmpy instructions in full and partial multiply/add reductions on extended arguments. There are three main parts:
- partial reduction operations PARTIAL_REDUCE_(U|S|SU)MLA are lowered to accumulating vrmpy, including native and multiples of native vector sizes;
- full and partial reductions can be "split" into an inner partial reduction and a residual full or partial reduction. The inner reduction will be lowered to vrmpy due to the first change;
- vecreduce_add expansion is moved to Hexagon backend from a generic pass, accompanied by a set of tests.

In addition, there is a minor cleanup in HexagonTargetLowering::PerformDAGCombine().


  Commit: d62cd1b89d7b4ae2e20b2643eda8c1f9bc09018a
      https://github.com/llvm/llvm-project/commit/d62cd1b89d7b4ae2e20b2643eda8c1f9bc09018a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M offload/liboffload/API/Common.td
    M offload/liboffload/README.md
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/tools/deviceinfo/llvm-offload-device-info.cpp
    M offload/unittests/Conformance/lib/DeviceContext.cpp
    M offload/unittests/OffloadAPI/common/Environment.cpp
    M offload/unittests/OffloadAPI/init/olInit.cpp

  Log Message:
  -----------
  [Offload] Add argument to 'olInit' for global configuration options (#181872)

Summary:
This PR adds a pointer argument to the initialization routine to be used
for global options. Right now this is used to allow the user to
constrain which backends they wish to use.

If a null argument is passed, the same behavior as before is observed.
This is epxected to be extensible by forcing the user to encode the size
of the struct. So, old executables will encode which fields they have
access to.

We use a macro helper to get this struct rather than a runtime call so
that the current state of the size is baked into the executable rather
than something looked up by the runtime. Otherwise it would just return
the size that the (potentially newer) runtime would see


  Commit: f26c9add3674172868b88b005855b81dba4a786c
      https://github.com/llvm/llvm-project/commit/f26c9add3674172868b88b005855b81dba4a786c
  Author: modiking <mmo at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    A llvm/test/CodeGen/NVPTX/scalar-to-vector.ll

  Log Message:
  -----------
  [NVPTX] Add lowering for v2i32/v2f16/v2f32 scalar_to_vector operations (#175712)

#153478 revealed additional cases where these scalar_to_vector
operations can appear at the lowering stage. Generally the DAGCombiner
transforms these to something else. Without it running however these can
directly manifest (hence the unit test disabling DAGCombine for
simplicity) but we can map them directly to real instructions so add the
proper lowering.


  Commit: 8f6866c9e9c9ed532e451d9c2dbc1d7a87a2d42b
      https://github.com/llvm/llvm-project/commit/8f6866c9e9c9ed532e451d9c2dbc1d7a87a2d42b
  Author: RattataKing <amilywu2 at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/Globals.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/lib/Bindings/Python/DialectAMDGPU.cpp
    M mlir/lib/Bindings/Python/DialectNVGPU.cpp
    M mlir/lib/Bindings/Python/DialectPDL.cpp
    M mlir/lib/Bindings/Python/DialectQuant.cpp
    M mlir/lib/Bindings/Python/DialectSparseTensor.cpp
    M mlir/lib/Bindings/Python/DialectTransform.cpp
    M mlir/lib/Bindings/Python/Globals.cpp
    M mlir/lib/Bindings/Python/IRAffine.cpp
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRInterfaces.cpp
    M mlir/lib/Bindings/Python/Rewrite.cpp

  Log Message:
  -----------
  [MLIR][Python] Clean remaining LLVM dependencies in MLIR-PY bindings (#181779)

This PR fixed
[issues](https://github.com/iree-org/iree/actions/runs/21956878131/job/63423389868#step:7:211)
caused by dropping `LLVMSupport` in PR #180986, dropped the remaining
direct llvm dependencies from mlir-python binding files.

Previously `LLVMSupport` was dropped while some uncleaned `mlir/CAPI/*`
sources were still being pulled into mlir-py, and those files still
directly depended on LLVM headers. The issue was masked via a global
`include_directories(${LLVM_INCLUDE_DIRS})` in `mlir/CMakeLists.txt`,
out-of-tree builds (e.g., IREE) that define Python module targets
outside the mlir/ directory tree would fail with "no such llvm file"
errors.


  Commit: e7bad4ac4fc75da8dddec20c3c3f904ab0099496
      https://github.com/llvm/llvm-project/commit/e7bad4ac4fc75da8dddec20c3c3f904ab0099496
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/ScanningProjectModules.cpp
    M clang/include/clang/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
    M clang/include/clang/Tooling/DependencyScanningTool.h
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/DependencyScanningService.cpp
    M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/unittests/DependencyScanning/DependencyScanningWorkerTest.cpp
    M clang/unittests/Tooling/DependencyScannerTest.cpp

  Log Message:
  -----------
  [clang][deps] Make the service provide the VFS (#181424)

This PR makes it so that the base VFS used during a scan is provided to
the top-level service, not to each worker/tool individually. This
enables resolving a FIXME in the async-scan-modules mode of the scanner,
will clean up [downstream
code](https://github.com/swiftlang/llvm-project/blob/0eb56baa1d92190ed61c1a13caa1112e0f70b109/clang/tools/libclang/CDependencies.cpp#L619-L622),
and will make it more difficult to have mismatching VFSs across workers,
which may cause non-deterministic poisoning of
`DependencyScanningFilesystemSharedCache`.


  Commit: 54c0f7bec9f83ed311b1967c30888e8ec787c3a2
      https://github.com/llvm/llvm-project/commit/54c0f7bec9f83ed311b1967c30888e8ec787c3a2
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp

  Log Message:
  -----------
  [NFC] `const`-ify argument in `promoteInternals` (readability) (#181079)


  Commit: de03ec740b22485e2b84234abbfdc3e67592b946
      https://github.com/llvm/llvm-project/commit/de03ec740b22485e2b84234abbfdc3e67592b946
  Author: Samrudh Nelli <samrudhnelli at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp

  Log Message:
  -----------
  [Clang] Fix incorrect mutability of decltype((x)) in lambda return types (#180690)

Previously, the parser did not update the lambda's mutability state
before parsing the trailing return type. This caused decltype((x)) to
incorrectly deduce a non-const reference even in a non-mutable lambda.

Fixes #180460


  Commit: 1c6d774baad44fa758899e467cd24df80edc2e65
      https://github.com/llvm/llvm-project/commit/1c6d774baad44fa758899e467cd24df80edc2e65
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M offload/liboffload/API/Memory.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/unittests/OffloadAPI/memory/olMemRegister.cpp

  Log Message:
  -----------
  [OFFLOAD] Extend olMemRegister API to handle cases when a memory block may have been mapped outside of liboffload. (#172226)

This PR adds extends liboffload olMemRegister API to handle a case when
a memory block may have been mapped before calling olMemRegister to
support some use cases in libomptarget


  Commit: 5c518583d0b65228a88f41ea649bc867a33f8222
      https://github.com/llvm/llvm-project/commit/5c518583d0b65228a88f41ea649bc867a33f8222
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Headers/__clang_cuda_complex_builtins.h
    M clang/lib/Headers/openmp_wrappers/complex
    M clang/lib/Headers/openmp_wrappers/complex.h

  Log Message:
  -----------
  [OFFLOAD] Add headers to support complex math for spirv (#179846)

This is to add support for complex operations for OpenMP kernels when
compiled with spirv.
This is the first PR to add support for spirv in OpenMP wrapper headers
to reduce the size of PRs


  Commit: 86d0a02e652b3058288a769400e678da0a806e8f
      https://github.com/llvm/llvm-project/commit/86d0a02e652b3058288a769400e678da0a806e8f
  Author: Prathamesh Tagore <63031630+meshtag at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/test/IR/visitors.mlir
    M mlir/test/lib/IR/TestVisitors.cpp

  Log Message:
  -----------
  [mlir][test-ir-visitors] Fix noSkipBlockErasure for blocks providing global context (#181320)

The pass checks if something is pointing to the current block in testNoSkipErasureCallbacks() inside noSkipBlockErasure() callback and erases it if no one is pointing to it. However, it doesn't consider the
case where the current block might be providing global context to other blocks in the same parent region even if no one is pointing to it (see the attached test for an example of this). Erasing this block would then lead to invalid IR. We solve this by dropping intra-block op uses from ops within the same parent region.

Fixes https://github.com/llvm/llvm-project/issues/178099


  Commit: 74b8ca63cc0cd6bc802e9ee3310dffd953772513
      https://github.com/llvm/llvm-project/commit/74b8ca63cc0cd6bc802e9ee3310dffd953772513
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/test/MC/RISCV/xrivosvisni-valid.s

  Log Message:
  -----------
  [RISCV] Remove VMConstraint from ri.vzero.v (#181895)

This instruction doesn't have a VM operand.

It only has 1 operand, VD. The way the VMConstraint check is
implemented, if VD is V0 it would compare the last operand to V0. Since
the last operand is VD, this would always match and generate an error.

While I was here, move the encoding related let statements into the
class body for consistency with RISCVInstrInfoV.td.


  Commit: 3a687813a6c93bf21309eeaa14547cf1f768d2e4
      https://github.com/llvm/llvm-project/commit/3a687813a6c93bf21309eeaa14547cf1f768d2e4
  Author: Simi Pallipurath <simi.pallipurath at arm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/test/ClangScanDeps/P1689.cppm
    M clang/test/ClangScanDeps/header_stat_before_open.m
    M clang/test/ClangScanDeps/headerwithdirname.cpp
    M clang/test/ClangScanDeps/headerwithdirnamefollowedbyinclude.cpp
    M clang/test/ClangScanDeps/macro-expansions.cpp
    M clang/test/ClangScanDeps/modules.cpp
    M clang/test/ClangScanDeps/regular_cdb.cpp
    M clang/test/ClangScanDeps/relative_directory.cpp
    M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
    M clang/test/ClangScanDeps/target-filename.cpp
    M clang/test/ClangScanDeps/vfsoverlay.cpp
    M clang/test/Frontend/dependency-gen-phony.c

  Log Message:
  -----------
  [clang][tests] Fix cross-build test failures on Darwin. (#181805)

Test failures started after
https://github.com/llvm/llvm-project/pull/178077 which introduced
Darwin-specific system checks in several tests, including checks for the
presence of SDKSettings.json.

These tests are intended to validate features in Clang’s driver that
require Clang to target a Darwin platform while running on a Darwin
host. Currently, their execution is gated by the REQUIRES: system-darwin
annotation.

This approach breaks down when running the tests on a cross-compiling
build of Clang on a Darwin host.

If the build does not include any Darwin targets, the tests will still
run (because the host is Darwin) but will fail spuriously due to the
absence of a Darwin target in the build.

This patch updates the affected tests by adding an additional constraint
to their REQUIRES annotation: target={{.*}}-(darwin|macos){{.*}}.

This ensures the tests only run when the build actually includes a
Darwin target.


  Commit: 8f69cdd54219e8e84783c615649f810ee1abefad
      https://github.com/llvm/llvm-project/commit/8f69cdd54219e8e84783c615649f810ee1abefad
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp

  Log Message:
  -----------
  [NFC] `CfiFunctions` are relevant when promoting from the original module only (#181080)

`CfiFunctions` contains only pointers to IR objects in the original
`Module`. When we `promoteInternals`, we try to find such pointers from
the first (exporting) module in the `CfiFunctions` set. That will always
fail (as in, no values will be found) in the first case, when the
exporting module is the merged module. This PR makes it more obvious
that the `CfiFunctions` set is only relevant for the second promotion.


  Commit: fcf0fe74049847c1c303c4d674c13c3537e2e8dc
      https://github.com/llvm/llvm-project/commit/fcf0fe74049847c1c303c4d674c13c3537e2e8dc
  Author: Victor Mustya <victor.mustya at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt

  Log Message:
  -----------
  [Clang][CMake] Fix header target creation (#180609)

The `add_header_target` function was using a `file_list` parameter that
was supposed to capture all the header files that should be added to the
interface library target. However, the parameter was only capturing the
first header file, and the rest of the header files were not being added
to the target properties. I.e. the `get_target_properties` command was
only returning the first header file instead of all the header files.

The commit removes the `file_list` parameter and replaces it with
`ARGN`,
which captures all the header files passed to the function. This ensures
that all the header files are added to the interface library target and
can be accessed through the target properties.


  Commit: 3cf41561983ed5c8bd11f9535ec861c7e042084e
      https://github.com/llvm/llvm-project/commit/3cf41561983ed5c8bd11f9535ec861c7e042084e
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp
    M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
    A mlir/test/Dialect/Vector/vector-multi-reduction-reorder-and-expand.mlir
    M mlir/test/python/dialects/transform_vector_ext.py

  Log Message:
  -----------
  [mlir][vector] add ApplyReorderMultiReductionDimsPatternsOp tests (#180977)

With the new finer grained populate methods introduced in
8dde3051504cb9ae42e654bbce39001f3946beea (#180750), there was a
discussion about refactoring tests such that only one of the patterns
applies at a time. This commit starts this process by adding the
structure for one of these populate methods. The goal is for the
populate methods to have their own file (each showing inner and outer
reduction); deprecating populateVectorMultiReductionLoweringPatterns and
ApplyLowerMultiReduction; and removing the test file for
mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir

Essentially an NFC. It also adds a new transform op for testing the
dialect and which downstream projects may choose to use.

Assisted-By: claude-4.5-sonnet


  Commit: 581eb22265055cc93a8d71373cf72e039c3f4005
      https://github.com/llvm/llvm-project/commit/581eb22265055cc93a8d71373cf72e039c3f4005
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCArchitectures.cmake

  Log Message:
  -----------
  [libc] Fix OS when using `-llvm` OS in the triple (#181908)

Summary:
We spoof the OS name for the GPU targets and used to get it form the
'end' of the triple list. Adding `-llvm` makes that now point to `-llvm`
which is not recognized so it fails. Just use the direct index, we
already guard that the triple is the correct size


  Commit: 550c48b02e4eb2bfb67e0216ac3d22e4b1252797
      https://github.com/llvm/llvm-project/commit/550c48b02e4eb2bfb67e0216ac3d22e4b1252797
  Author: Viktor Moros <vmoros at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16addf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16addf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16addf.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16addf to header only (#181230)

Resolves #181017 
Part of #147386


  Commit: 6282a7b9937ab6e5d95502e6a2e2af881e9cfdbe
      https://github.com/llvm/llvm-project/commit/6282a7b9937ab6e5d95502e6a2e2af881e9cfdbe
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M offload/liboffload/API/Memory.td

  Log Message:
  -----------
  [Offload] Fix missing end to string in .td file


  Commit: 95491b858cdd3c6ab3fe4df789cd5d50bf678a64
      https://github.com/llvm/llvm-project/commit/95491b858cdd3c6ab3fe4df789cd5d50bf678a64
  Author: Gergo Stomfai <stomfaig at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
    M llvm/lib/Passes/PassBuilder.cpp

  Log Message:
  -----------
  [GISel][X86] Port CSE analysis to NPM (#179815)

As part of #178192 it came up that the `GISelCSEAnalysisWrapperPass`
doesn't seem to have a npm version. This patch adds an npm wrapper
around `GISelCSEAnalysisWrapper`.


  Commit: 9bf11863d14ebaeeb9c58a0733b89a67e91a629d
      https://github.com/llvm/llvm-project/commit/9bf11863d14ebaeeb9c58a0733b89a67e91a629d
  Author: Dhruv <62135445+dhr412 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logb.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logb.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logb.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor logb implementation to header-only (#175719)

Fixes #175365


  Commit: 7f8cabb4cf82a62ca4ec9afb9f517fd316c7866e
      https://github.com/llvm/llvm-project/commit/7f8cabb4cf82a62ca4ec9afb9f517fd316c7866e
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/ThreadSafety.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp

  Log Message:
  -----------
  [ThreadSafety][NFC] Cleanup indentation and unnecessary comments (#181896)

This is a follow-up commit to #178952 for indentation and comments
cleanups.


  Commit: 15a566b432bf5f5f8a189842edc69d98ca4a4661
      https://github.com/llvm/llvm-project/commit/15a566b432bf5f5f8a189842edc69d98ca4a4661
  Author: modiking <mmo at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/scalar-to-vector.ll

  Log Message:
  -----------
   Fix test from #175712 (#181905)


  Commit: 22ecdda4855cabce73532528aeb474b36fb2c6d6
      https://github.com/llvm/llvm-project/commit/22ecdda4855cabce73532528aeb474b36fb2c6d6
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Allow flattening matrix types in FlattenAccessAndTypeLValue (#177708)

Fixes #177487

This PR adds support for flattening HLSL matrix types in code generation
via `CodeGenFunction::FlattenAccessAndTypeLValue`.
It removes the assertion `assert(!isa<MatrixType>(T) && "Matrix types
not yet supported in HLSL");` and adds a branch for handling
ConstantMatrixTypes which is similar to the VectorType case.


  Commit: e0b3e82e98fedc08c9351627f528f5cdbe58b54e
      https://github.com/llvm/llvm-project/commit/e0b3e82e98fedc08c9351627f528f5cdbe58b54e
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-wmma-scale-lo256.mir

  Log Message:
  -----------
  [AMDGPU] Constrain register class during COPY elimination based on their uses (#181909)

When a WMMA scale operand (requiring `VCSrc_b32_Lo256`) was an SGPR that
had been copied from a VGPR, the COPY elimination replaced all uses of
the SGPR with the VGPR but failed to constrain the VGPR to
`vgpr_32_lo256`. This allowed the register allocator to assign a VGPR >=
256 (e.g., $vgpr309), violating the hardware encoding requirement.


  Commit: 7ce0c532912ebdd2ce8d04914669af9b13444f3f
      https://github.com/llvm/llvm-project/commit/7ce0c532912ebdd2ce8d04914669af9b13444f3f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/allocator.cpp
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-default-stream.cuf

  Log Message:
  -----------
  [flang][cuda] Fix return value for CUFSetDefaultStream (#181884)

The interface return an integer value but the entry point and lowering
were missing it.


  Commit: 0eaf12321e9c38ca7f652fd18471a8ea6be208ed
      https://github.com/llvm/llvm-project/commit/0eaf12321e9c38ca7f652fd18471a8ea6be208ed
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16divf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16divf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16divf.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16divf implementation to header-only in src/__support/math folder. (#181086)


  Commit: cc5909b3e3de5470b31592eec6b22da88ca82df2
      https://github.com/llvm/llvm-project/commit/cc5909b3e3de5470b31592eec6b22da88ca82df2
  Author: Ash <97464181+tnuha at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sincos.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sincos.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sincos.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor sincos implementation to header only (#177522)

Part of llvm#147386

in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450

Closes #177638


  Commit: 170422666f8112e90135bd79b345034c7ebbc26b
      https://github.com/llvm/llvm-project/commit/170422666f8112e90135bd79b345034c7ebbc26b
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/src/__support/math/bf16divf.h

  Log Message:
  -----------
  [libc][math] Fix build failures caused by constexpr (#181920)


  Commit: 24c120406ad58fbecb96cdc6afc75cb466515193
      https://github.com/llvm/llvm-project/commit/24c120406ad58fbecb96cdc6afc75cb466515193
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-dap/variables/main.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/CompileUnitsRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/ProtocolUtils.cpp
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp
    M lldb/unittests/DAP/CMakeLists.txt
    A lldb/unittests/DAP/ProtocolBaseTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/DAP/TestBase.cpp
    M lldb/unittests/DAP/VariablesTest.cpp

  Log Message:
  -----------
  [lldb-dap] Validate utf8 protocol messages. (#181261)

I ran into this while debugging a different issue, but when we calcualte
the 'value' field of a variable we were not ensuring the contents were
valid utf8. If assertions are enabled then llvm::json::Value will assert
that the string contains invalid utf8.

To address this I added a wrapper type (`lldb_dap::protocol::String`)
that can be used as a thin wrapper around `std::string` to ensure a
field contains valid utf8. This is now used throughout the
`lldb_dap::protocol::*` types.


  Commit: 6712e91409f4b38cbd745bc69d47250720aee641
      https://github.com/llvm/llvm-project/commit/6712e91409f4b38cbd745bc69d47250720aee641
  Author: Akhil Goel <akhil.goel at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-service-func.ll

  Log Message:
  -----------
  [SPIRV] Prevent BB start emission for service functions (#178776)

When working with function pointers, the backend service functions might
still retain call instructions to the original functions. This PR skips
BB start emission for such cases.


  Commit: 71f49eb026dd15ace88a3b233472ee288893afc1
      https://github.com/llvm/llvm-project/commit/71f49eb026dd15ace88a3b233472ee288893afc1
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Host/common/ProcessLaunchInfo.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h

  Log Message:
  -----------
  [lldb][windows] release the ConPTY instead of copying its reference (#181811)

When running multiple targets in lldb, the `ProcessLaunchInfo` instance
gets re-used. This is a problem for the ConPTY instance which is owned
by `launch_info` because, when creating a second target, we close and
reopen the `m_pty` of the first target.

This patch replaces the `GetPTYSP` method with `ReleasePTY`, which moves
the `std::shared_ptr` out of `launch_info` instead of creating a new
`std::shared_ptr`. The `m_pty` instance is moved into the target's
process. This way, each target's `Process` instance owns its PTY
instance and is responsible for closing it.

---------

Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>


  Commit: 1870f3face71d6da2bc0095f751dd1b961b7e4c0
      https://github.com/llvm/llvm-project/commit/1870f3face71d6da2bc0095f751dd1b961b7e4c0
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/spirv-openmp-toolchain.c

  Log Message:
  -----------
  [clang][Driver][SPIRV][ClangLinkerWrapper] Pass --allow-partial-linkage to spirv-link (#181870)

Without this flag a lot of tests error in the linker.

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 6fe2aee9e6461f05985a7dfa13e3eb6eb542b469
      https://github.com/llvm/llvm-project/commit/6fe2aee9e6461f05985a7dfa13e3eb6eb542b469
  Author: Kai <47328809+kcloudy0717 at users.noreply.github.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/WavePrefixProduct.hlsl
    A clang/test/SemaHLSL/BuiltIns/WavePrefixProduct-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
    A llvm/test/CodeGen/DirectX/WavePrefixProduct.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WavePrefixProduct.ll

  Log Message:
  -----------
  [HLSL][DXIL][SPIRV] WavePrefixProduct intrinsic support (#179423)

This PR adds WavePrefixProduct intrinsic support in HLSL with codegen
for both DirectX and SPIRV backends. Resolves
https://github.com/llvm/llvm-project/issues/99173.

- [x] Implement `WavePrefixProduct` clang builtin
- [x] Link `WavePrefixProduct` clang builtin with `hlsl_intrinsics.h`
- [x] Add sema checks for `WavePrefixProduct` to
`CheckHLSLBuiltinFunctionCall` in `SemaChecking.cpp`
- [x] Add codegen for `WavePrefixProduct` to `EmitHLSLBuiltinExpr` in
`CGBuiltin.cpp`
- [x] Add codegen tests to
`clang/test/CodeGenHLSL/builtins/WavePrefixProduct.hlsl`
- [x] Add sema tests to
`clang/test/SemaHLSL/BuiltIns/WavePrefixProduct-errors.hlsl`
- [x] Create the `int_dx_WavePrefixProduct` intrinsic in
`IntrinsicsDirectX.td`
- [x] Create the `DXILOpMapping` of `int_dx_WavePrefixProduct` to `121`
in `DXIL.td`
- [x] Create the `WavePrefixProduct.ll` and
`WavePrefixProduct_errors.ll` tests in `llvm/test/CodeGen/DirectX/`
- [x] Create the `int_spv_WavePrefixProduct` intrinsic in
`IntrinsicsSPIRV.td`
- [x] In `SPIRVInstructionSelector.cpp` create the `WavePrefixProduct`
lowering and map it to `int_spv_WavePrefixProduct` in
`SPIRVInstructionSelector::selectIntrinsic`.
- [x] Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WavePrefixProduct.ll`


  Commit: 61616f2d59fc31cb7ffe8f257ae6f54bc1afc755
      https://github.com/llvm/llvm-project/commit/61616f2d59fc31cb7ffe8f257ae6f54bc1afc755
  Author: Abhijeet <abhijeetsharma2002 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16fmaf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16fmaf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16fmaf.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactored bf16fmaf to Header Only (#181919)

Fixes #181626


  Commit: 786b3b4741f944ed32b3a7b4fbd2991c2ad98184
      https://github.com/llvm/llvm-project/commit/786b3b4741f944ed32b3a7b4fbd2991c2ad98184
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/CMakeLists.txt
    M flang-rt/lib/cuda/allocator.cpp
    A flang-rt/lib/cuda/stream.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/DefaultStream.cpp
    M flang/include/flang/Runtime/CUDA/allocator.h
    A flang/include/flang/Runtime/CUDA/stream.h

  Log Message:
  -----------
  [flang][cuda][NFC] Move set/get default stream to its own file (#181927)


  Commit: d4b574266132e08ff585facf2e0e01995082999f
      https://github.com/llvm/llvm-project/commit/d4b574266132e08ff585facf2e0e01995082999f
  Author: dyung <douglas.yung at sony.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/AST/Stmt.cpp
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp

  Log Message:
  -----------
  Revert "[clang] Fix some static initialization race-conditions" (#181926)

Reverts llvm/llvm-project#181367

This is causing crashes in tests on a Windows bot
https://lab.llvm.org/buildbot/#/builders/46/builds/30854.


  Commit: 977d910d005c47f884ecf838e504da301b1124b9
      https://github.com/llvm/llvm-project/commit/977d910d005c47f884ecf838e504da301b1124b9
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-dap/variables/main.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/CompileUnitsRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/ProtocolUtils.cpp
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp
    M lldb/unittests/DAP/CMakeLists.txt
    R lldb/unittests/DAP/ProtocolBaseTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/DAP/TestBase.cpp
    M lldb/unittests/DAP/VariablesTest.cpp

  Log Message:
  -----------
  Revert "[lldb-dap] Validate utf8 protocol messages." (#181930)

Reverts llvm/llvm-project#181261

Breaking builds on linux, reverting while I investigate.

See https://lab.llvm.org/buildbot/#/builders/181/builds/37346


  Commit: 9ff444c0aa804f1f73822f45311f5a1698d0b7d0
      https://github.com/llvm/llvm-project/commit/9ff444c0aa804f1f73822f45311f5a1698d0b7d0
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/src/stdio/baremetal/CMakeLists.txt
    R libc/src/stdio/baremetal/fflush.cpp
    R libc/src/stdio/baremetal/file_internal.cpp
    M libc/src/stdio/baremetal/file_internal.h
    M libc/src/stdio/baremetal/getc.cpp
    R libc/src/stdio/baremetal/ungetc.cpp
    M libc/src/stdio/baremetal/vfscanf_internal.h

  Log Message:
  -----------
  Revert "[libc] Add getc, ungetc, fflush to enable libc++ iostream on baremetal" (#181931)

Reverts llvm/llvm-project#175530

This PR breaks libc header generation on Windows stage2 builds for a to
be determined reason.


  Commit: fe86f612f7e73d7eab21f757f5d39a4b3f97a2aa
      https://github.com/llvm/llvm-project/commit/fe86f612f7e73d7eab21f757f5d39a4b3f97a2aa
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/RISCV/partial-vec-invalid-cost.ll

  Log Message:
  -----------
  [SLP][NFC] Update partial_vec_invalid_cost() test to avoid breakage by #181731 (#181914)

This test creates an invalid vector cost, but #181731 allows
transforming of lshr 0, 0 -> add 0, 0 which in turn allows costing of
the following TreeEntry since is will be considered as 4 `ADD`
operations.
```
%lshr.1 = lshr i96 0, 0
%lshr.2 = lshr i96 0, 0
%add.0 = add i96 0, 0
%add.1 = add i96 0, 0
```
This commit adjusts the operands to ensure an invalid cost is still
generated after #181731.

This test was originally added in
4652ec0e291ca4ba4ddef3fd59b202646e9a6694.


  Commit: 62f4f2f2995ba8981f8aa032430c5d19d3f00e5e
      https://github.com/llvm/llvm-project/commit/62f4f2f2995ba8981f8aa032430c5d19d3f00e5e
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/semanticly-same.ll

  Log Message:
  -----------
  [SLP][NFC] Precommit tests for LShr-UDiv power of 2 transformations (#181925)

Tests for #181731.


  Commit: e64eed2f8b47566b1b32c60e6fc0ec8837147a13
      https://github.com/llvm/llvm-project/commit/e64eed2f8b47566b1b32c60e6fc0ec8837147a13
  Author: Justice Adams <jadams23 at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    A .ci/green-dragon/bisect.groovy

  Log Message:
  -----------
  [green dragon] add bisection job (#181883)

* Add job responsible for bisecting commits on the CI environment


  Commit: 606199e7fd5385c3781acd7117fcaa32289e94a6
      https://github.com/llvm/llvm-project/commit/606199e7fd5385c3781acd7117fcaa32289e94a6
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M llvm/test/CodeGen/X86/AMX/amx-low-intrinsics-no-amx-bitcast.ll
    M llvm/test/CodeGen/X86/AMX/amx-low-intrinsics.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [X86][ProfCheck] Synthesize profile information where relevant

When creating loops to lower some AMX intrinsics, it is often the case
we have enough information to synthesize profile metadata for the latch.
This patch makes it so that we either set branch weights if everything
is a known constant, or set unknown weights if we do not have constants.

Reviewers: jdenny-ornl, mtrofin, phoebewang, KanRobert, RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/181578


  Commit: 8240831e81776173cac7d701be683038030bb860
      https://github.com/llvm/llvm-project/commit/8240831e81776173cac7d701be683038030bb860
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lld/wasm/SyntheticSections.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Add comment regarding DataCount section. NFC (#181869)

I noticed this was lacking while reviewing #175800


  Commit: 2cb342c733debda403195066e17e75f96e7e826c
      https://github.com/llvm/llvm-project/commit/2cb342c733debda403195066e17e75f96e7e826c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rv32p.ll

  Log Message:
  -----------
  [RISCV] Add combines to form WSUBAU on RV32 with P. (#181604)


  Commit: 92ac31c34baa83d0718e70eb5590e16fc39cafc7
      https://github.com/llvm/llvm-project/commit/92ac31c34baa83d0718e70eb5590e16fc39cafc7
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/source/Target/StackFrameList.cpp

  Log Message:
  -----------
  [lldb] cast char8_t* to char* to allow std::string construction under C++20 (#181928)

After 5d5301dc0c, lldb fails to compile under C++20 with:

```
llvm-project/lldb/source/Target/StackFrameList.cpp:975:12: error: no viable conversion from returned value of type 'const char8_t *' to function return type 'std::string' (aka 'basic_string<char>')
  975 |     return show_unicode_marker ? u8" * " : u8"* ";
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

This PR reinterpret casts the unicode characters returned by
`GetFrameMarker` to `const char*`.


  Commit: 9a0d65cdfd0d8ef3df2a888282db9cd5b9404617
      https://github.com/llvm/llvm-project/commit/9a0d65cdfd0d8ef3df2a888282db9cd5b9404617
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    R llvm/include/llvm/CodeGen/CallBrPrepare.h
    A llvm/include/llvm/CodeGen/InlineAsmPrepare.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/lib/CodeGen/CMakeLists.txt
    R llvm/lib/CodeGen/CallBrPrepare.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    A llvm/lib/CodeGen/InlineAsmPrepare.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    R llvm/test/CodeGen/AArch64/callbr-prepare.ll
    A llvm/test/CodeGen/AArch64/inline-asm-prepare.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/O0-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/tools/opt/optdriver.cpp
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn

  Log Message:
  -----------
  [NFC][CodeGen] Rename CallBrPrepare pass to InlineAsmPrepare (#181547)

This is an NFC change to make room for a more generalized "prepare" pass
for inline assembly beyond CallBrInsts. In particular, changing how we
generate code for inline assembly with "rm" constraints.


  Commit: 9532f3f5fa759be9ed6d6f77b10f8893a91fd848
      https://github.com/llvm/llvm-project/commit/9532f3f5fa759be9ed6d6f77b10f8893a91fd848
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
    M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
    M mlir/test/Dialect/GPU/transform-gpu-failing.mlir

  Log Message:
  -----------
  [mlir][gpu] Harden verification constraints in `transform.gpu.map_nested_forall_to_threads` (#170282)

Harden `transform.gpu.map_nested_forall_to_threads` to reject
non-positive block/grid sizes and handle zero-iteration dimensions
gracefully, preventing assertion failures in `computeProduct`.

Fix `getConstantIntValues` to return `std::nullopt` if any element is
non-constant, avoiding invalid zero placeholders.

Fixes: https://github.com/llvm/llvm-project/issues/73562


  Commit: 90d1a559df4ae6b0792b302ffa542ebbec1f8872
      https://github.com/llvm/llvm-project/commit/90d1a559df4ae6b0792b302ffa542ebbec1f8872
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/Analysis/KernelInfo/flat-addrspace/Inputs/test.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/bug_shuffle_vector_to_scalar.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
    M llvm/test/CodeGen/AMDGPU/chain-node-divergence-update-crash-issue-173885.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/concat_vectors.ll
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    M llvm/test/CodeGen/AMDGPU/debug-independence-revertScheduling.ll
    M llvm/test/CodeGen/AMDGPU/debug-independence-scheduleRegion.ll
    M llvm/test/CodeGen/AMDGPU/debug-value.ll
    M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
    M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/hazard-recognizer-src-shared-base.ll
    M llvm/test/CodeGen/AMDGPU/iglp.opt.reentry.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.AFLCustomIRMutator.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/load-hi16.ll
    M llvm/test/CodeGen/AMDGPU/load-lo16.ll
    M llvm/test/CodeGen/AMDGPU/machine-sink-loop-var-out-of-divergent-loop-swdev407790.ll
    M llvm/test/CodeGen/AMDGPU/merge-store-crash.ll
    M llvm/test/CodeGen/AMDGPU/merge-store-usedef.ll
    M llvm/test/CodeGen/AMDGPU/misched-remat-revert.ll
    M llvm/test/CodeGen/AMDGPU/opencl-printf-invalid-signature.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-icmp.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-select.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-user-mult.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/regalloc-spill-wmma-scale.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole-instr-combine-sel.ll
    M llvm/test/CodeGen/AMDGPU/setcc-multiple-use.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/store-hi16.ll
    M llvm/test/CodeGen/AMDGPU/sub-zext-cc-zext-cc.ll
    M llvm/test/CodeGen/AMDGPU/swdev-549940.ll
    M llvm/test/CodeGen/AMDGPU/swdev282079.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll
    M llvm/test/CodeGen/AMDGPU/trap.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/undef-handling-crash-in-ra.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll
    M llvm/test/CodeGen/AMDGPU/waterfall_kills_scc.ll
    M llvm/test/CodeGen/AMDGPU/wmma_modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/icmp.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/select.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/addrspacecast.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/phi-with-incoming-from-load.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/insertion-point.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/pointer-elements.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/vect-ptr-ptr-size-mismatch.ll
    M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-crash.ll
    M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-invalid-ptr-extend.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Use `zeroinitializer` instead of `null` for `ptr addrspace(2/3/5)` in AMDGPU tests (#181710)


  Commit: 05c046eaff89b2133915e3745ac733f317c0fb22
      https://github.com/llvm/llvm-project/commit/05c046eaff89b2133915e3745ac733f317c0fb22
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineInstr.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Minor cleanup in MachineInstr operand printing (#181892)

- Rename `getTiedOperandIdx` to `GetTiedOperandIdx` per LLVM CS.
- Do not compute tied operand index for defs, since tied operands are
printed only on uses.
- Restructure the `if` in the later operand printing loop to not compute
tied operand index/type for subreg-index imm operands.


  Commit: 027977e0a8e34e47b9ef5792a6d516991be70fd9
      https://github.com/llvm/llvm-project/commit/027977e0a8e34e47b9ef5792a6d516991be70fd9
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [OpenACC] add acc.reduction_combine operation (#181853)

To facilitate codegen decisions, we need to create an operation that can
abstract the final update of the original and partial sum from a
reduction. This is represented within the combiner recipes. Having an
operator allows future lowering to clearly identify how to handle the
final accumulation. This is currently an NFC.

The format of this operation is:

```
  acc.reduction_combine %srcMemref into %destMemref <reductionOperator> : type
```


  Commit: 260f6fedc78bc6d3019d57c2afc5e5c99b8f00ea
      https://github.com/llvm/llvm-project/commit/260f6fedc78bc6d3019d57c2afc5e5c99b8f00ea
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h

  Log Message:
  -----------
  [CIR][NFC] Upstream support for FP environments and RAII options (#179121)

This adds support for FP environment descriptions and RAII options for
FP operations, i.e.,`CIRGenFPOptionsRAII`).


  Commit: 0fc9b7412b4e25ad5eaa6104de07d0f33a46deb5
      https://github.com/llvm/llvm-project/commit/0fc9b7412b4e25ad5eaa6104de07d0f33a46deb5
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/IR/invalid-try-catch.cir
    M clang/test/CIR/IR/try-catch.cir

  Log Message:
  -----------
  [CIR] Add verifier for CIR try op (#181419)

This adds a verifier to enforce the requirement that every catch handler
in a cir.try operation must begin with a cir.catch_param operation.


  Commit: 54f3b39a72378a6ece0b787995f17665f6cf66fd
      https://github.com/llvm/llvm-project/commit/54f3b39a72378a6ece0b787995f17665f6cf66fd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp

  Log Message:
  -----------
  [TableGen] Rename TheMatcher->TheMatcherList. NFC (#181942)

After 8d971c0360f91729cc5120ffd361f7b55e97f2ab, there is a linked list
container object called MatcherList. We no long hold a pointer directly
to the first Matcher in the list.

Rename the variables to make this clearer.


  Commit: 3fc48b78176c2adbde3286b1fd9e444981e3bd1f
      https://github.com/llvm/llvm-project/commit/3fc48b78176c2adbde3286b1fd9e444981e3bd1f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/test/MC/RISCV/rvv/xsfvcp-invalid.s

  Log Message:
  -----------
  [RISCV] Check the error location in xsfvcp-invalid.s. NFC (#181929)

Check that the error location points to the destination operand.

I'm planning to rewrite the code that generates that error, and I want
to make sure I get the location right.


  Commit: 091296f3e338798c55d59014c3b4c265b8d6a653
      https://github.com/llvm/llvm-project/commit/091296f3e338798c55d59014c3b4c265b8d6a653
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/bindings/python/CMakeLists.txt
    M lldb/bindings/python/python-swigsafecast.swig
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/CMakeLists.txt
    M lldb/docs/python_extensions.rst
    M lldb/docs/use/python-reference.rst
    R lldb/docs/use/tutorials/custom-symbol-resolution.md
    R lldb/examples/python/templates/scripted_symbol_locator.py
    M lldb/include/lldb/API/SBFileSpec.h
    M lldb/include/lldb/API/SBModule.h
    M lldb/include/lldb/API/SBModuleSpec.h
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Core/PluginManager.h
    R lldb/include/lldb/Interpreter/Interfaces/ScriptedSymbolLocatorInterface.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedSymbolLocatorPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedSymbolLocatorPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    R lldb/source/Plugins/SymbolLocator/Scripted/CMakeLists.txt
    R lldb/source/Plugins/SymbolLocator/Scripted/SymbolLocatorScripted.cpp
    R lldb/source/Plugins/SymbolLocator/Scripted/SymbolLocatorScripted.h
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    R lldb/test/API/functionalities/scripted_symbol_locator/Makefile
    R lldb/test/API/functionalities/scripted_symbol_locator/TestScriptedSymbolLocator.py
    R lldb/test/API/functionalities/scripted_symbol_locator/main.c
    R lldb/test/API/functionalities/scripted_symbol_locator/source_locator.py
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp

  Log Message:
  -----------
  [lldb] Revert scripted symbol locator (#181945)

This revert #181334 and its follow-up PRs (including #181488, #181492,
#181493, #181494 and #181498) as well as Ismail's documentation changes
(#181594, #181717). The original commit causes a test failure in CI
(https://github.com/llvm/llvm-project/issues/181938) but the more I look
at the patch, the more I'm convinced it was not ready to land. It will
be easier to iterate on the feedback by re-landing this than by using
post-commit review.


  Commit: 63db233b3891412368189ddc7fcea8a38d9c3749
      https://github.com/llvm/llvm-project/commit/63db233b3891412368189ddc7fcea8a38d9c3749
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/utils/git-llvm-push

  Log Message:
  -----------
  [LLVM][Utils] Fix automerge in git-llvm-push (#181766)

Enabling automerge can only be done using the GraphQL API. Add in some
basic GraphQL infrastructure and update the enable_automerge method to
call the GraphQL API to enable automerge for a PR.

Tested locally on #181762.

Closes #181634.


  Commit: 3210e2013eded053a43bfad0e212fc0eff99fee0
      https://github.com/llvm/llvm-project/commit/3210e2013eded053a43bfad0e212fc0eff99fee0
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/agg-expr-lvalue.c
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/compound_literal.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/embed-expr.c
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/paren-init-list.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/var-arg-aggregate.c
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    M clang/test/CIR/Lowering/array.cpp

  Log Message:
  -----------
  [CIR] Implement shouldCreateMemCpyFromGlobal in LoweringPrepare (#181276)

CIRGen emits cir.const + cir.store for aggregate initialization, keeping
closer to source-level semantics. LoweringPrepare transforms stores of
constant aggregates (arrays, records) into cir.global + cir.get_global +
cir.copy, matching OG codegen's shouldCreateMemCpyFromGlobal
optimization.

The transform only applies to stores targeting cir.alloca (local
variables inside cir.func). Stores in other contexts (e.g. OpenACC
reduction recipe init blocks, base class initialization) are left as
cir.const + cir.store.

Also fixes CopyOp lowering to use i64 for the memcpy length instead of
i32, matching OG codegen behavior.


  Commit: 293acb5d32644d05ce19532571f31a3936c412b6
      https://github.com/llvm/llvm-project/commit/293acb5d32644d05ce19532571f31a3936c412b6
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck][Matrix] Propagate profile information for selects

LowerMatrixIntrinsics creates new selects in the process of lowering
matrix intrinsics. The condition of such selects remains the same as
before. Because of this, we can directly propagate the profile
information for all selects on scalar conditions.

Reviewers: mtrofin, snehasish, fhahn, alanzhao1

Pull Request: https://github.com/llvm/llvm-project/pull/181248


  Commit: fc14b1d2b557a6372c40c4b6a7f29dabc802bb12
      https://github.com/llvm/llvm-project/commit/fc14b1d2b557a6372c40c4b6a7f29dabc802bb12
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MatrixUtils.h
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp

  Log Message:
  -----------
  [NFC][Matrix] Make CreateLoop take ConstantInt for Bound/Step

These should always be constants (unless someday we add support for
scalable matrices and then we can revisit). Explicitly pass them as
ConstantInt so we can avoid needing to downcast in a future PR that will
calculate appropriate branch weights using these values.

Reviewers: fhahn, mtrofin

Pull Request: https://github.com/llvm/llvm-project/pull/181291


  Commit: 7cbf4530181cb1af3064d789a6af8f4c3782bf64
      https://github.com/llvm/llvm-project/commit/7cbf4530181cb1af3064d789a6af8f4c3782bf64
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops-large-matrixes.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-volatile.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck][Matrix] Add profile data where relevant

This patch tackles two cases:
1. Checks around aliasing/overlapping ranges. This is runtime dependent
   on the pointer values passed in, which we have no way of knowing
   without additional profiling.
2. Loop backedges. For these we also have an associated trip count, so
   we set up the branch weights to represent this.

Tests updated/profcheck-xfail.txt updated.

Reviewers: alanzhao1, fhahn, mtrofin, snehasish

Pull Request: https://github.com/llvm/llvm-project/pull/181292


  Commit: dd8ab2ab94b3db9318d39b4a4b603337b586e242
      https://github.com/llvm/llvm-project/commit/dd8ab2ab94b3db9318d39b4a4b603337b586e242
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Remove VPDerivedIVRecipe and VPScalarIVStepsRecipe from VPHeaderPHIRecipe doc comment. NFC (#181862)

These aren't subclasses of VPHeaderPHIRecipe, I'm not sure if the class
hierarchy changed or not.
Also add the other subclasses to the list.


  Commit: 3bbb89860ad987dd820801881e8f1eb7eed159d1
      https://github.com/llvm/llvm-project/commit/3bbb89860ad987dd820801881e8f1eb7eed159d1
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp

  Log Message:
  -----------
  [clang][deps] Ensure the service outlives async module compiles (#181772)

This PR fixes a race condition discovered by thread sanitizer in the
asynchronous dependency scanner implementaion.

The implementation assumed that whenever a new thread is spawned to
compile a module, the primary scanning thread must wait for it to finish
to read the PCM it produces. This is not true - it's possible for the
implicit build on the primary thread to decide to compile the same
module too, leaving the asynchronous thread running without any kind of
synchronization. This means the TU scan may return, the service may get
destroyed, but the asynchronous thread continues running with the VFS
caches and module cache implementation destroyed, leading to crashes.

This PR fixes this by awaiting all asynchronous threads at the end of a
TU scan.


  Commit: 6eae1759f2c08fcd36b3673c6603297ba3f8d7d3
      https://github.com/llvm/llvm-project/commit/6eae1759f2c08fcd36b3673c6603297ba3f8d7d3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    M llvm/test/MC/RISCV/rvv/zvkned.s

  Log Message:
  -----------
  [RISCV] Remove VMConstraint from VAESKF1_VI/VAESKF2_VI. (#181887)

These instructions don't have a VM operand. If these instructions use a
V0 destination, the VMConstraint code calls getReg() on the the last
operand which is an immediate. This triggers an assertion. Not sure
what happens on a release build. It probably treats the immediate as a
value in the RISCV register info enum.


  Commit: ca16347ab2f4a9731df92798a2b4c5a41b5e08b9
      https://github.com/llvm/llvm-project/commit/ca16347ab2f4a9731df92798a2b4c5a41b5e08b9
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DDGPrinter.h
    M llvm/lib/Analysis/DDGPrinter.cpp
    M llvm/test/Analysis/DDG/print-dot-ddg.ll

  Log Message:
  -----------
  [DDG][NFC] Colorize DDG dot graph (#181618)

All blocks and edges are currently colored black which makes it
difficult to distinguish while looking at huge graph.

This simple patch implements the following colorization to make it
visually more distinguishable.

1. Pi-blocks - styled to rounded, filled, light-yellow fill, dark orange
border
2. Multi-instruction blocks - Light cyan fill
3. MemoryDependence edges are now colored red.
4. Register def-use edges are now colored blue.

This patch implements `getNodeAttributes()` to return the string of
attributes to apply to the node.


  Commit: bdf4eaed892df35f31bcc186f0e314303578a927
      https://github.com/llvm/llvm-project/commit/bdf4eaed892df35f31bcc186f0e314303578a927
  Author: Justice Adams <jadams23 at apple.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M .ci/green-dragon/bisect.groovy

  Log Message:
  -----------
  [green-dragon] fix test param in triggered bisection jobs (#181962)

Fix the usage of our skip_tests parm


  Commit: 15cf81b13fd50e17092220f4730cb256a9a0da27
      https://github.com/llvm/llvm-project/commit/15cf81b13fd50e17092220f4730cb256a9a0da27
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Fix wrong log formatting for script callbacks (NFC)

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: a2e14e41cfe41f71a79b21b53fefd26781e4061e
      https://github.com/llvm/llvm-project/commit/a2e14e41cfe41f71a79b21b53fefd26781e4061e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes-sifive.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Xsfmm32a shorthand extension. (#181957)

This extension is shorthand for Xsfmm32a8i, Xsfmm32a16f, and
Xsfmm32a32f.

It was mistakenly left out of an earlier version of the public
specification, but is now present. See
https://www.sifive.com/document-file/xsfmm-matrix-extensions-specification


  Commit: c5ac41dba85b57ae414b41fc57ae8f71637fb57b
      https://github.com/llvm/llvm-project/commit/c5ac41dba85b57ae414b41fc57ae8f71637fb57b
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Minor source cleanups in SIInsertWaitcnts (#181095)


  Commit: 371e0e2082e9f8345279a8484e742c100b0aa752
      https://github.com/llvm/llvm-project/commit/371e0e2082e9f8345279a8484e742c100b0aa752
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/RelocScan.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for AArch64 (#181099)

Implement AArch64::scanSectionImpl, following the pattern established
for x86 (#178846), PPC64 (#181496), and SystemZ (#181563). This merges
the getRelExpr and TLS handling for SHF_ALLOC sections into the
target-specific scanner, enabling devirtualization and eliminating
abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations, and handleTlsIe/handleTlsDesc for TLS IE/TLSDESC.
- Remove some AArch64-specific RelExpr members (RE_AARCH64_AUTH_GOT,
  RE_AARCH64_AUTH_GOT_PC, RE_AARCH64_AUTH_GOT_PAGE_PC,
  RE_AARCH64_AUTH_TLSDESC_PAGE, RE_AARCH64_AUTH_TLSDESC,
  RE_AARCH64_RELAX_TLS_GD_TO_IE_PAGE_PC) by using regular RelExpr
  members with flag-based dispatch (NEEDS_GOT_AUTH, NEEDS_TLSDESC_AUTH).
AUTH GOT relocations now call `sym.setFlags(NEEDS_GOT | NEEDS_GOT_AUTH)`
  and `rs.processAux` directly.
- Remove adjustTlsExpr and handleAArch64PAuthTlsRelocation by inlining
  their logic into scanSectionImpl and relocateAlloc.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and EhInputSection::preprocessRelocs.


  Commit: 6f0b0ecaba1ba311717f86d8e4d8c6b2b4c4cd4b
      https://github.com/llvm/llvm-project/commit/6f0b0ecaba1ba311717f86d8e4d8c6b2b4c4cd4b
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/lib/Core/BinaryContext.cpp
    M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
    M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
    M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.h
    M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
    M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    M llvm/lib/DebugInfo/LogicalView/Readers/LVBinaryReader.cpp
    M llvm/tools/llvm-exegesis/lib/DisassemblerHelper.cpp
    M llvm/tools/llvm-exegesis/lib/DisassemblerHelper.h
    M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCopyBytesTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
    M llvm/unittests/DebugInfo/DWARF/DwarfGenerator.h
    M llvm/unittests/MC/AMDGPU/Disassembler.cpp
    M llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
    M llvm/unittests/MC/X86/X86MCDisassemblerTest.cpp

  Log Message:
  -----------
  [NFC] Ensure MCTargetOptions outlives MCAsmInfo at createMCAsmInfo call sites (#180465)

Preparatory change for storing the MCTargetOptions pointer in MCAsmInfo
(#180464)


  Commit: 1daf3408cffabe37b8daa06236a9aea4ce043cb1
      https://github.com/llvm/llvm-project/commit/1daf3408cffabe37b8daa06236a9aea4ce043cb1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Set RVVConstraint = NoConstraint in tablegen classes with vm=1. NFC (#181960)

Our RVV base classes default to RVVConstraint = VMConstraint. We
should force it to NoConstraint in classes where we've explicitly
marked vm as being a constant rather than an operand. This avoids
needing to do it at a higher level in the class hierarchy.


  Commit: d40f7a2409bfcc4121814a263a75039f581c2bb8
      https://github.com/llvm/llvm-project/commit/d40f7a2409bfcc4121814a263a75039f581c2bb8
  Author: Kadir Cetinkaya <kadircet at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  Revert "[ADT] Add const check to MutableArrayRef constructor (#181190)"

This reverts commit 1de1a76dc9042ffc8026217cf0b105f0b86c16fb.


  Commit: 632c5a3738b9e9344b8d2f3d66f8aba5ff122f3c
      https://github.com/llvm/llvm-project/commit/632c5a3738b9e9344b8d2f3d66f8aba5ff122f3c
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-02-17 (Tue, 17 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Relax the slice layout check for broadcast operand in subgroup distribution (#181935)

This PR relaxes the operand layout check in broadcast op in subgroup
distribution. Instead of failing the pattern match, it issues a warning
and proceed the distribution. The layout could be non-slice layout but
still support valid subgroup distribution.


  Commit: 97fa3e5936936a7f83b412ff411ad246faa79c30
      https://github.com/llvm/llvm-project/commit/97fa3e5936936a7f83b412ff411ad246faa79c30
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-force-tail-with-evl.ll
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [NFC][VPlan] Rename VPEVLBasedIVPHIRecipe to VPCurrentIterationPHIRecipe (#177114)

This is groundwork for #151300, which aims to support first-faulting
loads in non-tail-folded early-exit loops.
Per #175900, we need a variable-length stepping transform that can
shared between EVL and non-EVL loops.
The idea is to have an EVL-independent counter and transform for
tracking the cumulative number of processed elements.

This patch renames the existing counter (VPEVLBasedIVPHIRecipe) and
transform (canonicalizeEVLLoops) to be EVL-independent:
- Rename VPEVLBasedIVPHIRecipe to VPCurrentIterationRecipe to
  reflect its general purpose of tracking processed element count.
- Rename canonicalizeEVLLoops to convertToVariableLengthStep.

This is NFC.


  Commit: 7897d928be14089870469342d497a822befaf39d
      https://github.com/llvm/llvm-project/commit/7897d928be14089870469342d497a822befaf39d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectType.cpp
    A lldb/test/Shell/Commands/command-type-synthetic-add.test

  Log Message:
  -----------
  [lldb][CommandObjectType] Print name of Python class when emitting warning about invalid synthetic provider (#181829)

Before:
```
(lldb) type synthetic add -l blah foo
warning: The provided class does not exist - please define it before attempting to use this synthetic provider
```

After:
```
(lldb) type synthetic add -l blah foo
warning: The provided class 'blah' does not exist - please define it before attempting to use this synthetic provider
```

Useful when many of these registration commands happen as part of
`~/.lldbinit`. Previously it wasn't immediately obvious which of those
commands failed.


  Commit: 867272d52ac06c1eb0ff8e0d045e92e3c467a8bd
      https://github.com/llvm/llvm-project/commit/867272d52ac06c1eb0ff8e0d045e92e3c467a8bd
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve-tail-folding-forced.ll

  Log Message:
  -----------
  [LV] Pass symbolic VF to CalculateTripCountMinusVF and CanonicalIVIncrementForPart (NFC) (#180542)

This makes it easier to update the runtime VF per VPlan.


  Commit: d0ce5d65ab3c565660fc935c493823384b8dff87
      https://github.com/llvm/llvm-project/commit/d0ce5d65ab3c565660fc935c493823384b8dff87
  Author: Prathamesh Tagore <63031630+meshtag at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/test/IR/visitors.mlir

  Log Message:
  -----------
  [NFC][test-ir-visitors] Remove unregistered dialect uses from tests (#181911)

Use the already registered test dialect in tests which is explicitly
intended to allow arbitrary ops.


  Commit: 8f378ea7e6fa31179266c69368be56a866b631e1
      https://github.com/llvm/llvm-project/commit/8f378ea7e6fa31179266c69368be56a866b631e1
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/UnsafeToAllowExceptionsCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/UnsafeToAllowExceptionsCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-escape.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-to-allow-exceptions.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-to-allow-exceptions-precpp17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-to-allow-exceptions.cpp

  Log Message:
  -----------
  [clang-tidy] Add check 'bugprone-unsafe-to-allow-exceptions' (#176430)

`ExceptionEscapeCheck` does not warn if a function is `noexcept(false)`
(may throw) but is one of the functions where throwing exceptions is
unsafe. This check can be used to find such cases.


  Commit: ecd25afa90ee3a81bacbf160495147662bfca07c
      https://github.com/llvm/llvm-project/commit/ecd25afa90ee3a81bacbf160495147662bfca07c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    A libclc/clc/include/clc/relational/clc_issubnormal.h
    M libclc/clc/include/clc/relational/relational.h
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/relational/clc_issubnormal.cl

  Log Message:
  -----------
  libclc: Add __clc_issubnormal (#181782)

This is the missing of the FP class queries.


  Commit: 0786f2d23e3a0d21271c608402caa5e4f150c981
      https://github.com/llvm/llvm-project/commit/0786f2d23e3a0d21271c608402caa5e4f150c981
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll

  Log Message:
  -----------
  [X86] LowerAndToBT - convert to SDPatternMatch (#181696)

Fixes an issue where a partial pattern (and then early-out) prevented a
later match

Prep work for #147216


  Commit: fa31acedc547481feebe6fb1cf920a1e3e45c6b6
      https://github.com/llvm/llvm-project/commit/fa31acedc547481feebe6fb1cf920a1e3e45c6b6
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp

  Log Message:
  -----------
  [NFCI][analyzer] Simplify NodeBuilder constructors (#181875)

This commit simplifies the construction of `NodeBuilder` and its
subclasses in three ways:
- It removes an assertion that only appeared in one of the two
constructors of `NodeBuilder`. While the asserted "no sinks in the
`Frontier`" invariant apparently holds, this assertion was not the right
place for expressing it. (In the future I might re-add a similar
assertion in a more reasonable location.)
- It adds a new constructor for `NodeBuilder` that doesn't take a
"source node(s)" argument, because this argument was often irrelevant.
- It removes the "source node(s)" arguments from the subclasses of
`NodeBuilder` because it was always completely irrelevant in those
situations.

Before this commit, constructors of `NodeBuilder` took three arguments:
- the source node or nodes,
- the destination node set where the freshly built nodes are placed,
- the `NodeBuilderContext` that provides access to the exploded graph.

Among these, the latter two were saved in data members, but the only use
of the source node(s) was that the constructor inserted them into the
destination node set (= the data member `Frontier`).

However, adding the source node(s) to the `Frontier` is usually
irrelevant, because later set operations almost always remove them from
the `Frontier`. This is especially clear in the subclasses derived from
`NodeBuilder` whose constructor immediately remove the source node(s)
from the `Frontier`. (In other situations, the source node(s) are
usually removed from the `Frontier` by the calls to `generateNode()`.)

This commit introduces a new constructor for `NodeBuilder` that doesn't
have a "source node(s)" parameter, then uses this constructor to
implement the constructors of the subclasses without pointless insertion
and then removal of nodes from the destination set.

Note that if a node `N` was already present in the destination set, then
its insertion+removal would remove it from the set; but I verified that
the destination set passed to constructors of subclasses of
`NodeBuilder` is always an empty set (at this point).

The new constructor of `NodeBuiler` is public because later it will be
also useful for simplifying other code that uses `NodeBuilder` directly.


  Commit: c5a0742d17219053994a5d7a33c4a21fd1d12d15
      https://github.com/llvm/llvm-project/commit/c5a0742d17219053994a5d7a33c4a21fd1d12d15
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.h

  Log Message:
  -----------
  [lldb-dap] Initialise the call mutex before the progress_event_reporter. (#181941)

The progress event reporter has a thread that reports events every 250
millisecond. and is destroyed in its destructor.

When in event reporter desctructor, the event reporter may have pending
event but the call mutex is destroyed leading to the crash.

Relevant stack trace from CI.
```
[2026-02-13T17:46:13.577Z] libc++abi: terminating due to uncaught exception of type std::__1::system_error: mutex lock failed: Invalid argument 
[2026-02-13T17:46:13.577Z] PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash report from ~/Library/Logs/DiagnosticReports/. 

[2026-02-13T17:46:13.577Z]  #0 0x0000000102b6943c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x10008943c) 
[2026-02-13T17:46:13.577Z]  #1 0x0000000102b67368 llvm::sys::RunSignalHandlers() (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x100087368) 
[2026-02-13T17:46:13.577Z]  #2 0x0000000102b69f20 SignalHandler(int, __siginfo*, void*) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x100089f20)
[2026-02-13T17:46:13.577Z]  #3 0x000000018bbdb744 (/usr/lib/system/libsystem_platform.dylib+0x1804e3744) 
[2026-02-13T17:46:13.577Z]  #4 0x000000018bbd1888 (/usr/lib/system/libsystem_pthread.dylib+0x1804d9888) 
[2026-02-13T17:46:13.577Z]  #5 0x000000018bad6850 (/usr/lib/system/libsystem_c.dylib+0x1803de850) 
[2026-02-13T17:46:13.577Z]  #6 0x000000018bb85858 (/usr/lib/libc++abi.dylib+0x18048d858) 
[2026-02-13T17:46:13.577Z]  #7 0x000000018bb744bc (/usr/lib/libc++abi.dylib+0x18047c4bc) 
[2026-02-13T17:46:13.577Z]  #8 0x000000018b7a0424 (/usr/lib/libobjc.A.dylib+0x1800a8424) 
[2026-02-13T17:46:13.577Z]  #9 0x000000018bb84c2c (/usr/lib/libc++abi.dylib+0x18048cc2c) 
[2026-02-13T17:46:13.577Z] #10 0x000000018bb88394 (/usr/lib/libc++abi.dylib+0x180490394) 
[2026-02-13T17:46:13.577Z] #11 0x000000018bb8833c (/usr/lib/libc++abi.dylib+0x18049033c) 
[2026-02-13T17:46:13.577Z] #12 0x000000018bb01b90 (/usr/lib/libc++.1.dylib+0x180409b90) 
[2026-02-13T17:46:13.577Z] #13 0x000000018bb01b34 (/usr/lib/libc++.1.dylib+0x180409b34) 
[2026-02-13T17:46:13.577Z] #14 0x000000018bb038a0 (/usr/lib/libc++.1.dylib+0x18040b8a0) 
[2026-02-13T17:46:13.577Z] #15 0x0000000102b6fbac lldb_dap::DAP::Send(std::__1::variant<lldb_dap::protocol::Request, lldb_dap::protocol::Response, lldb_dap::protocol::Event> const&) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x10008fbac) 
[2026-02-13T17:46:13.577Z] #16 0x0000000102b6f890 lldb_dap::DAP::SendJSON(llvm::json::Value const&) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x10008f890) 
[2026-02-13T17:46:13.577Z] #17 0x0000000102b78788 std::__1::__function::__func<lldb_dap::DAP::DAP(lldb_dap::Log&, lldb_dap::ReplMode, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>, bool, llvm::StringRef, lldb_private::transport::JSONTransport<lldb_dap::ProtocolDescriptor>&, lldb_private::MainLoopPosix&)::$_0, std::__1::allocator<lldb_dap::DAP::DAP(lldb_dap::Log&, lldb_dap::ReplMode, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>, bool, llvm::StringRef, lldb_private::transport::JSONTransport<lldb_dap::ProtocolDescriptor>&, lldb_private::MainLoopPosix&)::$_0>, void (lldb_dap::ProgressEvent&)>::operator()(lldb_dap::ProgressEvent&) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x100098788) 
[2026-02-13T17:46:13.577Z] #18 0x0000000102b8939c lldb_dap::ProgressEventManager::ReportIfNeeded() (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x1000a939c) 
[2026-02-13T17:46:13.577Z] #19 0x0000000102b8982c lldb_dap::ProgressEventReporter::ReportStartEvents() (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x1000a982c) 
[2026-02-13T17:46:13.577Z] #20 0x0000000102b8a038 void* std::__1::__thread_proxy[abi:nn200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, lldb_dap::ProgressEventReporter::ProgressEventReporter(std::__1::function<void (lldb_dap::ProgressEvent&)>)::$_0>>(void*) (/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/bin/lldb-dap+0x1000aa038) 
[2026-02-13T17:46:13.577Z] #21 0x000000018bbd1c08 (/usr/lib/system/libsystem_pthread.dylib+0x1804d9c08) [2026-02-13T17:46:13.577Z] #22 0x000000018bbccba8 (/usr/lib/system/libsystem_pthread.dylib+0x1804d4ba8)
```
rdar://170331108


  Commit: 3d8fffec7b660a6bbbc3c156400e49cb1a28ac3c
      https://github.com/llvm/llvm-project/commit/3d8fffec7b660a6bbbc3c156400e49cb1a28ac3c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libclc/CMakeLists.txt
    M libclc/clc/include/clc/math/math.h
    M libclc/clc/lib/amdgpu/math/clc_sqrt.cl
    R libclc/clc/lib/r600/SOURCES
    R libclc/clc/lib/r600/math/clc_fma.cl
    R libclc/clc/lib/r600/math/clc_fma.inc
    R libclc/clc/lib/r600/math/clc_native_rsqrt.cl
    R libclc/clc/lib/r600/math/clc_rsqrt.cl
    R libclc/clc/lib/r600/math/clc_sw_fma.cl
    R libclc/opencl/lib/r600/SOURCES
    R libclc/opencl/lib/r600/SOURCES_3.9
    R libclc/opencl/lib/r600/image/get_image_attributes_impl.ll
    R libclc/opencl/lib/r600/image/get_image_channel_data_type.cl
    R libclc/opencl/lib/r600/image/get_image_channel_order.cl
    R libclc/opencl/lib/r600/image/get_image_depth.cl
    R libclc/opencl/lib/r600/image/get_image_dim.cl
    R libclc/opencl/lib/r600/image/get_image_height.cl
    R libclc/opencl/lib/r600/image/get_image_width.cl
    R libclc/opencl/lib/r600/image/read_image_impl.ll
    R libclc/opencl/lib/r600/image/read_imagef.cl
    R libclc/opencl/lib/r600/image/read_imagei.cl
    R libclc/opencl/lib/r600/image/read_imageui.cl
    R libclc/opencl/lib/r600/image/write_image_impl.ll
    R libclc/opencl/lib/r600/image/write_imagef.cl
    R libclc/opencl/lib/r600/image/write_imagei.cl
    R libclc/opencl/lib/r600/image/write_imageui.cl
    R libclc/opencl/lib/r600/synchronization/barrier.cl
    R libclc/opencl/lib/r600/workitem/get_global_offset.cl
    R libclc/opencl/lib/r600/workitem/get_global_size.cl
    R libclc/opencl/lib/r600/workitem/get_group_id.cl
    R libclc/opencl/lib/r600/workitem/get_local_id.cl
    R libclc/opencl/lib/r600/workitem/get_local_size.cl
    R libclc/opencl/lib/r600/workitem/get_num_groups.cl
    R libclc/opencl/lib/r600/workitem/get_work_dim.cl
    M libclc/www/index.html

  Log Message:
  -----------
  libclc: Remove r600 support (#181976)


  Commit: 03393aa9030ff4f407736d8eba0d9f910965d4a6
      https://github.com/llvm/llvm-project/commit/03393aa9030ff4f407736d8eba0d9f910965d4a6
  Author: Anutosh Bhat <andersonbhat491 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Parse/ParseTentative.cpp
    M clang/test/Interpreter/disambiguate-decl-stmt.cpp

  Log Message:
  -----------
  REAPPLY [clang-repl] Ensure clang-repl accepts all C keywords supported in all language models (#181335)

https://github.com/llvm/llvm-project/pull/142749 was reverted because
`_Float16` is only supported on the following targets

(https://clang.llvm.org/docs/LanguageExtensions.html#half-precision-floating-point)
& the previous PR wasn't guarding it to expect a failure on some
targets.

Hence the CI failed with errors like 
```
/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/build/bin/clang -cc1 -internal-isystem /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/build/lib/clang/21/include -nostdsysteminc -fsyntax-only -verify -fincremental-extensions -std=c++20 /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/llvm-project/clang/test/Interpreter/disambiguate-decl-stmt.cpp # RUN: at line 1

/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/build/bin/clang -cc1 -internal-isystem /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/build/lib/clang/21/include -nostdsysteminc -fsyntax-only -verify -fincremental-extensions -std=c++20 /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/llvm-project/clang/test/Interpreter/disambiguate-decl-stmt.cpp
error: 'expected-error' diagnostics seen but not expected:
File /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-rhel-test/clang-ppc64le-rhel/llvm-project/clang/test/Interpreter/disambiguate-decl-stmt.cpp Line 113: _Float16 is not supported on this target
1 error generated.
```

This should now be fixed as we are expecting an error (or no error)
based on the target through the `expected-error 0-1` framework


  Commit: 3d369ccdf976de00885cc95f8c9ac5a44bc8f16e
      https://github.com/llvm/llvm-project/commit/3d369ccdf976de00885cc95f8c9ac5a44bc8f16e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/test/CodeGen/AArch64/aarch64-minmaxv.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll

  Log Message:
  -----------
  [AArch64] Prefer SVE2 for fixed-length i64 [S|U][MIN|MAX] reductions (#181161)

With SVE2/SME we can lower the v2i64 min/max reductions to an SVE2
pairwise instruction. The throughput is about the same, but the SVE code
is smaller than the NEON expansion.


  Commit: 051d125de4773951be5f2f51f245df94f7e29e2e
      https://github.com/llvm/llvm-project/commit/051d125de4773951be5f2f51f245df94f7e29e2e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC. (#181979)


  Commit: 9057af94d2a5f82997ad5f00eb8d2c688cd8163c
      https://github.com/llvm/llvm-project/commit/9057af94d2a5f82997ad5f00eb8d2c688cd8163c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [X86] Add additional test coverage for #147216 (#181980)


  Commit: 3d3ad01e47abe63c78bf7ed58bc60b8ec45c6e25
      https://github.com/llvm/llvm-project/commit/3d3ad01e47abe63c78bf7ed58bc60b8ec45c6e25
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/aarch64-mtune-apple-macos.c

  Log Message:
  -----------
  [Clang][AArch64] set default mtune for macOS (#179136)

This patch sets a default tune-cpu on macOS targets to `apple-m5`.

The implementation adds a helper in
`clang/lib/Driver/ToolChains/Arch/AArch64.h` called by
`clang/lib/Driver/ToolChains/Clang.cpp`. It doesnt follow a "check then
get" flow because its very concise, and returns an optional instead. It
adds a missing test file for mtune on Apple macOS targets, including the
new logic.


  Commit: 176928cc1371c23d499b474fa95e076b61f776c4
      https://github.com/llvm/llvm-project/commit/176928cc1371c23d499b474fa95e076b61f776c4
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/cmake/caches/VectorEngine.cmake
    M openmp/CMakeLists.txt
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/docs/ReleaseNotes.rst
    M openmp/runtime/CMakeLists.txt
    M openmp/runtime/src/CMakeLists.txt
    M openmp/runtime/test/CMakeLists.txt
    M openmp/runtime/test/lit.cfg
    M openmp/runtime/test/lit.site.cfg.in
    M openmp/runtime/unittests/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] Remove standalone build mode (#149878)

Remove all the CMake code for openmp standalone builds. Standalone
builds have been superseded by the runtimes default build (also
sometimes called the standalone runtimes build). The runtimes default
build can be thought of a standalone build with the standalone
boilerplate contained in <llvm-project>/runtimes/CMakeLists.txt. There
is no need for each runtime to contain the same boilerplate code again.

Builds still using the standalone build via
```sh
cmake -S <llvm-project>/openmp ...
```
can switch over to the runtimes default build using
```sh
cmake -S <llvm-project>/runtimes -DLLVM_ENABLE_RUNTIMES=openmp ...
```
Options that were valid for the standalone build are also valid for
default runtimes build, unless handled only in
`if (OPENMP_STANDALONE_BUILD)` regions.

The existence of both, standalone builds and runtime default builds,
easily leads to confusion such as fixed in #149871. A non-standalone
build does not mean that it is built as part of a bootstrapping-build of
LLVM inside the `runtimes/runtimes-bins` directory, nor does it mean
that the compiler is necessarily Clang. Some of the remaining code may
have been written with that assumption. However, the purpose of this
patch is to only remove the standalone build functionality.


  Commit: e6cff75362a9e28bf040788a87218570955bd8c6
      https://github.com/llvm/llvm-project/commit/e6cff75362a9e28bf040788a87218570955bd8c6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineMOVMSK - pull out repeated SDLoc (#181986)


  Commit: 6012aa1d4477b6d3aec8c022f4a2222834e6a0fc
      https://github.com/llvm/llvm-project/commit/6012aa1d4477b6d3aec8c022f4a2222834e6a0fc
  Author: Piotr Balcer <piotr.balcer at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp

  Log Message:
  -----------
  [AMDGPU] Fix opcode comparison logic for G_INTRINSIC (#156008)

The check `(Opc < TargetOpcode::GENERIC_OP_END)` incorrectly
includes `G_INTRINSIC` (129), which is less than
`GENERIC_OP_END` (313), leading to logically dead code.

This patch reorders the conditionals to first check for `G_INTRINSIC`,
ensuring
correct handling of the `amdgcn_fdot2` intrinsic.


  Commit: a13e04a694ba733d5d0d6de0b1e8840b99aaedac
      https://github.com/llvm/llvm-project/commit/a13e04a694ba733d5d0d6de0b1e8840b99aaedac
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopInterchange/interchangeable-innerloop-multiple-indvars.ll
    M llvm/test/Transforms/LoopInterchange/interchangeable-outerloop-multiple-indvars.ll
    M llvm/test/Transforms/LoopInterchange/interchangeable.ll
    M llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
    M llvm/test/Transforms/LoopInterchange/phi-ordering.ll
    M llvm/test/Transforms/LoopInterchange/pr43473-invalid-lcssa-phis-in-inner-exit.ll
    M llvm/test/Transforms/LoopInterchange/pr45743-move-from-inner-preheader.ll
    M llvm/test/Transforms/LoopInterchange/pr56275.ll
    M llvm/test/Transforms/LoopInterchange/pr57148.ll
    M llvm/test/Transforms/LoopInterchange/update-condbranch-duplicate-successors.ll

  Log Message:
  -----------
  [LoopInterchange] Update UTC version (NFC) (#181988)

This is a follow-up PR to #181804. While working on the stacked PRs, I
encountered some noisy diffs in the CHECK lines that don't change the
meaning of the tests. To avoid such changes and make the review easier,
this patch updates the UTC version. It also renames some BBs to suppress
warnings emitted by UTC.


  Commit: 10ccf11ebb79d43fd287e9de278413d5c5e85062
      https://github.com/llvm/llvm-project/commit/10ccf11ebb79d43fd287e9de278413d5c5e85062
  Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/TableGen/regunit-intervals.td
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [Tablegen] Patch RegUnitIntervals Initialization (#181173)

There were a few places it was missing some code-generation to properly
initialize it if enabled, and also it was missing the sentinel value.


  Commit: 45069829a321015539924cb6020fb60834fb9a1a
      https://github.com/llvm/llvm-project/commit/45069829a321015539924cb6020fb60834fb9a1a
  Author: Alex Wang <yesterda9 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-sdiv.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-udiv.mir
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div.ll
    M llvm/test/CodeGen/AArch64/funnel-shift.ll
    M llvm/test/CodeGen/AArch64/rem.ll

  Log Message:
  -----------
  [GlobalISel] Add G_UDIV/G_SDIV computeKnownBits (#181307)

Code ported from `SelectionDAG::computeKnownBits`.

Related: #150515


  Commit: 48002eb44c328093680e250faf15ef0ecd6bdaad
      https://github.com/llvm/llvm-project/commit/48002eb44c328093680e250faf15ef0ecd6bdaad
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/unittests/DAP/JSONUtilsTest.cpp

  Log Message:
  -----------
  [lldb-dap] Remove dead code. (#181947)

It seems we have dead from the raw json days.


  Commit: 17b4a72daa896311e78bba473dd6481600ab5ba5
      https://github.com/llvm/llvm-project/commit/17b4a72daa896311e78bba473dd6481600ab5ba5
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/tools/llvm-reduce/reduce-invoke.ll
    A llvm/test/tools/llvm-reduce/unconditional-br-phi.ll
    A llvm/test/tools/llvm-reduce/unconditional-br.ll
    M llvm/tools/llvm-reduce/DeltaPasses.def
    M llvm/tools/llvm-reduce/deltas/ReduceUsingSimplifyCFG.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceUsingSimplifyCFG.h

  Log Message:
  -----------
  [llvm-reduce] Add a pass to replace unconditional branches with returns (#180993)

Unconditional branches could end up in infinite loops in the reduced
code, while the code could have been reduce further.

This patch implements a simple pass that replaces unconditional branches
with returns.


  Commit: f8f799c640651947d09d5d06c3fd91caa25d64a3
      https://github.com/llvm/llvm-project/commit/f8f799c640651947d09d5d06c3fd91caa25d64a3
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    M llvm/test/CodeGen/RISCV/idiv_large.ll
    M llvm/test/CodeGen/RISCV/rvv/known-never-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [DAG] Fold  (X +/- Y) & Y --> ~X & Y when Y is a power of 2 (or zero). (#181677)

Same as InstCombinerImpl::visitAnd

To prevent RISCV falling back to a mul call in known-never-zero.ll I've
had to tweak the (sub X, (vscale * C)) to (add X, (vscale * -C)) fold to
not occur if C is power-of-2 and the target has poor mul support.

Alive2: https://alive2.llvm.org/ce/z/Khvs5H


  Commit: e1e0e86e60246332ea8b4a61625a329fb2712689
      https://github.com/llvm/llvm-project/commit/e1e0e86e60246332ea8b4a61625a329fb2712689
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/common/include/PluginInterface.h

  Log Message:
  -----------
  [Offload] Always check/consume Error (#182008)

This fixes an issue introduced in
https://github.com/llvm/llvm-project/pull/172226 where an llvm::Error is
not checked in the "good" code path.


  Commit: d154ec7bb02a7b6b84c4481a58495baf08542541
      https://github.com/llvm/llvm-project/commit/d154ec7bb02a7b6b84c4481a58495baf08542541
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll

  Log Message:
  -----------
  [VPlan] Use ExitingIVValue for pointer inductions as well. (#180925)

Use ExitingIVValue from https://github.com/llvm/llvm-project/pull/175651
also for pointer inductions.

PR: https://github.com/llvm/llvm-project/pull/180925


  Commit: 2dfa047916c7603d1d0c67500cbd2d6cc707e653
      https://github.com/llvm/llvm-project/commit/2dfa047916c7603d1d0c67500cbd2d6cc707e653
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.h

  Log Message:
  -----------
  [flang][OpenMP] Include check for fully unrolled loops into nest check, NFC (#181729)

It's naturally a part of the verification of constructs nested in loop
constructs, so perform that check there instead of having it in a
separate function.


  Commit: 9a5589900a14910f87fb25f07f88b6a77e4b9d09
      https://github.com/llvm/llvm-project/commit/9a5589900a14910f87fb25f07f88b6a77e4b9d09
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineSETCC - merge inner isScalarInteger() condition. NFC. (#182004)

All folds in the outer if() require this - inc combineVectorSizedSetCCEquality


  Commit: e07b9d15043271fb69177cdc5df9c504a21764ec
      https://github.com/llvm/llvm-project/commit/e07b9d15043271fb69177cdc5df9c504a21764ec
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/cmake/caches/VectorEngine.cmake
    M openmp/CMakeLists.txt
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/docs/ReleaseNotes.rst
    M openmp/runtime/CMakeLists.txt
    M openmp/runtime/src/CMakeLists.txt
    M openmp/runtime/test/CMakeLists.txt
    M openmp/runtime/test/lit.cfg
    M openmp/runtime/test/lit.site.cfg.in
    M openmp/runtime/unittests/CMakeLists.txt

  Log Message:
  -----------
  Revert "[OpenMP] Remove standalone build mode (#149878)"

Downstream builds are note sufficiently prepared.

This reverts commit 176928cc1371c23d499b474fa95e076b61f776c4.


  Commit: 06ef30150ea9c21c7294278551f62e08e69484f5
      https://github.com/llvm/llvm-project/commit/06ef30150ea9c21c7294278551f62e08e69484f5
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/test/Semantics/OpenMP/do10.f90

  Log Message:
  -----------
  [flang][OpenMP] Use LoopRange to implement loop var type checking, NFC (#181797)


  Commit: a7878d4b7f34ffa21b3cd30012317c88c929f209
      https://github.com/llvm/llvm-project/commit/a7878d4b7f34ffa21b3cd30012317c88c929f209
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/include/module.modulemap

  Log Message:
  -----------
  [modules] Fix warning: missing submodule 'LLVM_IR.FunctionProperties' (#181888)

When compiling LLVM with LLVM_ENABLE_MODULES=ON, I get the warning

```
warning: missing submodule 'LLVM_IR.FunctionProperties' [-Wincomplete-umbrella]
```

Fix is to add file `FunctionProperties.def` to the module map.


  Commit: b5139f9068b6a2d736573c1564aa859e2705bcfc
      https://github.com/llvm/llvm-project/commit/b5139f9068b6a2d736573c1564aa859e2705bcfc
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp

  Log Message:
  -----------
  [lldb][PlatformDarwin][NFC] Use early-return style in LocateExecutableScriptingResources (#182001)

I'm planning on adding more to this function. It'll be easier to
review/reason about if we un-nested the if-blocks (as the LLVM style
guide recommends).


  Commit: 9355a17e6033f369392aabcbe3b43ef1aa3862bb
      https://github.com/llvm/llvm-project/commit/9355a17e6033f369392aabcbe3b43ef1aa3862bb
  Author: David Green <david.green at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/fp16_intrinsic_scalar_1op.ll

  Log Message:
  -----------
  [AArch64] Clean up fp16_i16_intrinsic_scalar.ll a little. NFC


  Commit: 2dea3b4710c7e84a0ddd36ef4fc43ae0f43f75eb
      https://github.com/llvm/llvm-project/commit/2dea3b4710c7e84a0ddd36ef4fc43ae0f43f75eb
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp

  Log Message:
  -----------
  [lldb][PlatformDarwin][NFCI] Factor out dSYM script auto-loading into helper function (#182002)

Depends on:
* https://github.com/llvm/llvm-project/pull/182001

(only second commit is relevant for this review)

This patch factors out the logic to load dSYM scripting resources into a
helper function. In the process we eliminate some redundant copying of
`FileSpec` and pass it to the helper by `const-ref` instead
(specifically the `symfile_spec`).


  Commit: 8d2eb4eb89ecbe724d399d0644f4bc167c7a31bf
      https://github.com/llvm/llvm-project/commit/8d2eb4eb89ecbe724d399d0644f4bc167c7a31bf
  Author: David Green <david.green at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp

  Log Message:
  -----------
  [AArch64] Fix PRCVT -> FPRCVT typo. NFC


  Commit: 1cb86450d8fe6c4681e60d10ebbe436dc6fd61fc
      https://github.com/llvm/llvm-project/commit/1cb86450d8fe6c4681e60d10ebbe436dc6fd61fc
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanf16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor tanf16 to header only (#181523)

Part of https://github.com/llvm/llvm-project/issues/147386


  Commit: b5764293420281bd777bd8fb92ff36565ed5ddda
      https://github.com/llvm/llvm-project/commit/b5764293420281bd777bd8fb92ff36565ed5ddda
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanpif.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanpif.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanpif.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor tanpif to header only (#181525)

Part of https://github.com/llvm/llvm-project/issues/147386


  Commit: b92ab89ed6898b5eb24a0b5d9fb4787b2253c999
      https://github.com/llvm/llvm-project/commit/b92ab89ed6898b5eb24a0b5d9fb4787b2253c999
  Author: Atharv Mane <atharvamane19 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16add.h
    A libc/shared/math/f16addf.h
    A libc/shared/math/f16addf128.h
    A libc/shared/math/f16addl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16add.h
    A libc/src/__support/math/f16addf.h
    A libc/src/__support/math/f16addf128.h
    A libc/src/__support/math/f16addl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16add.cpp
    M libc/src/math/generic/f16addf.cpp
    M libc/src/math/generic/f16addf128.cpp
    M libc/src/math/generic/f16addl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor f16add Math Functions to Header Only (#181777)

Resolves #181630
Part of #147386


  Commit: 0c91bc6ae659e306bffed08652ee2f1091efcdb9
      https://github.com/llvm/llvm-project/commit/0c91bc6ae659e306bffed08652ee2f1091efcdb9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libclc/opencl/lib/amdgcn/workitem/get_local_size.cl
    M libclc/opencl/lib/amdgcn/workitem/get_num_groups.cl

  Log Message:
  -----------
  libclc: Stop using r600 asm intrinsic declarations for amdgcn (#181975)

Really the workitem functions should all be moved to generic code
and use gpuintrin.h. These implementations were copied from there.


  Commit: 79f8eba842c9bce7d85e702574f0bc02b2397af2
      https://github.com/llvm/llvm-project/commit/79f8eba842c9bce7d85e702574f0bc02b2397af2
  Author: Vachan <vachanvy05 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logbl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logbl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logbl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor `logbl` to header only (#181659)

Closes #175366


  Commit: 7ad2a632a32b0c6740dff20b117ca8bb52d9cfac
      https://github.com/llvm/llvm-project/commit/7ad2a632a32b0c6740dff20b117ca8bb52d9cfac
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16divl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16divl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16divl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor bf16divl to header-only (#181535)

Part of https://github.com/llvm/llvm-project/issues/147386

in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Closes #181025


  Commit: e826f32da67e1908577a6e853a21f770a764197d
      https://github.com/llvm/llvm-project/commit/e826f32da67e1908577a6e853a21f770a764197d
  Author: b068931 <80648544+b068931 at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cpp

  Log Message:
  -----------
  [ASan/sanitizers] Make stack unwinding better on Windows. (#180205)

I created an issue about this in #179976.

Clang's Address Sanitizer installs its own SEH filter which handles some
types of uncaught exceptions. Along with register values and some other
information, it also generates a stack trace. However, current logic is
incomplete. It relies on DbgHelp's SymFunctionTableAccess64 and
SymGetModuleBase64 which won't work with machine code that has its
RUNTIME_FUNCTION entry registered with Rtl* (e.g. RtlAddFunctionTable)
system calls. Most likely, this is because DbgHelp either relies on
information in PDB files or considers PDATA and XDATA only from loaded
EXE and DLL modules. Either way, consider the following example:

```
#include <windows.h>
#include <iostream>
#include <vector>

typedef union _UNWIND_CODE {
    struct {
        BYTE CodeOffset;
        BYTE UnwindOp : 4;
        BYTE OpInfo : 4;
    };
    USHORT FrameOffset;
} UNWIND_CODE, * PUNWIND_CODE;

typedef struct _UNWIND_INFO {
    BYTE Version : 3;
    BYTE Flags : 5;
    BYTE SizeOfProlog;
    BYTE CountOfCodes;
    BYTE FrameRegister : 4;
    BYTE FrameOffset : 4;
    UNWIND_CODE UnwindCode[1]; // Variable size
} UNWIND_INFO, * PUNWIND_INFO;

#define UWOP_PUSH_NONVOL      0
#define UWOP_ALLOC_LARGE      1
#define UWOP_ALLOC_SMALL      2
#define UWOP_SET_FPREG        3
#define UWOP_SAVE_NONVOL      4
#define UWOP_SAVE_NONVOL_FAR  5
#define UWOP_SAVE_XMM128      8
#define UWOP_SAVE_XMM128_FAR  9
#define UWOP_PUSH_MACHFRAME   10

int main() {
    // PUSH RBX         (0x53)                - Save non-volatile register
    // SUB RSP, 0x20    (0x48 0x83 0xEC 0x20) - Allocate 32 bytes (shadow space)
    // XOR RAX, RAX     (0x48 0x31 0xC0)      - Zero out RAX
    // MOV RAX, [RAX]   (0x48 0x8B 0x00)      - Dereference NULL
    
    std::vector<unsigned char> code = {
        0x53,
        0x48, 0x83, 0xEC, 0x20,
        0x48, 0x31, 0xC0,
        0x48, 0x8B, 0x00
    };

    size_t codeSize = code.size();
    size_t totalSize = 100;

    LPVOID pMemory = VirtualAlloc(NULL, totalSize, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
    
    BYTE* pCodeBase = (BYTE*)pMemory;
    PUNWIND_INFO pUnwindInfo = (PUNWIND_INFO)(pCodeBase + codeSize);    

    size_t alignmentPadding = 0;
    if ((size_t)pUnwindInfo % 4 != 0) {
        alignmentPadding = 4 - ((size_t)pUnwindInfo % 4);
        pUnwindInfo = (PUNWIND_INFO)((BYTE*)pUnwindInfo + alignmentPadding);
    }

    memcpy(pCodeBase, code.data(), codeSize);

    pUnwindInfo->Version = 1;
    pUnwindInfo->Flags = UNW_FLAG_NHANDLER;
    pUnwindInfo->Flags = 0; 
    pUnwindInfo->SizeOfProlog = 5; 
    pUnwindInfo->CountOfCodes = 2; 
    pUnwindInfo->FrameRegister = 0;
    pUnwindInfo->FrameOffset = 0;

    pUnwindInfo->UnwindCode[0].CodeOffset = 5;
    pUnwindInfo->UnwindCode[0].UnwindOp = UWOP_ALLOC_SMALL;
    pUnwindInfo->UnwindCode[0].OpInfo = 3; 

    pUnwindInfo->UnwindCode[1].CodeOffset = 1;
    pUnwindInfo->UnwindCode[1].UnwindOp = UWOP_PUSH_NONVOL;
    pUnwindInfo->UnwindCode[1].OpInfo = 3; // RBX

    RUNTIME_FUNCTION tableEntry = {};
    tableEntry.BeginAddress = 0;
    tableEntry.EndAddress = (DWORD)codeSize;
    tableEntry.UnwindData = (DWORD)((BYTE*)pUnwindInfo - (BYTE*)pMemory);

    DWORD64 baseAddress = (DWORD64)pMemory;
    RtlAddFunctionTable(&tableEntry, 1, baseAddress);

    typedef void(*FuncType)();
    FuncType myFunc = (FuncType)pMemory;
    myFunc();

    return 0;
}
```

Windows' kernel can propagate hardware exception through that function,
so clearly these entries are at least partially correct. Right now,
ASan's stack walking produces this (compiled with latest release,
clang++):

```
PS D:\Local Projects\cpp-playground> ./a.exe
=================================================================
==14216==ERROR: AddressSanitizer: access-violation on unknown address 0x000000000000 (pc 0x0199561c0008 bp 0x004cf0cffb30 sp 0x004cf0cff970 T0)
==14216==The signal is caused by a READ memory access.
==14216==Hint: address points to the zero page.
    #0 0x0199561c0007  (<unknown module>)
    #1 0x000000000000  (<unknown module>)
    #2 0x000000000000  (<unknown module>)

==14216==Register values:
rax = 0  rbx = 4cf0cffaa0  rcx = 7ffcb97b4e28  rdx = 19955dc0000
rdi = 11bf564a0040  rsi = 0  rbp = 4cf0cffb30  rsp = 4cf0cff970
r8  = 7ffffffffffffffc  r9  = 1  r10 = 0  r11 = 246
r12 = 0  r13 = 0  r14 = 0  r15 = 0
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: access-violation (<unknown module>)
==14216==ABORTING
```

Frames one and two is just some stack space allocated by that dynamic
function. While patched version produces this:

```
PS D:\Local Projects\cpp-playground> ./a.exe
=================================================================
==13660==ERROR: AddressSanitizer: access-violation on unknown address 0x000000000000 (pc 0x01ed5ad70008 bp 0x00d76492f650 sp 0x00d76492f490 T0)
==13660==The signal is caused by a READ memory access.
==13660==Hint: address points to the zero page.
    #0 0x01ed5ad70007  (<unknown module>)
    #1 0x7ff732e518a1 in main (D:\Local Projects\cpp-playground\a.exe+0x1400018a1)
    #2 0x7ff732e56a9b in invoke_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
    #3 0x7ff732e56a9b in __scrt_common_main_seh D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
    #4 0x7ffcb878e8d6  (C:\WINDOWS\System32\KERNEL32.DLL+0x18002e8d6)
    #5 0x7ffcb966c53b  (C:\WINDOWS\SYSTEM32\ntdll.dll+0x18008c53b)

==13660==Register values:
rax = 0  rbx = d76492f5c0  rcx = 7ffcb97b4e28  rdx = 1ed5a870000
rdi = 12135afa0040  rsi = 0  rbp = d76492f650  rsp = d76492f490
r8  = 7ffffffffffffffc  r9  = 1  r10 = 0  r11 = 246
r12 = 0  r13 = 0  r14 = 0  r15 = 0
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: access-violation (<unknown module>)
==13660==ABORTING
```

Now we see that stack walking handled our dynamic function properly.
Interestingly enough, it appears that other overloaded version of
UnwindSlow procedure that works without CONTEXT structure already has
some logic to handle this. Theoretically, symbolizer should also be able
to provide some information about these functions, but I don't think
that this is necessary.

I added SANITIZER_WINDOWS64 check because I am pretty sure Microsoft
only mentions these functions for 64 bit version of their OS. I also
can't check how this works on ARM.


  Commit: 693548d9f779b951a928ce8dfd61096cf1bb9bf0
      https://github.com/llvm/llvm-project/commit/693548d9f779b951a928ce8dfd61096cf1bb9bf0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [X86] LowerAndToBT - fold ICMP_ZERO(AND(X,AND(Y,SHL(1,Z)))) -> BT(AND(X,Y),Z) patterns (#182007)

Use m_ReassociatableAnd matcher to handle any permutation of a 3 op AND chain that involves a bit test

Fix 1 of 2 for #147216


  Commit: 4f3ae6ea0907baf7dbb70a33a88742d12909bdae
      https://github.com/llvm/llvm-project/commit/4f3ae6ea0907baf7dbb70a33a88742d12909bdae
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-enabled-checkers.c
    M clang/test/Analysis/builtin_bitcast.cpp
    M clang/test/Analysis/concrete-address.c
    M clang/test/Analysis/dtor.cpp
    M clang/test/Analysis/fixed-address-notes.c
    M clang/test/Analysis/misc-ps.m
    M clang/test/Analysis/pr22954.c
    M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
    M clang/test/Analysis/suppress-dereferences-from-any-address-space.c

  Log Message:
  -----------
  [analyzer][NFCI] Move the core.FixedAddressDereference checker to optin.core (#181858)

This was prompted by these upstream discussions:
https://github.com/llvm/llvm-project/pull/132404#issuecomment-3816874305

https://discourse.llvm.org/t/what-are-the-precise-semantics-of-the-address-space-attribute/89752/10?u=steakhal

This also relates to #181644

rdar://170554765


  Commit: 88872a7cf841ac6f864261d39987db8c6be254d7
      https://github.com/llvm/llvm-project/commit/88872a7cf841ac6f864261d39987db8c6be254d7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/docs/MIRLangRef.rst
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/test/CodeGen/MIR/X86/expected-integer-after-tied-def.mir
    R llvm/test/CodeGen/MIR/X86/expected-tied-def-after-lparen.mir
    A llvm/test/CodeGen/MIR/X86/invalid-tied-physical-reg-def.mir
    A llvm/test/CodeGen/MIR/X86/invalid-type-physical-reg.mir

  Log Message:
  -----------
  [CodeGen] Refactor register operand parsing in MI parser (#181748)

- Refactor register operand parsing to eliminate duplicated LLT parsing
code.
- Additionally, fix the register operand syntax in MI LangRef to match
what the parser supports.


  Commit: c5ae550344d5da2d2f44523829a9af979d8af6f4
      https://github.com/llvm/llvm-project/commit/c5ae550344d5da2d2f44523829a9af979d8af6f4
  Author: fabrizio-indirli <fabrizio.indirli at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/Utils/MemRefUtils.h
    M mlir/include/mlir/Dialect/SCF/Utils/Utils.h
    M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
    M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/SCF/Transforms/ParallelLoopFusion.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/test/Dialect/SCF/parallel-loop-fusion.mlir

  Log Message:
  -----------
  [mlir][scf] Refactor and improve ParallelLoopFusion (#179284)

Refactor and extend the scf::ParalleLoopFusion pass:
- Refactor code, rename functions and add comments to improve
readability
- Make the dependency analysis safer by checking for read-after-write
dependencies also with vector.load/store & vector.transfer_read/write
ops, in addition to memref.load/store, and bail out when other
unsupported ops with memory effects are found.
- Extend the cases when the fusion is applied: allow fusing also when
one of the two loops reads/writes to memory through a full view/alias of
the buffer (read/written by the dual operation in the other loop) that
can be trivially resolved, including rank-reducing full subviews.


  Commit: 824d2c9b06a350ba0f5be96ac7bac893164d0299
      https://github.com/llvm/llvm-project/commit/824d2c9b06a350ba0f5be96ac7bac893164d0299
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst

  Log Message:
  -----------
  [NFC] [clang-tidy] [doc] document gtest support of statusor check (#180662)


  Commit: 80e740412f243124bbda927be1e500411591fa05
      https://github.com/llvm/llvm-project/commit/80e740412f243124bbda927be1e500411591fa05
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/unittests/Target/X86/CMakeLists.txt
    A llvm/unittests/Target/X86/X86SelectionDAGTest.cpp
    M llvm/utils/gn/secondary/llvm/unittests/Target/X86/BUILD.gn

  Log Message:
  -----------
  [X86] computeKnownBitsForTargetNode - add X86ISD::FANDN coverage and X86SelectionDAGTest infrastructure (#181994)

Setup X86SelectionDAGTest unit tests (matching for AArch64/ARM/RISCV pattern) to allow us to more easily test X86ISD DAG nodes.

First test is for X86ISD::FANDN nodes, which are very tricky to test in regular tests as they so often fold beforehand


  Commit: 8362c0382936f0231d2c762f6e1e97957423b4cf
      https://github.com/llvm/llvm-project/commit/8362c0382936f0231d2c762f6e1e97957423b4cf
  Author: Davide Cunial <dcunial at proton.me>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-query/BUILD.bazel

  Log Message:
  -----------
  [bazel] Add cc_binary rule for 'clang-query' (#182014)


  Commit: 2a9ed57efdf736788f8a7aa829e5465d790c9c66
      https://github.com/llvm/llvm-project/commit/2a9ed57efdf736788f8a7aa829e5465d790c9c66
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M utils/bazel/BUILD.bazel

  Log Message:
  -----------
  [bazel] Add bzl_library for configure.bzl (#181582)


  Commit: a6b1abf205ed7aa0eab4cd0f01c1381b353b93d7
      https://github.com/llvm/llvm-project/commit/a6b1abf205ed7aa0eab4cd0f01c1381b353b93d7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp

  Log Message:
  -----------
  [lldb][PlatformDarwin][NFC] Rename LoadExecutableScriptingResourceFromDSYM

Renamed to `LocateExecutableScriptingResourcesFromDSYM` because it doesn't actually do any loading. Also the caller is called `LocateExecutableScriptingResources` and the new name makes the usage more clear.


  Commit: 88930e64c4ee70a266ee5f21fd0a360fa9d0f76b
      https://github.com/llvm/llvm-project/commit/88930e64c4ee70a266ee5f21fd0a360fa9d0f76b
  Author: Yi Zhang <cathyzhyi at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] fix for c5ae550 #179284 (#182050)

fix for c5ae550 #179284

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 537e09b70d17d89bfcabbcb67994e613c911bcee
      https://github.com/llvm/llvm-project/commit/537e09b70d17d89bfcabbcb67994e613c911bcee
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp

  Log Message:
  -----------
  [AMDGPU] Use const with MI in AMDGPULowerVGPREncoding::computeMode. NFC (#181900)


  Commit: 5fbbd41342e36ad5970d6ed60abff89df08fc2ba
      https://github.com/llvm/llvm-project/commit/5fbbd41342e36ad5970d6ed60abff89df08fc2ba
  Author: Richard Dzenis <richard at dzenis.dev>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/AST/Stmt.cpp
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp

  Log Message:
  -----------
  Reapply "[clang] Fix some static initialization race-conditions" (#182020)

This reverts d4b574266132e08ff585facf2e0e01995082999f,
and reapplies d7f32f1fbf83da2faa4acdcaf2a4d4885a2d068c.

Original commit message:
- clang/StaticAnalyzer: fix static init in findKnownClass. Prior to this
  patch two threads running in findKnownClass could result in a race
  condition.
- clang/Stmt: fix StmtClassNameTable array initialization: prior to this
  patch there was a race condition when two threads check
  `if(Initialized)` at the same time.
- clang/ParsedAttrInfo: fix race condition in
  getAttributePluginInstances. Prior to this patch two threads could
  enter `if(empty())` check.
- clang/CodeGen: correctly restore diagnostic handler in
  HandleTranslationUnit. Prior to this patch an early exit from
  HandleTranslationUnit could result in not restoring previous
  diagnostic handler.


  Commit: 142aa7b9b0a33067df4229ebfc1770fa17b5c15a
      https://github.com/llvm/llvm-project/commit/142aa7b9b0a33067df4229ebfc1770fa17b5c15a
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libsycl/src/detail/offload/offload_topology.cpp

  Log Message:
  -----------
  [libsycl] Fix build after olInit change (#182057)

After https://github.com/llvm/llvm-project/pull/181872 the function
takes an argument. Pass `nullptr` to have it do the same thing as
before.

This wasn't caught because the only builder that builds `libsycl` is not
in the production builder area at the moment.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 490f9938b1caca6a0dcecffc7d871a7a16011650
      https://github.com/llvm/llvm-project/commit/490f9938b1caca6a0dcecffc7d871a7a16011650
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/unittests/Target/X86/CMakeLists.txt

  Log Message:
  -----------
  [X86] Fix linker error after #181994 (#182053)


  Commit: b7c33ac6ab090667317e465215443ab5041429bd
      https://github.com/llvm/llvm-project/commit/b7c33ac6ab090667317e465215443ab5041429bd
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/CMakeLists.txt
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    A mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp

  Log Message:
  -----------
  [nfc][mlir][acc] Move some operations to new file (#182054)

Create a new file named OpenACCCG.cpp to hold implementation of
operations, attributes, and types related to OpenACC codegen (though
only operations exist at this time). These originate from
OpenACCCGOps.td.

These are codegen/intermediate ops used when decomposing and lowering
primary acc dialect ops; they do not map directly to OpenACC language
constructs. Moving them out of OpenACC.cpp keeps the main dialect file
focused and avoids it growing further.


  Commit: 8e37d72fb0c91171ffafe0b00225d4f56f394cf1
      https://github.com/llvm/llvm-project/commit/8e37d72fb0c91171ffafe0b00225d4f56f394cf1
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    R clang/test/Modules/demote-var-def.cpp
    R clang/test/Modules/pr149404-02.cppm
    R clang/test/Modules/pr172241.cppm
    R clang/test/Modules/var-inst-def.cppm

  Log Message:
  -----------
  Revert "[Serialization] Stop demote var definition as declaration (#172430)" (#181384)

Reverts llvm/llvm-project#177117

See #181076 for details of a miscompile caused by this.


  Commit: b3c82bafc75f0dfa8c2632868e13444787f0fce2
      https://github.com/llvm/llvm-project/commit/b3c82bafc75f0dfa8c2632868e13444787f0fce2
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Support/KnownBits.cpp

  Log Message:
  -----------
  [KnownBits] Remove unneccessary calls to std::optional<bool> constructor. NFC (#181959)

We can return a bool and let the compiler insert the constructor call.


  Commit: 879630aa0850a58452aa241f19c3f96e569545b6
      https://github.com/llvm/llvm-project/commit/879630aa0850a58452aa241f19c3f96e569545b6
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    A clang/test/Driver/Inputs/XRSimulator1.0.sdk/usr/include/libxml/.keep
    M clang/test/Driver/incompatible_sysroot.c

  Log Message:
  -----------
  [clang][driver] Don't emit an error on an unrecognized SDK name (#181897)

-isysroot can be an unrecognized value in unusual circumstances. Don't
emit an error when checking the triple against such an isysroot, let the
user try to do what they're trying to do.


  Commit: 6a365b004d8b1952315dfe39011f2abd39d64474
      https://github.com/llvm/llvm-project/commit/6a365b004d8b1952315dfe39011f2abd39d64474
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/test/API/lldbutil-tests/failed-to-hit-breakpoint/TestLLDBUtilFailedToHitBreakpoint.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_args.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_basic.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_debuggerRoot.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_object.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_disabled.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_enabled.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection_and_console.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_version.py

  Log Message:
  -----------
  [lldb-dap][windows] fix lldb-dap's self.get_stdout() method (#181813)

`DAPTestCaseBase.get_stdout()` was originally not supported on Windows
due to the lack of ConPTY support.
https://github.com/llvm/llvm-project/pull/168729 fixed that by
implenenting the ConPTY support. It was partly reverted in
https://github.com/llvm/llvm-project/pull/177610 due to hard to
reproduce test failures.

The tests are now fixed (see the 2 patches below) and removing the check
for `GetFlags().Test(lldb::eLaunchFlagLaunchInTTY);` is the last step to
re-enabling ConPTY support.

This patch requires:
- https://github.com/llvm/llvm-project/pull/181811
- https://github.com/llvm/llvm-project/pull/181809

Fixes https://github.com/llvm/llvm-project/issues/137599.

rdar://168932366


  Commit: 7c7a4f1cf55353a86bdf9b002139fbc8450650c3
      https://github.com/llvm/llvm-project/commit/7c7a4f1cf55353a86bdf9b002139fbc8450650c3
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/test/Lower/do-while-to-scf-while.f90

  Log Message:
  -----------
  [flang] fix do while lowering to SCF after unstructured context (#181996)

`maybeStartBlock(preheaderBlock);` should not be called when lowering a
DO WHILE in a structured fashion, it is meant to insert branches in
unstructured contexts lowering.

This had the side effect of inserting a back edge to the block
containing the scf for DO WHILE after a construct lowered in an
unstructured fashion because blocks may be unterminated after
unstructured lowering, and `maybeStartBlock` created a `cf.br` to its
argument when the current block is unterminated (and here, the argument
and current block where the same, creating an infinite loop).


  Commit: fb40f2be557fe0c539d4cee4d64b6135f020e898
      https://github.com/llvm/llvm-project/commit/fb40f2be557fe0c539d4cee4d64b6135f020e898
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td

  Log Message:
  -----------
  [RISCV] Use getNamedOperandIdx in the RVVConstraint checks. (#181936)

Instead of using heuristics to find the vd, vs1, vs2, and vm operands,
look them up by name.

In the course of doing this, I found a few issues that have been fixed
in separate PRs, #181887 and #181895

The constraint on SF_VQMACC_2x8x2 had to be updated from Vs2 to Vs1
because the heuristics were finding the wrong operand name before so
the constraint had been adjusted to compensate.

We still need a bit of a hack to find the destination operand SMLoc for
some XSfvcp instructions.


  Commit: 7be77495ca52acb380fca4e86f54f479a9bc8377
      https://github.com/llvm/llvm-project/commit/7be77495ca52acb380fca4e86f54f479a9bc8377
  Author: Artem Gindinson <gindinson at roofline.ai>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir

  Log Message:
  -----------
  [mlir][Math][SPIRV] fix `math.round` conversion for unit-dim vectors (#182067)

In SPIR-V, unit dimensional vectors, e.g. `vector<1xf32` are legalized
as scalars (vectors are 2, 3, 4, and possibly 8 and 16 dimensional).
This PR fixes the `math.round` conversion pattern to legalize these
vectors during conversion.

Co-authored-by: Ege Beysel <beysel at roofline.ai>

---------

Signed-off-by: Artem Gindinson <gindinson at roofline.ai>
Co-authored-by: Ege Beysel <beysel at roofline.ai>


  Commit: 0e31e6aff82ba1eeea2a423ee66b285bfdceb022
      https://github.com/llvm/llvm-project/commit/0e31e6aff82ba1eeea2a423ee66b285bfdceb022
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-structured-binding-size.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-trivally-copyable.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-types-compatible.c

  Log Message:
  -----------
  [CIR] Fix type handling with TypeTraitExpr (#181944)

There were some cases when compiling a C program where
VisitTypeTraitExpr would return a cir.bool value for a TypeTraitExpr
that required an integer. This was happening because we were checking
`e->isStoredAsBoolean` which returns a result that is inconsistent with
the expression type for C compilation units.

This change fixes the handling and also adds support for other
non-boolean type trait expressions.


  Commit: 5c8d24739935ba8c52476ebf15c3c14508689c62
      https://github.com/llvm/llvm-project/commit/5c8d24739935ba8c52476ebf15c3c14508689c62
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h

  Log Message:
  -----------
  [lldb] Add SubtargetFeatures to ArchSpec (#173046)

This patch introduces SubtargetFeatures in ArchSpec to enable consistent
handling of architecture-specific extensions in LLDB. For RISCV targets
in particular, it allows LLDB to propagate target extension features
from ELF attributes to expression evaluation and disassembly.


  Commit: 9a228288f93df83cffb1af47e9b990ec94e2f1f9
      https://github.com/llvm/llvm-project/commit/9a228288f93df83cffb1af47e9b990ec94e2f1f9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/utils/TableGen/CodeGenMapTable.cpp

  Log Message:
  -----------
  [TableGen] Assert that InstrMapping column values are valid (#182052)

For an InstrMapping table with multiple ValueCols, assert that the
column value passed into the generated map functions matches one of the
columns.

This functionality is only used a few times by a few in-tree targets and
they all seem fine with this change.


  Commit: 5a8266d7a80e3ac10069b3760e4b90c443a5fcb2
      https://github.com/llvm/llvm-project/commit/5a8266d7a80e3ac10069b3760e4b90c443a5fcb2
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/utils/TableGen/CodeGenMapTable.cpp

  Log Message:
  -----------
  [TableGen] Use INSTRUCTION_LIST_END as a sentinel in InstrMapping tables (#182059)

Use INSTRUCTION_LIST_END instead of (uint32_t)-1 to indicate absence of
an entry in an InstrMapping table. This is more verbose in the generated
table but it is the canonical invalid opcode value and it avoids
confusion with the case where the generated map function returns
(uint64_t)-1 if the initial table row lookup fails.


  Commit: 3603038c09a94f112a477a51a6eb4061bea674fd
      https://github.com/llvm/llvm-project/commit/3603038c09a94f112a477a51a6eb4061bea674fd
  Author: RolandF77 <froese at ca.ibm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [PowerPC] replace inline code with DMFInsert1024 (#175997)

Replace inline code for 1024 bit DMR insert with DMFInsert1024 method calls.


  Commit: 67ed355aa672e882f37c40d66c7c00cb457bef42
      https://github.com/llvm/llvm-project/commit/67ed355aa672e882f37c40d66c7c00cb457bef42
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Remove unnecessary RVVConstraint = NoConstraint from instantiation of VAESKF1_VI/VAESKF2_VI. NFC

This is handled by the base class now.


  Commit: 861a76378a20970df8db46b1e9ccfbd5ef16aead
      https://github.com/llvm/llvm-project/commit/861a76378a20970df8db46b1e9ccfbd5ef16aead
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/test/Lower/OpenACC/acc-reduction.f90

  Log Message:
  -----------
  [flang][acc] use new acc.reduction_combine under option (#182066)

Use the new acc.reduction_combine operation that was added in
https://github.com/llvm/llvm-project/pull/181853 when generating
reduction recipies.

To do this, the optional callback of genNoAliasArrayAssignment is
updated to work on addresses and being delegated the assignment part
too.

This change is guarded by two cl switch:
- openacc-use-reduction-combine: enable the change for
real/complex/integer reduction except min/max
- openacc-use-reduction-combine-all: enable the changed for all types
and operators.


  Commit: 32bbb1b13c52e591d421362ba5c8ca475543ba92
      https://github.com/llvm/llvm-project/commit/32bbb1b13c52e591d421362ba5c8ca475543ba92
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
    A lldb/test/API/riscv/disassembler/TestDisassembler.py
    A lldb/test/API/riscv/disassembler/a.out.yaml
    A lldb/test/API/riscv/disassembler/conflicting.out.yaml
    A lldb/test/API/riscv/disassembler/stripped.out.yaml

  Log Message:
  -----------
  [lldb][RISCV] update RISCV target features in disassembler (#173047)

This patch replaces the hardcoded RISCV feature flags in disassembler
with SubtargetFeatures provided by ArchSpec, which are derived from
the .riscv.attributes ELF section. This ensures the disassembler uses
exactly the RISCV extensions present in the executable, improving the
accuracy and reliability of the disassembly output.


  Commit: 4c225918a9e78463c9bf9cc0a26be5ae2ed1c827
      https://github.com/llvm/llvm-project/commit/4c225918a9e78463c9bf9cc0a26be5ae2ed1c827
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/posix/HostThreadPosix.h
    M lldb/source/Host/posix/HostThreadPosix.cpp

  Log Message:
  -----------
  [lldb] Unify thread detaching by making HostThreadPosix override Reset() (#179470)

Remove the Detach() method from HostThreadPosix and instead override the
virtual Reset() function from HostNativeThreadBase, following the
pattern already used by HostThreadWindows. This provides a consistent
interface for platform-specific thread cleanup on all platforms.

The HostThreadPosix::Reset() implementation first calls pthread_detach()
before delegating to the base implementation
HostNativeThreadBase::Reset(), similar to how HostThreadWindows calls
CloseHandle() in its Reset() override.

This is a preparatory changes for https://github.com/llvm/llvm-project/pull/177572,
which addresses memory leakage in lldb-server. By unifying the logic of
detaching, it would be possible to introduce the behavioral change in a more
straightforward manner.


  Commit: 3dd525ad88ab323f15cdfa801b3588f94c111831
      https://github.com/llvm/llvm-project/commit/3dd525ad88ab323f15cdfa801b3588f94c111831
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td

  Log Message:
  -----------
  [CIR][NFC] Remove synthetic attribute from TryOp (#181915)

Remove the synthetic attribute from TryOp, which will not be needed
anymore and will be replaced by CleanupScopeOp


  Commit: 3fafed392d9e7c5e2b65797c99391e7c552bbb85
      https://github.com/llvm/llvm-project/commit/3fafed392d9e7c5e2b65797c99391e7c552bbb85
  Author: Serosh <janmejayapanda400 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/bf16fmal.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/bf16fmal.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/bf16fmal.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] change bf16fmal to be header-only and constexpr-compat (#181666)

Closes: #181628 
Part of: #147386


  Commit: df1eec77b55603f9e63840dfdada03c6d4d5b5e6
      https://github.com/llvm/llvm-project/commit/df1eec77b55603f9e63840dfdada03c6d4d5b5e6
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/CodeGen/attr-no-outline.c
    M clang/test/CodeGenObjC/attr-no-outline.m
    M clang/test/Driver/aarch64-outliner.c
    M clang/test/Driver/arm-machine-outliner.c
    M clang/test/Driver/riscv-outliner.c
    M clang/test/Driver/x86-outliner.c

  Log Message:
  -----------
  [clang] Ensure -mno-outline adds attributes (#163692)

Before this change, `-mno-outline` and `-moutline` only controlled the
pass pipelines for the invoked compiler/linker.

The drawback of this implementation is that, when using LTO, only the
flag provided to the linker invocation is honoured (and any files which
individually use `-mno-outline` will have that flag ignored).

This change serialises the `-mno-outline` flag into each function's
IR/Bitcode, so that we can correctly disable outlining from functions in
files which disabled outlining, without affecting outlining choices for
functions from other files. This matches how other optimisation flags
are handled so the IR/Bitcode can be correctly merged during LTO.


  Commit: 829afc4c91fcac3823cdf06baf683fe3356a9e91
      https://github.com/llvm/llvm-project/commit/829afc4c91fcac3823cdf06baf683fe3356a9e91
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32-gfx10-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64-gfx10-err.cl
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w32.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w64.mir
    A llvm/test/MC/AMDGPU/gfx1170_asm_wmma_w32.s
    A llvm/test/MC/AMDGPU/gfx1170_asm_wmma_w64.s
    M llvm/test/MC/AMDGPU/literals.s
    A llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_wmma_w32.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx1170_dasm_wmma_w64.txt

  Log Message:
  -----------
  [AMDGPU] Add WMMA and SWMMAC instructions for gfx1170 (#180731)

Introduce two new subtarget features:

- WMMA256bInsts for GFX11 WMMA instructions and
- WMMA128bInsts for GFX1170 and GFX12 WMMA and SWMMAC instructions

Some WMMA instructions have changed from GFX 11.0 to GFX 11.7 so new
Real versions were added with "_gfx1170" suffix. For consistency all
WMMA and SWMMAC GFX11.7 instructions use this suffix.

To resolve decoding issues between different formats for some WMMA
instructions between GFX 11 and GFX 11.7, new decoding tables were
added.


  Commit: a51bc254bca4ead71e5b76d07db9197a2d601b8b
      https://github.com/llvm/llvm-project/commit/a51bc254bca4ead71e5b76d07db9197a2d601b8b
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    A mlir/test/Integration/Dialect/XeGPU/LANE/no-xegpu-ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add LANE level integration test without XeGPU ops. (#181891)

XeGPU LANE level integration test lacks a test without usage of any
XeGPU dialect ops.
Add an integration test without XeGPU dialect ops.


  Commit: 29c768ca1a0cf0b56bb3f842dc47af16537299d6
      https://github.com/llvm/llvm-project/commit/29c768ca1a0cf0b56bb3f842dc47af16537299d6
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/unittests/DAP/ProtocolRequestsTest.cpp

  Log Message:
  -----------
  [lldb-dap] Add hex format in setVariable request (#181968)

Added hex format support in `setVariable` request according to DAP
specification.


  Commit: ada69a1ddd0c764258794b97e0107fc70473f0fc
      https://github.com/llvm/llvm-project/commit/ada69a1ddd0c764258794b97e0107fc70473f0fc
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon/fullfp16.c
    M clang/test/CodeGen/AArch64/v8.2a-fp16-intrinsics.c

  Log Message:
  -----------
  [CIR][NEON] Add lowering for `vfmah_f16` and `vfmsh_f16` (#181148)

As with other NEON builtins, reuse the existing default-lowering
tests to validate the CIR lowering path.


  Commit: b9225e860769cc7c79bde294265e89eb22fb9ffc
      https://github.com/llvm/llvm-project/commit/b9225e860769cc7c79bde294265e89eb22fb9ffc
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbinline.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/test/API/commands/frame/var/TestFrameVar.py
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/process/launch/TestProcessLaunch.py
    M lldb/test/API/commands/settings/use_source_cache/TestUseSourceCache.py
    M lldb/test/API/commands/statistics/basic/TestStats.py
    M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
    M lldb/test/API/commands/target/dump-separate-debug-info/dwo/TestDumpDwo.py
    M lldb/test/API/commands/trace/TestTraceStartStop.py
    M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
    M lldb/test/API/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py
    M lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/string/TestDataFormatterStdString.py
    M lldb/test/API/functionalities/gdb_remote_client/TestPty.py
    M lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
    M lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
    M lldb/test/API/functionalities/module_cache/bsd/TestModuleCacheBSD.py
    M lldb/test/API/functionalities/module_cache/debug_index/TestDebugIndexCache.py
    M lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py
    M lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
    M lldb/test/API/functionalities/thread/step_until/TestStepUntilAPI.py
    M lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
    M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
    M lldb/test/API/lang/cpp/abi_tag_lookup/TestAbiTagLookup.py
    M lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
    M lldb/test/API/lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
    M lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
    M lldb/test/API/lang/cpp/gmodules/template-with-same-arg/TestTemplateWithSameArg.py
    M lldb/test/API/lang/cpp/namespace/TestNamespaceLookup.py
    M lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py
    M lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
    M lldb/test/API/lang/cpp/unique-types3/TestUniqueTypes3.py
    M lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
    M lldb/test/API/macosx/lc-note/firmware-corefile/TestFirmwareCorefiles.py
    M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
    M lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
    M lldb/test/API/python_api/debugger/TestDebuggerAPI.py
    M lldb/test/API/python_api/target-arch-from-module/TestTargetArchFromModule.py
    M lldb/test/API/python_api/unified_section_list/TestModuleUnifiedSectionList.py
    M lldb/test/API/source-manager/TestSourceManager.py
    M lldb/test/API/test_utils/base/TestBaseTest.py
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
    M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-server/TestGdbRemotePlatformFile.py
    M lldb/test/API/tools/lldb-server/commandline/TestGdbRemoteConnection.py
    M lldb/test/API/types/AbstractBase.py

  Log Message:
  -----------
  [lldb] Allow tests to share a single build (#181720)

This changes Python API tests to use a single build shared across all
test functions, instead of the previous default behavior of a separate
build dir for each test function.

This build behavior opt-out, tests can use the previous behavior of one
individual (unshared) build directory per test function, by setting
`SHARED_BUILD_TESTCASE` to False (in the test class).

The motivation is to make the test suite more efficient, by not
repeatedly building the same test source. When running tests on my macOS
machine, this reduces the time of `ninja check-lldb-api` by almost 60%
(sample numbers: from ~492s down to ~207s = 58%). Almost 5min time
saved.

Each test function still calls `self.build()`, but only the first call
will do a build, in the subsequent tests `make` will be a no-op because
the sources won't have changed.


  Commit: 89065b5fe70d651e64dab14a4949c8594f03e0e4
      https://github.com/llvm/llvm-project/commit/89065b5fe70d651e64dab14a4949c8594f03e0e4
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [NFC] Re-enable MSVC C4351 diagnostic (#182082)

>From MSDN:
https://learn.microsoft.com/en-us/previous-versions/1ywe7hcy(v=vs.140)

This diagnostic is no longer documented in MSDN and from my local
testing, the diagnostic is not emitted in our source. I believe we no
longer need to disable this diagnostic.


  Commit: 157f8200111ffd8b62829c7d6305b250041bfc8d
      https://github.com/llvm/llvm-project/commit/157f8200111ffd8b62829c7d6305b250041bfc8d
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/TidyProvider.cpp

  Log Message:
  -----------
  [clangd] Add abseil-unchecked-statusor-access to list of ignored checks (#181864)

This
[check](https://clang.llvm.org/extra/clang-tidy/checks/abseil/unchecked-statusor-access.html)
also depends on dataflow framework.


  Commit: ca21a65dd8c085e5a6a700f492f6a86d2e952590
      https://github.com/llvm/llvm-project/commit/ca21a65dd8c085e5a6a700f492f6a86d2e952590
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/test/CodeGenHLSL/matrix_types.hlsl
    M clang/test/CodeGenHLSL/resources/default_cbuffer_with_layout.hlsl

  Log Message:
  -----------
  [HLSL][Cbuffer][Matrix] Add Cbuffer padding and createBufferMatrixTempAddress (#181903)

fixes #181901

This change detects when a HLSL Cbuffer matrix’s layout differs from its
in-memory type and materializes a temporary with the non-padded matrix
type. Matrix elements are copied explicitly from the padded buffer
layout into the temporary, ensuring correct addressing and avoiding
overlapping GEPs or incorrect vector flattening.


  Commit: 7c0cbb1602099a266befeff48d1b26a9f33db11d
      https://github.com/llvm/llvm-project/commit/7c0cbb1602099a266befeff48d1b26a9f33db11d
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/resources/cbuffer_matrix_align.hlsl

  Log Message:
  -----------
  [HLSL] Define CBuffer field alignment for matrix types (#179836)

fixes https://github.com/llvm/llvm-project/issues/179834

Change defines Matrix alignment as buffer row length (16). Same as
arrays and structs.
Change also adds tests for matrix, matrix in structs, & arrays.


  Commit: 959590525251d10accda7ad25a5c3253b5d3e898
      https://github.com/llvm/llvm-project/commit/959590525251d10accda7ad25a5c3253b5d3e898
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h

  Log Message:
  -----------
  [clang][ssaf] Improve docs of SerializationFormatRegistry (#181847)


  Commit: cc0d7bf58090894d32f520cda3051466b4f2209e
      https://github.com/llvm/llvm-project/commit/cc0d7bf58090894d32f520cda3051466b4f2209e
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Fix Bazel build for 5c8d247 (#182092)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: ee3068bd18b23ceb30c0464395fa182cfa28a5fb
      https://github.com/llvm/llvm-project/commit/ee3068bd18b23ceb30c0464395fa182cfa28a5fb
  Author: Marcos Maronas <mmaronas at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    A llvm/test/Transforms/InstSimplify/ConstProp/vector-type-constant-folding.ll

  Log Message:
  -----------
  [ConstantFolding] Fix type mismatch in ConstantFolding for vector types. (#181695)

Drop `Bitcast` case from `IsConstantOffsetFromGlobal` to avoid
misdetections.


  Commit: 27144f4c2e40e6950a06b298c24ae8f4e26e2309
      https://github.com/llvm/llvm-project/commit/27144f4c2e40e6950a06b298c24ae8f4e26e2309
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AMDGPU/R600InstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp
    M llvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.h
    M llvm/utils/TableGen/CodeGenMapTable.cpp

  Log Message:
  -----------
  [TableGen] Return int32_t from InstrMapping table lookup functions. NFC. (#182079)

Since #182059 there is only one case in which these functions return -1,
so callers no longer need to distinguish between (int64_t)-1 and
(uint32_t)-1, so we can go back to a 32-bit return value like it was
before #180954.


  Commit: 15488a7f78ce7b9ae3c06b031134e5cb339b335c
      https://github.com/llvm/llvm-project/commit/15488a7f78ce7b9ae3c06b031134e5cb339b335c
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/emit-reproducer.c
    M clang/test/Driver/lit.local.cfg
    M clang/test/Driver/output-file-cleanup.c
    M clang/tools/driver/driver.cpp
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/llvm-driver-template.cpp.in
    M llvm/include/llvm/Support/CrashRecoveryContext.h
    M llvm/include/llvm/Support/InitLLVM.h
    M llvm/include/llvm/Support/Signals.h
    M llvm/lib/Support/CrashRecoveryContext.cpp
    M llvm/lib/Support/InitLLVM.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/Support/Windows/Signals.inc

  Log Message:
  -----------
  [LLVM][CLANG] Update signal-handling behavior to comply with POSIX (#169340)

The POSIX standard
[POSIX.1-2024](https://pubs.opengroup.org/onlinepubs/9799919799/utilities/V3_chap01.html#tag_18)
specifies how the utility reacts to signals as follows. This includes
clang when invoke through a invocation such as
[c17](https://pubs.opengroup.org/onlinepubs/9799919799/utilities/c17.html)
```
ASYNCHRONOUS EVENTS

    The ASYNCHRONOUS EVENTS section lists how the utility reacts to such events as signals and what signals are caught.

    Default Behavior: When this section is listed as "Default.", or it refers to "the standard action" for any signal, it means that the action taken as a result of the signal shall be as follows:

        If the action inherited from the invoking process, according to the rules of inheritance of signal actions defined in the System Interfaces volume of POSIX.1-2024, is for the signal to be ignored, the utility shall ignore the signal.
        If the action inherited from the invoking process, according to the rules of inheritance of signal actions defined in System Interfaces volume of POSIX.1-2024, is the default signal action, the result of the utility's execution shall be as if the default signal action had been taken.

    When the required action is for the signal to terminate the utility, the utility may catch the signal, perform some additional processing (such as deleting temporary files), restore the default signal action, and resignal itself.
```
This PR updates the LLVM/Clang’s behavior accordingly by not installing
a signal handler when the inherited disposition is `SIG_IGN`, and by
ensuring that the exit code reflects the terminating signal number,
resignaling after the signal is handled. Additionally, test cases have
been updated to expect failures due to signals/crashes rather than
regular errors.


[<signal.h>](https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/signal.h.html)
specifies the default action of signals.


  Commit: e58d3250aa0b2c29d06e75e352b52b85c0f62e85
      https://github.com/llvm/llvm-project/commit/e58d3250aa0b2c29d06e75e352b52b85c0f62e85
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/map/TestDataFormatterStdMap.py

  Log Message:
  -----------
  [lldb] Disable shared build dir for TestDataFormatterStdMap.py (#182096)

Follow up to #181720. This test failed on builder lldb-x86_64-debian.


  Commit: e612350b334a01854e4e86d344d3ba12ad6c209a
      https://github.com/llvm/llvm-project/commit/e612350b334a01854e4e86d344d3ba12ad6c209a
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py

  Log Message:
  -----------
  [lldb-dap][NFC] Modernize events handling in tests (#181542)

Migrated `initialized` and `memory` events to new style handling.


  Commit: 9b3470d56f9f81f3076dbd4afc6c415098ab7a87
      https://github.com/llvm/llvm-project/commit/9b3470d56f9f81f3076dbd4afc6c415098ab7a87
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/PowerPC/clmul-vector.ll

  Log Message:
  -----------
  [DAG] expandCLMUL - unroll vector clmul if vector multiplies are not supported (#182041)

Fixes powerpc cases reported on #182039

I'm hoping #177566 can be adapted to improve upon this.


  Commit: 76ddcdf1202fac52ba9b1c630289553055d2f480
      https://github.com/llvm/llvm-project/commit/76ddcdf1202fac52ba9b1c630289553055d2f480
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaInit.cpp
    A clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
    M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixSplatErrors.hlsl

  Log Message:
  -----------
  [Sema][HLSL][Matrix] Make matrices initializable by a single vector and vice-versa (#177486)

Fixes #169561

The problem was that the logic for determining whether or not to convert
constructor syntax into list initialization did not account for cases
where the constructor only had a single argument. Thus, the constructor
for a matrix with a single vector, or a vector with a single matrix did
not convert to list initialization despite being valid (in DXC).

This PR allows constructor syntax to be converted into list
initialization when the number of arguments in the constructor is 1, but
if and only if the destination type is a matrix/vector and the source
type is a vector/matrix.


  Commit: 790bef9d466c90f73aa3c8d7cd40b6e5272a7250
      https://github.com/llvm/llvm-project/commit/790bef9d466c90f73aa3c8d7cd40b6e5272a7250
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
    A llvm/test/MC/AMDGPU/gfx1170_unsupported.s

  Log Message:
  -----------
  [AMDGPU] Remove V_DOT2ACC_F32_F16 from gfx1170 (#182088)


  Commit: 9248d1959270f87d7dc823fc31b3c235010f54e0
      https://github.com/llvm/llvm-project/commit/9248d1959270f87d7dc823fc31b3c235010f54e0
  Author: Ayush Kumar Gaur <132849148+Ayush3941 at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir

  Log Message:
  -----------
  [mlir][LLVM] Fix verifier crash for llvm.blockaddress with missing function  (#181519)

### Whats the Problem 
Fix verifier crash in `llvm.blockaddress` when the referenced function
symbol is missing by guarding null before `dyn_cast`.
Adds regression test using `-verify-diagnostics` to ensure invalid IR
emits an error instead of aborting.

### Why it happened
`SymbolTable::lookupNearestSymbolFrom` may return null, and `dyn_cast`
on a non-existent value triggers an assertion in `mlir-opt`.

### Whats the Fix
Split symbol lookup returning early if lookup fails or symbol is not an
`LLVMFuncOp`.
Verifier now reports “expects an existing block label target” instead of
hitting `dyn_cast` assert.

Fixes #181451


  Commit: 188fb93581bb15c7ae41e2cb33dd6b0e0d58a50e
      https://github.com/llvm/llvm-project/commit/188fb93581bb15c7ae41e2cb33dd6b0e0d58a50e
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp

  Log Message:
  -----------
  [WebKit Checkers] Trivial analysis should check destructors of function parameters and local variables (#181576)

This PR fixes the bug in TrivialFunctionAnalysisVisitor that it wasn't
checking the triviality of destructors of function parameters and local
variables. This meant that code calls a non-trivial desturctors such as
RefPtr<T>::~RefPtr<T> which calls T::~T to be incorrectly treated as
trivial, resulting in false negatives.

To do this, we manually visit every function parameter and local
variable declaration and check the triviality of its destructor
recursively.

Also fix a bug that we were checking isVirtualAsWritten instead of
isVirtual in IsFunctionTrivial.

---------

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 5df3d91934b76297daae01de944dc70cdca6b001
      https://github.com/llvm/llvm-project/commit/5df3d91934b76297daae01de944dc70cdca6b001
  Author: Jan Voung <jvoung at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/RecordOps.cpp

  Log Message:
  -----------
  [clang][dataflow] Cache getModeledFields (#180878)

Cache getModeledFields at the DataflowAnalysisContext level, since
different contexts could have different ModeledFields for the same type,
and helps cap the memory usage by being scoped. This isn't the most
sharing we can get, but still effective (~70% hit rate). Otherwise, the
underlying getFieldsFromClassHierarchy is repeated many times and can
end up taking 4.6% of a run (geomean across some benchmarks), compared
to 40% for parsing, and 5.3% for querySolver for the same benchmarks. So
not insignificant since we also wonder if querySolver is expensive.

Also change the return type to a reference, now that it is not fresh Set
each time (though that copy is minor).


  Commit: 90e8deb1d5b439dd01ee7f55a9c1d8381f536a19
      https://github.com/llvm/llvm-project/commit/90e8deb1d5b439dd01ee7f55a9c1d8381f536a19
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp

  Log Message:
  -----------
  [MemProf] Optimize BitcodeReader stack id lookups (#182097)

Introduce StackIdToIndex to ModuleSummaryIndexBitcodeReader to cache the
mapping from module-local stack id indices to the global index in the
ModuleSummaryIndex's StackIds vector. This avoids repeated hash lookups
when processing callsite and allocation records.

This reduced the thin link time for a large target built with memprof
by ~16%.

Also add assertions to ensure STACK_IDS records are processed once and
that the cache is empty initially.


  Commit: 6ec5c1e368b576a662e4d38cb1da2c5e2b0e0067
      https://github.com/llvm/llvm-project/commit/6ec5c1e368b576a662e4d38cb1da2c5e2b0e0067
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp
    A mlir/test/Dialect/Vector/vector-multi-reduction-flattening.mlir
    M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
    M mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
    M mlir/test/python/dialects/transform_vector_ext.py

  Log Message:
  -----------
  [mlir][vector] Add multi_reduction_flattening (#181244)

* Adds tests for `populateVectorMultiReductionFlatteningPatterns`
* Add apply_patterns.vector.multi_reduction_flattening transform op.

This follows PR #180977. 

Assisted-by: claude


  Commit: 3b5ed869837b80d3c52821b779f27d074fde7eeb
      https://github.com/llvm/llvm-project/commit/3b5ed869837b80d3c52821b779f27d074fde7eeb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll

  Log Message:
  -----------
  AMDGPU: Libcall expand fast pow/powr/pown/rootn for float case (#180553)

This is to eliminate the special case global unsafe math options
in these functions from the library. The core operation only
uses about 4 instructions, and then there's an additional prolog
and/or epilog to fixup special cases.

I have an alternative patch which implements this by using separate
entrypoints in the library, and having the pass replace the calls
instead of this full handling. However, given the unfortunate state
of library development, it requires a full year to make cross project
changes. This is the most expedient path to deleting the control
library;
in the future we can do libcall emission when compiler has the real
ability to properly emit new calls.

This is mostly a direct port of these functions:

https://github.com/ROCm/llvm-project/blob/amd-staging/amd/device-libs/ocml/src/powF_base.h

I used copilot to do the heavy lifting on the drudgery of writing out
all the IRBuilder calls. It mostly worked, though it made mistakes in
porting != (used the ONE instead of UNE), plus some API usage errors.

The exact output isn't exactly the same. The ordering of some
instructions is different and some conditions and selects are inverted. 
This expansion also preserves the flags, so the finite only case optimizes 
better than with the library code (this is largely because fast math flags aren't
propagated yet, except for the few places SimplifyDemandedFPClass is called).

Alive2 verifies the library function with the special fast math path
functions have the same behavior as the result of this expansion. afn
only case: https://alive2.llvm.org/ce/z/uoPBC2

I did not bother trying to specially optimize the finite only cases
here. They get cleaned up by instcombine anyway, so doing so would only
be a hypothetical compile time improvement for a lot of additional complexity.
The exception would be existing, overlapped code in the pass. There's some 
overlap here with existing code in the pass. The afn+ninf+nnan case for powr
already does the rewrite to the 4 instruction core sequence, which takes precedence 
over this. In the future this should be merged, but it's more annoying now since the 
old path also handles it for the f64 case via libcall emission since the  intrinsic won't 
work.


  Commit: 15ad4d08776bcf1c71cc65ea8df54279774db96a
      https://github.com/llvm/llvm-project/commit/15ad4d08776bcf1c71cc65ea8df54279774db96a
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/simd.f90
    A flang/test/Semantics/OpenMP/implicit_linear_symbols.f90

  Log Message:
  -----------
  [flang][OpenMP]Fix versioning for implicit linear clause (#181791)

The versioning of the implicit linear clause was set at OpenMP 4.5.
However, versions v5.0 and v5.2 also allow implicit linearisation, which
was missed earlier. This PR fixes this.

OpenMP v5.0 (2.19.1.1) : "_The loop iteration variable in the associated
do-loop of a simd construct with just one associated do-loop is linear
with a linear-step that is the increment of the associated do-loop_."

OpenMP v5.2 (5.1.1) : "_The loop iteration variable in the associated
loop of a simd construct with just one associated loop is linear with a
linear-step that is the increment of the associated loop_"

OpenMP v6.0 (7.1.1) : "_The loop-iteration variable in any affected loop
of a loop or simd construct is lastprivate_."


Fixes: https://github.com/llvm/llvm-project/issues/179345


  Commit: 5155ef7462e921ef694d4fa4c4d61b3f932613f5
      https://github.com/llvm/llvm-project/commit/5155ef7462e921ef694d4fa4c4d61b3f932613f5
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/X86/BUILD.gn

  Log Message:
  -----------
  [gn build] Fix BUILD.gn formatting


  Commit: 4f0eb3d3af443ff54425ebafce83b87ee61ee403
      https://github.com/llvm/llvm-project/commit/4f0eb3d3af443ff54425ebafce83b87ee61ee403
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_arm64.h

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Fix broken debugging on aarch64 (#180222)

`struct pcb` for arm64 has changed In
https://github.com/freebsd/freebsd-src/commit/1c1f31a5e517ebb940c752c3468b03cdc687c5c7#diff-d07b4e228ca340857a90658e328d65f8dea9c5063e99197fbaaa046d97ae927c,
which broke kernel debugging on AArch64. Add support for FreeBSD 14 and
later by finding `osreldate`.

Until FreeBSD 13 (previous `struct pcb` contained information for all
registers):
```console
(lldb) register read
General Purpose Registers:
        x0 = 0x0000000000000000
        x1 = 0x0000000000000000
        x2 = 0x0000000000000000
        x3 = 0x0000000000000000
        x4 = 0x0000000000000000
        x5 = 0x0000000000000000
        x6 = 0x0000000000000000
        x7 = 0x0000000000000000
        x8 = 0x0000000000000000
        x9 = 0x0000000000000000
       x10 = 0x0000000000000000
       x11 = 0x0000000000000000
       x12 = 0x0000000000000000
       x13 = 0x0000000000000000
       x14 = 0x0000000000000000
       x15 = 0x0000000000000000
       x16 = 0x0000000000000000
       x17 = 0x0000000000000000
       x18 = 0x0000000000000000
       x19 = 0xffff000000b2e000  dumper_configs_mtx_sysuninit_sys_uninit + 16
       x20 = 0x0000000000000000
       x21 = 0xffff000000bce000  vop_spare1_desc + 24
       x22 = 0xffff000000c8a9b8  kernel`db_cmd_table
       x23 = 0xffff000000c8b000  kernel`db_lhistory + 1496
       x24 = 0x000000000000006c
       x25 = 0x0000000000000065
       x26 = 0x0000000000000068
       x27 = 0x0000000000000004
       x28 = 0xffff000000c8b4d1  kernel`db_tok_string + 1
        fp = 0xffff0002d751de60
        sp = 0xffff0002d751de60
        pc = 0xffff00000045ea78  kernel`dump_savectx + 20
2 registers were unavailable.
```

Since FreeBSD 14 (these are defined in the new `struct pcb`):
```console
(lldb) register read
General Purpose Registers:
       x19 = 0xffff000000d65000  M_PLIMIT + 48
       x20 = 0xffff000000e23000  sdta_vfs_vop_vop_inotify_add_watch_return2 + 8
       x21 = 0xffffa7ff822b98a8
       x22 = 0xffff000000e23000  sdta_vfs_vop_vop_inotify_add_watch_return2 + 8
       x23 = 0xffff000000e23000  sdta_vfs_vop_vop_inotify_add_watch_return2 + 8
       x24 = 0xffff000000e23000  sdta_vfs_vop_vop_inotify_add_watch_return2 + 8
       x25 = 0xffff000000dc4000  _mod_metadata_md_its_fdt_gic_on_kernel + 16
       x26 = 0x0000000000000000
       x27 = 0x00004b4ad79674cc
       x28 = 0x0000000000000004
        fp = 0xffff00028f6f8380
        lr = 0xffff000000519e98  kernel`doadump + 60 at kern_shutdown.c:399:2
        sp = 0xffff00028f6f8380
        pc = 0x0000000081144c80
20 registers were unavailable.
```

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 82a586d0095b2f2fe908c967864ce75c15d39381
      https://github.com/llvm/llvm-project/commit/82a586d0095b2f2fe908c967864ce75c15d39381
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll

  Log Message:
  -----------
  AMDGPU: Regenerate test checks for pow libcall simplify (#182127)

Merge was on stale output.


  Commit: cd710ef2fdeb62553ade18a431e50fd2b4807100
      https://github.com/llvm/llvm-project/commit/cd710ef2fdeb62553ade18a431e50fd2b4807100
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/driver.bzl

  Log Message:
  -----------
  [bazel][clang] Fix Bazel build after 15488a7f78ce (#182117)

Mimics the changes to cmake files added in 15488a7f78ce.


  Commit: e532a4fd9bdcdb82b77314e63aeb4423876cb692
      https://github.com/llvm/llvm-project/commit/e532a4fd9bdcdb82b77314e63aeb4423876cb692
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/test/API/riscv/disassembler/TestDisassembler.py

  Log Message:
  -----------
  [lldb][test] Mark TestDisassembler with @skipIfLLVMTargetMissing("RISCV") (#182126)


  Commit: dee675d1d6030564f4b9ab05f323586867afe5a0
      https://github.com/llvm/llvm-project/commit/dee675d1d6030564f4b9ab05f323586867afe5a0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll

  Log Message:
  -----------
  AMDGPU: Update another stale test

Missed in 82a586d0095b2f2fe908c967864ce75c15d39381


  Commit: b314fa95555c2ba17e944302a52bf60a9e84bf44
      https://github.com/llvm/llvm-project/commit/b314fa95555c2ba17e944302a52bf60a9e84bf44
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb] Disable shared build dir when testing with PDB (#182133)

Follow up to #181720.


  Commit: a6e8de74079c1b2fd1d65ea9d591844b94820187
      https://github.com/llvm/llvm-project/commit/a6e8de74079c1b2fd1d65ea9d591844b94820187
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [SLP][NFC] Fix `MainOp/AltOp` assertion to check the correct value (#182093)

Previously both assertions were checking MainOp.

Initial assertion added incorrectly in d41e517748e2d.


  Commit: cb87d346b4e10b8a2cb1b1e284cd2ea3233c5f0f
      https://github.com/llvm/llvm-project/commit/cb87d346b4e10b8a2cb1b1e284cd2ea3233c5f0f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [VPlan] Retrieve vector trip count from BranchOnCount (NFC).

In preparePlanForMainVectorLoop, the vector trip count may already be
materialized, e.g. when narrowing interleave groups. VPSymbolicValues
should not be accessed after materializing. Instead retrieve the trip
count directly from the branch-on-count. This is NFC at the moment, but
is needed to tighten VPSymbolicValue access verification.


  Commit: 3e82ccb0898da6c01be65a548e9eeafa907ccb5b
      https://github.com/llvm/llvm-project/commit/3e82ccb0898da6c01be65a548e9eeafa907ccb5b
  Author: Samrudh Nelli <samrudhnelli at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test

  Log Message:
  -----------
  [clang-doc] Replace HTML-CHECK commands with HTML-CHECK-NEXT commands (#181330)

fixes #170733


  Commit: f481bf103148a621640e77126d895155ce6dd2a6
      https://github.com/llvm/llvm-project/commit/f481bf103148a621640e77126d895155ce6dd2a6
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
    M mlir/lib/Target/LLVMIR/Dialect/XeVM/XeVMToLLVMIRTranslation.cpp
    M mlir/test/Conversion/XeVMToLLVM/xevm-to-llvm.mlir
    M mlir/test/Integration/Dialect/XeVM/GPU/xevm_block_load_store.mlir
    M mlir/test/Target/LLVMIR/xevm.mlir

  Log Message:
  -----------
  [MLIR][XeVM] Update cache control values and metadata format. (#175274)

Fix incorrect cache control metadata values and format.


  Commit: faff38c4215a177087936703f1556234d624f1fe
      https://github.com/llvm/llvm-project/commit/faff38c4215a177087936703f1556234d624f1fe
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Target/LLVM/CMakeLists.txt
    M mlir/lib/Target/LLVM/XeVM/Target.cpp

  Log Message:
  -----------
  [MLIR][XeVM] Update XeVM target (#179557)

XeVM target needs to enable several SPV_INTEL extensions.

- SPV_INTEL_cache_controls
- SPV_INTEL_variable_length_array
- SPV_EXT_relaxed_printf_string_address_space

Override `run()` method to customize target machine with extensions.


  Commit: f7497f784c9d2568c3573a48146650353933b16a
      https://github.com/llvm/llvm-project/commit/f7497f784c9d2568c3573a48146650353933b16a
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add truncf and dpas_mx ops (#180059)

Add truncf and dpas_mx ops to support low precision floating point mma compute.


  Commit: 34c28ba3d032fd3da0da2571af7ade004814a98f
      https://github.com/llvm/llvm-project/commit/34c28ba3d032fd3da0da2571af7ade004814a98f
  Author: adams381 <adams at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/builtins-elementwise.c
    M clang/test/CIR/CodeGen/libc.c
    A clang/test/CIR/CodeGen/pred-info-builtins.c
    A clang/test/CIR/CodeGenBuiltins/builtin-rotate.c
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp

  Log Message:
  -----------
  [CIR] Add non-floating-point builtin intrinsics (#178093)

## Summary

This PR adds support for non-floating-point builtin intrinsics as a
follow-up to #175233:

- Integer `abs`/`labs`/`llabs` with `cir.abs` operation
- `__builtin_unpredictable` handling  
- Integer elementwise abs support
- Tests: `builtin-rotate.c`, `pred-info-builtins.c`, updates to `libc.c`
and `builtins-elementwise.c`

## Dependency

**This PR depends on #175233 (FP math builtins) and should be merged
after it.**

The non-FP builtins were split from #175233 per reviewer feedback to
reduce PR size.

## Test plan

- [x] All CIR codegen tests pass
- [x] All CIR tests pass


  Commit: fdef40a6e521d740aad5ff512781963cf8a1675c
      https://github.com/llvm/llvm-project/commit/fdef40a6e521d740aad5ff512781963cf8a1675c
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/test/API/debuginfod/Normal/TestDebuginfod.py
    M lldb/test/API/tools/lldb-server/TestGdbRemoteForkNonStop.py

  Log Message:
  -----------
  [lldb] Disable shared builds in two more tests (#182138)

Follow up to https://github.com/llvm/llvm-project/pull/181720


  Commit: d9caa9481bbb73e2f1ca1364846832637b9b71e1
      https://github.com/llvm/llvm-project/commit/d9caa9481bbb73e2f1ca1364846832637b9b71e1
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [Clang][Docs] Add documentation for the address_space attribute (#181924)

Someone asked for docs on Discourse:

https://discourse.llvm.org/t/what-are-the-precise-semantics-of-the-address-space-attribute/89752

I was going to respond, and then I decided to respond in the form of a
PR, since I have a doc building environment set up.

I used an LLM, but I ended up rewriting most of the text.


  Commit: e980a01fa3cbdc507a1f0c91a507129330e44b2f
      https://github.com/llvm/llvm-project/commit/e980a01fa3cbdc507a1f0c91a507129330e44b2f
  Author: shubhamnarlawar <68635493+shubhamnarlawar at users.noreply.github.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/invalid.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Diagnose unsupported types in Linalg named op region builders (#181616)

Plumb emitError callbacks through Linalg named op region builders so
RegionBuilderHelper emits diagnostics instead of hitting
llvm_unreachable for unsupported operand element types (e.g. amx.tile).

Update linalg/invalid.mlir to add functions - linalg.batch_matmul(),
linalg.batch_reduce_matmul() and linalg.matmul() with amx.tile operands
to ensure mlir-opt fails gracefully without crash.


  Commit: 78ff5b55fd396ba80fdd3ea890192c0037c00d6d
      https://github.com/llvm/llvm-project/commit/78ff5b55fd396ba80fdd3ea890192c0037c00d6d
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M offload/test/api/assert.c
    M offload/test/api/omp_device_managed_memory.c
    M offload/test/api/omp_device_managed_memory_alloc.c
    M offload/test/api/omp_device_memory.c
    M offload/test/api/omp_device_uid.c
    M offload/test/api/omp_env_vars.c
    M offload/test/api/omp_get_device_num.c
    M offload/test/api/omp_get_num_devices.c
    M offload/test/api/omp_host_call.c
    M offload/test/api/omp_host_pinned_memory.c
    M offload/test/api/omp_host_pinned_memory_alloc.c
    M offload/test/api/ompx_3d.c
    M offload/test/api/ompx_3d.cpp
    M offload/test/api/ompx_sync.c
    M offload/test/api/ompx_sync.cpp
    M offload/test/env/omp_target_debug.c
    M offload/test/libc/malloc_parallel.c
    M offload/test/mapping/declare_mapper_target.cpp
    M offload/test/mapping/declare_mapper_target_data.cpp
    M offload/test/mapping/declare_mapper_target_data_enter_exit.cpp
    M offload/test/mapping/declare_mapper_target_update.cpp
    M offload/test/mapping/delete_inf_refcount.c
    M offload/test/mapping/firstprivate_aligned.cpp
    M offload/test/mapping/has_device_addr.cpp
    M offload/test/mapping/is_accessible.cpp
    M offload/test/mapping/is_device_ptr.cpp
    M offload/test/mapping/lambda_by_value.cpp
    M offload/test/mapping/ompx_hold/target.c
    M offload/test/mapping/prelock.cpp
    M offload/test/mapping/present/target.c
    M offload/test/mapping/present/target_array_extension.c
    M offload/test/mapping/present/unified_shared_memory.c
    M offload/test/mapping/present/zero_length_array_section.c
    M offload/test/mapping/private_mapping.c
    M offload/test/mapping/reduction_implicit_map.cpp
    M offload/test/mapping/target_implicit_partial_map.c
    M offload/test/mapping/use_device_addr/target_use_device_addr.c
    M offload/test/offloading/assert.cpp
    M offload/test/offloading/back2back_distribute.c
    M offload/test/offloading/bug49334.cpp
    M offload/test/offloading/bug51982.c
    M offload/test/offloading/bug64959.c
    M offload/test/offloading/bug64959_compile_only.c
    M offload/test/offloading/bug74582.c
    M offload/test/offloading/ctor_dtor_api.cpp
    M offload/test/offloading/ctor_dtor_lazy.cpp
    M offload/test/offloading/dynamic_module.c
    M offload/test/offloading/dynamic_module_load.c
    M offload/test/offloading/high_trip_count_block_limit.cpp
    M offload/test/offloading/looptripcnt.c
    M offload/test/offloading/malloc.c
    M offload/test/offloading/memory_manager.cpp
    M offload/test/offloading/multiple_reductions_simple.c
    M offload/test/offloading/offloading_success.c
    M offload/test/offloading/offloading_success.cpp
    M offload/test/offloading/ompx_bare.c
    M offload/test/offloading/ompx_coords.c
    M offload/test/offloading/ompx_saxpy_mixed.c
    M offload/test/offloading/parallel_offloading_map.cpp
    M offload/test/offloading/parallel_target_teams_reduction.cpp
    M offload/test/offloading/parallel_target_teams_reduction_max.cpp
    M offload/test/offloading/parallel_target_teams_reduction_min.cpp
    M offload/test/offloading/requires.c
    M offload/test/offloading/small_trip_count.c
    M offload/test/offloading/small_trip_count_thread_limit.cpp
    M offload/test/offloading/spmdization.c
    M offload/test/offloading/target-teams-atomic.c
    M offload/test/offloading/target_constexpr_mapping.cpp
    M offload/test/offloading/target_critical_region.cpp
    M offload/test/offloading/target_map_for_member_data.cpp
    M offload/test/offloading/task_in_reduction_target.c
    M offload/test/offloading/taskloop_offload_nowait.cpp
    M offload/test/offloading/wtime.c
    M offload/test/ompt/veccopy.c
    M offload/test/ompt/veccopy_data.c
    M offload/test/ompt/veccopy_disallow_both.c
    M offload/test/ompt/veccopy_emi.c
    M offload/test/ompt/veccopy_emi_map.c
    M offload/test/ompt/veccopy_map.c
    M offload/test/ompt/veccopy_no_device_init.c
    M offload/test/ompt/veccopy_wrong_return.c
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_host_ptr.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M offload/test/sanitizer/ptr_outside_alloc_1.c
    M offload/test/sanitizer/ptr_outside_alloc_2.c
    M offload/test/unified_shared_memory/close_manual.c

  Log Message:
  -----------
  [offload][lit] Enable/disable tests on Level Zero when using DeviceRTL (#182128)

Since we can now build the DeviceRTL with SPIR-V, redo the
`XFAIL/UNSUPPORTED` specifications for the tests we see passing/failing
on the Level Zero backend with the DeviceRTL being used.

The tests marked `UNSUPPORTED` hang or sporadically fail and those are
tracked in https://github.com/llvm/llvm-project/issues/182119.

This change will allow us to enable CI testing with the DeviceRTL.

Here are the full test results with this change applied, running only
the `spirv64-intel` `check-offload` tests:

```
Total Discovered Tests: 453
  Unsupported      : 206 (45.47%)
  Passed           : 141 (31.13%)
  Expectedly Failed: 106 (23.40%)
```

31% is not a bad start.

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: b453adff7ac47421751cf9ad598af420733b5fe2
      https://github.com/llvm/llvm-project/commit/b453adff7ac47421751cf9ad598af420733b5fe2
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Highlighter/TreeSitter/CMakeLists.txt
    M lldb/source/Plugins/Highlighter/TreeSitter/README.md
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/CMakeLists.txt
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/HighlightQuery.h.in
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/RustTreeSitterHighlighter.cpp
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/RustTreeSitterHighlighter.h
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/LICENSE
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/grammar.js
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/highlights.scm
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/scanner.c
    A lldb/source/Plugins/Highlighter/TreeSitter/Rust/tree-sitter-rust/tree-sitter.json
    M lldb/unittests/Highlighter/CMakeLists.txt
    M lldb/unittests/Highlighter/HighlighterTest.cpp

  Log Message:
  -----------
  [lldb] Add tree-sitter based Rust syntax highlighting (#181282)

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

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


  Commit: a7c25ba33c439e28cfde79cc1b61eb525c045df9
      https://github.com/llvm/llvm-project/commit/a7c25ba33c439e28cfde79cc1b61eb525c045df9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [SLP][NFC]Fix reorered -> reordered


  Commit: 11a13be40086319c1b6a824f6539ffed5aa2c524
      https://github.com/llvm/llvm-project/commit/11a13be40086319c1b6a824f6539ffed5aa2c524
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M mlir/lib/Target/LLVM/XeVM/Target.cpp

  Log Message:
  -----------
  [MLIR][XeVM] Fix build issue caused by PR179557. (#182156)


  Commit: 0ef0d6c8d7acce10edb1457485e33441d5cc23f5
      https://github.com/llvm/llvm-project/commit/0ef0d6c8d7acce10edb1457485e33441d5cc23f5
  Author: lntue <lntue at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M libc/test/src/math/exhaustive/bfloat16_add_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_div_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_mul_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_sub_test.cpp

  Log Message:
  -----------
  [libc][math] Update BFloat16 basic operation exhaustive tests to include mixed signs. (#182131)

https://github.com/llvm/llvm-project/issues/181121


  Commit: 7548ad01ab17a6892264032b19cf19be1d182bea
      https://github.com/llvm/llvm-project/commit/7548ad01ab17a6892264032b19cf19be1d182bea
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Basic/FileManager.cpp

  Log Message:
  -----------
  clang: normalise directory cache keys consistently in `FileManager` (#181306)

Extract the directory path normalisation logic into a shared
`normalizeCacheKey` helper and apply it in `addAncestorsAsVirtualDirs`
in addition to `getDirectoryRef`. This ensures that cache lookups and
insertions use a consistent key at all call sites.

Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>


  Commit: 24402c662b844dcf57b7961e6e7248b75d3ebb38
      https://github.com/llvm/llvm-project/commit/24402c662b844dcf57b7961e6e7248b75d3ebb38
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/test/SemaCXX/nested-name-spec.cpp

  Log Message:
  -----------
  [Clang] fix nested-name-specifier error recovery with ordinary lookup fallback results (#181828)

Fixes #181470

--- 

This patch addresses the regression caused by
f3dcec0ee73fee6a33fcfb422e04297e4d466de6. The assertion occurs when
nested-name-specifier error recovery tries to extend a nested name
specifier with a result found via ordinary lookup fallback


https://github.com/llvm/llvm-project/blob/75aa83c0c035a7a10f0f48355c93858f003b8e4e/clang/lib/Sema/SemaCXXScopeSpec.cpp#L725-L728

which can hit `getTypeDeclType` qualifier assertions


https://github.com/llvm/llvm-project/blob/75aa83c0c035a7a10f0f48355c93858f003b8e4e/clang/lib/Sema/SemaCXXScopeSpec.cpp#L420


https://github.com/llvm/llvm-project/blob/4f92cf9599c4077c08b7fac0a21624e55da572f9/clang/lib/AST/ASTContext.cpp#L5162-L5176


  Commit: ddffc04385c7e9d34757a24afa90492d287ead77
      https://github.com/llvm/llvm-project/commit/ddffc04385c7e9d34757a24afa90492d287ead77
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Passes.td
    A flang/include/flang/Optimizer/Support/LazySymbolTable.h
    A flang/lib/Optimizer/OpenACC/Transforms/ACCDeclareActionConversion.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    A flang/test/Fir/OpenACC/declare-action-conversion.fir

  Log Message:
  -----------
  [flang][acc] Add ACCDeclareActionConversion pass (#181894)

Implements the allocation and deallocation semantics for allocatables
and pointers in declare directives (OpenACC 3.4, Section 2.13.2). For a
non-shared memory device, allocate/deallocate must keep local and device
memory in sync.

Lowering generates recipe functions (with acc dialect ops to create the
device copy) and attaches an attribute to the operations that allocate
or deallocate the object. This pass finds those operations and inserts
calls to the corresponding recipe.

Example: for "!$acc declare create(arr)" and "allocate(arr(100))" in a
subroutine, the pass inserts a call to the post-alloc recipe after the
store so the device copy is created.

---------

Co-authored-by: Susan Tan <zujunt at nvidia.com>


  Commit: f1615ce8c8106e7adde4f76c967eafc7bfd90801
      https://github.com/llvm/llvm-project/commit/f1615ce8c8106e7adde4f76c967eafc7bfd90801
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td

  Log Message:
  -----------
  [RISCV] Rename $r1 operand of Xsfvcp pseudoinstructions to $rs1. NFC

This matches other vector instructions.


  Commit: aafe5e2f146ba06910ec482a3074864c909d08a5
      https://github.com/llvm/llvm-project/commit/aafe5e2f146ba06910ec482a3074864c909d08a5
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py

  Log Message:
  -----------
  [lldb] Disable shared build for TestAppleSimulatorOSType.py (#182167)

Follow up to #181720. Based on [this
failure](https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/as-lldb-cmake-os-verficiation/275/).


  Commit: 9235a7755b77e88e28567b6a57866c86c00f6d59
      https://github.com/llvm/llvm-project/commit/9235a7755b77e88e28567b6a57866c86c00f6d59
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Types.h
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [clang] Move InputTy and InputList out of the Driver class [NFC] (#182158)

This change moves InputTy and InputList outside of the Driver class to
allow wider usage.
InputTy and InputList are currently defined inside the Driver class,
which prevents other headers from using them without including Driver.h
(by foreward declaring).

This change is required for #152770 and is part of an effort to break
that PR into smaller pieces.


  Commit: c483bb118af666bf9cd5d642916a8f53a9be5be1
      https://github.com/llvm/llvm-project/commit/c483bb118af666bf9cd5d642916a8f53a9be5be1
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/test/Driver/darwin-sdk-vs-os-version.c

  Log Message:
  -----------
  [clang][darwin] macOS no longer infers a minimum deployment version from the OS version (#181958)

The recent createFromSDKInfo refactor lost the
getSystemOrSDKMacOSVersion version adjustment on macOS, causing -arch
builds to create binaries that can't run on the host that built them.

rdar://170007161


  Commit: a15d4e63b0bfd85989fa817a9764c421559b5e1e
      https://github.com/llvm/llvm-project/commit/a15d4e63b0bfd85989fa817a9764c421559b5e1e
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [clang] Make makeInputArg available in Driver.h [NFC] (#182163)

This moves makeInputArg from Driver.cpp to Driver.h so it can be used by
other components.

This change is part of an effort to split #152770 into smaller, more
manageable pieces.


  Commit: 14b213f4b1c36753018216217f5bc561dc5d1973
      https://github.com/llvm/llvm-project/commit/14b213f4b1c36753018216217f5bc561dc5d1973
  Author: Gauravsingh Sisodia <xaerru at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h

  Log Message:
  -----------
  [CIR][CodeGen] Use MapVector instead of StringMap for replacements (#181969)

When using llvm::StringMap transitive replacements may be out of order, so use llvm::MapVector which is also used in Clang's LLVM IR CodeGen.


  Commit: fbfe23e16d5e49c9decccc981a4716e7cf81d242
      https://github.com/llvm/llvm-project/commit/fbfe23e16d5e49c9decccc981a4716e7cf81d242
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/lib/Tooling/DependencyScanningTool.cpp

  Log Message:
  -----------
  [clang][DependencyScanning] Use OverlayFS naming consistently [NFC] (#172352)

Changes the naming of the OverlayFileSystem parameter for more consistent use in
`DependencyScanningTool.cpp`.

(This addresses the feedback in 
https://github.com/llvm/llvm-project/pull/169964#discussion_r2620074122)


  Commit: c6425aa9ae39624951f0cb26ccea72a706d0a37e
      https://github.com/llvm/llvm-project/commit/c6425aa9ae39624951f0cb26ccea72a706d0a37e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll

  Log Message:
  -----------
  [SLP]Support reduced or selects of bitmask as cmp bitcast

Converts reduced or(select %cmp, bitmask, 0) to zext(bitcast %vector_cmp to
i<num_reduced_values>) to in

Reviewers: RKSimon, hiraditya

Pull Request: https://github.com/llvm/llvm-project/pull/181940


  Commit: 6295b8e763503644961f9087382f80965b98d466
      https://github.com/llvm/llvm-project/commit/6295b8e763503644961f9087382f80965b98d466
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/cmake/caches/VectorEngine.cmake
    M openmp/CMakeLists.txt
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/docs/ReleaseNotes.rst
    M openmp/runtime/CMakeLists.txt
    M openmp/runtime/src/CMakeLists.txt
    M openmp/runtime/test/CMakeLists.txt
    M openmp/runtime/test/lit.cfg
    M openmp/runtime/test/lit.site.cfg.in
    M openmp/runtime/unittests/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] Remove standalone build mode (Reapply #149878) (#182022)

This reapplies #149878

Remove all the CMake code for openmp standalone builds. Standalone
builds have been superseded by the runtimes default build (also
sometimes called the standalone runtimes build). The runtimes default
build can be thought of a standalone build with the standalone
boilerplate contained in <llvm-project>/runtimes/CMakeLists.txt. There
is no need for each runtime to contain the same boilerplate code again.

Builds still using the standalone build via
```sh
cmake -S <llvm-project>/openmp ...
```
can switch over to the runtimes default build using
```sh
cmake -S <llvm-project>/runtimes -DLLVM_ENABLE_RUNTIMES=openmp ...
```
Options that were valid for the standalone build are also valid for
default runtimes build, unless handled only in `if
(OPENMP_STANDALONE_BUILD)` regions.

The existence of both, standalone builds and runtime default builds,
easily leads to confusion such as fixed in #149871. A non-standalone
build does not mean that it is built as part of a bootstrapping-build of
LLVM inside the `runtimes/runtimes-bins` directory, nor does it mean
that the compiler is necessarily Clang. Some of the remaining code may
have been written with that assumption. However, the purpose of this
patch is to only remove the standalone build functionality.


  Commit: 27eca71d838344446819f85e02e2e595006c7b35
      https://github.com/llvm/llvm-project/commit/27eca71d838344446819f85e02e2e595006c7b35
  Author: David Green <david.green at arm.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll

  Log Message:
  -----------
  [AArch64] Add extra scmp/ucmp costmodel test. NFC


  Commit: e022ea2ceda84d314ddd896a4ecaa4fafeac743b
      https://github.com/llvm/llvm-project/commit/e022ea2ceda84d314ddd896a4ecaa4fafeac743b
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [SDPatternMatch] Support conditionally binding the value matching a sub-pattern (#182091)

I've seen more and more occurrences of what is essentially
```
m_AllOf(<sub pattern>, m_Value(BindVal))
```
That is, bind to the same SDValue that matches the sub-pattern. Most
people won't even bother write this `m_AllOf` construct because it's too
long, and instead just write another `sd_match` against the bound value.

This patch adds
```
m_Value(BindVal, <sub pattern>)
```
To replace the `m_AllOf` construct above and conditionally bind the
SDValue that matches the sub-pattern.

---------

Co-authored-by: Stefan Weigl-Bosker <stefan at s00.xyz>


  Commit: 87419b5e6532a22b37d0d59e5c49f4add14c867b
      https://github.com/llvm/llvm-project/commit/87419b5e6532a22b37d0d59e5c49f4add14c867b
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/lib/Serialization/ASTReader.cpp
    M clang/test/Modules/validate-file-content.m
    M clang/test/PCH/include-timestamp.cpp
    M clang/test/PCH/validate-file-content.m
    M clang/test/PCH/verify_pch.m

  Log Message:
  -----------
  [modules] Move diagnostic about specific mtime/size change into a note from an error. (#181963)

So far higher visibility is more confusing than actionable. Keep the
information available but make it less prominent.

rdar://159857416


  Commit: bfa6ded81afc2e532b8e9a46e1927acf3ae484a9
      https://github.com/llvm/llvm-project/commit/bfa6ded81afc2e532b8e9a46e1927acf3ae484a9
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf

  Log Message:
  -----------
  [flang][cuda] Do managed array initialization on the device (#182171)


  Commit: 7772a45b1a25896853ad67ee9c58844e3d4d6ef4
      https://github.com/llvm/llvm-project/commit/7772a45b1a25896853ad67ee9c58844e3d4d6ef4
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/stream.cpp
    M flang/include/flang/Optimizer/Builder/CUDAIntrinsicCall.h
    M flang/include/flang/Runtime/CUDA/stream.h
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/module/cuda_runtime_api.f90
    M flang/test/Lower/CUDA/cuda-default-stream.cuf

  Log Message:
  -----------
  [flang][cuda] Add entry points for cudastreamsynchronize (#181932)


  Commit: e246d1615ea037f2dd92527ea1669b070c8e0993
      https://github.com/llvm/llvm-project/commit/e246d1615ea037f2dd92527ea1669b070c8e0993
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/test/CodeGen/RISCV/pr153598.mir
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv32.mir
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv64.mir
    M llvm/test/CodeGen/RISCV/rvv/stack-probing-dynamic.ll
    M llvm/test/CodeGen/RISCV/rvv/wrong-stack-offset-for-rvv-object.mir
    M llvm/test/CodeGen/RISCV/xqccmp-cm-popretz.mir
    M llvm/test/CodeGen/RISCV/xqccmp-cm-push-pop.mir
    M llvm/test/CodeGen/RISCV/zcmp-cm-popretz.mir
    M llvm/test/CodeGen/RISCV/zcmp-cm-push-pop.mir

  Log Message:
  -----------
  [RISCV] Force a frame pointer when the max reserved call frame exceeds simm12. (#182124)

We need to be able to address emergency spill slots without requiring a
register scavenging. This requires the emergency spill slot to be near
the SP or the FP to keep the offset small enough. If there is a large
reserved call frame, we can't keep the emergency spill slot near SP. But
we might not have a frame pointer.

This patch forces the use of a frame pointer when the max reserved call
frame is large so we can keep the emergency spill slot near it. This
idea is borrowed from AArch64.

Multiple MIR tests had to be updated to set the max call frame size as
the reserved registers are frozen before mirFileLoaded is called. I
copied mirFileLoaded from AArch64, but it appears the register freezing
moved after the AArch64 code was written.

Fixes #180199.


  Commit: f9e002158c714362b4d87ceb27612825603d90b2
      https://github.com/llvm/llvm-project/commit/f9e002158c714362b4d87ceb27612825603d90b2
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Use getNamedOperandIdx in getFRMOpNum/getVXRMOpNum. NFC (#182181)

Rather than relying on complex rules about the order of operands.


  Commit: 3459bb4f279fa40f463cbfe19cf133a578359a99
      https://github.com/llvm/llvm-project/commit/3459bb4f279fa40f463cbfe19cf133a578359a99
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/include/llvm/TableGen/CodeGenHelpers.h
    M llvm/include/llvm/Target/Target.td
    A llvm/test/TableGen/Common/RegisterByHwModeCommon.td
    M llvm/test/TableGen/RegClassByHwModeAlias.td
    M llvm/test/TableGen/RegClassByHwModeCompressPat.td
    M llvm/test/TableGen/RegClassByHwModeErrors.td
    A llvm/test/TableGen/RegisterByHwMode.td
    A llvm/test/TableGen/RegisterByHwModeErrors.td
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/AsmWriterEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/InfoByHwMode.cpp
    M llvm/utils/TableGen/Common/InfoByHwMode.h
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [TableGen] Introduce RegisterByHwMode

This is useful for `InstAlias` where a fixed register may depend on the
HwMode. The motivating use case for this is the RISC-V RVY ISA where
certain instructions mnemonics are remapped to take a different
register class depending on the HwMode and can be used as follows:
```
def NullReg : RegisterByHwMode<PtrRC, [RV32I, RV64I, RV64Y, RV64Y],
                                      [X0,    X0,    X0_Y,  X0_Y]>;
```

Pull Request: https://github.com/llvm/llvm-project/pull/175227


  Commit: 2a48aab50254d0ecf1156580276a88505c7bdc40
      https://github.com/llvm/llvm-project/commit/2a48aab50254d0ecf1156580276a88505c7bdc40
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Enable -ffp-contract=fast-honor-pragmas globally (#153137)

Enable -ffp-contract=fast-honor-pragmas globally improves performance.
Verified that exp, trig, and hyperbolic functions pass the OpenCL CTS on
Intel GPUs with this flag enabled.
Note: exp/exp2 still require the fixes proposed in #179875; however,
those failures are independent of the fp-contract changes in this patch.


  Commit: f17e859a8ad9d55e411937367cbe55670d78be96
      https://github.com/llvm/llvm-project/commit/f17e859a8ad9d55e411937367cbe55670d78be96
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Rename PALUVINoVm->ZvkALUVINoVm. NFC (#182077)

OP_VE was originally named OP_P which is how these classes got P in
their name. Replace P with Zvk.


  Commit: c7c95c29f3cad869dd7da397aeef016ad4a750ed
      https://github.com/llvm/llvm-project/commit/c7c95c29f3cad869dd7da397aeef016ad4a750ed
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/include/clang/Serialization/ModuleFile.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/test/Modules/module-file-modified.c
    M clang/test/Modules/validate-file-content.m
    M clang/test/PCH/modified-module-dependency.m
    M clang/test/PCH/validate-file-content.m

  Log Message:
  -----------
  [modules] Add diagnostic about performed input file validation when encounter unrecoverable changed input file. (#180899)

The expected behavior for implicitly built modules is to validate input
files and to rebuild a module if there are any input file changes. But
if for some reason a module hasn't been rebuilt, it is useful to know if
the validation has been done and what kind of validation.

The goal is to make investigations for fixes like
f2a3079a1b48033a92d0a7d9f03251ebeb4a0c30 and
ada79f4c2691ab6546d379a144377162fd4f5191 easier.

rdar://159857416

---------

Co-authored-by: Cyndy Ishida <cyndyishida at gmail.com>


  Commit: dd4f88f5dd70e773b6cd5743b16d1fe10f924c24
      https://github.com/llvm/llvm-project/commit/dd4f88f5dd70e773b6cd5743b16d1fe10f924c24
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Sort profcheck-xfail.txt

To make it more clear in diffs updating sets of tests.


  Commit: 3ca538457a3f9a085babd5e1d7cb407ff1cdbf7c
      https://github.com/llvm/llvm-project/commit/3ca538457a3f9a085babd5e1d7cb407ff1cdbf7c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Remove now passing tests

There were quite a few tests in the profcheck-xfail.txt list that now
pass, likely due to other fixes coincidentally helping or someone
forgetting to update the list. Remove them from the list to ensure we
have test coverage.


  Commit: febe6052d013634385a8ba3c4d93e8c12ca742dc
      https://github.com/llvm/llvm-project/commit/febe6052d013634385a8ba3c4d93e8c12ca742dc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Consistently name AVL operands as $vl. NFC (#182174)

Looking into using getNamedOperandIndex so we need to be consistent.

To avoid a conflict, I renamed the $vl output of vleff pseudos to
$vl_out. Arguably the AVL inputs should be $avl, but that requires more
changes and may interact with out of tree vendor specific instructions.


  Commit: a0df62be84d8e0d1fbd6c3f831e985d025a80d33
      https://github.com/llvm/llvm-project/commit/a0df62be84d8e0d1fbd6c3f831e985d025a80d33
  Author: cmtice <cmtice at google.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-server/TestGdbRemoteCompletion.py

  Log Message:
  -----------
  [lldb] Disable shared build for TestGdbRemoteCompletion.py (#182196)

Follow up to #181720. Based on [this
failure](https://lab.llvm.org/buildbot/#/builders/162/builds/41328)


  Commit: a0e90614b76396a3f61c9dfb4e23679b6b820914
      https://github.com/llvm/llvm-project/commit/a0e90614b76396a3f61c9dfb4e23679b6b820914
  Author: Alexis Perry-Holby <aperry at lanl.gov>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M flang/docs/GettingInvolved.md
    A flang/docs/MeetingNotes/2025/2025-12-03.md
    A flang/docs/MeetingNotes/2025/2025-12-17.md
    A flang/docs/MeetingNotes/2026/2026-01-14.md
    A flang/docs/MeetingNotes/2026/2026-01-21.md
    A flang/docs/MeetingNotes/2026/2026-01-28.md
    A flang/docs/MeetingNotes/2026/2026-02-11.md
    A flang/docs/MeetingNotes/README.md
    M flang/docs/conf.py

  Log Message:
  -----------
  [flang] Add Flang Call Notes documents (#180287)

This PR is the result of discussion in
https://discourse.llvm.org/t/rfc-what-to-do-regarding-the-flang-call-notes-document/89450.
The intent with this PR is to move away from the former Google Doc in
favor of keeping the call notes in the primary repository. This PR has
the boilerplate and the notes from the last few meetings. In future,
notes from previous calls could be added in as well, once recovered from
the corrupted document.

The intended flow going forward would be for the call organizer to draft
the meeting's agenda in the working Google Doc referenced in
MeetingNotes/README.md, post it on Slack the day before the meeting,
take notes in the document during the call, then translate those notes
into a new notes document in the correct folder after the call is
completed and create a PR.


  Commit: d15c6ee28837881222f9ccde064b7d566d07a3b2
      https://github.com/llvm/llvm-project/commit/d15c6ee28837881222f9ccde064b7d566d07a3b2
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir

  Log Message:
  -----------
  [AMDGPU] Commute instructions to avoid VGPR MSB changes (#181918)


  Commit: 7c445dbf7fa1024469e74c5b3ecd72ee632fba23
      https://github.com/llvm/llvm-project/commit/7c445dbf7fa1024469e74c5b3ecd72ee632fba23
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M clang/include/clang/Frontend/ASTUnit.h

  Log Message:
  -----------
  [NFC][Clang] Apply Rule of Three to classes in ASTUnit.h (#182198)

Static analysis flagged that some classes in ASTUnit.h defined a
destructor but did not also define a copy constructor or copy
assignment. This is a bug and I am defining them as deleted to prevent
accidently copy or assigns.


  Commit: 3e3713c2f589c474c24d09ebdc310cacf08b2f40
      https://github.com/llvm/llvm-project/commit/3e3713c2f589c474c24d09ebdc310cacf08b2f40
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-02-18 (Wed, 18 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ctlz-zero-undef.mir
    M llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-bitcounts.mir
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp

  Log Message:
  -----------
  [GlobalIsel] Use aext in ctlz_zero_undef widenScalar expansion (#181506)

Use `G_ANYEXT` instead of `G_ZEXT` when widening the source of
`G_CTLZ_ZERO_UNDEF`. The extended upper bits are immediately shifted out
by the subsequent left-shift, so zero-extending is unnecessarily
constraining.

Before:
```
    %wide = G_ZEXT %src
    %shifted = G_SHL %wide, sizeDiff
    %result = G_CTLZ_ZERO_UNDEF %shifted
```
After:
```
    %wide = G_ANYEXT %src
    %shifted = G_SHL %wide, sizeDiff
    %result = G_CTLZ_ZERO_UNDEF %shifted
```


  Commit: fafedcd44eabacb7ecc10445b5b8058569985022
      https://github.com/llvm/llvm-project/commit/fafedcd44eabacb7ecc10445b5b8058569985022
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp

  Log Message:
  -----------
  [AMDGPU][GlobalISel][NFC] Filter getCandidatesForLowering to only process G_PHI (#181814)

The divergence-lowering pass runs in three stages:
1. lowerTemporalDivergence()
2. lowerTemporalDivergenceI1() — creates PHI instructions via SSAUpdater
3. lowerPhis() — lowers divergent i1 G_PHIs into lane mask PHIs

getCandidatesForLowering() in stage 3 iterates over all PHIs via
MBB.phis() and checks isDivergent() on their destination registers. This
includes PHI instructions already created by stage 2, whose registers
were never part of the original uniformity analysis.

Today, this works by accident — isDivergent() returns false for unknown
registers, so these PHIs are skipped. But this relies on isDivergent()
behavior for unanalyzed registers, which is not guaranteed. If
isDivergent() were to return true for unknown registers (e.g., as a
conservative default), lowerPhis() would re-process already-lowered
PHIs, adding redundant COPY instructions(EX:
https://github.com/llvm/llvm-project/pull/180509). This would not be a
correctness issue, but would produce unnecessary code.

Co-authored-by: padivedi <padivedi at amd.com>


  Commit: 5d56516b36a383969045ef7fcd3e02b76c01ba80
      https://github.com/llvm/llvm-project/commit/5d56516b36a383969045ef7fcd3e02b76c01ba80
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/convert_fp4x2_sm_100f.ll
    A llvm/test/CodeGen/NVPTX/convert_fp6x2_sm_100f.ll
    A llvm/test/CodeGen/NVPTX/convert_fp8x2_sm_100f.ll
    A llvm/test/CodeGen/NVPTX/convert_s2f6x2_sm_100a.ll

  Log Message:
  -----------
  [NVPTX] Add intrinsics for new narrow FP conversions (#173954)

This change adds intrinsics for the following new narrow FP conversions
introduced in PTX 9.1:
- `bf16x2` to `f8x2`
- `(b)f16x2` to `f6x2`
- `(b)f16x2` to `f4x2`
- All `s2f6x2` conversions.

PTX Spec Reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt


  Commit: 944ef9fa644e3078baeec4e70c6fb38d51d41969
      https://github.com/llvm/llvm-project/commit/944ef9fa644e3078baeec4e70c6fb38d51d41969
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/load-ext.ll

  Log Message:
  -----------
  [NFC][WebAssembly] Add Fast-ISel test for load-ext (#181480)

Update load-ext.ll to enable testing of Fast-isel.

Related: #179672


  Commit: 8a1dff765c229f369370363198c92236cd821044
      https://github.com/llvm/llvm-project/commit/8a1dff765c229f369370363198c92236cd821044
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/ceilf128_test.cpp

  Log Message:
  -----------
  [libc][math][test] add missed mpfr test for `ceilf128` (#182201)

This PR adds an MPFR test for `ceilf128` that was missed.


  Commit: 61fa74b8995cb4f1f0b279951188a6f5c6865087
      https://github.com/llvm/llvm-project/commit/61fa74b8995cb4f1f0b279951188a6f5c6865087
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/test/MC/AMDGPU/exp.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vexport.s

  Log Message:
  -----------
  [AMDGPU] Add VEXPORT encoding for gfx13 (#181788)

Co-authored-by: Jay Foad <jay.foad at amd.com>


  Commit: 5b9b25b9f885fd0b2a0827ce95830867d78765c7
      https://github.com/llvm/llvm-project/commit/5b9b25b9f885fd0b2a0827ce95830867d78765c7
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libcxx/include/__stop_token/atomic_unique_lock.h

  Log Message:
  -----------
  [libc++][NFC] Use std::has_single_bit instead of std::popcount(v) == 1 (#181787)

We have a function that specifically checks if a single bit is set. Use
that instad of a `popcount`.


  Commit: 28d564bcc9e2e12b812e3fd3ff38b85bffec5c91
      https://github.com/llvm/llvm-project/commit/28d564bcc9e2e12b812e3fd3ff38b85bffec5c91
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang/include/clang/Index/IndexSymbol.h
    M clang/lib/Index/IndexSymbol.cpp
    M clang/test/Index/Core/index-source.cpp

  Log Message:
  -----------
  [Index] Reflect in SymbolSubKind whether a typedef points to a struct or a class (#181967)

Typedefs don't have their own symbol kind in the Language Server
Protocol, the choices are Struct or Class. For clangd to be able to
represent typedefs accurately in response to requests such as
`workspace/symbol`, it needs this information surfaced in
index::SymbolInfo.

Fixes https://github.com/clangd/clangd/issues/2253


  Commit: 72dc04a45ca73bb74bd0b6eebde95fc0a47fe65f
      https://github.com/llvm/llvm-project/commit/72dc04a45ca73bb74bd0b6eebde95fc0a47fe65f
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/v2i64-min-max.ll

  Log Message:
  -----------
  [AArch64] Fold MIN/MAX(Vec[0], Vec[1]) to VECREDUCE_MIN/MAX(Vec) (#181162)

If we have a lowering for `VECREDUCE_MIN/MAX` this is generally more
efficient than the scalar expansion.


  Commit: c83ebf19cf3e649ed4d2ccadddd8c7e447850363
      https://github.com/llvm/llvm-project/commit/c83ebf19cf3e649ed4d2ccadddd8c7e447850363
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Bytecode/BytecodeImplementation.h
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp
    M mlir/lib/Bytecode/Writer/IRNumbering.cpp
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    A mlir/test/Bytecode/bytecode_callback_write_unowned_blob.mlir
    A mlir/test/Bytecode/i1_splat_roundtrip.mlir
    M mlir/test/lib/IR/TestBytecodeRoundtrip.cpp

  Log Message:
  -----------
  [mlirbc] Serialize dense elements attr i1 using packed (#182233)

Extra cost is in serialization layer localized while resulting in
smaller bytecode files, this also keeps the format compatible with what
was previously.


  Commit: c255e3df64ea807cd9f4a2bd626e57f541829cee
      https://github.com/llvm/llvm-project/commit/c255e3df64ea807cd9f4a2bd626e57f541829cee
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    M llvm/test/Transforms/LoopIdiom/AArch64/find-first-byte.ll

  Log Message:
  -----------
  [LoopIdiomVectorize] Test all needles when vectorising find_first_of loops. (#179298)

Fixes #179187 - as described in the issue, the current FindFirstByte
transformation in LoopIdiomVectorizePass will incorrectly early-exit as
soon as a needle matching a search element is found, even if a previous
search element could match a subsequent needle.

This patch ensures all needles are tested before we return a matching
search element.


  Commit: ae402a32c0f8d31b348b54c6e99b621328a1d71a
      https://github.com/llvm/llvm-project/commit/ae402a32c0f8d31b348b54c6e99b621328a1d71a
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    A clang/test/CodeGenHLSL/sgep/array_load.hlsl
    A clang/test/CodeGenHLSL/sgep/array_store.hlsl
    A clang/test/CodeGenHLSL/sgep/load_global.hlsl
    A clang/test/CodeGenHLSL/sgep/object_method.hlsl

  Log Message:
  -----------
  [Clang][HLSL] Start emitting structured GEP instruction (#177332)

StructuredGEP is a new LLVM intrinsic which will allow to emit proper
logical SPIR-V or DXIL. To properly stage this change going across FE,
BE and optimizations, this commits adds a new flag:
  - `-fexperimental-emit-sgep`

When used, this flag will allow compatible frontends to emit the new
instructions. This will also allow us to migrate tests bit by bit,
adding the flag to each migrated test as we make progress on the
implementation.

Once the frontend migration complete, the flag will remain, and work on
the backend will start. Compatible backends like SPIR-V will first allow
both instructions, but then, depending on a target bit similar to
`requiresStructuredCFG`, will declare that they require the SGEP
instruction and will start enforcing it.
Once the whole chain completed, the flag will be defaulted to true and
removed, finishing the migration.


  Commit: 34a61e352eae5dd0b22b74c2bc7c1c005979ba97
      https://github.com/llvm/llvm-project/commit/34a61e352eae5dd0b22b74c2bc7c1c005979ba97
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/for_reduction_task_codegen.cpp
    M clang/test/OpenMP/master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    M clang/test/OpenMP/parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_addr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_34.cpp
    M clang/test/OpenMP/target_map_codegen_35.cpp
    M clang/test/OpenMP/target_map_codegen_hold.cpp
    M clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp
    M clang/test/OpenMP/target_map_structptr_and_member_global.cpp
    M clang/test/OpenMP/target_map_structptr_and_member_local.cpp
    M clang/test/OpenMP/target_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/sprintf-1.ll
    M llvm/test/Transforms/InstCombine/sprintf-3.ll
    M mlir/test/Target/LLVMIR/omptarget-nested-ptr-record-type-mapping-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-nested-record-type-mapping-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-overlapping-record-member-map.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-mapping-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir

  Log Message:
  -----------
  [IRBuilder] Use ptrtoaddr in CreatePtrDiff() (#181855)

Make CreatePtrDiff() emit the pattern `ptrtoaddr(p1)-ptrtoaddr(p2)`.

This makes a few changes:

* The return type is now the address type instead of hardcoded to i64.
I've adjusted callers to deal with this where they didn't already.
* Don't use `ConstantExpr::getSizeOf()` and instead get the actual size
from DataLayout. These sizeof expressions will be removed as part of the
ptradd migration.
* Add a convenience overload without the element type, for the case
where you want a pure pointer difference.

I also adjusted some OpenMP code to consistently use zext for sizes, as
I had issues updating the test coverage otherwise (as we ended up
randomly picking zext or sext depending on the exact code path).


  Commit: 4053765e4290266ec640c13dcd2920c3bab96f72
      https://github.com/llvm/llvm-project/commit/4053765e4290266ec640c13dcd2920c3bab96f72
  Author: Thibaut Goetghebuer-Planchon <thibaut.goetghebuer-planchon at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
    M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir

  Log Message:
  -----------
  [mlir][tosa] Add support for dense_resource in tosa-narrow-* passes (#182032)

Add support for `dense_resource` in `tosa-narrow-f64-to-f32` and
`tosa-narrow-i64-to-i32` passes.


  Commit: e09473c1a433f46c1e0ffe02c61d148bc3dda717
      https://github.com/llvm/llvm-project/commit/e09473c1a433f46c1e0ffe02c61d148bc3dda717
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-ldexp.ll

  Log Message:
  -----------
  InstCombine: Add baseline SimplifyDemandedFPClass ldexp tests (#180702)


  Commit: 37460ab15c2dcd5255f50e1210e5536b7195b4cf
      https://github.com/llvm/llvm-project/commit/37460ab15c2dcd5255f50e1210e5536b7195b4cf
  Author: David Green <david.green at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll

  Log Message:
  -----------
  [AArch64] Enable MaxInterleaveFactor4 for cortex-x series CPUs. (#181851)

This enables MaxInterleaveFactor4 for CPUs that have 4 or more vector
pipelines in the cortex-x series of cpus.


  Commit: c94e6c0a0cb7143d2872dad7c13decb7664d2d2a
      https://github.com/llvm/llvm-project/commit/c94e6c0a0cb7143d2872dad7c13decb7664d2d2a
  Author: Hussam A. <hsm.link at proton.me>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp

  Log Message:
  -----------
  [NFC][AArch64] Extract helper functions in AArch64ConditionOptimizer (#182197)

Extract shared logic between the cross- and intra-block paths into new
helper functions


  Commit: 564332e4e872ecc3047c5b9bb08a70ea27e66d7b
      https://github.com/llvm/llvm-project/commit/564332e4e872ecc3047c5b9bb08a70ea27e66d7b
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/unittests/Target/X86/X86SelectionDAGTest.cpp

  Log Message:
  -----------
  [X86] computeKnownBitsForTargetNode - add X86ISD::FAND coverage (#182204)

Fixes #182043


  Commit: b881949ee4e6403ac71772ecd581475ae9c5df46
      https://github.com/llvm/llvm-project/commit/b881949ee4e6403ac71772ecd581475ae9c5df46
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/bindings/interface/SBSectionDocstrings.i
    M lldb/bindings/interface/SBSectionExtensions.i
    M lldb/bindings/interface/SBTargetDocstrings.i
    M lldb/bindings/interface/SBTargetExtensions.i
    M lldb/include/lldb/API/SBSection.h
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Core/Section.h
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/include/lldb/Utility/DataExtractor.h
    M lldb/source/API/SBSection.cpp
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Core/DumpDataExtractor.cpp
    M lldb/source/Core/Section.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.cpp
    M lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/source/Utility/DataExtractor.cpp
    M lldb/test/API/python_api/section/TestSectionAPI.py
    M lldb/test/API/python_api/target/TestTargetAPI.py
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb] Drop incomplete non-8-bit bytes support (#182025)

This was originally introduced to support kalimba DSPs featuring 24-bit
bytes by f03e6d84 and also c928de3e, but the kalimba support was mostly
removed by f8819bd5. This change removes the rest of the support, which
was far from complete.


  Commit: e65218149d16824b4689b2bec29d1c773d38cd4b
      https://github.com/llvm/llvm-project/commit/e65218149d16824b4689b2bec29d1c773d38cd4b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libcxx/include/__format/format_context.h
    M libcxx/include/__format/range_default_formatter.h
    M libcxx/include/__format/range_format.h
    M libcxx/include/__fwd/format.h
    M libcxx/include/optional

  Log Message:
  -----------
  [libc++] Avoid including <format> code in <optional> (#179466)

This patch moves `format_kind` to `<__fwd/format.h>` and moves the
mandate of `basic_format_context` into the class body. This reduces the
time it takes to parse `<optional>` by ~14%.


  Commit: 114e20805f028821b41666cca563d6f81a075780
      https://github.com/llvm/llvm-project/commit/114e20805f028821b41666cca563d6f81a075780
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub-epilogue-vec.ll

  Log Message:
  -----------
  [LV] Fix sub-reduction PHI in vectorized epilogue (#182072)

When the vectorized epilogue loop uses partial reductions, the PHI node
in the loop must start at 0 (because for partial sub-reductions the
sub is done in the middle block) and the compute-reduction-result must
subtract from the partial result (as calculated in the middle block of
the main vector loop), instead of subtracting from the original init
value.

This fixes the issue as reported on #178919 by @aeubanks.


  Commit: e503801ff4a19e8f145365b4be267420c5529092
      https://github.com/llvm/llvm-project/commit/e503801ff4a19e8f145365b4be267420c5529092
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp

  Log Message:
  -----------
  [DA] Remove `DependenceInfo::unifySubscriptType` (#181607)

`DependenceInfo::unifySubscriptType` is a function that takes two
subscripts and casts them to the wider type. Using this function can
sometimes lead to correctness issues, especially when combined with
`DependenceInfo::removeMatchingExtensions`, as in #148435. These two
functions are intended to broaden the scope of DA, but they can also
introduce correctness issues, mainly due to mishandling of `sext`/`zext`
and integer overflows.

To avoid these issues, this patch removes the `unifySubscriptType`
function. Currently, it has only one caller, which is part of the
validation logic for delinearization. Instead of calling
`unifySubscriptType`, this patch adds a type check and bails out if the
types do not match. Note that I'm not entirely sure whether there are
real cases where the types differ and the check is actually necessary.
Also, this patch doesn't include new test cases, as I have not found
concrete examples where `unifySubscriptType` itself causes actual
issues. That is, this patch may be NFC.

Fix #169807


  Commit: ce69864bf871d23d44709a759f42b5e469fe6f09
      https://github.com/llvm/llvm-project/commit/ce69864bf871d23d44709a759f42b5e469fe6f09
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-ldexp.ll

  Log Message:
  -----------
  InstCombine: Implement SimplifyDemandedFPClass for ldexp (#180703)


  Commit: 7dbfc2bd0078b36e4f9ed14dd25c4d8e97b3ae77
      https://github.com/llvm/llvm-project/commit/7dbfc2bd0078b36e4f9ed14dd25c4d8e97b3ae77
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/cpu_feature.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
    M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.cpp
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp
    M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.h
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.h
    M lldb/source/Plugins/Process/elf-core/RegisterUtilities.h
    A lldb/test/API/linux/aarch64/permission_overlay/Makefile
    A lldb/test/API/linux/aarch64/permission_overlay/TestAArch64LinuxPOE.py
    A lldb/test/API/linux/aarch64/permission_overlay/corefile
    A lldb/test/API/linux/aarch64/permission_overlay/main.c

  Log Message:
  -----------
  [lldb][AArch64][Linux] Add support for the Permission Overlay Extension (POE) (#177145)

This change adds initial support for managing the Permission Overlay
Extension (POE). This extension allows userspace programs to change
memory permissions without making a sycall.

This is used to implement Linux's memory protection keys
(https://docs.kernel.org/core-api/protection-keys.html) on AArch64.

Overview of POE:
* Page table entries have a set of permissions. To change these, a
program would have to use a syscall which adds overhead.
* 3 bits of the page table entry are used for a protection key 0-7.
* POE adds a new register "por" (POR_EL0 in the manual) which stores
4-bit sets of permissions.
* The protection key is an index into this por register.
* Permissions in POR are applied on top of the page table permissions,
but may only remove permissions. For example, if you overlay
read/execute over read/write, the result is read. Since execute was not
in the page table permissions.
* This register can be modified without leaving userspace, making
permission changes faster.

To help debug this, I have made the following changes to LLDB:
* Ability to read and write the por register.
* Save and restore of por when running expressions.
* Register field definitions to print the por permissions in a human
readable form.
* Recognition of memory protection key faults as a distinct type of
SIGSEGV (this will apply to Linux on any architecture).

There are a few more features to add around memory region information,
that will be in follow up changes. As will documentation and release
notes for all the POE features.


  Commit: dbf86a19542bac6209838ac9633fb8627fa23d15
      https://github.com/llvm/llvm-project/commit/dbf86a19542bac6209838ac9633fb8627fa23d15
  Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/unittests/Target/X86/X86SelectionDAGTest.cpp

  Log Message:
  -----------
  [X86] computeKnownBitsForTargetNode - add X86ISD::FXOR coverage (#182210)

Fixes #182042


  Commit: c30879ea916edd8f7a7863155ebc47a888e67ed4
      https://github.com/llvm/llvm-project/commit/c30879ea916edd8f7a7863155ebc47a888e67ed4
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][Doc] Small fix for GFX12 release atomic memory model doc (#182241)

That row goes for both generic/global but it only said global.


  Commit: dd1cc049b14053e9a5ec8d8e5925eb1db5b57ac3
      https://github.com/llvm/llvm-project/commit/dd1cc049b14053e9a5ec8d8e5925eb1db5b57ac3
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    A flang/test/Fir/declare_value-codegen.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/invalid.fir
    M flang/test/Fir/mem2reg.mlir

  Log Message:
  -----------
  [flang][FIR] allow mem2reg over fir.declare (#181848)

This patch adds the possibility for MLIR mem2reg to work over
fir.declare.
Note that mem2reg is not part of FIR pipeline, and this is just part of
work to be able to leverage it.

The patch:
- Adds a fir.declare_value operation
- Implements the PromotableOpInterface for fir.declare simple scalars
and replace it by fir.declare_value.
- Generates llvm.dbg.debug_value from it (when a FusedLoc with a
DILocalVariableAttr is created for it in AddDebugInfo, like for
fir.declare).


  Commit: fdc4274e2fcc79b8ba3064235da721573cdeea83
      https://github.com/llvm/llvm-project/commit/fdc4274e2fcc79b8ba3064235da721573cdeea83
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibFunc.h
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-fast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown-fast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr-fast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn-fast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll

  Log Message:
  -----------
  AMDGPU: Perform libcall recognition to replace fast OpenCL pow (#182135)

If a float-typed call site is marked with afn, replace the 4
flavors of pow with a faster variant.

This transforms pow, powr, pown, and rootn to __pow_fast,
__powr_fast, __pown_fast, and __rootn_fast if available. Also
attempts to handle all of the same basic folds on the new fast
variants that were already performed with the base forms. This
maintains optimizations with OpenCL when the device libs unsafe
math control library is deleted. This maintains the status quo
of how libcalls work, and only handles 4 new entry points. This
only helps with the elimination of the control library, and not
general libcall emission problems.

This makes no practical difference for HIP, which is the status
quo for libcall optimizations. AMDGPULibCalls recognizes the OpenCL
mangled names. e.g., OpenCL float "pow" is really _Z3powff but the
HIP provided function "powf" is really named _ZL4powfff, and std::pow
with float is _ZL3powff. The pass still runs for HIP, so by accident
if you used the OpenCL mangled function names, this would trigger.

Since the functions cannot yet be relied on from the library,
introduce a temporary module flag check. I'm not planning on emitting
it anywhere and it's a poor substitute for versioning the target.


  Commit: 4042975b6301c0c180d864f18cbfba8d90b946eb
      https://github.com/llvm/llvm-project/commit/4042975b6301c0c180d864f18cbfba8d90b946eb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/select-index.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/select-index-interleaving.ll
    A llvm/test/Transforms/LoopVectorize/select-index-remarks.ll
    M llvm/test/Transforms/LoopVectorize/select-smax-last-index.ll
    M llvm/test/Transforms/LoopVectorize/select-smin-first-index.ll
    M llvm/test/Transforms/LoopVectorize/select-umax-last-index.ll
    M llvm/test/Transforms/LoopVectorize/select-umin-first-index.ll
    M llvm/test/Transforms/LoopVectorize/smax-idx.ll

  Log Message:
  -----------
  [LV] Support argmin/argmax with strict predicates. (#170223)

Extend handleMultiUseReductions to support strict predicates (>, <),
matching the first index instead of the last for non-strict predicates.

Builds on top of https://github.com/llvm/llvm-project/pull/141431.

FindLast reductions with strict predicates are adjusted to compute the
correct result as follows:

1. Find the first canonical indices corresponding to partial min/max
   values, using loop reductions.
2. Find which of the partial min/max values are equal to the overall
    min/max value.
3. Select among the canonical indices those corresponding to the overall
    min/max value.
4. Find the first canonical index of overall min/max and scale it back to
    the original IV using VPDerivedIVRecipe.
5. If the overall min/max equals the starting min/max, the condition in
    the loop was always false, due to being strict; return the original start 
    value in that case.


  Commit: 86f6730f0dc3def5375ae7da71445c5e50612765
      https://github.com/llvm/llvm-project/commit/86f6730f0dc3def5375ae7da71445c5e50612765
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Shard/IR/ShardOps.h
    M mlir/lib/Dialect/Shard/IR/ShardOps.cpp
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp
    M mlir/test/Dialect/Shard/partition.mlir

  Log Message:
  -----------
  [mlir][shard] Empowering resharding (#180962)

Enabling many more resharding cases by dealing with dimension by dimension,
try-applying various patterns on a single dimension.


  Commit: 753d15a28de1e3170a51a963e600d80449dfd03c
      https://github.com/llvm/llvm-project/commit/753d15a28de1e3170a51a963e600d80449dfd03c
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Host/common/MemoryMonitor.cpp

  Log Message:
  -----------
  [lldb] Fix Linux memory monitor. (#182011)

Only call the callback when we are actually low on memory. 
Increase the threshold to 200ms in a 2 second interval to match
systemd's default see

[DefaultMemoryPressureWatch](https://www.freedesktop.org/software/systemd/man/latest/systemd-system.conf.html#DefaultMemoryPressureWatch=).


  Commit: 7b39defbc35aa979a59b99ec9591f7d74a96c768
      https://github.com/llvm/llvm-project/commit/7b39defbc35aa979a59b99ec9591f7d74a96c768
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    A llvm/lib/Target/SPIRV/SPIRVTypeInst.cpp
    A llvm/lib/Target/SPIRV/SPIRVTypeInst.h
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Move `SPIRVTypeInst` to its own header (#181668)

Move `SPIRVTypeInst` outside of `SPIRVGlobalRegistry.h`.


  Commit: 86e0504febe659b6603f3cc82b50df4cda98f012
      https://github.com/llvm/llvm-project/commit/86e0504febe659b6603f3cc82b50df4cda98f012
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve2-histcnt.ll

  Log Message:
  -----------
  [AArch64] Fix codegen for histograms with i64 increments (#181808)

Histograms don't do any legalisation on the loaded data type, so if the
'add' would need to be performed on a vector of i64's, then we can't use
the more optimal addressing with i32 offsets as that would return a
vector of nxv4i32 which wouldn't get widened.

This fixes https://github.com/llvm/llvm-project/issues/181764


  Commit: 6a5375fbce1992cb58a31a8c94d59ecb35c752a9
      https://github.com/llvm/llvm-project/commit/6a5375fbce1992cb58a31a8c94d59ecb35c752a9
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll

  Log Message:
  -----------
  [VPlan] Plumb recurrence FMFs through VPReductionPHIRecipe via VPIRFlags. NFC (#181694)

In order to be able to create selects for reduction phis through tail
folding in foldTailByMasking (#176143), make VPReductionPHIRecipe an
instance of VPIRFlags and plumb the FMFs from the original RdxDesc.

This allows us to remove more uses of the RecurrenceDescriptor in
addReductionResultComputation, which should help untie it from
LoopVectorizationLegality.


  Commit: 5a389d382b242bcbf4276b19fe21ee50fcdc988c
      https://github.com/llvm/llvm-project/commit/5a389d382b242bcbf4276b19fe21ee50fcdc988c
  Author: Nathiyaa Sengodan <133644025+Nathiyaa-Sengodan at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/InstSimplify/floating-point-arithmetic.ll

  Log Message:
  -----------
  [ValueTracking] Treat fmul NaN sign bit as unknown to prevent incorrect fabs folding (#180339)

### Summary

ValueTracking currently allows InstSimplify to reason about the sign bit
of an `fmul` result based on the sign information of its operands. This
can lead to removing a subsequent `llvm.fabs` under the assumption that
the multiplication result is already non-negative.

However, `fmul` may produce NaNs whose sign bit is non-deterministic.
Since `llvm.fabs` canonicalizes the sign bit of NaNs, eliminating
llvm.fabs` in these cases can change observable behaviour.

### Change

Update ValueTracking to treat the sign bit of `fmul` as unknown when
NaNs are possible, preventing InstSimplify from incorrectly removing
llvm.fabs ` after `fmul`.

Fixes #179613


  Commit: d7b590b852ce5514a0b6f3991d6b246aceac13c4
      https://github.com/llvm/llvm-project/commit/d7b590b852ce5514a0b6f3991d6b246aceac13c4
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir

  Log Message:
  -----------
  [RISCV] Ensure false dominates in vmerge peephole (#181664)

When folding vmerge into it's true operand, true will eventually use the
false operand as its passthru, but we don't check that the instruction
defining false dominates true. This can cause a use before def.

Fix this by sinking true past false. We already do this for the mask, so
this does it in the same call to ensureDominates.

We don't seem to run into this with current codegen but upcoming changes
to RISCVVLOptimizer expose it.


  Commit: 5e226b167f9e3fd8a9b51d6bef69496971c9c039
      https://github.com/llvm/llvm-project/commit/5e226b167f9e3fd8a9b51d6bef69496971c9c039
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang-tools-extra/Maintainers.rst

  Log Message:
  -----------
  [clang-tidy][NFC] move Cai Congcong to inactive maintainer (#182248)


  Commit: 63492ca84a8c84b5d468250b938183602a39805a
      https://github.com/llvm/llvm-project/commit/63492ca84a8c84b5d468250b938183602a39805a
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A llvm/test/tools/llubi/alloca.ll
    A llvm/test/tools/llubi/alloca_large_count.ll
    A llvm/test/tools/llubi/alloca_large_size.ll
    A llvm/test/tools/llubi/alloca_poison_count.ll
    A llvm/test/tools/llubi/alloca_size_overflow.ll
    A llvm/test/tools/llubi/gep.ll
    A llvm/test/tools/llubi/inttoptr.ll
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llubi/lib/Value.cpp
    M llvm/tools/llubi/lib/Value.h

  Log Message:
  -----------
  [llubi] Add support for GEP/alloca/inttoptr (#181861)

This patch mainly adds support for GEP. To test GEP functionality,
alloca/inttoptr are also introduced.


  Commit: 6a78d37e83ba51a1cf320aee77ec9d2efb53d65d
      https://github.com/llvm/llvm-project/commit/6a78d37e83ba51a1cf320aee77ec9d2efb53d65d
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    A clang/test/Analysis/uninitialized-branch.c
    M clang/unittests/StaticAnalyzer/BlockEntranceCallbackTest.cpp

  Log Message:
  -----------
  [analyzer] Add BranchCondition callback to 'switch' (#182058)

Previously the condition of a 'switch' statement did not trigger a
`BranchCondition` callback. This commit resolves this old FIXME and e.g.
lets the checker `core.uninitialzed.Branch` report code where the
condition of a `switch` statement is undefined.

This commit also contains a very small unrelated change that removes a
short fragment of dead code from `processBranch`.


  Commit: bca95d1e4dd4339609431da2342c8a46590df7fa
      https://github.com/llvm/llvm-project/commit/bca95d1e4dd4339609431da2342c8a46590df7fa
  Author: Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/optional/TestDataFormatterGenericOptional.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/shared_ptr/TestDataFormatterStdSharedPtr.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/span/TestDataFormatterStdSpan.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/string_view/TestDataFormatterStdStringView.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/u8string/TestDataFormatterStdU8String.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/u8string_view/TestDataFormatterStdU8StringView.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unique_ptr/TestDataFormatterStdUniquePtr.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unordered/TestDataFormatterGenericUnordered.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vector/TestDataFormatterStdVector.py
    M lldb/test/API/test_utils/pdb/TestPdb.py

  Log Message:
  -----------
  Disable shared builds for tests failing on Windows (#182249)

PR #181720 introduced shared builds for LLDB API tests to improve test
efficiency. But several data formatter tests requiring PDB debug info
are failing on Windows x64 and AArch64 platforms.

This patch disables shared builds for these tests by setting
SHARED_BUILD_TESTCASE = False

The shared build optimization breaks these tests because they reuse
build artifacts between test methods
The test runs may could use multiple methods with different debug
formats or compiler flags. When a test runs first it builds with one set
of flags, but then it runs again but **make** sees the source unchanged
so it skips rebuilding and reuses the same old binary instead of
rebuilding with correct flags.


  Commit: b4386f7b556bd40265921ebf32e6763322382bf6
      https://github.com/llvm/llvm-project/commit/b4386f7b556bd40265921ebf32e6763322382bf6
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp

  Log Message:
  -----------
  [flang][OpenMP] Push context for all directives in resolve-directives.cpp (#181736)

The visitors for loop and simple-standalone constructs had switch
statements that explicitly listed all directives in the category, and
pushed the context for them.

The visitor for OmpBlockConstruct listed a selection of block-associated
directives, but they are the only ones for which OmpBlockConstruct is
created directly without a subclass.


  Commit: 3cdb2e2f5d0c943c5a07d969c0c13b1bb9341f26
      https://github.com/llvm/llvm-project/commit/3cdb2e2f5d0c943c5a07d969c0c13b1bb9341f26
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Semantics/OpenMP/common-block_copyin.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix for threadprivate check in copyin clause (#181354)

Use the ultimate symbol in the threadprivate check

Fixes #180094


  Commit: 15515ef7eaaa8bfc1b930df498eb7326a9c72074
      https://github.com/llvm/llvm-project/commit/15515ef7eaaa8bfc1b930df498eb7326a9c72074
  Author: Thibaut Goetghebuer-Planchon <thibaut.goetghebuer-planchon at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix dense_resource data alignment in tosa-narrow-* tests (#182253)

The alignment of int64 and float64 dense resource should be 8 and not 4


  Commit: 46bfd69343945bc1621fbe3b1c55aa8a0f37bc3a
      https://github.com/llvm/llvm-project/commit/46bfd69343945bc1621fbe3b1c55aa8a0f37bc3a
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [LV] NFCI: Add RecurKind to VPPartialReductionChain (#181705)

This avoids having to pass around the RecurKind or re-figure it out from
the VPReductionPHI node.

This is useful in a follow-up PR, where we need to distinguish between a
`Sub` and `AddWithSub` recurrence, which can't be deduced from the
`ReductionBinOp` field.


  Commit: a28d89be4672bfd76001bdd85bbe8e0e1ac88b1d
      https://github.com/llvm/llvm-project/commit/a28d89be4672bfd76001bdd85bbe8e0e1ac88b1d
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/RDFLiveness.cpp
    A llvm/test/CodeGen/Hexagon/rdf-liveness-phi-invalidation.ll

  Log Message:
  -----------
  [RDF] Fix DenseMap reference invalidation in computePhiInfo (#182144)

In Liveness::computePhiInfo, the reference `RefMap &RUM =
RealUseMap[PA.Id]` can be invalidated when the inner loop inserts into
RealUseMap via `RealUseMap[P.first][SS.Id]`. If `P.first` is a new key,
the DenseMap may rehash, invalidating the RUM reference and any
iterators into it.

Fix by making a copy of the map value instead of holding a reference.
This is detected by _GLIBCXX_DEBUG (enabled via EXPENSIVE_CHECKS) which
tracks iterator validity on std::unordered_map (RefMap).


  Commit: d98d625ff7ab14f0651138721d773c66d49504c4
      https://github.com/llvm/llvm-project/commit/d98d625ff7ab14f0651138721d773c66d49504c4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [X86] combineSETCC - drop unnecessary shift amount bounds check for larger-than-legal ICMP_ZERO(AND(X,SHL(1,IDX))) folds (#182021)

For i128 etc. bittest patterns, we split the pattern into a i32
extraction + i32 bittest.

But we were unnecessarily limiting this to inbounds shift amounts. I
wrote this fold at the same time as narrowBitOpRMW where we needed the
bounds check for safe memory access, which isn't necessary in
combineSETCC.

Fix 2 of 2 for #147216


  Commit: b0192c31a17f263b77d2eed5fbdab3a95a4e8edc
      https://github.com/llvm/llvm-project/commit/b0192c31a17f263b77d2eed5fbdab3a95a4e8edc
  Author: moscickimilosz <Milosz.Moscicki at imgtec.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/test/Target/SPIRV/decorations.mlir

  Log Message:
  -----------
  [mlir][spirv] (De)serialize Offset, XfbBuffer and XfbStride decorations (#181835)

Process decorations number 35, 36 and 37 in SPIR-V deserializer and
serializer; add a simple test case.


  Commit: 54ab131f4cd656b617dee431bcecb259f649d64a
      https://github.com/llvm/llvm-project/commit/54ab131f4cd656b617dee431bcecb259f649d64a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libclc/CMakeLists.txt
    M libclc/opencl/lib/clspv/SOURCES
    R libclc/opencl/lib/clspv/subnormal_config.cl
    M libclc/opencl/lib/generic/SOURCES
    M libclc/opencl/lib/generic/subnormal_config.cl
    R libclc/opencl/lib/generic/subnormal_disable.ll
    R libclc/opencl/lib/generic/subnormal_helper_func.ll
    R libclc/opencl/lib/generic/subnormal_use_default.ll
    M libclc/opencl/lib/spirv/SOURCES
    R libclc/opencl/lib/spirv/subnormal_config.cl

  Log Message:
  -----------
  [libclc] Completely remove ENABLE_RUNTIME_SUBNORMAL option (#182125)

Summary:
This isn't really used and this simplifies the code. I could go deeper
to remove this content entirely as they all return `false` but I figured
    this was an easier change to do first.

---------

Co-authored-by: Wenju He <wenju.he at intel.com>


  Commit: 8a7413b141fe669ac8d612376465b790718880ba
      https://github.com/llvm/llvm-project/commit/8a7413b141fe669ac8d612376465b790718880ba
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC. (#182262)


  Commit: ff97195f9d31548e567358852b352ef2da4706c9
      https://github.com/llvm/llvm-project/commit/ff97195f9d31548e567358852b352ef2da4706c9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/knownbits-vpmadd52.ll

  Log Message:
  -----------
  [X86] knownbits-vpmadd52.ll - replace extended unicode character with regular ascii (#182278)

Stops update_llc_test_checks.py from complaining / unnecessarily changing the file


  Commit: e03a87cb4e7c9cece89d64774e8a46524038c04b
      https://github.com/llvm/llvm-project/commit/e03a87cb4e7c9cece89d64774e8a46524038c04b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for llvm-qualified-auto in ModuleTranslation.cpp (NFC)


  Commit: eb88b285f07fcb2155c6c67d0014eda510c92f04
      https://github.com/llvm/llvm-project/commit/eb88b285f07fcb2155c6c67d0014eda510c92f04
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/Transforms/SubgroupIdRewriter.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for readability-identifier-naming in SubgroupIdRewriter.cpp (NFC)


  Commit: cc704f8ec95f830551c94a01d6e2475dd2b3fe02
      https://github.com/llvm/llvm-project/commit/cc704f8ec95f830551c94a01d6e2475dd2b3fe02
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/SystemZ/fp-sincos-01.ll
    M llvm/test/CodeGen/SystemZ/patchable-function-entry.ll

  Log Message:
  -----------
  [SystemZ] Fix duplicate RUN lines in tests (#182273)


  Commit: 62d153610a5204645ad72f23a63ea715da1c5ede
      https://github.com/llvm/llvm-project/commit/62d153610a5204645ad72f23a63ea715da1c5ede
  Author: Tony Varghese <tonypalampalliyil at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/P10InstrResources.td
    M llvm/lib/Target/PowerPC/P9InstrResources.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCSchedule.td
    M llvm/test/MC/Disassembler/PowerPC/ppc64-encoding.txt
    M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding.txt
    M llvm/test/MC/PowerPC/ppc64-encoding.s

  Log Message:
  -----------
  [PowerPC] Add support for MSGSNDP instruction (#180974)

Message Send Privileged X-form

`msgsndp RB`
```
opcode : 0-5 (5bits)  ===> 31    
RB     : 16-20 (5 bits) 
xo     : 21-30 (10 bits)   ==> 142  

```

---------

Co-authored-by: Tony Varghese <tony.varghese at ibm.com>


  Commit: 6ca0e29159f89b5916e84f6ac51445b30f52f709
      https://github.com/llvm/llvm-project/commit/6ca0e29159f89b5916e84f6ac51445b30f52f709
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Refactor convolution infer return type (#178869)

Lots of logic was repeated for Conv2D, Conv3D and Conv2DBlockScaled ops.
This commit factors out common logic to reduce code duplication.

In doing so, a bug in calculating the bias shape was also fixed. Since
DepthwiseConv2D and TransposeConv2D were fixed independently, this
commit fixes #175765.


  Commit: f04d3a271f645738ab56b672e4774e9de68ffb3a
      https://github.com/llvm/llvm-project/commit/f04d3a271f645738ab56b672e4774e9de68ffb3a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in TransformInterfaces.cpp (NFC)


  Commit: 1b0c9757eab134fcbf26bf84631010367ca70b07
      https://github.com/llvm/llvm-project/commit/1b0c9757eab134fcbf26bf84631010367ca70b07
  Author: Marcos Maronas <mmaronas at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/InstSimplify/ConstProp/vector-type-constant-folding.ll

  Log Message:
  -----------
  Use named values in tests. (#182102)

Address
https://github.com/llvm/llvm-project/pull/181695#discussion_r2821774068.


  Commit: 418ba6e8ae2cde7924388142b8ab90c636d2c21f
      https://github.com/llvm/llvm-project/commit/418ba6e8ae2cde7924388142b8ab90c636d2c21f
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    A clang/test/DebugInfo/CXX/callsite-base.cpp
    A clang/test/DebugInfo/CXX/callsite-derived.cpp
    A clang/test/DebugInfo/CXX/callsite-edges.cpp
    A cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-dwarf.cpp
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll

  Log Message:
  -----------
  [clang][DebugInfo] Add virtuality call-site target information in DWARF. (#167666)

Given the test case:

  struct CBase {
    virtual void foo();
  };

  void bar(CBase *Base) {
    Base->foo();
  }

and using '-emit-call-site-info' with llc, the following DWARF
is produced for the indirect call 'Base->foo()':

1$: DW_TAG_structure_type "CBase"
      ...
2$:   DW_TAG_subprogram "foo"
        ...

3$: DW_TAG_subprogram "bar"
      ...
4$:   DW_TAG_call_site
        ...

We add DW_AT_LLVM_virtual_call_origin to existing call-site
information, linking indirect calls to the function-declaration
they correspond to.

4$:   DW_TAG_call_site
        ...
        DW_AT_LLVM_virtual_call_origin (2$ "_ZN5CBase3fooEv")

The new attribute DW_AT_LLVM_virtual_call_origin helps to
address the ambiguity to any consumer due to the usage of
DW_AT_call_origin.

The functionality is available to all supported debuggers.


  Commit: e24526cf437430a5a5a597cefc47bc2ca80c315e
      https://github.com/llvm/llvm-project/commit/e24526cf437430a5a5a597cefc47bc2ca80c315e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
    M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll

  Log Message:
  -----------
  [NVPTXCtorDtorLowering] Removing unnecessary pointer arithmetic (#182269)

This code was computing `begin + ((end - begin) exact/ 8) * 8`, which is
a very complicated way to spell `end`.


  Commit: 87eee80dad79417e079c369b9ff5578873019b78
      https://github.com/llvm/llvm-project/commit/87eee80dad79417e079c369b9ff5578873019b78
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/test/CodeGenHIP/printf.cpp
    M clang/test/CodeGenHIP/printf_nonhostcall.cpp
    M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp

  Log Message:
  -----------
  [AMDGPUEmitPrintf] Use CreatePtrDiff() (#182283)

Use CreatePtrDiff() to emit the pointer subtraction, which will use
ptrtoaddr instead of ptrtoint.

Add a conservative cast to i64 as the return value of CreatePtrDiff is
no longer guaranteed to be a i64.


  Commit: 32392468d713985434f48b0cf27d205cafe98a4c
      https://github.com/llvm/llvm-project/commit/32392468d713985434f48b0cf27d205cafe98a4c
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A llvm/include/llvm/CodeGen/Rematerializer.h
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/Rematerializer.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/RematerializerTest.cpp

  Log Message:
  -----------
  [CodeGen] Introduce MIR-level target-independent rematerialization helper (#177080)

This introduces a `Rematerializer` class that identifies register
rematerialization opportunities within a machine function and provides
an API to easily perform those rematerializations with a high level of
control. Its key feature is its ability to model relationships between
rematerializable registers and rematerialize arbitrarily complex groups
of registers at once to specific locations. The class comment describes
the underlying model in details.

This includes unit tests for the class to both verify its correct
behavior and showcase its current rematerialization capabilities.

This hopefully can be a step toward addressing long-standing
rematerialization limitations in LLVM backends. In the future, the goal
is to pair this support with generic or target-dependent strategies for
picking the best rematerialization opportunities to perform to achieve
some kind of objective (e.g., a specific register pressure target in
scheduling regions). As a concrete example, I intend to use this in the
AMDGPU scheduler to help in reducing spilling and/or increasing
occupancy in kernels.


  Commit: 579879104cbc2599ba08913d20676f7c2f0dd781
      https://github.com/llvm/llvm-project/commit/579879104cbc2599ba08913d20676f7c2f0dd781
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-cmpxchg.ll

  Log Message:
  -----------
  [InstCombine] Allow simplifying FP selects of cmpxchg instructions. (#181977)

We already simplify selects that test the flag returned by a cmpxchg and
select between the value the cmpxchg loaded and the compare operand.

This patch extends the fold to FP (and vector) compare-exchange
operations, where the compare operand and loaded value are bitcast.


  Commit: 25e4e2fd3c880ff7e34105d8e9d26b38901fd974
      https://github.com/llvm/llvm-project/commit/25e4e2fd3c880ff7e34105d8e9d26b38901fd974
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Rename $carry operand to $vm. NFC (#182229)

This avoids having a unique operand name in the NamedOperand table until
we need it.


  Commit: 3685f24760470fc873d2ea70dd6f4da6898e5e1b
      https://github.com/llvm/llvm-project/commit/3685f24760470fc873d2ea70dd6f4da6898e5e1b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td

  Log Message:
  -----------
  [RISCV] Rename $dest to $passthru. NFC (#182231)

Most instructions used $passthru, the only ones that use $dest seem to
be non-segment NoMask loads. I don't think there is any reason to be
different.


  Commit: f4a29d9278d45d73cd6fcf74a0faea0f72fc259f
      https://github.com/llvm/llvm-project/commit/f4a29d9278d45d73cd6fcf74a0faea0f72fc259f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/test/Transforms/LowerMatrixIntrinsics/data-layout-multiply-fused.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-dominance.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-multiple-blocks.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused.ll

  Log Message:
  -----------
  [LowerMatrixIntrinsics] Avoid use of ptrtoint (#182289)

The ptrtoint result here is used in icmp. However, icmp can already
directly work with pointers, so there's no need to perform the cast.

(I originally wanted to switch this to ptrtoaddr, but that's not really
necessary when we can directly compare on pointers.)


  Commit: 956bada68413607bba51b0b2fdaa22f501c20b7d
      https://github.com/llvm/llvm-project/commit/956bada68413607bba51b0b2fdaa22f501c20b7d
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-smaxv.ll
    M llvm/test/CodeGen/AArch64/arm64-vmax.ll
    M llvm/test/CodeGen/AArch64/patchable-function-entry.ll

  Log Message:
  -----------
  [AArch64] Fix duplicate RUN lines in tests (#182281)


  Commit: 20bb230380c614854fd86c8a2ae8d57ecdf8d4ad
      https://github.com/llvm/llvm-project/commit/20bb230380c614854fd86c8a2ae8d57ecdf8d4ad
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec512.mir
    M llvm/test/CodeGen/X86/avx512-unsafe-fp-math.ll
    M llvm/test/CodeGen/X86/basic-promote-integers.ll
    M llvm/test/CodeGen/X86/epilogue-cfi-fp.ll
    M llvm/test/CodeGen/X86/not-shift.ll
    M llvm/test/CodeGen/X86/prefetch.ll
    M llvm/test/CodeGen/X86/swift-dynamic-async-frame.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/MC/Disassembler/X86/padlock.txt
    M llvm/test/tools/llvm-exegesis/X86/latency/dump-object-to-disk.s

  Log Message:
  -----------
  [X86] Fix duplicate RUN lines in tests (#182271)


  Commit: f56efa289f3cdbe42fb9ef1522f5a97ce9997269
      https://github.com/llvm/llvm-project/commit/f56efa289f3cdbe42fb9ef1522f5a97ce9997269
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/test/IR/affine-map.mlir

  Log Message:
  -----------
  [MLIR] Add trivial simplifications for affine mod, div, ceil (#182234)

Add missing trivial folding rules for div and mod affine expressions
when the LHS and RHS were the same.


  Commit: ca77001a1a0de38ac21bd9ed8d3468a528cf000f
      https://github.com/llvm/llvm-project/commit/ca77001a1a0de38ac21bd9ed8d3468a528cf000f
  Author: Hamza Hassanain <53662962+HamzaHassanain at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrMVE.td
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/cls.ll

  Log Message:
  -----------
  [ARM] Replace manual CLS expansion with ISD::CTLS (#178430)

Converts ARM scalar CLS intrinsics to use the unified ISD::CTLS node
instead of custom manual expansion. This addresses the issue
[#174337](https://github.com/llvm/llvm-project/issues/174337).

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 8928b2337dea03e7defce442aeed9774937969bd
      https://github.com/llvm/llvm-project/commit/8928b2337dea03e7defce442aeed9774937969bd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Emit ISD::ADD instead of X86ISD::ADD from combineSubSetcc. NFC (#182195)

The flag result isn't used so the X86ISD::ADD would be converted to
ISD::ADD by a DAGCombine immediately after.

Prior to this we could create a X86ISD::ADD with an illegal type and we
were using the wrong VT for the flag result.


  Commit: eb0e5543753000ff7121a499053694f9881e2a59
      https://github.com/llvm/llvm-project/commit/eb0e5543753000ff7121a499053694f9881e2a59
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] For CMP_MASK_CC/CMP_MASK_SCALAR_CC convert CC from MVT::i32 to MVT::i8. (#182199)

The underlying X86ISD nodes have type profiles that say MVT::i8.

Fixes one of the errors found by #168421.


  Commit: 4ebf34cd5d46325f5ea3cb9bc370db05896fb959
      https://github.com/llvm/llvm-project/commit/4ebf34cd5d46325f5ea3cb9bc370db05896fb959
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVTypeInst.h

  Log Message:
  -----------
  [NFC][SPIRV] Remove last uses of `SPIRVType` (#182299)

This patch:

* Replaces some `SPIRVType` uses with `SPIRVTypeInst`
* Replaces cases where this replacement is impossible with `const
MachineInstr*`
* For consistency renames some functions / variables

This patch depends on https://github.com/llvm/llvm-project/pull/181668
This patch closes https://github.com/llvm/llvm-project/issues/180788

Approved in https://github.com/llvm/llvm-project/pull/182098 but had to
close/reopen due to a Github glitch.


  Commit: 78798b20d9c5835535c66319892f85d459d4b10a
      https://github.com/llvm/llvm-project/commit/78798b20d9c5835535c66319892f85d459d4b10a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-sramecc.ll
    M llvm/test/CodeGen/AMDGPU/flat-error-unsupported-gpu-hsa.ll
    M llvm/test/CodeGen/AMDGPU/fmuladd.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/force-alwaysinline-lds-global-address.ll
    M llvm/test/CodeGen/AMDGPU/fract.f64.ll
    M llvm/test/CodeGen/AMDGPU/fract.ll
    M llvm/test/CodeGen/AMDGPU/kernarg-size.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls2.ll
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd3.s
    M llvm/test/MC/AMDGPU/isa-version-pal.s
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll

  Log Message:
  -----------
  [AMDGPU] Fix duplicate RUN lines in tests (#182286)


  Commit: 949d6829aa8cb613c28dbbeea51a19326f24be8b
      https://github.com/llvm/llvm-project/commit/949d6829aa8cb613c28dbbeea51a19326f24be8b
  Author: David Green <david.green at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DominanceFrontier.h

  Log Message:
  -----------
  [DomFrontier] Fix precedence in assert. NFC (#182239)

This fixes the warning about parentheses around ‘&&’ within ‘||’, until
DFs with multiple roots are supported.


  Commit: 04914f1e5f46585ad75691c762931335479df8f2
      https://github.com/llvm/llvm-project/commit/04914f1e5f46585ad75691c762931335479df8f2
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/MC/AArch64/armv9-mrrs.s
    M llvm/test/MC/AArch64/armv9-msrr.s
    M llvm/test/MC/AArch64/armv9a-sysp.s
    A llvm/test/MC/AArch64/armv9a-tlbip.s
    M llvm/test/MC/AArch64/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/directive-arch_extension.s

  Log Message:
  -----------
  [AArch64][llvm] Remove `+d128` gating on `sysp`, `msrr` and `mrrs` instructions (#178912)

Remove `+d128` gating on `sysp`, `msrr` and `mrrs` instructions.

We removed gating for `sys`, `mrs` and `mrs` instructions previously,
on the basis that it doesn't add value, as it doesn't indicate that
any particular system registers or system instructions are available.

Therefore, remove `+d128` gating for these instructions too.

(In upcoming change #178913, some `tlbip` instructions, which are `sysp`
aliases are allowed to be used with either `+d128` or `tlbid`. If we don't
remove this gating, then it would require some ugly work-arounds in the
code to support the relaxation mandated by the 2025 MemSys specification.

In this change, retain `+d128` gating for all `tlbip` instructions, which
will then be loosened to either `+d128` or `+tlbid` in a subsequent
change)


  Commit: b3b6fff8b9c4e686889e8044ad7239a5c2aaf5fd
      https://github.com/llvm/llvm-project/commit/b3b6fff8b9c4e686889e8044ad7239a5c2aaf5fd
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/GettingStarted.rst
    M llvm/docs/HowToSubmitABug.rst

  Log Message:
  -----------
  docs: Update HowToSubmitABug to use llvm-reduce instead of bugpoint (#182310)

Convert the crash section to recommend llvm-reduce, and stop mentioning
bugpoint. The miscompilation section still uses bugpoint.


  Commit: 2db55dc1a6a0b1ffd9f34c66b6dbc9fb3229a678
      https://github.com/llvm/llvm-project/commit/2db55dc1a6a0b1ffd9f34c66b6dbc9fb3229a678
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/inversed-icmp-to-gather.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with incorrect inversed compares after throttling, NFC


  Commit: 9fa6eaaf837ca3a7326c904a7ec4e5a5bdfb0b5f
      https://github.com/llvm/llvm-project/commit/9fa6eaaf837ca3a7326c904a7ec4e5a5bdfb0b5f
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-dwarf.cpp

  Log Message:
  -----------
  [clang][DebugInfo] Add virtuality call-site target information in DWARF. (#182311)

Add missing
  'REQUIRES: x86-registered-target'

to fix buildbot failure:
  https://lab.llvm.org/buildbot/#/builders/190/builds/36803


  Commit: 969a326386029322995ed4715ec97f1f42d1fee4
      https://github.com/llvm/llvm-project/commit/969a326386029322995ed4715ec97f1f42d1fee4
  Author: hidekisaito <hidekido at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/back-off-barrier-subtarget-feature.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-store-barrier.mir

  Log Message:
  -----------
  [AMDGPU] BackOffBarrier feature added to gfx1250; Removed incorrect "DS Store drain" check. (#179818)

Missing BackOffBarrier feature added to gfx1250.
Checking for S_BARRIER only does not imply prior DS Stores getting
drained.


  Commit: 44f1a91ec54ab855bf0bee980dd9a96c066489ed
      https://github.com/llvm/llvm-project/commit/44f1a91ec54ab855bf0bee980dd9a96c066489ed
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td

  Log Message:
  -----------
  [RISCV] Add ComplexPatterns for matching xor/vmnot_vl+vmset_vl. NFC (#182071)

Xor is commutable and we don't guarantee which operand will be the
vmset_vl. Tablegen will generate all possible permutations when creating
RISCVGenDAGISel.inc. These xor/vmnot_vl are used by other commutable
nodes leading to quite a few patterns being generated by tablegen.

By using a ComplexPattern we can handle both cases with one piece of C++
code. This reduces the isel table by 2-3k.


  Commit: 0e29fa38648135be9b3b571279228175462dc799
      https://github.com/llvm/llvm-project/commit/0e29fa38648135be9b3b571279228175462dc799
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/test/CodeGenHIP/printf.cpp
    M clang/test/CodeGenHIP/printf_nonhostcall.cpp
    M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp

  Log Message:
  -----------
  [AMDGPUEmitPrintf] Fix operand order

Fix a typo in 87eee80dad79417e079c369b9ff5578873019b78, the
CreatePtrDiff operands were supposed to be the other way around.


  Commit: 2bd23d3fa688d0e25c8492ceeaa251af4759d559
      https://github.com/llvm/llvm-project/commit/2bd23d3fa688d0e25c8492ceeaa251af4759d559
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    A flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
    M flang/test/Transforms/FIRToMemRef/no-declare.mlir

  Log Message:
  -----------
  [flang] Lowering a ArrayCoorOp to arithmetic computations when a fir memref is a block argument (#182139)

Remove the special-case that handled `fir.array_coor` with a
block-argument base by converting the element ref result (!fir.ref<i32>
-> memref<i32>) and leaving fir.array_coor alive.

Instead, we now always convert the base (!fir.ref<!fir.array<...>> ->
memref<...>) and compute the memref indices from the fir.array_coor
operands, so loads/stores become memref.load/store base[indices] and
fir.array_coor can be erased when it’s only used by memory ops.


  Commit: 070db69bebad7c5d35d7b8327fa9dce597f60991
      https://github.com/llvm/llvm-project/commit/070db69bebad7c5d35d7b8327fa9dce597f60991
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
    M lldb/test/API/tools/lldb-dap/variables/main.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/CompileUnitsRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/DataBreakpointInfoRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/DAPTypes.h
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/ProtocolUtils.cpp
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp
    M lldb/unittests/DAP/CMakeLists.txt
    A lldb/unittests/DAP/ProtocolBaseTest.cpp
    M lldb/unittests/DAP/ProtocolTypesTest.cpp
    M lldb/unittests/DAP/TestBase.cpp
    M lldb/unittests/DAP/VariablesTest.cpp

  Log Message:
  -----------
  Reapply "[lldb-dap] Validate utf8 protocol messages." (#181930) (#182056)

This reverts commit 977d910d005c47f884ecf838e504da301b1124b9.

Addressing build issues with gcc.


  Commit: 7ae0a6e820fbf34351517d8513b98c3b8decee55
      https://github.com/llvm/llvm-project/commit/7ae0a6e820fbf34351517d8513b98c3b8decee55
  Author: Samarth Narang <70980689+snarang181 at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Interfaces/IndexingMapOpInterface.cpp
    M mlir/test/Dialect/Linalg/invalid.mlir

  Log Message:
  -----------
  [mlir][Interface] Allow scalar operands and require ranked shaped operands in IndexingMapOpInterface (#179072)

This change adjusts `IndexingMapOpInterface::verifyImpl`: Scalars are
allowed as operands (treated as rank-0), vectors remain allowed,
unranked tensors/memrefs are rejected with explicit diagnostics.

Fixes https://github.com/llvm/llvm-project/issues/179043


  Commit: 85e6134abafaa9be3b2dce24a499c20b66185eff
      https://github.com/llvm/llvm-project/commit/85e6134abafaa9be3b2dce24a499c20b66185eff
  Author: Darshan Bhat <darshanbhatsirsi at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/test/Dialect/Linalg/collapse-dim.mlir

  Log Message:
  -----------
  [MLIR] Fix a crash in CollapseLinalgDimensions (#181715)

This patch fixes #181610 
Added a check in areDimSequencesPreserved()
to verify that each map is a projected permutation before calling
isDimSequencePreserved().
If a map is not a projected permutation, the
function returns false (dimension sequences cannot be preserved in
non-projected-permutation maps).


  Commit: cbfb034354b19a8aaae545d1928203de963875cd
      https://github.com/llvm/llvm-project/commit/cbfb034354b19a8aaae545d1928203de963875cd
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for llvm-qualified-auto in LinalgTransformOps.cpp (NFC)


  Commit: e80e9405f91e35783d0cbc8f492af0684ec1a758
      https://github.com/llvm/llvm-project/commit/e80e9405f91e35783d0cbc8f492af0684ec1a758
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cmov-fp.ll
    M llvm/test/CodeGen/X86/dagcombine-select.ll
    M llvm/test/CodeGen/X86/fdiv-combine.ll
    M llvm/test/CodeGen/X86/fp128-select.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/select_const.ll
    M llvm/test/CodeGen/X86/sse-load-ret.ll

  Log Message:
  -----------
  [X86] combineCMov - fold CMOV(LOAD(PTR0),LOAD(PTR1)) -> LOAD(CMOV(PTR0,PTR1)) (#182084)

As discussed on #182021 - if we have equivalent simple loads (chain,
addressspace etc.), just with different pointers then we can select
between the pointers directly and perform just a single load, which in
most cases will avoid branching.

A future patch might be able to further simplify some (mainly stack?)
address math with CMOV(X,ADD(X,C1)) -> ADD(X,CMOV(0,C1)) /
CMOV(ADD(X,C0),ADD(X,C1)) -> ADD(X,CMOV(C0,C1))


  Commit: 7d9d392a1fa225950d5813a1355effb4f2c8a7f7
      https://github.com/llvm/llvm-project/commit/7d9d392a1fa225950d5813a1355effb4f2c8a7f7
  Author: Hood Chatham <roberthoodchatham at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    A llvm/test/CodeGen/WebAssembly/select-reftype.ll

  Log Message:
  -----------
  [WebAssembly] Fix SELECT_CC lowering for reference types (#181622)

SELECT_CC nodes with externref or funcref return types were not being
expanded, causing "Cannot select" errors during instruction selection.

This adds SELECT_CC to the list of operations that should be expanded
for reference types, similar to how it's already handled for scalar
types (i32, i64, f32, f64). This allows the SELECT_CC to be lowered to a
SELECT node, which already has instruction patterns defined in
WebAssemblyInstrRef.td.


  Commit: 8e85a42d5bcdcdc9176c984d3fbb74a4842058ac
      https://github.com/llvm/llvm-project/commit/8e85a42d5bcdcdc9176c984d3fbb74a4842058ac
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    A mlir/include/mlir/Dialect/OpenACC/OpenACCCGAttributes.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
    A mlir/test/Dialect/OpenACC/invalid-cg.mlir
    A mlir/test/Dialect/OpenACC/ops-cg.mlir

  Log Message:
  -----------
  [mlir][acc] Add attributes for parallelism dimensions (#182209)

As OpenACC gets lowered to eventually mapping to GPU (via GPU dialect),
we need to track parallelism assignment which we can use in how
variables get privatized, how barriers and synchronizations are inserted
to ensure appropriate OpenACC execution model, and for loop
work-sharing. This adds GPUParallelDimAttr and GPUParallelDimsAttr for
this.


  Commit: 6fdbcf68ba214725444103ff99668d78240562ea
      https://github.com/llvm/llvm-project/commit/6fdbcf68ba214725444103ff99668d78240562ea
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llc.rst
    M llvm/docs/CommandGuide/lli.rst
    M llvm/tools/llc/llc.cpp
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  tools: Remove untested PluginLoader includes (#117644)

As far as I can tell there are 2 parallel plugin mechanisms.
opt -load=plugin does not work, and is ignored. opt -load-pass-plugin
does work. PluginLoader.h forces a static definition of the "load"
cl::opt into included TUs. Delete the cases with no tests.


  Commit: c3745fe4ea78c40b1eb595718e4ed2ca2d22e090
      https://github.com/llvm/llvm-project/commit/c3745fe4ea78c40b1eb595718e4ed2ca2d22e090
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/HowToSubmitABug.rst

  Log Message:
  -----------
  docs: Delete incorrect code generation section of HowToSubmitABug (#182315)

I've never used this. Based on the description here, I'm assuming
it relied on the C backend, which was removed in 2012.


  Commit: ac16ce31578c7dab597a734d89caa50870f0b801
      https://github.com/llvm/llvm-project/commit/ac16ce31578c7dab597a734d89caa50870f0b801
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/machine-sink-multidef.mir

  Log Message:
  -----------
  [ARM] Regenerate checks in machine-sink-multidef.mir (#182314)


  Commit: 38d804725fb0b353e474e4409fbd3926d4db6384
      https://github.com/llvm/llvm-project/commit/38d804725fb0b353e474e4409fbd3926d4db6384
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/inversed-icmp-to-gather.ll

  Log Message:
  -----------
  [SLP]Do not mark for transforming to buildvector inversed compares

Inversed compares must remain vector nodes, they should be converted to
gathers to generate correct code.

Fixes issue reported in https://github.com/llvm/llvm-project/pull/181580#issuecomment-3926951332


  Commit: f446cbb59093b08f8bad8427ec84c3a58b6ae19e
      https://github.com/llvm/llvm-project/commit/f446cbb59093b08f8bad8427ec84c3a58b6ae19e
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: RegBankLegalize for amdgcn_bitop3 (#181877)


  Commit: fab8cb48dcbb3783e7d9b02d5426b88a5423ad49
      https://github.com/llvm/llvm-project/commit/fab8cb48dcbb3783e7d9b02d5426b88a5423ad49
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGen/builtins-x86.c

  Log Message:
  -----------
  [CIR]Upstream support for IITDescriptor::Pointer and Vector types (#182112)


  Commit: 680b56aa4b426253d1320e309e14534825b20774
      https://github.com/llvm/llvm-project/commit/680b56aa4b426253d1320e309e14534825b20774
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/utils/emacs/llvm-mir-mode.el
    M llvm/utils/emacs/llvm-mode.el
    M mlir/utils/emacs/mlir-mode.el

  Log Message:
  -----------
  [NFC][emacs] Fix emacs lints in the LLVM and MLIR modes (#182074)

This mainly involved explicitly declaring minimum emacs versions for
setq-local and adding a lexical-binding annotaton.

The commit also removes some workarounds from the MLIR mode for Emacs 23
(!).


  Commit: bcfff580f454ccabd56a96fe7cedf7373b687218
      https://github.com/llvm/llvm-project/commit/bcfff580f454ccabd56a96fe7cedf7373b687218
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll

  Log Message:
  -----------
  AMDGPU: Strip sign bit operations on llvm.amdgcn.trig.preop uses (#179712)

The instruction ignores the sign bit, so we can find the magnitude
source. The real library use has a fabs input which this avoids.

stripSignOnlyFPOps should probably go directly into PatternMatch in some
form.


  Commit: 015ea59df7dfc592a71d37d1183254b9e567cbfc
      https://github.com/llvm/llvm-project/commit/015ea59df7dfc592a71d37d1183254b9e567cbfc
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
    M llvm/test/MC/AArch64/armv9a-tlbip.s

  Log Message:
  -----------
  [AArch64][llvm] Remove `+xs` gating for `tlbip *nxs` instructions (#179435)

A recent specification update has removed `FEAT_XS` gating for `tlbip *nxs`
instructions. It remains gated on `FEAT_XS` for `tlbi *nxs` instructions.


  Commit: f437315bc3e6d403e41e4c43341f53513e5268fb
      https://github.com/llvm/llvm-project/commit/f437315bc3e6d403e41e4c43341f53513e5268fb
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-call.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-waterfall-call.mir

  Log Message:
  -----------
  [AMDGPU][GISel] Add RegBankLegalize support for G_SI_CALL (#165747)


  Commit: 6e9a7367139ab3fae805d66a66247865624e4c69
      https://github.com/llvm/llvm-project/commit/6e9a7367139ab3fae805d66a66247865624e4c69
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix 'this' origin handling in lambdas (#182300)

Fixes https://github.com/llvm/llvm-project/issues/182291


  Commit: 025e11e24ce92b602ee6bca2642b5b4ebd88a19f
      https://github.com/llvm/llvm-project/commit/025e11e24ce92b602ee6bca2642b5b4ebd88a19f
  Author: Thibaut Goetghebuer-Planchon <thibaut.goetghebuer-planchon at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32-aggressive.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir

  Log Message:
  -----------
  [mlir][tosa] Use 0 values for the dense resource in tosa-narrow-* tests (#182321)

For the test portability between little-endian and big-endian, just use
zeros as the dense resource values. It doesn't test the actual narrowing
but tests that the other conversions went well.


  Commit: a8cd1ac7058efdf7a9be823182da884243ca6c0b
      https://github.com/llvm/llvm-project/commit/a8cd1ac7058efdf7a9be823182da884243ca6c0b
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/source/Plugins/Process/CMakeLists.txt
    M lldb/source/Plugins/Process/FreeBSDKernel/CMakeLists.txt
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Remove libfbsdvmcore support (#181283)

Due to libfbsdvmcore, adding new features requires modifying both
`ProcessFreeBSDKernelFVC` and `ProcessFreeBSDKernelKVM` which also
requires testing on both. This is highly inefficient while the user base
of fvc is currently invisible since most package manager don't ship
libfbsdvmcore with LLDB.

There is still demand for cross-platform kernel dump debugging. This
will be implemented in future either by cloning and embedding kvm
interface into LLDB or unifying dump formats to ELF core with
minidump-to-elf conversion tool on FreeBSD side.

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: e7266ad8a65ad8c14229894fabdf4ad285f236af
      https://github.com/llvm/llvm-project/commit/e7266ad8a65ad8c14229894fabdf4ad285f236af
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Host/windows/PseudoConsole.cpp

  Log Message:
  -----------
  [lldb][windows] mitigate a race condition when closing the ConPTY (#182109)

This patch mitigates a race condition when closing the ConPTY of a
process on Windows.

This is a temporary solution, I am working on a better one. This would
however unlock the
[lldb-aarch64-windows](https://lab.llvm.org/buildbot/#/builders/141/builds/15535)
bot while still keeping STDIN and STDOUT support in lldb.

The race condition happens because the ConPTY is closed when a process
exits, however the data was not fully received yet from the process.
I think the correct solution would be to close the ConPTY when we
receive the EOF in `ConnectionGenericFile::Read`.


  Commit: 4db69f41457e11af677461124f4bf7f7543b6772
      https://github.com/llvm/llvm-project/commit/4db69f41457e11af677461124f4bf7f7543b6772
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/test/CodeGen/AArch64/cfguard-module-flag.ll
    M llvm/test/CodeGen/WinCFGuard/cfguard.ll
    M llvm/test/CodeGen/X86/cfguard-module-flag.ll

  Log Message:
  -----------
  [win] Control Flow Guard: Don't set the GuardCF COFF feature if the checks are missing (#182205)

LLVM allows Windows Control Flow Guard to be enabled in "table only"
mode where it emits the Control Flow Guard tables (indicating addresses
for valid targets) but doesn't emit any checks at call sites. This is
almost the same as MSVC's `/d2guardnochecks` flag, EXCEPT MSVC doesn't
set the COFF feature bit indicating that Control Flow Guard is enabled
(`GuardCF`) whereas LLVM does.

This change aligns LLVM with MSVC: in table only mode, the Control Flow
Guard COFF feature bit (`GuardCF`) will not be set.


  Commit: e87ac294333dd978b8ef49e8e51ff4e23c65b26b
      https://github.com/llvm/llvm-project/commit/e87ac294333dd978b8ef49e8e51ff4e23c65b26b
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/test/MachineVerifier/AMDGPU/unsupported-subreg-index-aligned-vgpr-check.mir

  Log Message:
  -----------
  [NFC][CodeGen] Refactor subregister index verification for MIR (#181921)

Refactor register class/subreg-index verification against the
instruction specified class:
- Avoid inflating the register's class (i.e., no need to call
`getLargestLegalSuperClass`).
- Check validity with `getMatchingSuperRegClass(RC, DRC, SubIdx) == RC`.
- Add some explanatory comments for this check.
- Extended a unit test to exercise this verification failure.


  Commit: 657eef69e4b418ed4a0326056582f512d851d18e
      https://github.com/llvm/llvm-project/commit/657eef69e4b418ed4a0326056582f512d851d18e
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    A llvm/test/ThinLTO/X86/Inputs/export2.ll
    A llvm/test/ThinLTO/X86/export2.ll
    M llvm/test/ThinLTO/X86/funcattrs-prop-exported-internal.ll
    M llvm/test/ThinLTO/X86/module_asm2.ll
    M llvm/tools/llvm-link/llvm-link.cpp

  Log Message:
  -----------
  [ThinLTO] Distinguish symbols that are promoted (#181946)

Thinlink may decide some symbols with internal linkage should get promoted to external. Such a symbol, when being imported, would have its name changed by appending a suffix (`.llvm.<a hash>`) to avoid collisions - since internal linkage symbols have non-unique names.

Later, still during Thinlink, in `thinLTOResolvePrevailingGUID`, the fact that this symbol was promoted is not considered and we set its linkage to `AvailableExternally`(when reading `thinLTOResolvePrevailingGUID`, note that "prevailing-ness" is not a concept that the original symbol would have participated in)



This should result in a final (native) link error, because the symbol's definition may be elided. But we get lucky: in the post-thinlink backend, during import, in `llvm::thinLTOFinalizeInModule`, after this symbol's name was changed and its linkage also changed to `External` (see `FunctionImportGlobalProcessing::processGlobalForThinLTO`), we try to find it in the `DefinedGlobals`, fail (because its guid is computed from its changed name)) and leave its linkage as-is. Which happens to be correct.

This patch makes this outcome intentional rather than accidental. It becomes critical once we land [this RFC](https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801).

As a side-benefit, the extra attribute propagations that weren't happening in `llvm::thinLTOFinalizeInModule` now do.


  Commit: aa2dac40de5c1d9c4e1d00d445d90621fe4996fc
      https://github.com/llvm/llvm-project/commit/aa2dac40de5c1d9c4e1d00d445d90621fe4996fc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/add-sub-bool.ll
    M llvm/test/CodeGen/X86/bittest-big-integer.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [DAG] SimplifyDemandedBits - fold FSHR(X,Y,Amt) -> SRL(Y,Amt) (#182294)

If a FSHR node's DemandedBits mask and maximum shift amount doesn't
demand any bits from the X upper register, then simplify to a SRL node.

FSHL is less useful but we could add it as a future patch if there's
interest

Based off a discussion on #182021


  Commit: 07ee05235065c13f09435481c1983e70087caacd
      https://github.com/llvm/llvm-project/commit/07ee05235065c13f09435481c1983e70087caacd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-mask-bit-manip.ll

  Log Message:
  -----------
  [X86] avx512-mask-bit-manip.ll - fix T1MSKC pattern (#182308)

Missing NOT


  Commit: c34fb00c67f285e2546595d78755b38650e4d26f
      https://github.com/llvm/llvm-project/commit/c34fb00c67f285e2546595d78755b38650e4d26f
  Author: Darshan Bhat <darshanbhatsirsi at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/test/Dialect/Affine/loop-coalescing.mlir

  Log Message:
  -----------
  [mlir] Fix a crash in SCF loop coalescing when loop step is zero (#181893)

Fixes #181590 
The affine-loop-coalescing pass crashes when loop has a statistically
known zero step. This fix does an early bail-out in coalesceLoops that
return failure when a loop has a known zero step.


  Commit: d5b6b465ff87d8a233cfe50dc5d01a873c560b37
      https://github.com/llvm/llvm-project/commit/d5b6b465ff87d8a233cfe50dc5d01a873c560b37
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/utils/emacs/tablegen-mode.el

  Log Message:
  -----------
  [emacs] Rework tablegen mode (#182076)

This commit reworks tablegen-mode to be derived from prog-mode and
removes a lot of the manual work that define-derived-mode does for you
these days, along with fixing other lints (such as an over-long
summary).

This is a major version bump because td-decorators-face has been renamed
to tablegen-decorators-face in order to not pollute other namespaces.


  Commit: e4679470470e76c8a83b812269caa74ee9a768e0
      https://github.com/llvm/llvm-project/commit/e4679470470e76c8a83b812269caa74ee9a768e0
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/module_cache/simple_exe/TestModuleCacheSimple.py

  Log Message:
  -----------
  [lldb] Disable shared build for TestModuleCacheSimple.py (#182329)

Follow up to #181720.


  Commit: fece61b281625c88251b88cc790f71a1071b830e
      https://github.com/llvm/llvm-project/commit/fece61b281625c88251b88cc790f71a1071b830e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFrameProviderPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFrameProviderPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStopHookPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h

  Log Message:
  -----------
  [lldb] Remove check for LLDB_ENABLE_PYTHON in SWIGPythonBridge.h (#182326)

The header guard is redundant because
`source/Plugins/ScriptInterpreter/CMakeLists.txt` already gates the
entire `Python/` subdirectory behind `LLDB_ENABLE_PYTHON`.


  Commit: ea4bbfbf5b5b24a11874af07d20076e944aac12d
      https://github.com/llvm/llvm-project/commit/ea4bbfbf5b5b24a11874af07d20076e944aac12d
  Author: Konstantin Zhuravlyov <kzhuravl_dev at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  AMDGPU/Docs: Reserve 0x060 and 0x070 ELF MACH (e_flags) (#182341)


  Commit: 61caac54df7fc928a040d5c83121539d0b87f1bf
      https://github.com/llvm/llvm-project/commit/61caac54df7fc928a040d5c83121539d0b87f1bf
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/docs/resources/formatterbytecode.rst

  Log Message:
  -----------
  [lldb] Fix small error in formatterbytecode.rst (#182342)


  Commit: ed0ba3cb4553dac9bdd14803b17795a4cfb89de6
      https://github.com/llvm/llvm-project/commit/ed0ba3cb4553dac9bdd14803b17795a4cfb89de6
  Author: michaelselehov <michael.selehov at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    A llvm/test/CodeGen/AMDGPU/loop-header-align-gfx950.mir

  Log Message:
  -----------
  [AMDGPU] Align loop headers to prevent instruction fetch split on GFX950 (#181999)

On GFX9, the instruction sequencer fetches 32 bytes at a time. When an
8-byte instruction at a loop header straddles a 32-byte fetch window
boundary, the sequencer must perform two fetches after a backward
branch, incurring a delay. On GFX950, this causes additional performance
issues.

This patch adds 32-byte alignment (.p2align 5, , 4) for loop headers on
GFX950 when the first real instruction is 8 bytes. At most one s_nop (4
bytes, 1 quad-cycle before the loop) is used for padding. If more than 4
bytes of padding were needed, the 8-byte instruction would not straddle
a 32-byte boundary anyway, so alignment is skipped.

Note: the alignment decision is made during block-placement, before
si-insert-waitcnts. In loops where a 4-byte S_WAITCNT is later inserted
as the first instruction, the alignment becomes redundant but mostly
harmless (at most one extra s_nop per affected loop).

Assisted-by: Claude (Anthropic)


  Commit: 92cc4ffb81f06413592d739c4e58071a9a4b7f70
      https://github.com/llvm/llvm-project/commit/92cc4ffb81f06413592d739c4e58071a9a4b7f70
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrAltivec.td
    M llvm/lib/Target/PowerPC/PPCInstrFuture.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrP10.td
    M llvm/lib/Target/PowerPC/PPCInstrVSX.td
    A llvm/lib/Target/PowerPC/PPCOperands.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td

  Log Message:
  -----------
  [PowerPC] Refactor immediate operand definitions (#179983)

Refactors PowerPC's immediate operand definitions using multiclasses
to reduce code duplication and improve maintainability.

Changes include:
- Established consistent naming: i32 versions without suffix, i64
versions with '64' suffix
- Predicate functions added to imm/timm nodes to verify immdiate values.

Assistance provided by AI.


  Commit: a8f2e80d5fe3e713330eb34ad878beeb71e43e0c
      https://github.com/llvm/llvm-project/commit/a8f2e80d5fe3e713330eb34ad878beeb71e43e0c
  Author: Fabian Schuiki <fabian at schuiki.ch>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A mlir/test/mlir-tblgen/gen-op-doc.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/tools/mlir-tblgen/OpDocGen.cpp

  Log Message:
  -----------
  [MLIR][tblgen] Honor `-dialect` in `-gen-{attrdef,op,typedef,enum}-doc` (#182183)

Make all dialect documentation generators use the same set of records as
`-gen-dialect-doc`, which honors the `-dialect` tblgen option to filter
records by dialect. Add a `-keep-op-source-order` option to allow
`-gen-op-doc` to continue producing unsorted op lists if needed.

This commit factors the record collection, filtering, and sorting
performed in `emitDialectDoc` out into a separate `collectRecords`
function, returning a `DialectRecords` with the results. The emit
functions now all accept a `DialectRecords` argument instead of
collecting records themselves. Most changes are mechanical renamings and
moving code around.

This fixes a confusing issue where `gen-dialect-doc` would produce the
entire documentation for a dialect, but individual calls to
`gen-attrdef-doc` and the like would seemingly operate on a different
set of records, potentially covering multiple dialects. This all produce
the overall documentation now.


  Commit: 1a6b44b2847d10d29c9bf16b7852452c349f580c
      https://github.com/llvm/llvm-project/commit/1a6b44b2847d10d29c9bf16b7852452c349f580c
  Author: Ayush Kumar Gaur <132849148+Ayush3941 at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
    A mlir/test/Dialect/ArmSME/tile-allocation-nested-regions.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Replace nested-region assertion in tile allocation with diagnostic (#181934)

Replace the nested-region assertion in ArmSME tile allocation with a
proper diagnostic and graceful failure.

Fixes #181593


  Commit: a7b5cb83f54d310e4347ee6c5cf4ae7efdd3a82a
      https://github.com/llvm/llvm-project/commit/a7b5cb83f54d310e4347ee6c5cf4ae7efdd3a82a
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToTensor/tosa-to-tensor-invalid.mlir
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-f64-to-f32.mlir
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Improve slice op verifier (#181889)

The slice op verifier was missing checks on the values of start and size
inputs. Similar to other op verifiers, shape_t const inputs have been
checked for validity against the spec. The commit adds checks for the
following conditions:
- start values must be non-negative
- size values must be > 0
- start + size must be less than or equal to the input dimension size
- the output shape must be consistent with the size values

The commit also allows kInferableDimSize values (-1) to be passed in for
start and size, which are used to indicate that the dimension size can
be inferred by the compiler. The verifier will skip checks for any start
or size value that is kInferableDimSize. With shape expressions being
added, we should no longer require these values, but removal will be
handled in a separate commit.


  Commit: 297965495b8b338c2becc0b3f354a476d90aba20
      https://github.com/llvm/llvm-project/commit/297965495b8b338c2becc0b3f354a476d90aba20
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCUDANV.cpp
    M clang/test/CIR/CodeGenCUDA/kernel-call.cu

  Log Message:
  -----------
  [CIR][HIP] Add Stub body emission test coverage and Fix kernelHandle storage (#179823)

Related: https://github.com/llvm/llvm-project/issues/179278,
https://github.com/llvm/llvm-project/issues/175871

Besides adding extra test coverage for hip:

Given that HIP represents kernel handles as a global Op. In my previous
patch there was a slight miss-use of the CIR api. since
`getOrCreateCIRGlobal` expects a VarDecl for location info but
`gd.getDecl()` (in this scope) is a FunctionDecl, trying to cast it to
the proper type would provoke that value to be null. Causing a crash
when generating the proper mlir location from the AST. here:
https://github.com/llvm/llvm-project/blob/fab5b1858d02ffed88b76d33f7c691ee4e0c82fb/clang/lib/CIR/CodeGen/CIRGenModule.cpp#L731

Fixed it by using `createGlobalOp` which allows to use the location from
the proper funcOp itself.


  Commit: eec7a2f62046aeb8bd7896777982341b1b617b1c
      https://github.com/llvm/llvm-project/commit/eec7a2f62046aeb8bd7896777982341b1b617b1c
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Target/RegisterContext.cpp

  Log Message:
  -----------
  [lldb] Remove redundant nullptr check (NFC) (#182352)

`target` cannot be null because `target_sp` is non-null.


  Commit: efb397ce707df0a1fff95fba4b94bc29ee7c722d
      https://github.com/llvm/llvm-project/commit/efb397ce707df0a1fff95fba4b94bc29ee7c722d
  Author: DylanFleming-arm <85629460+DylanFleming-arm at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/lib/CMakeLists.txt
    M libc/src/CMakeLists.txt
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/macros/properties/cpu_features.h
    A libc/src/__support/mathvec/CMakeLists.txt
    A libc/src/__support/mathvec/common_constants.h
    A libc/src/__support/mathvec/expf.h
    A libc/src/__support/mathvec/expf_utils.h
    A libc/src/mathvec/CMakeLists.txt
    A libc/src/mathvec/expf.h
    A libc/src/mathvec/generic/CMakeLists.txt
    A libc/src/mathvec/generic/expf.cpp
    A libc/test/UnitTest/SIMDMatcher.h
    M libc/test/src/CMakeLists.txt
    A libc/test/src/mathvec/CMakeLists.txt
    A libc/test/src/mathvec/expf_test.cpp

  Log Message:
  -----------
  [libc][mathvec] Initial commit for LIBC vector math component (#173058)

Created mathvec directories and unittest framework for vector math
functions, as well as an initial implementation of vector expf, which is
presently CR for round-to-nearest.

---------

Co-authored-by: Pierre Blanchard <pierre.blanchard at arm.com>


  Commit: ea27498a5ca6752396c7be936c09b3d47bbef5bc
      https://github.com/llvm/llvm-project/commit/ea27498a5ca6752396c7be936c09b3d47bbef5bc
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    A llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_diff_types.mir

  Log Message:
  -----------
  [AMDGPU] Fix handling of setting register classes in MFMA scheduler rewrite stage (#181047)

Fixes problem with setting/resetting register classes in the MFMA
rewrite sched stage. The code assumed that the dest and OpC would be the
same class. This is not true if one uses subregs. This fixes issue
#177696.


  Commit: 413cafa4624eb37e586e266f44abd64896e1c598
      https://github.com/llvm/llvm-project/commit/413cafa4624eb37e586e266f44abd64896e1c598
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/test/Transforms/LoopUnroll/debug.ll

  Log Message:
  -----------
  [LoopUnrollPass] Remove redundant debug message in `tryToUnrollLoop()` (#181954)

Remove the redundant debug message. 

While we're here, adopt the same debug message language that's used in
#178476 and use an `if` instead of a single `case` `switch` statement.


  Commit: 0dafeb97a4687c29f5182fa0239c7fa39ee23091
      https://github.com/llvm/llvm-project/commit/0dafeb97a4687c29f5182fa0239c7fa39ee23091
  Author: Luisa Cicolini <48860705+luisacicolini at users.noreply.github.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-add.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-addv.mir

  Log Message:
  -----------
  [GIsel] import `(not (add X, -1)) -> (neg X)` to GlobalISel (#181640)

We port the rewrite `(not (add X, -1)) -> (neg X)` from SelectionDAG to
GlobalISel. I contemplated adding a `G_NEG` primitive initially, but
given that the [SelectionDAG pattern rewrites to a
subtraction](https://github.com/llvm/llvm-project/blob/20aff2085c358d3e112b245494161ddb9ffe0410/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp#L1649),
I implemented the rhs of the rewrite as a subtraction directly,
specifying the comment accordingly.


  Commit: ec8b9ca47dfc1bbab0f9232c86057131db0e13ee
      https://github.com/llvm/llvm-project/commit/ec8b9ca47dfc1bbab0f9232c86057131db0e13ee
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    R clang/test/DebugInfo/CXX/callsite-base.cpp
    R clang/test/DebugInfo/CXX/callsite-derived.cpp
    R clang/test/DebugInfo/CXX/callsite-edges.cpp
    R cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/callsite-dwarf.cpp
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll

  Log Message:
  -----------
  Revert "[clang][DebugInfo] Add virtuality call-site target informatio… (#182343)

…n in DWARF. (#167666)"

This reverts commit 418ba6e8ae2cde7924388142b8ab90c636d2c21f.

The commit caused an ICE due to hitting unreachable in
llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp:1307

Fixes #182337


  Commit: 17aa4bb9430fefbd916baeb22950d8806fa3b6a8
      https://github.com/llvm/llvm-project/commit/17aa4bb9430fefbd916baeb22950d8806fa3b6a8
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Handle null Type in CanTriviallyDestruct (#182129)

Added an early exit for when CanTriviallyDestruct encounters a QualType
without a Type.


  Commit: 918ef6cfaf6ee928576457a1666d7df782d3c89a
      https://github.com/llvm/llvm-project/commit/918ef6cfaf6ee928576457a1666d7df782d3c89a
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-assert-align.mir

  Log Message:
  -----------
  [AMDGPU][GISel] Add RegbankLegalize Rules for G_ASSERT_ALIGN (#182353)


  Commit: aeaea7a5f1005b23039a2bfca2b7a74731994d12
      https://github.com/llvm/llvm-project/commit/aeaea7a5f1005b23039a2bfca2b7a74731994d12
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    A llvm/test/Transforms/InstCombine/bitcast-select-const-vector.ll
    M llvm/test/Transforms/InstCombine/copysign.ll
    M llvm/test/Transforms/InstCombine/fold-bin-operand.ll

  Log Message:
  -----------
  InstCombine: Fold bitcast of vector with constant to scalar (#179042)

Fold bitcast (select cond, val, const) ->
  select cond, (bitcast val), (bitcast const)

Rocm device libs has an unfortunate amount of code that does bithacking
on the sign bit of double values by casting to <2 x i32> and operating
on the high element. This breaks value tracking optimizations on the
fp value.

The existing transform would only do this if the input to the select was
also a bitcast with a single use, and if it didn't convert between
vector and scalar.


  Commit: ae66e34c01c3f33381949ab85fd77860ccd65a8e
      https://github.com/llvm/llvm-project/commit/ae66e34c01c3f33381949ab85fd77860ccd65a8e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNRewritePartialRegUses.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Add helper function to check SubReg validity (#181489)

Add function `isSubRegValidForRegClass` to check if a sub-register index
can be used with a register class and use it in MIR verifier and a few
other places.


  Commit: 3c6523dcb8ebc0396f69c578285599b66e16dce7
      https://github.com/llvm/llvm-project/commit/3c6523dcb8ebc0396f69c578285599b66e16dce7
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    R flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
    M flang/test/Transforms/FIRToMemRef/no-declare.mlir

  Log Message:
  -----------
  Revert "[flang] Lowering a ArrayCoorOp to arithmetic computations whe… (#182365)

This reverts commit 2bd23d3fa688d0e25c8492ceeaa251af4759d559.


  Commit: dcd2b08222838cad47e76c792e51b4c44fb61ae6
      https://github.com/llvm/llvm-project/commit/dcd2b08222838cad47e76c792e51b4c44fb61ae6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rv64p.ll

  Log Message:
  -----------
  [RISCV] Use FSHR in LowerShiftRightParts for P extension on RV64. (#181234)

We can't do the NSRLI trick on RV64, but we can use srx similar to what
we do in LowerShiftLeftParts. We need an additional fixup step for the
FSHR result that NSRLI doesn't need.

Assisted-by: claude


  Commit: 3c60be2c356a2769c7e930a9d44ccb1881602e6a
      https://github.com/llvm/llvm-project/commit/3c60be2c356a2769c7e930a9d44ccb1881602e6a
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] Fix build for 8e85a42d5b (#182359)


  Commit: 3d712010f3d1ac4b1b134d9273cb2682e2de665f
      https://github.com/llvm/llvm-project/commit/3d712010f3d1ac4b1b134d9273cb2682e2de665f
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/postmortem/FreeBSDKernel/TestFreeBSDKernelVMCore.py

  Log Message:
  -----------
  [lldb][tests/FreeBSDKernel] Skip tests on non-FreeBSD hosts (#182363)

#181283 removed fvc but it still remains in tests. This causes testing
on non-FreeBSD hosts. Thus add `skipUnlessPlatform` decorator.

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: 6233c4e488d540f31cad30e47e10abb66dd99f19
      https://github.com/llvm/llvm-project/commit/6233c4e488d540f31cad30e47e10abb66dd99f19
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/utils/gn/build/driver_executable.gni
    M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn

  Log Message:
  -----------
  gn build: Port 15488a7f78ce


  Commit: 76525a8d3b5caeb849635a1fe3438dcde315dc2c
      https://github.com/llvm/llvm-project/commit/76525a8d3b5caeb849635a1fe3438dcde315dc2c
  Author: Mikhail Romanov <romanov_mik at mail.ru>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/canonicalize.mlir

  Log Message:
  -----------
  [MLIR] Fix canonicalization of extract_slice(unpack) (#181840)


  Commit: 546244353aee77bfc26662dd99f1a74667c76247
      https://github.com/llvm/llvm-project/commit/546244353aee77bfc26662dd99f1a74667c76247
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVTypeInst.cpp

  Log Message:
  -----------
  [SPIRV] Mark function only used in assert maybe_unused

https://lab.llvm.org/staging/#/builders/227/builds/519


  Commit: f33f9a0cf54a7a3ee7ea76c6780d699c46957f9c
      https://github.com/llvm/llvm-project/commit/f33f9a0cf54a7a3ee7ea76c6780d699c46957f9c
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    R mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir
    R mlir/test/Dialect/Vector/vector-multi-reduction-outer-lowering.mlir
    A mlir/test/Dialect/Vector/vector-multi-reduction-unrolling.mlir
    M mlir/test/python/dialects/transform_vector_ext.py

  Log Message:
  -----------
  [mlir][vector] Add apply_patterns.vector.multi_reduction_unrolling. (#182113)

* Adds vector transform op
`apply_patterns.vector.multi_reduction_unrolling`
* Adds test for `populateVectorMultiReductionUnrollingPatterns`
* Deletes old test files `vector-multi-reduction-lowering.mlir` and
`vector-multi-reduction-lowering-outer.mlir`. Tests that exercise these
patterns exist in `vector-multi-reduction-flattening.mlir`,
`vector-multi-reduction-reorder-and-expand.mlir` and
`vector-multi-reduction-unrolling.mlir`

Assisted-by: claude


  Commit: 9845f6a088d0b7b34fb6311969df235de19b9f49
      https://github.com/llvm/llvm-project/commit/9845f6a088d0b7b34fb6311969df235de19b9f49
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [LTO] Refactor LTO link optimization remarks handling (NFC) (#181269)

Centralize the setup and finalization of optimization remarks for LTO
link actions
outside of the pass pipeline. This ensures that remarks are correctly
captured across
all exit paths from the LTO pipeline. 

The motivation for this refactoring is to provide a cleaner and more
robust
interface for managing diagnostics, and to enable easier remark emission
during
the thin link phase in a follow-on PR.

Key changes:
- Added a setupOptimizationRemarks on the LTO class. Call it from
LTO::run
  and remove the existing setup from runRegularLTO.
- Added a unified diagnostic API to the LTO class (emitRemark) and use
that
  in linkRegularLTO.
- Centralize the finalizeOptimizationRemarks call in LTO::cleanup, which
is already
  invoked by LTO::run's scope_exit handler.


  Commit: 0364443d79da90e6ab55a7a68deae5071b077f8f
      https://github.com/llvm/llvm-project/commit/0364443d79da90e6ab55a7a68deae5071b077f8f
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel][mlir] Fix bazel for a8f2e80d5f (#182372)


  Commit: 35b5d13c45cd9c0d7c38120eae536f17ec9541a3
      https://github.com/llvm/llvm-project/commit/35b5d13c45cd9c0d7c38120eae536f17ec9541a3
  Author: Roman Vinogradov <vinogradov.roman at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_poisoning.cpp
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp

  Log Message:
  -----------
  [ASan] Fix crash in __asan_region_is_poisoned at application memory boundaries (#180223)

`__asan_region_is_poisoned()` can crash when called on a region fully
contained in the last 8 bytes (shadow-granularity) before the end of an
ASan application memory range (kLowMemEnd / kMidMemEnd / kHighMemEnd).
    
The function performs a fast-path check by rounding UP the begin address
and rounding DOWN the end address of the region (aligned to
`ASAN_SHADOW_GRANULARITY`) and then scanning the corresponding shadow
range via `MemToShadow()` and `mem_is_zero()`. The implementation of
`MemToShadow()` assumes that `RoundUpTo(beg, ASAN_SHADOW_GRANULARITY)`
remains within the same application memory range. That assumption is
incorrect near upper bound of a range: for example, begin address within
the last 8 bytes of the high memory range
(`kHighMemEnd=0x0000'7fff'ffff'ffff`), which is the max user address of
VAS on x86_64, may be rounded UP so it crosses the upper bound
kHighMemEnd. In such cases MemToShadow() is invoked on an out-of-range
address and crashes.

Precisely, the following calls crash in `MemToShadow(aligned_b)` because
`aligned_b = RoundUpTo(beg, ASAN_SHADOW_GRANULARITY)` returns
`0x0000'8000'0000'0000` which is 1 byte beyond the VAS:

`__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fff9, size); // 1 <=
size <= 6
__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fffa, size); // 1 <=
size <= 5
__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fffb, size); // 1 <=
size <= 4
__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fffc, size); // 1 <=
size <= 3
__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fffd, size); // 1 <=
size <= 2
__asan_region_is_poisoned((void*)0x0000'7fff'ffff'fffe, size); // size =
1`

Fix this by detecting cases earlier where the shadow range is empty
(aligned_e < aligned_b) and returning earlier without calling
MemToShadow() or mem_is_zero().
    
Add tests checking regions at the ends of ASan LowMem, MidMem, and
HighMem application memory ranges to ensure __asan_region_is_poisoned()
no longer crashes on these boundary cases.


  Commit: 79697b8a5bcc4438fde17ba28844b54241dcb976
      https://github.com/llvm/llvm-project/commit/79697b8a5bcc4438fde17ba28844b54241dcb976
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M mlir/lib/Target/LLVM/CMakeLists.txt
    M mlir/lib/Target/LLVM/XeVM/Target.cpp

  Log Message:
  -----------
  [MLIR][XeVM] Revert PR179557 (#182373)

Revert #179557 as the change relies on private non export API.


  Commit: 650e898c45907bb5b038433e5269e8204fbdc11a
      https://github.com/llvm/llvm-project/commit/650e898c45907bb5b038433e5269e8204fbdc11a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h

  Log Message:
  -----------
  [NFC][CodeGen] Rewrite comment for `getSubRegisterClass` (#182339)

Change the description of `getSubRegisterClass` to be more accurate.
Additionally, reformat some existing comments to use `\p` to denote
function parameters.


  Commit: 29d4fea59bfa8ab3be0773fdd673848ae05cfbfd
      https://github.com/llvm/llvm-project/commit/29d4fea59bfa8ab3be0773fdd673848ae05cfbfd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll

  Log Message:
  -----------
  [SLP]Handle mixed select-to-bicasts and general reductions

If the reduction tree represents mixed select-to-bitcasts and general
reductions, need to handle them correctly to avoid a compiler crash

Fixes https://github.com/llvm/llvm-project/pull/181940#issuecomment-3929220929


  Commit: 4cdbb95d91063640003450759f15976d8bc59dc9
      https://github.com/llvm/llvm-project/commit/4cdbb95d91063640003450759f15976d8bc59dc9
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp

  Log Message:
  -----------
  [lldb] Check the shared cache binary provider for Simulator sessions (#182216)

The code to check with the shared cache binary provider was previously
in the native host platform (PlatformDarwinDevice), but it also needs to
be called from PlatformAppleSimulator for simulator debug sessions. Move
the code to the base class PlatformDarwin and call it from both
subclasses. No changes to the code itself, just moving it to the base
class.

rdar://170693756


  Commit: 7f631bb523a34d3b95a6614006468c609e60fcf5
      https://github.com/llvm/llvm-project/commit/7f631bb523a34d3b95a6614006468c609e60fcf5
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    A clang/docs/OverflowBehaviorTypes.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SanitizerSpecialCaseList.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/index.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TypeNodes.td
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/TypeBitCodes.def
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/AST/ast-print-overflow-behavior.cpp
    A clang/test/AST/overflow-behavior-keywords-ast.cpp
    A clang/test/CodeGen/mangle-ms-overflow-behavior.cpp
    A clang/test/CodeGen/overflow-behavior-types-extensions.c
    A clang/test/CodeGen/overflow-behavior-types-operators.cpp
    A clang/test/CodeGen/overflow-behavior-types-promotions.cpp
    A clang/test/CodeGen/overflow-behavior-types-scl.c
    A clang/test/CodeGen/overflow-behavior-types.c
    A clang/test/CodeGen/overflow-behavior-types.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/attr-overflow-behavior-constexpr.cpp
    A clang/test/Sema/attr-overflow-behavior-format-strings.c
    A clang/test/Sema/attr-overflow-behavior-off.c
    A clang/test/Sema/attr-overflow-behavior-templates.cpp
    A clang/test/Sema/attr-overflow-behavior.c
    A clang/test/Sema/attr-overflow-behavior.cpp
    A clang/test/Sema/overflow-behavior-assignment-pedantic.c
    A clang/test/Sema/overflow-behavior-function-boundary-default.c
    A clang/test/Sema/overflow-behavior-keywords-off.c
    A clang/test/Sema/overflow-behavior-keywords.c
    M clang/test/SemaCXX/sugar-common-types.cpp
    M clang/tools/libclang/CIndex.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [Clang] Introduce OverflowBehaviorType for fine-grained overflow control (#148914)

Introduce `OverflowBehaviorType` (OBT), a new type attribute in Clang
that provides developers with fine-grained control over the overflow
behavior of integer types. This feature allows for a more nuanced
approach to integer safety, achieving better granularity than global
compiler flags like `-fwrapv` and `-ftrapv`. Type specifiers are also
available as keywords `__ob_wrap` and `__ob_trap`.

These can be applied to integer types (both signed and unsigned) as well
as typedef declarations, where the behavior is one of the following:

* `wrap`: Guarantees that arithmetic operations on the type will wrap on
overflow, similar to `-fwrapv`. This suppresses UBSan's integer overflow
checks for the attributed type and prevents eager compiler
optimizations.
* `trap`: Enforces overflow checking for the type, even when global
flags like `-fwrapv` would otherwise suppress it.

A key aspect of this feature is its interaction with existing
mechanisms. `OverflowBehaviorType` takes precedence over global flags
and, notably, over entries in the Sanitizer Special Case List (SSCL).
This allows developers to "allowlist" critical types for overflow
instrumentation, even if they are disabled by a broad rule in an SSCL.


Signed-off-by: Justin Stitt <justinstitt at google.com>


  Commit: 7513fbd660082b4538fafaae6714edafe8f0e0f8
      https://github.com/llvm/llvm-project/commit/7513fbd660082b4538fafaae6714edafe8f0e0f8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
    A llvm/test/Transforms/LoopVectorize/predicated-single-exit.ll

  Log Message:
  -----------
  [LV] Add tests with predicated early exits.

Add test coverage for predicated early exits, without instructions that
need predication after the early exits.


  Commit: 384bc40250f23a2ac6545b1017dc96d5b513050f
      https://github.com/llvm/llvm-project/commit/384bc40250f23a2ac6545b1017dc96d5b513050f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen][ISel] Add OPC_CheckTypeByHwMode0 to optimize the most frequent getValueTypeForHwMode index. (#182366)

Sort the unique ValueTypeByHwMode combinations by usage and add a
compressed opcode for the most common.

Reduces the RISCVGenDAGISel.inc table by about ~12K. The most common
being XLenVT.

I plan to add EmitIntegerByHwMode0 and EmitRegisterByHwMode0 in
subsequent patches.

Assisted-by: claude


  Commit: d93ad10a2e9fb07132771cc5c9f356d4439c8950
      https://github.com/llvm/llvm-project/commit/d93ad10a2e9fb07132771cc5c9f356d4439c8950
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/Headers/sifive_vector.h
    M clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x.c

  Log Message:
  -----------
  [RISCV] Correct the LMUL operand for __riscv_sf_vc_i_se_u8mf4 and __riscv_sf_vc_i_se_u8mf2 intrinsics. (#182345)

mf2 is should 7 (-1 in 3 bits). mf4 should be 6 (-2 in 3 bits).


  Commit: f6c86bd69d92e82096fa98f8e38bb7ebf4ce9274
      https://github.com/llvm/llvm-project/commit/f6c86bd69d92e82096fa98f8e38bb7ebf4ce9274
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/docs/LFI.rst
    A llvm/include/llvm/MC/MCLFI.h
    A llvm/include/llvm/MC/MCLFIRewriter.h
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/TargetRegistry.h
    M llvm/lib/MC/CMakeLists.txt
    M llvm/lib/MC/MCAsmStreamer.cpp
    A llvm/lib/MC/MCLFI.cpp
    A llvm/lib/MC/MCLFIRewriter.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/CMakeLists.txt
    A llvm/lib/MC/MCParser/LFIAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/TargetRegistry.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [LFI] Add MCLFIRewriter infrastructure (#172906)

This is the second patch in the LFI series, adding the following
features:

* `MCLFIRewriter` class, which will be used to perform LFI rewrites on a
per-architecture basis. Each architecture where LFI is supported will
implement a subclass (for example,
`Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp`) that will
implement the `rewriteInst` function to perform the actual rewriting
(the AArch64 version will be added in the next PR). The generic rewriter
class provides some instruction info utilities (`mayLoad`, `mayStore`)
and is used to call `rewriteInst` during instruction emission. It also
provides `onLabel` which allows the rewriter to know possible branch
targets, making certain optimizations like guard elimination possible.
* LFI streamer initialization that marks object files with a NOTE
section to indicate that the object file is using LFI.
* A basic LFI assembly parser that introduces the `.lfi_rewrite_disable`
and `.lfi_rewrite_enable` directives that can be used to control whether
rewriting is enabled or not in hand-written assembly.


  Commit: f5f8435605ba5993bc4aa835a18aae995f4e50ab
      https://github.com/llvm/llvm-project/commit/f5f8435605ba5993bc4aa835a18aae995f4e50ab
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Interpreter/InterpreterUtils.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Tooling/ASTDiff/ASTDiff.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/TypePrinterTest.cpp
    M clang/unittests/Tooling/QualTypeNamesTest.cpp

  Log Message:
  -----------
  [clang][TypePrinter] Introduce AnonymousTagMode enum (#182317)

As part of https://github.com/llvm/llvm-project/pull/159592, we want to
emit unique lambda names into debug-info without relying on
`AnonymousTagLocations` (i.e., we don't want the source files included
in the names).

The plan is to implement this as a third `AnonymousTagMode`. This patch
turns the existing `AnonymousTagLocations` into an enum as preparation.

(full prototype is at https://github.com/llvm/llvm-project/pull/168533)


  Commit: 192883904a90945efecdbbb3530e9507e45e8378
      https://github.com/llvm/llvm-project/commit/192883904a90945efecdbbb3530e9507e45e8378
  Author: Emily Dror <emilydror01 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang-tools-extra/clangd/DumpAST.cpp
    M clang-tools-extra/clangd/unittests/DumpASTTests.cpp

  Log Message:
  -----------
  [clangd] Guard against null TemplateName in DumpVisitor (#181554)

Add a guard against null values for TemplateName in
DumpVisitor::TraverseTemplateName.

clangd’s DumpVisitor may attempt to traverse a null TemplateName when
handling dependent nested template names. On LLVM main this can lead to
a crash in TemplateName::getKind().

Add a defensive check in DumpVisitor::TraverseTemplateName() to skip
null TemplateName instances before invoking traverseNode(). Following
the same design as other functions in the class.

No functional change is intended beyond preventing the crash.

Fixes: #180902

---------

Signed-off-by: Emily Dror <emilydror01 at gmail.com>


  Commit: 696aa3c0b0989037edc5982154d1d777f71374bf
      https://github.com/llvm/llvm-project/commit/696aa3c0b0989037edc5982154d1d777f71374bf
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    A llvm/test/CodeGen/Hexagon/constp-extract-pair.ll

  Log Message:
  -----------
  [Hexagon] Fix UB from signed left shift overflow in evaluateEXTRACTi (#181243)

The evaluateEXTRACTi function in HexagonConstPropagation uses a left
shift to position a bitfield at the top of a 64-bit word before
extracting it with a right shift. When the source value has high bits
set, the left shift of the int64_t value overflows, which is undefined
behavior.

Fix by performing the left shift in uint64_t, then casting to int64_t
only for the subsequent arithmetic right shift (signed extract case).


  Commit: 31e5f86a3cdc960ef7b2f0a533c4a37cf526cacd
      https://github.com/llvm/llvm-project/commit/31e5f86a3cdc960ef7b2f0a533c4a37cf526cacd
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/switch-umin.ll

  Log Message:
  -----------
  [SimplifyCFG] process prof data when remove case in umin (#182261)

In #164097, we introduce a optimization for umin. But it does not handle
profile data correctly.
This PR remove profile data when remove cases.
Fixed: #181837


  Commit: 393adaac1d3af51238315260b148e3383ff58412
      https://github.com/llvm/llvm-project/commit/393adaac1d3af51238315260b148e3383ff58412
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/bolt-reserved.test

  Log Message:
  -----------
  [BOLT] Mark BOLTReserved segment executable (#181606)

Summary:
When .bolt_reserved section is defined in the linker script, there's
no way to mark the containing segment executable other than via PHDRS
command which overrides program headers entirely which is impractical.

Since .bolt_reserved contains executable code, mark segment executable
in BOLT.

Test Plan: bolt-reserved.test


  Commit: 98a54be99404a7fc5ae7f37b1b678742407df500
      https://github.com/llvm/llvm-project/commit/98a54be99404a7fc5ae7f37b1b678742407df500
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/Target.td
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp

  Log Message:
  -----------
  [NFC][TableGen] Use `bit` instead of `int` for some Target flags (#182375)

Change `AllowRegisterRenaming` and `RegistersAreIntervals` to a bit
instead of int as they are just a bool flag.


  Commit: f45754b65e32789bbb0c0fae50a529fed244546d
      https://github.com/llvm/llvm-project/commit/f45754b65e32789bbb0c0fae50a529fed244546d
  Author: barsolo2000 <barsolo at meta.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/ThreadList.h
    M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
    A lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
    A lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py

  Log Message:
  -----------
  [lldb] Batch breakpoint step-over for threads stopped at the same site (#180101)

Following up from
https://discourse.llvm.org/t/improving-performance-of-multiple-threads-stepping-over-the-same-breakpoint/89637

When multiple threads are stopped at the same breakpoint, LLDB currently
steps each thread over the breakpoint one at a time. Each step requires
disabling the breakpoint, single-stepping one thread, and re-enabling
it, resulting in N disable/enable cycles and N individual vCont packets
for N threads.

Now we batch the step-over so that all threads at the same breakpoint
site are stepped together in a single vCont packet, with the breakpoint
disabled once at the start and re-enabled once after the last thread
finishes.

When we hit `WillResume` any leftover `StepOverBreakpoint` plans from a
previous cycle are popped with their re-enable side effect suppressed
via `SetReenabledBreakpointSite`, giving a clean slate.
`SetupToStepOverBreakpointIfNeeded` then creates fresh plans for all
threads that still need to step over a breakpoint, and these are grouped
by breakpoint address.

For groups with multiple threads, each plan is set to defer its
re-enable through `SetDeferReenableBreakpointSite`. Instead of
re-enabling the breakpoint directly when a plan completes, it calls
`ThreadFinishedSteppingOverBreakpoint`, which decrements a tracking
count per address. The breakpoint is only re-enabled when the count
reaches zero.

All threads in the largest group are resumed together in a single
batched vCont packet. If some threads don't complete their step in one
cycle, the pop-and-recreate logic naturally re-batches the remaining
threads on the next WillResume call.



Claude AI assisted in syntex fixes and making the comments more
understandable.

---------

Co-authored-by: Bar Soloveychik <barsolo at fb.com>


  Commit: 370d7ce58011eccfab8105eddbc028cc09c4c5e5
      https://github.com/llvm/llvm-project/commit/370d7ce58011eccfab8105eddbc028cc09c4c5e5
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    A clang/docs/StructureProtection.rst
    M clang/docs/index.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/CXXRecordDeclDefinitionBits.def
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGenCXX/pfp-attribute-disable.cpp
    A clang/test/CodeGenCXX/pfp-coerce.cpp
    A clang/test/CodeGenCXX/pfp-load-store.cpp
    A clang/test/CodeGenCXX/pfp-member-pointer-offsetof.cpp
    A clang/test/CodeGenCXX/pfp-memcpy.cpp
    A clang/test/CodeGenCXX/pfp-null-init.cpp
    A clang/test/CodeGenCXX/pfp-struct-gep.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Preprocessor/pfp-predefines.c
    A clang/test/SemaCXX/attr-pointer-field-protection.cpp

  Log Message:
  -----------
  [Clang] Add pointer field protection feature.

Pointer field protection is a use-after-free vulnerability
mitigation that works by changing how data structures' pointer
fields are stored in memory. For more information, see the RFC:
https://discourse.llvm.org/t/rfc-structure-protection-a-family-of-uaf-mitigation-techniques/85555

Reviewers: fmayer, ojhunt

Pull Request: https://github.com/llvm/llvm-project/pull/172119


  Commit: 6ac9c2ed7fa772ecf6e50aa79785edfabc5a44fd
      https://github.com/llvm/llvm-project/commit/6ac9c2ed7fa772ecf6e50aa79785edfabc5a44fd
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ceil.h
    A libc/shared/math/ceilbf16.h
    A libc/shared/math/ceilf.h
    A libc/shared/math/ceilf128.h
    A libc/shared/math/ceilf16.h
    A libc/shared/math/ceill.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ceil.h
    A libc/src/__support/math/ceilbf16.h
    A libc/src/__support/math/ceilf.h
    A libc/src/__support/math/ceilf128.h
    A libc/src/__support/math/ceilf16.h
    A libc/src/__support/math/ceill.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ceil.cpp
    M libc/src/math/generic/ceilbf16.cpp
    M libc/src/math/generic/ceilf.cpp
    M libc/src/math/generic/ceilf128.cpp
    M libc/src/math/generic/ceilf16.cpp
    M libc/src/math/generic/ceill.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor ceil family to header-only (#182121)

Refactors the ceil math family to be header-only.

Closes https://github.com/llvm/llvm-project/issues/182120

Target Functions:
  - ceil
  - ceilbf16
  - ceilf
  - ceilf128
  - ceilf16
  - ceill


  Commit: 494edb78dc521d5c23744082d76b9beb05518701
      https://github.com/llvm/llvm-project/commit/494edb78dc521d5c23744082d76b9beb05518701
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
    A llvm/test/CodeGen/Hexagon/isel-shl-neg-const.ll

  Log Message:
  -----------
  [Hexagon] Fix UB from left shift of negative in SelectSHL (#181235)

Perform left shifts in unsigned arithmetic in SelectSHL to avoid
undefined behavior when the multiply constant is negative. The result is
cast back to int32_t for the subsequent isInt<9> range check.

Also fix a similar issue where shifting 1 by up to 31 could shift into
the sign bit.

This fixes the UBSan issue in ISelDAGtoDAG:


/local/mnt/workspace/bcain-20260212_105837/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp:597
      :44: runtime error: left shift of negative value -1431655765
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior

/local/mnt/workspace/bcain-20260212_105837/llvm-project/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp:597:44
in


  Commit: e9350dcd232931204f8d6762b3e6dbbe8e6e43c6
      https://github.com/llvm/llvm-project/commit/e9350dcd232931204f8d6762b3e6dbbe8e6e43c6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp

  Log Message:
  -----------
  [libc] Improve GPU allocator lane usage and fences (#182388)

Summary:
Improves performance on the GPU allocator. First, we can use `uniform`
as our mask value when we obtain a slab. Because this is guarnateed
uniform we can safely treat it as our mask. This also improves the
behavior on NVIDIA's ITS.

Secondly, we do not actually need acquire / release fences on the
bitfield. These are one-to-one interfaces and the malloc / free
interface provides the necessary happens-before context. The only fences
that matter are the lifetime management for the guard pointer.


  Commit: 6cdee8f3d88b8013aa6482c0671a0909a2d6d450
      https://github.com/llvm/llvm-project/commit/6cdee8f3d88b8013aa6482c0671a0909a2d6d450
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/shared/rpc.h
    M libc/test/integration/startup/gpu/CMakeLists.txt
    A libc/test/integration/startup/gpu/rpc_divergence_test.cpp

  Log Message:
  -----------
  [libc] Fix RPC server with independent thread scheduling (#182211)

Summary:
The NVIDIA ITS protocol allows lanes to diverge inside of a warp. We
previously had contingencies around this, but there were cases where
issues would still show up under highly stressed usage.

The rules state that as long as the PC is the same, threads can
reconverge. This means that we can see a 'convergent' warp even when
they took completely divergent paths to get there. This resulted in the
'index' value in the RPC port lookup loop thinking we were in a
convergent group while all the indices were different. Fix this with a
broadcast to force the expected behavior

Additionally, we did not force that the threads were actually done with
their 'work_fn'. If the work included something that caused divergence
the other threads could continue and toggle the mailbox, resulting in
the server seeing unfinished work. Fix this with an explicit sync and
have one thread do it.

Add a test to make sure this actually works.


  Commit: b19d21a1e5f3b2802c4f9118c44694a3ad51bf25
      https://github.com/llvm/llvm-project/commit/b19d21a1e5f3b2802c4f9118c44694a3ad51bf25
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fmax.h
    A libc/shared/math/fmaxbf16.h
    A libc/shared/math/fmaxf.h
    A libc/shared/math/fmaxf128.h
    A libc/shared/math/fmaxf16.h
    A libc/shared/math/fmaxl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fmax.h
    A libc/src/__support/math/fmaxbf16.h
    A libc/src/__support/math/fmaxf.h
    A libc/src/__support/math/fmaxf128.h
    A libc/src/__support/math/fmaxf16.h
    A libc/src/__support/math/fmaxl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fmax.cpp
    M libc/src/math/generic/fmaxbf16.cpp
    M libc/src/math/generic/fmaxf.cpp
    M libc/src/math/generic/fmaxf128.cpp
    M libc/src/math/generic/fmaxf16.cpp
    M libc/src/math/generic/fmaxl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor fmax family to header-only (#182165)

Refactors the fmax math family to be header-only.

Closes https://github.com/llvm/llvm-project/issues/182164

Target Functions:
  - fmax
  - fmaxbf16
  - fmaxf
  - fmaxf128
  - fmaxf16
  - fmaxl


  Commit: 1d096c063fddd496c8c9e28e57018b670886f6db
      https://github.com/llvm/llvm-project/commit/1d096c063fddd496c8c9e28e57018b670886f6db
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/RISCV/alloca.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/X86/alloca.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/X86/basic.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/alloca-array.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/alloca-compat.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/alloca-with-calls.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/alloca.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/globals-access.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/prologue.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll

  Log Message:
  -----------
  [NFC] [HWAsan] Run UTC on hwasan tests (#181437)

```
for x in $(grep -l 'UTC' llvm/test/Instrumentation/HWAddressSanitizer/**/*.ll); do
llvm/utils/update_test_checks.py  --opt-binary build/bin/opt $x; done
```


  Commit: 13f659c21d42d3ccfa00d441784b52cf57109ae9
      https://github.com/llvm/llvm-project/commit/13f659c21d42d3ccfa00d441784b52cf57109ae9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/armv4.ll
    M llvm/test/CodeGen/ARM/build-attributes.ll
    M llvm/test/CodeGen/Thumb2/mve-intrinsics/absneg-predicated.ll
    M llvm/test/MC/ARM/gas-compl-copr-reg.s
    M llvm/test/MC/ARM/idiv-2op.s
    M llvm/test/MC/ARM/thumb2-branches.s
    M llvm/test/MC/Disassembler/ARM/d16.txt

  Log Message:
  -----------
  [ARM] Fix duplicate RUN lines in tests (#182280)


  Commit: 64e1318c55b94c1c99a80fdf1424367a80a2e9d5
      https://github.com/llvm/llvm-project/commit/64e1318c55b94c1c99a80fdf1424367a80a2e9d5
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/ASTMatchers/ASTMatchFinder.cpp
    M clang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp

  Log Message:
  -----------
  [clang] Add missing support for traversal kind in addMatcher overloads (#170953)

This was noted in #170540, and seems to simply be an oversight. This
patch just add the same logic already used in other addMatcher()
implementations that honor the traversal kind.

Fixes #179386.


  Commit: f6fb24dcc796dfe906dc77c265b5e90275b1d324
      https://github.com/llvm/llvm-project/commit/f6fb24dcc796dfe906dc77c265b5e90275b1d324
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/include/clang/DependencyScanning/DependencyScanningService.h
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang][deps] Don't treat the 'P1689' output format specially (#182069)

This patch essentially reverts 62fec3d2 which was an NFC, and replaces
the remaining check for the output format with more generic scanning
service option that controls whether we report absolute or relative file
paths. Along with #182063 this makes the scanner implementation entirely
independent of the desired output format.


  Commit: 13e6ffda47f6366b8445ad6f5a72cf51038b52a1
      https://github.com/llvm/llvm-project/commit/13e6ffda47f6366b8445ad6f5a72cf51038b52a1
  Author: Mohamed Emad <hulxxv at gmail.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fadd.h
    A libc/shared/math/faddf128.h
    A libc/shared/math/faddl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fadd.h
    A libc/src/__support/math/faddf128.h
    A libc/src/__support/math/faddl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fadd.cpp
    M libc/src/math/generic/faddf128.cpp
    M libc/src/math/generic/faddl.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor fadd family to header-only (#182185)

Refactors the fadd math family to be header-only.

Closes https://github.com/llvm/llvm-project/issues/182184

Target Functions:
  - fadd
  - faddf128
  - faddl


  Commit: 613344a7f9721959ce43a17686e2f1221de8d785
      https://github.com/llvm/llvm-project/commit/613344a7f9721959ce43a17686e2f1221de8d785
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/GVN.cpp
    A llvm/test/Transforms/GVN/basic-stats.ll

  Log Message:
  -----------
  [GVN] Restore the NumGVNInstr metric (#182380)

The NumGVNInstr metric counts the number of instructions deleted by the
GVN pass. #131753 changed where the instructions were deleted in the
pass, but that PR did not update the NumGVNInstr metric whenever
instructions were deleted. This PR fixes that bug by updating
NumGVNInstr whenever `removeInstruction(...)` is called.


  Commit: 84deac79d4619152a1192f42243c8bb5e63ec0cd
      https://github.com/llvm/llvm-project/commit/84deac79d4619152a1192f42243c8bb5e63ec0cd
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Hexagon.h
    M clang/test/Driver/hexagon-hvx.c

  Log Message:
  -----------
  [Hexagon] Refactor HVX target feature addition(NFC) (#182073)

Refactor Hexagon HVX target-feature handling by centralizing HVX
version/enable logic and simplifying feature emission.

Co-authored-by: Sumanth Gundapaneni <sgundapa at qti.qualcomm.com>


  Commit: 963e2fb5890553b24938a5a341defaf9a79c8577
      https://github.com/llvm/llvm-project/commit/963e2fb5890553b24938a5a341defaf9a79c8577
  Author: Darshan Bhat <darshanbhatsirsi at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Dialect/GPU/invalid.mlir

  Log Message:
  -----------
  [mlir] Fix segfault in gpu.launch verifier when body region is empty (#182086)

Fixes #181971 
Some methods in LaunchOp::verifyRegion() accesses body block without
checking that region is empty resulting in a segfault. Fix by adding an
early return when the body is empty.


  Commit: 11af80c3ec82dc1800c9fa80190c75cd3d69249f
      https://github.com/llvm/llvm-project/commit/11af80c3ec82dc1800c9fa80190c75cd3d69249f
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/include/lldb/API/SBHostOS.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBHostOS.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/tools/driver/Driver.cpp

  Log Message:
  -----------
  [lldb] Go through the plugin interface to obtain the scripting path (#182400)

Avoid directly including `ScriptInterpreterPython.h` in `SBHostOS`, and
instead go through the plugin interface to obtain the scripting path.
This also deprecates the ``SBHostOS::GetLLDBPythonPath`` method in favor
of the more generic GetScriptPath variant.


  Commit: 450e83be59a7a32aae344fe48c403c6b3dee4951
      https://github.com/llvm/llvm-project/commit/450e83be59a7a32aae344fe48c403c6b3dee4951
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [lldb][Darwin] Change HostInfoMacOSX mutex to a r/w mutex [NFC] (#182411)

I only need an exclusively lock when scanning a new shared cache; after
that, simultaneous read-only locks are sufficient and allow
multi-threaded access to the data store.


  Commit: 1d262442b7bb8b05c08576aa2ef9846067bcae1c
      https://github.com/llvm/llvm-project/commit/1d262442b7bb8b05c08576aa2ef9846067bcae1c
  Author: Tony Varghese <tonypalampalliyil at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    A clang/test/Driver/aix-print-search-dirs.c

  Log Message:
  -----------
  [AIX] Include system library paths in -print-search-dirs output (#182292)

Add `/usr/lib` and `/lib` to `-print-search-dirs` output to match GCC
behaviour and fix Meson/CMake build failures. Override
`AddFilePathLibArgs()` to prevent duplicate `-L` flags in linker
commands. This should allow build tools to construct correct `blibpath`.

---------

Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Co-authored-by: David Tenty <daltenty.dev at gmail.com>


  Commit: 4d3217d68914ddac47d760b215d71441b820720e
      https://github.com/llvm/llvm-project/commit/4d3217d68914ddac47d760b215d71441b820720e
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/test/CodeGen/Hexagon/hvx-zext-split-check.ll

  Log Message:
  -----------
  [Hexagon] Fix SplitVectors crash in HVX type legalization (#181377)

When LegalizeHvxResize splits a multi-step TL_EXTEND (e.g., v128i32 from
v128i8, which is i8->i32), SplitVectorOp halves both input and output
types. This creates operand types that are half the HVX vector width
(e.g., v64i8 = 512 bits on 128-byte HVX), which are not legal HVX types.
These sub-HVX intermediate types confuse the DAG type legalizer's map
tracking, causing "Unprocessed value in a map! SplitVectors" assertions
with EXPENSIVE_CHECKS or
-enable-legalize-types-checking.

Fix by first expanding multi-step TL_EXTEND/TL_TRUNCATE operations into
a chain of single-step operations via ExpandHvxResizeIntoSteps before
splitting. Each single-step operation (e.g., i16->i32) can be safely
split because halving its operand type produces a legal HVX type (e.g.,
v64i16 = HVX single vector).


  Commit: 84661b38267d1954bbcce2a7b376f1baa369ac83
      https://github.com/llvm/llvm-project/commit/84661b38267d1954bbcce2a7b376f1baa369ac83
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    A llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
    A llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp

  Log Message:
  -----------
  Reland "[llvm-readobj] Dump callgraph section info for ELF" (#176260)

This patch is a reland of #157499

Introduce a new flag --call-graph-info which outputs call graph
information in the ELF call graph section in JSON or LLVM style.


  Commit: fdb1594a18d796e2f80ccacfe11e03371b0a5df1
      https://github.com/llvm/llvm-project/commit/fdb1594a18d796e2f80ccacfe11e03371b0a5df1
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/lit.cfg.py
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Disable more passes not used in CPU pipelines (#182414)

This is another comb over the current xfail list. This patch disables
all passes that are not enabled by default for CPUs such as passes not
enabled anywhere by default or only used in GPU backends.


  Commit: 2e989bd59596a7e3ea4bdd600ad8af373d99e68d
      https://github.com/llvm/llvm-project/commit/2e989bd59596a7e3ea4bdd600ad8af373d99e68d
  Author: Luo Yuanke <lyk_03 at hotmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/test/CodeGen/NVPTX/disjoint-or-addr.ll
    A llvm/test/Transforms/InferAddressSpaces/NVPTX/int2ptr.ll

  Log Message:
  -----------
  [InferAS] Infer the address space of inttoptr (#173244)

Currently the InferAddressSpaces would check if the bit value doesn't
change for <ptrtoint, inttoptr> address space cast. However the
condition is too strict. Sometime only the low bit address changes for
swizzling, and the address space is not changed. Take below code as
an example, we can transform `%gp2 = inttoptr i64 %b to ptr` to
`%gp2 = inttoptr i64 %b to ptr addrspace(2)` and specify addrspace(2)
for the following store instruction.
```
   %gp = addrspacecast ptr addrspace(2) %sp to ptr
   %a = ptrtoint ptr %gp to i64
   %b = xor i64 7, %a
   %gp2 = inttoptr i64 %b to ptr
   store i16 0, ptr %gp2, align 2
```
This patch tries to infer the unchanged leading bit for the address
and let the target determine if it is safe to perform address space
cast for inttoptr instruction.

---------

Co-authored-by: Yuanke Luo <ykluo at birentech.com>


  Commit: ede47a3b13e4afcbe77db65d2165f42867c4b866
      https://github.com/llvm/llvm-project/commit/ede47a3b13e4afcbe77db65d2165f42867c4b866
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/Sema/CheckExprLifetime.cpp
    A clang/test/SemaOpenCL/function-scope-local-return.cl

  Log Message:
  -----------
  [OpenCL] Suppress -Wreturn-stack-address for function-scope local variable (#181602)

OpenCL local variable has lifetime of work-group, not function call stack.


  Commit: df1137c66623674bfc1f26625e070ccdb3a10d3e
      https://github.com/llvm/llvm-project/commit/df1137c66623674bfc1f26625e070ccdb3a10d3e
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h

  Log Message:
  -----------
  [clang-tidy][NFC] Clean up traversal mode handling in `modernize-redundant-void-arg` (#182408)

#173340 added a bit of code to this check to work around #170953. Now
that the latter PR is merged, we can remove the workaround.


  Commit: 54d54992718552114751020b2c43d5622bccb49b
      https://github.com/llvm/llvm-project/commit/54d54992718552114751020b2c43d5622bccb49b
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/source/Plugins/Highlighter/Clang/ClangHighlighter.cpp
    M lldb/source/Plugins/Highlighter/Default/DefaultHighlighter.cpp
    M lldb/source/Plugins/Highlighter/TreeSitter/Rust/RustTreeSitterHighlighter.cpp
    M lldb/source/Plugins/Highlighter/TreeSitter/Swift/SwiftTreeSitterHighlighter.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/SyntheticFrameProvider/ScriptedFrameProvider/ScriptedFrameProvider.cpp

  Log Message:
  -----------
  [lldb] Use C linkage for plugin initialization & termination (#182406)

Use C linkage for plugin initialization & termination. I'm working on
adding support for using the existing plugin infrastructure but with
dynamic libraries. Using C linkage makes it easier to dlsym the
initialize and terminate methods.

For example, with this patch,
`__ZN12lldb_private39lldb_initialize_ScriptInterpreterPythonEv` becomes
`_lldb_initialize_ScriptInterpreterPython`.


  Commit: cfc31044a72cfb653d017933924c278db574f073
      https://github.com/llvm/llvm-project/commit/cfc31044a72cfb653d017933924c278db574f073
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s

  Log Message:
  -----------
  [AMDGPU] Add negative tests for register aignment for tensor load/store, NFC (#182358)


  Commit: 2225677462ce19f05eb22f2f6b4800fd5f78676e
      https://github.com/llvm/llvm-project/commit/2225677462ce19f05eb22f2f6b4800fd5f78676e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/test/Instrumentation/HWAddressSanitizer/RISCV/use-after-scope-setjmp.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope-setjmp.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [HWASan] tag on lifetime exit and return for non standard lifetime



Reviewers: vitalybuka, pcc

Reviewed By: pcc

Pull Request: https://github.com/llvm/llvm-project/pull/181438


  Commit: 80c0e50fd939388b41ac43deef3170f7b75ba41b
      https://github.com/llvm/llvm-project/commit/80c0e50fd939388b41ac43deef3170f7b75ba41b
  Author: barsolo2000 <barsolo at meta.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py

  Log Message:
  -----------
  [lldb] Fix batched breakpoint step-over test flakiness (#182415)

PR to fix failing test from
https://github.com/llvm/llvm-project/pull/180101 .

Fix the integration test to be resilient to non-deterministic thread
timing. Instead of requiring exact z0/Z0 counts, verify that batching
reduced toggles compared to one at a time stepping.

Also added: skip on `aarch64` where thread scheduling makes batching
unreliable.

Ran the test 20 times, passed all 20.

Co-authored-by: Bar Soloveychik <barsolo at fb.com>


  Commit: 2ef175980390aa1bca711621e37f5c55372e689c
      https://github.com/llvm/llvm-project/commit/2ef175980390aa1bca711621e37f5c55372e689c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [NFC] [HWASan] Add test for double lifetime



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/182424


  Commit: 9569e57debf722676949e13ddd632cc9c52cc402
      https://github.com/llvm/llvm-project/commit/9569e57debf722676949e13ddd632cc9c52cc402
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Target/ThreadList.h
    M lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
    R lldb/test/API/functionalities/gdb_remote_client/TestBatchedBreakpointStepOver.py
    R lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentBatchedBreakpointStepOver.py

  Log Message:
  -----------
  Revert "[lldb] Batch breakpoint step-over for threads stopped at the … (#182431)


  Commit: e55b6c0919d3cdf8cb4bd6f80bd72d39c0c4a746
      https://github.com/llvm/llvm-project/commit/e55b6c0919d3cdf8cb4bd6f80bd72d39c0c4a746
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
    A llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll

  Log Message:
  -----------
  [LV] Allow tail folding with IVs with outside users (#182322)

#149042 added last-active-lane and removed the restriction that we
couldn't tail fold loops that had outside users (in AllowedExit).

However we still have a restriction that IVs can't have outside users.
This was added separately to the AllowedExit restriction in #81609, but
it looks like #149042 didn't remove it.

AFAICT we currently extract the correct lane for IVs, so this PR relaxes
the restriction. This helps a good few loops get tail folded in
llvm-test-suite.

-force-tail-folding-style=none was added to pr5881-scev-expansion.ll to
preserve the original scev expansion, since otherwise we end up with a
cttz.elts(false, false, true, true) that blocks SCEV analysis. We should
probably teach ConstantFolding to fold it.


  Commit: 5a4a1f41b1dd1410feaf78457dec86edccb9ea99
      https://github.com/llvm/llvm-project/commit/5a4a1f41b1dd1410feaf78457dec86edccb9ea99
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/test/SemaOpenCL/function-scope-local-return.cl

  Log Message:
  -----------
  [NFC][OpenCL] Fix test function-scope-local-return.cl (#182421)

Add `-triple spir64-unknown-unknown` to fix error on arm and aarch64:
unsupported OpenCL extension '__cl_clang_function_scope_local_variables'


  Commit: aeb7580d3648efadd9771e9d3b8734b64d78b317
      https://github.com/llvm/llvm-project/commit/aeb7580d3648efadd9771e9d3b8734b64d78b317
  Author: Honey Goyal <honeygoyal24 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_interceptors.cpp
    A compiler-rt/test/asan/TestCases/mmap_shadow_overlap.cpp
    A compiler-rt/test/asan/TestCases/munmap_shadow_partial.cpp

  Log Message:
  -----------
  Make mmap-munmap interceptor fail earlier  (#171295)

If the address range is not covered by shadow memory, make interceptors
like mmap fail earlier.

---------

Signed-off-by: Abhishek Varma <abhvarma at amd.com>
Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
Signed-off-by: hanhanW <hanhan0912 at gmail.com>
Signed-off-by: Nikita B <n2h9z4 at gmail.com>
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Signed-off-by: Ian Wood <ianwood at u.northwestern.edu>
Co-authored-by: Min-Yih Hsu <min.hsu at sifive.com>
Co-authored-by: Sersawy <65075626+Abdelrhmansersawy at users.noreply.github.com>
Co-authored-by: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Co-authored-by: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Co-authored-by: cpist (He / Him) <tinyfrog12 at gmail.com>
Co-authored-by: Jonathan Cohen <joncoh at apple.com>
Co-authored-by: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Co-authored-by: Mircea Trofin <mtrofin at google.com>
Co-authored-by: Mingming Liu <mingmingl at google.com>
Co-authored-by: Atharv Mane <atharvamane19 at gmail.com>
Co-authored-by: Sam Clegg <sbc at chromium.org>
Co-authored-by: vporpo <vasileios.porpodas at amd.com>
Co-authored-by: Usama Hameed <u_hameed at apple.com>
Co-authored-by: PiJoules <6019989+PiJoules at users.noreply.github.com>
Co-authored-by: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Co-authored-by: Roland McGrath <mcgrathr at google.com>
Co-authored-by: Jakub Kuderski <jakub at nod-labs.com>
Co-authored-by: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Co-authored-by: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Co-authored-by: Aiden Grossman <aidengrossman at google.com>
Co-authored-by: Kelvin Li <kli at ca.ibm.com>
Co-authored-by: Andrei Elovikov <a.elovikov at gmail.com>
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Co-authored-by: NAKAMURA Takumi <geek4civic at gmail.com>
Co-authored-by: Marco Elver <elver at google.com>
Co-authored-by: Greg Clayton <gclayton at fb.com>
Co-authored-by: Charles Zablit <c_zablit at apple.com>
Co-authored-by: Zachary Yedidia <zyedidia at gmail.com>
Co-authored-by: Michael Spencer <bigcheesegs at gmail.com>
Co-authored-by: Florian Hahn <flo at fhahn.com>
Co-authored-by: Wenju He <wenju.he at intel.com>
Co-authored-by: Andy Kaylor <akaylor at nvidia.com>
Co-authored-by: Luohao Wang <luohaothu at live.com>
Co-authored-by: John Harrison <harjohn at google.com>
Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Co-authored-by: Alexey Bataev <a.bataev at outlook.com>
Co-authored-by: Rahul Joshi <rjoshi at nvidia.com>
Co-authored-by: Jessica Clarke <jrtc27 at jrtc27.com>
Co-authored-by: puneeth_aditya_5656 <myakampuneeth at gmail.com>
Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Co-authored-by: Saina Daneshmand <66389676+SainaDaneshmandjahromi at users.noreply.github.com>
Co-authored-by: Jameson Nash <vtjnash at gmail.com>
Co-authored-by: Fangrui Song <i at maskray.me>
Co-authored-by: Tom Stellard <tstellar at redhat.com>
Co-authored-by: Jie Fu <jiefu at tencent.com>
Co-authored-by: Timm Baeder <tbaeder at redhat.com>
Co-authored-by: Pranav Kant <prka at google.com>
Co-authored-by: woruyu <1214539920 at qq.com>
Co-authored-by: Pradeep Kumar <pradeepku at nvidia.com>
Co-authored-by: Petr Hosek <phosek at google.com>
Co-authored-by: bala-bhargav <penugondabalabharghav at gmail.com>
Co-authored-by: Jhalak Patel <jhalakp at nvidia.com>
Co-authored-by: Utkarsh Saxena <usx at google.com>
Co-authored-by: Carl Ritson <carl.ritson at amd.com>
Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>
Co-authored-by: Jay Foad <jay.foad at amd.com>
Co-authored-by: Sudharsan Veeravalli <svs at qti.qualcomm.com>
Co-authored-by: David Spickett <david.spickett at arm.com>
Co-authored-by: Ricardo Jesus <rjj at nvidia.com>
Co-authored-by: David Sherwood <david.sherwood at arm.com>
Co-authored-by: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
Co-authored-by: Yingying Wang <3171290993 at qq.com>
Co-authored-by: Sergio Afonso <safonsof at amd.com>
Co-authored-by: Miloš Poletanović <poletanovicmilos97 at gmail.com>
Co-authored-by: Milos Poletanovic <mpoletanovic at syrmia.com>
Co-authored-by: Abhishek Varma <avarma094 at gmail.com>
Co-authored-by: Henry Linjamäki <henry.linjamaki at tuni.fi>
Co-authored-by: Henry Linjamäki <henry.mikael.linjamaki at intel.com>
Co-authored-by: Leandro Lupori <leandro.lupori at linaro.org>
Co-authored-by: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Co-authored-by: Nikita Popov <npopov at redhat.com>
Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>
Co-authored-by: Konrad Kleine <kkleine at redhat.com>
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Co-authored-by: Frederik Harwath <frederik.harwath at amd.com>
Co-authored-by: Fateme Hosseini <quic_fhossein at quicinc.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>
Co-authored-by: Minsoo Choo <minsoochoo0122 at proton.me>
Co-authored-by: Ryan Cowan <ryan.cowan at arm.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Co-authored-by: Akash Banerjee <akash.banerjee at amd.com>
Co-authored-by: Dark Steve <Prasoon.Mishra at amd.com>
Co-authored-by: Aviral Goel <aviralg at users.noreply.github.com>
Co-authored-by: Osman Yasar <37121924+osmanyasar05 at users.noreply.github.com>
Co-authored-by: Igor Wodiany <igor.wodiany at imgtec.com>
Co-authored-by: Florian Mayer <fmayer at google.com>
Co-authored-by: AidinT <at.aidin at gmail.com>
Co-authored-by: Justin Fargnoli <jfargnoli at nvidia.com>
Co-authored-by: Christopher Di Bella <cjdb at google.com>
Co-authored-by: Han-Chung Wang <hanhan0912 at gmail.com>
Co-authored-by: Wei Xiao <wei3.xiao at intel.com>
Co-authored-by: vangthao95 <vang.thao at amd.com>
Co-authored-by: joaosaffran <joaosaffranllvm at gmail.com>
Co-authored-by: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Co-authored-by: Aman LaChapelle <aman.lachapelle at gmail.com>
Co-authored-by: Jacob Lalonde <jalalonde at fb.com>
Co-authored-by: n2h9 <13541181+n2h9 at users.noreply.github.com>
Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Co-authored-by: Joshua Batista <jbatista at microsoft.com>
Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>
Co-authored-by: Priyanshu Kumar <10b.priyanshu at gmail.com>
Co-authored-by: Osman Yasar <osmanyas05 at gmail.com>
Co-authored-by: Sarah Kuhn <sarahlinhkuhn at gmail.com>
Co-authored-by: Luisa Cicolini <48860705+luisacicolini at users.noreply.github.com>
Co-authored-by: Osama Abdelkader <osama.abdelkader at gmail.com>
Co-authored-by: Andrew Haberlandt <ahaberlandt at apple.com>
Co-authored-by: Rohan Jacob-Rao <rohanjr at google.com>
Co-authored-by: Eugene Epshteyn <eepshteyn at nvidia.com>
Co-authored-by: Ian Anderson <iana at apple.com>
Co-authored-by: adams381 <adams at nvidia.com>
Co-authored-by: Nick Sarnie <nick.sarnie at intel.com>
Co-authored-by: Sadaf Ebrahimi <sadafebrahimi at google.com>
Co-authored-by: RattataKing <46631728+RattataKing at users.noreply.github.com>
Co-authored-by: Chibuoyim (Wilson) Ogbonna <ogbonnachibuoyim12 at gmail.com>
Co-authored-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Co-authored-by: Andres-Salamanca <andrealebarbaritos at gmail.com>
Co-authored-by: Jason Molenda <jmolenda at apple.com>
Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Maksim Panchenko <maks at fb.com>
Co-authored-by: Peter Collingbourne <peter at pcc.me.uk>
Co-authored-by: Prabhu Rajasekaran <prabhukr at google.com>
Co-authored-by: Dmitry Sidorov <18708689+MrSidims at users.noreply.github.com>
Co-authored-by: Lang Hames <lhames at gmail.com>
Co-authored-by: Daniil Fukalov <dfukalov at gmail.com>
Co-authored-by: paperchalice <liujunchang97 at outlook.com>
Co-authored-by: Viktoria Maximova <viktoria.maksimova at intel.com>
Co-authored-by: wanglei <wanglei at loongson.cn>
Co-authored-by: hev <wangrui at loongson.cn>
Co-authored-by: Zhihui Yang <youngwisdm at gmail.com>
Co-authored-by: Ash <97464181+tnuha at users.noreply.github.com>
Co-authored-by: YunQiang Su <syq at debian.org>
Co-authored-by: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Co-authored-by: Thurston Dang <thurston at google.com>
Co-authored-by: Kewen Meng <Kewen.Meng at amd.com>
Co-authored-by: sohail <150878950+sohail103 at users.noreply.github.com>
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Co-authored-by: azwolski <antoni.zwolski at intel.com>
Co-authored-by: Peter Hawkins <phawkins at google.com>
Co-authored-by: David Green <david.green at arm.com>
Co-authored-by: Sander de Smalen <sander.desmalen at arm.com>
Co-authored-by: Riyaz Ahmad <69200125+riyaz86a at users.noreply.github.com>
Co-authored-by: Riyaz Ahmad <riyaz.ahmad at ibm.com>
Co-authored-by: Honey Goyal <honey.goyal3 at ibm.com>


  Commit: 5d94c60e6cbe8cb62ae4d83e9b66c27b0fe0de7b
      https://github.com/llvm/llvm-project/commit/5d94c60e6cbe8cb62ae4d83e9b66c27b0fe0de7b
  Author: yonghong-song <yhs at fb.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/BPF/BPFPreserveDIType.cpp
    A llvm/test/CodeGen/BPF/BTF/builtin-btf-type-id-remote.ll

  Log Message:
  -----------
  [BPF] Relax BTF_TYPE_ID_REMOTE_RELOC for unnamed types (#182370)

Currently, BTF_TYPE_ID_REMOTE_RELOC requires a named type e.g. named
struct or union types.

But in [1], there are some use cases where unnamed types, e.g., 'void
*', 'void **', 'const char *', etc. All these will fail compilation with
error:
  Empty type name for BTF_TYPE_ID_REMOTE reloc

This patch relaxed this condition to allow unnamed types. The kernel
libbpf will decide what are allowed or not for each specific cases.

[1]
https://lore.kernel.org/bpf/bb4bf5fe648ac71c969c6228ac6e72ea85cbc64b.camel@gmail.com/T/#m5a7abf799b75199f6678eddd9c1ea4e31563b4dc


  Commit: 19ebb0ae7f2a5a16332f403cb34aa4932536b227
      https://github.com/llvm/llvm-project/commit/19ebb0ae7f2a5a16332f403cb34aa4932536b227
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrMVE.td
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/fp-intrinsics-vector-v8.ll
    M llvm/test/CodeGen/Thumb2/mve-strict-round.ll

  Log Message:
  -----------
  [ARM] Treat strictfp vector rounding operations as legal (#180480)

Previously, the strictfp variants of rounding operations (FLOOR, ROUND,
etc) were handled in SelectionDAG via the default expansion, which
splits vector operation into scalar ones. This results in less efficient
code.

This change declares the strictfp counterparts of the vector rounding
operations as legal and modifies existing rules in tablegen descriptions
accordingly.


  Commit: 4040e39397ffd5b55c61390bef9d58b07bf24140
      https://github.com/llvm/llvm-project/commit/4040e39397ffd5b55c61390bef9d58b07bf24140
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Separate VMConstraint from RVVConstraint. NFC (#182089)

VMConstraint is true for most vector instructions by default. Almost
every time we set the Vs1/Vs2 bits we had to redundantly set the VM bit.

There were a few cases where the base class had already removed the
default VMConstraint with RVVConstraint=NoConstraint and an
instantiation had to make sure not to set it again when adding Vs1
and/or Vs2 constraints.

By separating them we can manage them more independently.

I will probably rename RVVConstraint in a followup.


  Commit: 70a766db7342162e2dd4bec4eb54d0408a08b846
      https://github.com/llvm/llvm-project/commit/70a766db7342162e2dd4bec4eb54d0408a08b846
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVVSETVLIInfoAnalysis.cpp

  Log Message:
  -----------
  [RISCV] Add RISCVII::getTWidenOpNum. NFC (#182335)

Rewrite get*OpNum helpers in RISCVVSETVLIInfoAnalysis to return the
MachineOperand& which is what the callers really wanted.


  Commit: 458ababe98bfde1601af707c60cb05be3afd0a31
      https://github.com/llvm/llvm-project/commit/458ababe98bfde1601af707c60cb05be3afd0a31
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp

  Log Message:
  -----------
  [RISCV] Use getFRMOpNum/getVXRMOpNum to avoid assumption about operand order. NFCI (#182328)


  Commit: c435e8bde7bf95a8c37779854d1ede311d99949b
      https://github.com/llvm/llvm-project/commit/c435e8bde7bf95a8c37779854d1ede311d99949b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
    M llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll

  Log Message:
  -----------
  TargetLowering: Replace android triple check with libcall check (#148800)

Instead of directly checking if the target is android, check if
__safestack_pointer_address is available and configure android
to have the call. Maintain the -safestack-use-pointer-address cl::opt
in an unclean way by ignoring libcall availability.

Also add a RuntimeLibcallsInfo entry for __safestack_unsafe_stack_ptr,
similar to other special globals. Also add this unconditionally to most targets,
even though this seems contrary to reality. A few tests rely on unsupported OSes, so
leave that alone for now.


  Commit: fc07eefabaed49bbbed870d456c91fdc05b177e3
      https://github.com/llvm/llvm-project/commit/fc07eefabaed49bbbed870d456c91fdc05b177e3
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-02-19 (Thu, 19 Feb 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s

  Log Message:
  -----------
  [AMDGPU] Auto generates checks for gfx1250_asm_vimage_err.s, NFC (#182441)


  Commit: fe9f2f5245ebb750516aec879595fa75b43c4821
      https://github.com/llvm/llvm-project/commit/fe9f2f5245ebb750516aec879595fa75b43c4821
  Author: Artem Gindinson <gindinson at roofline.ai>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
    M mlir/test/Dialect/Linalg/transform-op-rewrite-in-destination-passing-style.mlir

  Log Message:
  -----------
  [mlir][Linalg][Tensor] Preserve attrs on `tensor.pad` when lowering to dst-style (#182064)

When canonicalizing to generic ops within `EliminateEmptyTensors`, we
should take care to preserve the attributes. For example, this attribute
mechanism is employed within IREE's SPIRV pipeline to pass on tiling
configurations together with the ops.

---------

Signed-off-by: Artem Gindinson <gindinson at roofline.ai>


  Commit: 459ab0482b4d9c0513fed87ec71dfeede0b2a435
      https://github.com/llvm/llvm-project/commit/459ab0482b4d9c0513fed87ec71dfeede0b2a435
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    A mlir/test/Bytecode/i1_roundtrip.mlir
    R mlir/test/Bytecode/i1_splat_roundtrip.mlir

  Log Message:
  -----------
  [mlirbc] Fix incorrect skipping for single byte blob. (#182445)

This resulted in not correctly unpacking. Added additional regression
tests.


  Commit: 2619cad4c29d984dc9a38bec7a60b6fc31985c27
      https://github.com/llvm/llvm-project/commit/2619cad4c29d984dc9a38bec7a60b6fc31985c27
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    A clang/test/CodeGenHIP/builtins-amdgcn-vi-f16.hip

  Log Message:
  -----------
  [AMDGPU] Update f16 builtin definitions to use _Float16 instead of __fp16 (#182331)

Change the type signature of 16-bit-insts half-precision builtins from
`__fp16` to `_Float16` in the tablegen builtin definitions.


  Commit: 398bd9543b2a87bf5298a13f5da2f7e761af6bef
      https://github.com/llvm/llvm-project/commit/398bd9543b2a87bf5298a13f5da2f7e761af6bef
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/unittests/Runtime/Reduction.cpp

  Log Message:
  -----------
  [Flang-RT][unittests] Fix buffer over-read (#182176)

The unittests `Reductions.InfSums` defines a test array descriptor with
shape 2x3 (i.e. 6 elements), but only provides values for 2 elements.
The result is access of likely uninitialized memory when accessing the
additional 4 elements. In most cases the additional values get gobbled
up by the infinity, but if it happens to be NaN or the negated infinity,
the result becomes NaN and fails the test.

Fix by reducing the shabe of the test array to 2. Fixes the flakyness of
the test of the flang-x86_64-windows buildbot.


  Commit: c1d25df74bd9e51ac37a3587382021565897a0bd
      https://github.com/llvm/llvm-project/commit/c1d25df74bd9e51ac37a3587382021565897a0bd
  Author: Kshitij Paranjape <kshitijvparanjape at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Transforms/AggressiveInstCombine/X86/pr175590.ll

  Log Message:
  -----------
  [ValueTracking] Fix crash in PR175590 (#180355)

Continuation of PR #175590 
Fixes the crash.


  Commit: ef5a11a51d9e888ec8455751067712d69d5d603e
      https://github.com/llvm/llvm-project/commit/ef5a11a51d9e888ec8455751067712d69d5d603e
  Author: Twice <twice at apache.org>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/IRCore.cpp

  Log Message:
  -----------
  [MLIR][Python] Fix generic class signature of ir.Value (#182447)

In the type stub, `Generic` isn’t explicitly imported. This causes
Pyright/Pylance to report an error and treat `Value` as not being a
generic type. Explicitly using `typing.Generic` fixes this.


  Commit: e411619dd232a5464f5b0fae24a88678fc6e50a4
      https://github.com/llvm/llvm-project/commit/e411619dd232a5464f5b0fae24a88678fc6e50a4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llc.rst
    M llvm/tools/llc/llc.cpp

  Log Message:
  -----------
  tools: Restore PluginLoader to llc (#182455)

This half reverts commit 6fdbcf68ba214725444103ff99668d78240562ea.

This is actually tested.


  Commit: d0979b77ae530f469c93c2914604f93fe090a07a
      https://github.com/llvm/llvm-project/commit/d0979b77ae530f469c93c2914604f93fe090a07a
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/constant_folding.mlir

  Log Message:
  -----------
  [mlir][tosa] Improve broadcasting behaviour in elementwise folders (#181114)

This commit aims to improve elementwise folder behaviour when
broadcasting is involved. In particular, it ensures correctness of
folders when the input operands are dynamic and it is not clear whether
broadcasting is involved.

For example, previously, the tosa.add folder could result in shape
information loss:
```
func.func @test(%arg0: tensor<?x4xi32>) -> tensor<?x4xi32> {
  %one = "tosa.const"() {values = dense<0> : tensor<2x1xi32>} : () -> tensor<2x1xi32>
  %div = tosa.add %one, %arg0 : (tensor<2x1xi32>, tensor<?x4xi32>) -> tensor<?x4xi32>
  return %div : tensor<?x4xi32>
}

$ mlir-opt --canonicalize test.mlir

func.func @test(%arg0: tensor<?x4xi32>) -> tensor<?x4xi32> {
  return %arg0 : tensor<?x4xi32>
}
```
In this example we have lost the constraint on the first dimension
provided by the lhs operand. This commit ensures these cases are not
folded.

Similar logic has also been applied to tosa.sub, tosa.intdiv, tosa.mul.

tosa.select previously handled the above example correctly, but did this
by failing to fold when dynamic shapes were involved (a conservative
approach). This commit improves the folder such that it follows the
behaviour of the other elementwise folders.

Note: some tests have been moved from canonicalize.mlir to
constant_folding.mlir to help keep folding tests together.


  Commit: 754828a122433d1c0cbd1de91479305e27e01320
      https://github.com/llvm/llvm-project/commit/754828a122433d1c0cbd1de91479305e27e01320
  Author: Twice <twice at apache.org>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp

  Log Message:
  -----------
  [MLIR][Python] Remove redundant methods (#182459)

At the moment, Pylance reports errors in `ir.pyi`, saying that some
overloaded methods are invalid. After looking into it, I found that some
of these methods have duplicate signatures and are defined more than
once. This PR is mainly to clean up those methods.


  Commit: 009068e870b1b25f156c382af5b0a9e7289de431
      https://github.com/llvm/llvm-project/commit/009068e870b1b25f156c382af5b0a9e7289de431
  Author: Roman Vinogradov <roman.vinogradov at sap.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp

  Log Message:
  -----------
  [ASan] Fix test IsPoisonedDoesNotCrashOnMemoryBoundaries for 32-bit targets (#182412)

Make sure there is no address space overflow in the test on 32-bit platforms.

32-bit: __asan_region_is_poisoned(0xffffffff, 1) fails since 0xffffffff + 1 = 0x0


  Commit: 351a1bb0c525ef9e7e7e90ec37ddb2f94ef88a2b
      https://github.com/llvm/llvm-project/commit/351a1bb0c525ef9e7e7e90ec37ddb2f94ef88a2b
  Author: Justin Holewinski <justin.holewinski at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/fcmp.ll

  Log Message:
  -----------
  [InstCombine] Do not perform fcmp -> icmp transformation if denormal inputs may be flushed (#181899)

Commit 4827771234276 added the following transformation:

  fcmp oeq/une (bitcast X), 0.0 --> (and X, SignMaskC) ==/!= 0

This transformation is only valid if denormal inputs are preserved. If
they are flushed, the two comparisons can return different results.

---------

Co-authored-by: Justin Holewinski <jholewinski at nvidia.com>


  Commit: 2802626af62c4e1b1d0c4e1dea0e99a00779fac4
      https://github.com/llvm/llvm-project/commit/2802626af62c4e1b1d0c4e1dea0e99a00779fac4
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [analyzer][docs] Further improve the optin.core.FixedAddressDereference docs (#182037)

This addresses the raised points in:

https://github.com/llvm/llvm-project/pull/181858#pullrequestreview-3820145678


  Commit: 8715094d52f9dc350de93b8e1ef93f1e23120189
      https://github.com/llvm/llvm-project/commit/8715094d52f9dc350de93b8e1ef93f1e23120189
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    R clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
    M clang/test/Analysis/concrete-address.c
    M clang/test/Analysis/ptr-arith.c
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer] Remove the alpha.core.FixedAddr checker (#182033)

This checker is way to simplistic. It's also alpha. I don't think it's
worth for anyone keeping it, especially that we have an
`optin.core.FixedAddressDereference` checker that largely supresedes
this alpha checker.

I propose the removal of this checker.
Also relates to:
https://github.com/llvm/llvm-project/pull/181858#discussion_r2818756964


  Commit: 08895d2450af6ef0c312547e6b764c20788c732c
      https://github.com/llvm/llvm-project/commit/08895d2450af6ef0c312547e6b764c20788c732c
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Distribute `vector.step` with sliced layout (#182010)


  Commit: 30cd3d5a048c3e8e726263cd181f5cd13e759ff6
      https://github.com/llvm/llvm-project/commit/30cd3d5a048c3e8e726263cd181f5cd13e759ff6
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [NFC][SPIRV] Replace uses of `removeFromParent` by `eraseFromParent` (#182330)

`removeFromParent` doesn't deallocate the resources associated with the
`MachineInstruction`.

I was not able to remove all the uses of `removeFromParent` in the file;
but these are the safe ones.

There is an extra advantage with `eraseFromParent`: If we reuse the
deleted instruction the address sanitizer will catch the mistake.


  Commit: b82c7fc65229c8b2b6a964f023f6ec59b3cf9210
      https://github.com/llvm/llvm-project/commit/b82c7fc65229c8b2b6a964f023f6ec59b3cf9210
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/CMakeLists.txt
    M flang/lib/Evaluate/CMakeLists.txt
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Lower/CMakeLists.txt
    M flang/lib/Parser/CMakeLists.txt
    M flang/lib/Semantics/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    A llvm/include/llvm/Support/pch.h
    M llvm/lib/CMakeLists.txt
    M llvm/lib/Support/CMakeLists.txt
    M polly/lib/CMakeLists.txt

  Log Message:
  -----------
  [CMake][LLVM] Add PCH infrastructure and LLVMSupport PCH (#176420)

This patch implements PCH support. PCH is enabled by default, unless
noted below, and can be disabled with
-DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON.

* Libraries can define precompiled headers using a newly added
PRECOMPILE_HEADERS keyword. If specified, the listed headers will be
compiled into a pre-compiled header using standard CMake mechanisms.

* Libraries that don't define their own PRECOMPILE_HEADERS but directly
depend on a library or component that defines its own PCH will reuse
that PCH. This reuse is not transitive to prevent excessive use of
unrelated headers. If multiple dependencies provide a reusable PCH, the
first one with the longest dependency chain (stored in the CMake target
property LLVM_PCH_PRIORITY) is used. However, due to CMake limitations,
only PCH from targets that are already defined can be reused; therefore
libraries that should reuse a PCH must be defined later in the CMake
file (=> add_subdirectory order matters).

* Libraries and executables can prevent PCH reuse with the keyword
DISABLE_PCH_REUSE. This both prevents reuse from dependencies and reuse
by other dependants. This is useful when, e.g., internal headers are
used in the PCH or the used headers are unlikely to provide benefits for
dependants.

* Precompiled headers are only used for C++ sources, not for C.

* With GCC, PCH provide very little benefits (tested with GCC 14 and 15)
due to increased template instatiation costs, but substantially increase
max-rss and build directory size. Therefore, disable PCH with GCC by
default; this can be explicitly overridden on the command line with
-DCMAKE_DISABLE_PRECOMPILE_HEADERS=OFF.

* With ccache and non-Clang compilers, changes in macro definitions are
not always accurately forwarded with ccache's preprocessed mode. To be
on the safe side, when ccache is enabled, disable PCH with all non-Clang
compilers; this can be explicitly overridden.

* With sccache, changes in macro definitions are not identified, which
in some cases can lead to false positive cache hits. Conservatively
disable PCH with sccache by default.

* Add a base PCH to LLVMSupport, which includes widely used standard
library and Support+ADT headers. The pch.h is placed in include so that
later PCH headers can extend that list of headers.

* Flang PCH use is ported to the general mechanism.

Addition of PCH headers for other components (e.g., IR, CodeGen) will be
posted as separate PRs.

RFC:
https://discourse.llvm.org/t/rfc-use-pre-compiled-headers-to-speed-up-llvm-build-by-1-5-2x/89345


  Commit: 5f953c157c12cae0c13243f5f3e83d4d11f060d2
      https://github.com/llvm/llvm-project/commit/5f953c157c12cae0c13243f5f3e83d4d11f060d2
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLTypes.cpp
    A llvm/test/tools/llvm-pdbutil/unknown-symbols.test
    A llvm/test/tools/llvm-pdbutil/unknown-types.test
    M llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
    M llvm/tools/llvm-pdbutil/MinimalSymbolDumper.h
    M llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp
    M llvm/tools/llvm-pdbutil/MinimalTypeDumper.h

  Log Message:
  -----------
  [llvm-pdbutil] Dump and parse unknown records (#180761)

When new record types or leaf kinds are added to CodeView, then we
should try to dump all the information we have on these records.

- If a type or symbol is unknown, the raw data is now always shown.
Before, you'd have to set `--sym-data` or `--type-data` (but that would
show it for all types).
- Converting to/from YAML, unknown records are now included. Before we'd
error out.

I stumbled upon this when checking PDBs from C++ 20 coroutines compiled
with MSVC. These contain the symbol records `0x1171` and `0x117c`, which
we don't handle yet.


  Commit: 1084aef2345a863cf6bf77ba86a08f80bf8bc283
      https://github.com/llvm/llvm-project/commit/1084aef2345a863cf6bf77ba86a08f80bf8bc283
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd-with-ret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd-with-ret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd-with-ret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd-with-ret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll

  Log Message:
  -----------
  [AMDGPU] Add legalization rules for G_AMDGPU_BUFFER_ATOMIC_FADD (#175258)

Support G_AMDGPU_BUFFER_ATOMIC_FADD for f32, f64 and <2 x f16>.


  Commit: 459acd142618e926e074f1954a34f784df2b16f2
      https://github.com/llvm/llvm-project/commit/459acd142618e926e074f1954a34f784df2b16f2
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/test/API/functionalities/tsan/cpp_global_location/TestTsanCPPGlobalLocation.py
    M lldb/test/API/functionalities/tsan/global_location/TestTsanGlobalLocation.py
    M lldb/test/API/functionalities/tsan/multiple/TestTsanMultiple.py
    M lldb/test/API/functionalities/tsan/thread_leak/TestTsanThreadLeak.py
    M lldb/test/API/functionalities/tsan/thread_numbers/TestTsanThreadNumbers.py

  Log Message:
  -----------
  Reland "[lldb] Fix TSan report" (#181004)

Reland "[lldb] Fix TSan report".


  Commit: ac017c8e9385cea2b7ee551f518b86756f175ddd
      https://github.com/llvm/llvm-project/commit/ac017c8e9385cea2b7ee551f518b86756f175ddd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC. (#182482)


  Commit: 163ff50d6bf9ec98d364e445c08f023c6be46b16
      https://github.com/llvm/llvm-project/commit/163ff50d6bf9ec98d364e445c08f023c6be46b16
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    R llvm/test/Transforms/AggressiveInstCombine/X86/pr175590.ll

  Log Message:
  -----------
  Revert "[ValueTracking] Fix crash in PR175590" (#182478)

Reverts llvm/llvm-project#180355

It caused assert failures:

```
llvm/include/llvm/IR/InstrTypes.h:2351:
Value *llvm::CallBase::getOperand(unsigned int) const:
Assertion `i_nocapture < OperandTraits<CallBase>::operands(this) &&
"getOperand() out of range!"' failed.
```

See comment on the PR for a reproducer.


  Commit: e22cbf6a456023fa74157aa03fa1eba28ec2f89a
      https://github.com/llvm/llvm-project/commit/e22cbf6a456023fa74157aa03fa1eba28ec2f89a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/docs/LangRef.md

  Log Message:
  -----------
  [MLIR] format LangRef.md (NFC) (#182259)

Using `mdformat --wraps 80` in preparation of further LangRef changes.


  Commit: cfdacce2d1dac8e1a7a3391fd089fe826fce75f2
      https://github.com/llvm/llvm-project/commit/cfdacce2d1dac8e1a7a3391fd089fe826fce75f2
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [NFC] Re-enable MSVC C4611 diagnostic (#182100)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4611?view=msvc-170

I do not believe this diagnostic happens in our code base any longer.
This diagnostic was disabled in 5c73e1f85c5d37a5b037c70f3c112eec5646acb3
and the review for it (https://reviews.llvm.org/D8572) says there were
two instances of the diagnostic as of 2015. But because this is about
interaction between `setjmp` and C++ object destruction, I don't think
we need to disable this diagnostic across the entire monorepo; we can
silence it for the project using setjmp if it still exists.

I enabled the diagnostic locally and my build was warning-free but I'd
like to see how pre- (and post-)commit CI do with this one.


  Commit: 5177439055e4c900d62690a45b79ce57fcd81802
      https://github.com/llvm/llvm-project/commit/5177439055e4c900d62690a45b79ce57fcd81802
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/compare-node-with-reuses.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the incorrect ne/eq transform because of reused instructions


  Commit: 52bf560d3dc1248cad88ce9f5ececadedfec4b47
      https://github.com/llvm/llvm-project/commit/52bf560d3dc1248cad88ce9f5ececadedfec4b47
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/test/DebugInfo/CXX/fn-template.cpp
    M clang/test/Driver/debug-options.c

  Log Message:
  -----------
  [clang][Driver][Darwin] Turn on -gsimple-template-names for Darwin by default (#182297)

Enables `-gsimple-template-names=simple` when targeting recent Apple
platforms (26 or later, except `DriverKit` which is at 25). Those are
platforms where the associated LLDB is capable of debugging
`simple-template-names` debug-info.

The two main affects on debug-info are:
1. forward declarations for structures now have
`DW_TAG_type_template_parameter`s (since this is required to reconstruct
the template names if just given a forward declaration
2. `DW_AT_name` of templates will not include template parameters
anymore (except for a few cases where the name is not reconstitutible
from the template parameter DIE names)

While the `.debug_str` section is reduced in size (due to shorter
`DW_AT_name`s), this is somewhat offset by having to include template
parameter DIEs on forward declarations.


  Commit: f5889e59e6e5ec5cc9079672789cc83bd1e1ac74
      https://github.com/llvm/llvm-project/commit/f5889e59e6e5ec5cc9079672789cc83bd1e1ac74
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.cd.g16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
    M llvm/test/CodeGen/AMDGPU/fp-min-max-image-atomics.ll
    M llvm/test/CodeGen/AMDGPU/invariant-image-load.ll
    M llvm/test/CodeGen/AMDGPU/issue92561-restore-undef-scc-verifier-error.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.flt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Regbanklegalize rules for INTRIN_IMAGE (#179810)

Regbanklegalize rules for INTRIN_IMAGE loads and stores.
Because of very large number of different type signatures, rule specifies
only function for lowering (waterfall lowering of RsrcIdx operand if needed)
and this function also applies register banks.


  Commit: f4d4217b6dde546f2c3a2fbd033951c11e05f86c
      https://github.com/llvm/llvm-project/commit/f4d4217b6dde546f2c3a2fbd033951c11e05f86c
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/AreaTeamMembers.txt

  Log Message:
  -----------
  Update Clang Area Team members list (#182488)


  Commit: 8c583bd4d1a943801f6a361d6c52c6b94617fcc6
      https://github.com/llvm/llvm-project/commit/8c583bd4d1a943801f6a361d6c52c6b94617fcc6
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [CMake] Disable PCH for targets with Objective-C srcs

Avoid Clang errors:

error: Objective-C was disabled in PCH file but is currently enabled


  Commit: ac23bf6f2a61bb323a61779f88c0311a42ecb99e
      https://github.com/llvm/llvm-project/commit/ac23bf6f2a61bb323a61779f88c0311a42ecb99e
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    A llvm/test/Transforms/LoopIdiom/AArch64/disable-vectorize.ll

  Log Message:
  -----------
  [LoopIdiomVectorize] Bail when vectorization is disabled (#181142)

Bail on vectorizing a loop in LoopIdiomVectorize when the loop carries
hints that indicate vectorization is disabled.

This means that LoopIdiomVectorize will now respect vectorize(disable)
loop hints.


  Commit: e0f2b1b4c6777bd449eba33cf23b1408bc63e200
      https://github.com/llvm/llvm-project/commit/e0f2b1b4c6777bd449eba33cf23b1408bc63e200
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    A llvm/test/CodeGen/AMDGPU/convergent.mir
    R llvm/test/CodeGen/AMDGPU/wmma-gfx12-convergent.mir

  Log Message:
  -----------
  [AMDGPU] Ensure all PERMLANE instructions are marked as convergent (#182162)

All PERMLANE instructions in AMDGPUGenInstrInfo.inc were verified to now
be marked as convergent. This is necessary to prevent PERMLANE
instructions from being incorrectly sunk by machine-sink.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: a2223c497783ea7e535c2e8062ab832e73936c55
      https://github.com/llvm/llvm-project/commit/a2223c497783ea7e535c2e8062ab832e73936c55
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/AutoConvert.h
    M llvm/lib/Support/AutoConvert.cpp
    M llvm/lib/Support/raw_ostream.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Preserve filetag when rewriting files (#181733)

This patch preserves the file tags on z/OS


  Commit: 457b9497572ec5090b88e0b47aab7de7140d63a5
      https://github.com/llvm/llvm-project/commit/457b9497572ec5090b88e0b47aab7de7140d63a5
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [NFC] Re-enable* MSVC C4503 diagnostic (#182049)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4503?view=msvc-170

> This compiler warning is obsolete and is not generated in Visual
> Studio 2017 and later compilers.

We require at least MSVC 2019 at this point, so no need to keep
suppressing this diagnostic. So this "re-enables" it, even though it
provides no value.


  Commit: 58ac25e3f0dc772689dd35ece24c1e8159be523b
      https://github.com/llvm/llvm-project/commit/58ac25e3f0dc772689dd35ece24c1e8159be523b
  Author: Zhuoran Yin <zhuoryin at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/Transforms/FoldMemRefsOps.cpp
    M mlir/test/Dialect/AMDGPU/amdgpu-fold-memrefs.mlir

  Log Message:
  -----------
  [AMDGPU] Add GatherToLDS async flag back in FoldMemRefOpsIntoGatherToLDSOp (#182364)

I discovered that async flag on GatherToLDS op got dropped going through
the lowering pipeline so adding it back as it should.


  Commit: eeb6b394c5739414269e6b7522bd2c5be4b20faf
      https://github.com/llvm/llvm-project/commit/eeb6b394c5739414269e6b7522bd2c5be4b20faf
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp
    M mlir/test/Dialect/LLVM/transform-e2e.mlir
    M mlir/test/Dialect/Vector/transform-vector.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_1d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_2d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-matmul-masked-vec.mlir
    M mlir/test/python/dialects/transform_vector_ext.py

  Log Message:
  -----------
  [mlir][vector] remove lower_multi_reduction (#182332)

* Removes `ApplyLowerMultiReductionPatternsOp`
(`apply_patterns.vector.lower_multi_reduction`)
* Updates uses of `apply_patterns.vector.lower_multi_reduction` in tests
to use:
  *  reorder_and_expand_multi_reduction_dims
  * multi_reduction_flattening
   * multi_reduction_unrolling
* Removes `populateVectorMultiReductionLoweringPatterns` (unused)


  Commit: 1d213cea9c1dcc452182716bb6d56eeed15f361a
      https://github.com/llvm/llvm-project/commit/1d213cea9c1dcc452182716bb6d56eeed15f361a
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp

  Log Message:
  -----------
  [mlir][tosa] Update link to TOSA specification (#181995)

Updates URL to the new location of the specification repository.


  Commit: 773d77566986d72fd5b2ad2672f9112b10b3430d
      https://github.com/llvm/llvm-project/commit/773d77566986d72fd5b2ad2672f9112b10b3430d
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4610 diagnostic; NFC (#182489)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4610?view=msvc-170

> object 'class' can never be instantiated - user-defined constructor
> required

This is a useful diagnostic in general and enabling it locally caused no
build failures.


  Commit: 78e19e96720dbd5be0692bdfa5481d863d8c0f73
      https://github.com/llvm/llvm-project/commit/78e19e96720dbd5be0692bdfa5481d863d8c0f73
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/test/Lower/forall/forall-allocatable-2.f90
    M flang/test/Lower/forall/forall-allocatable.f90
    M flang/test/Lower/forall/forall-array.f90
    M flang/test/Lower/forall/forall-construct-2.f90
    M flang/test/Lower/forall/forall-construct-3.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 18) (#182439)

Tests converted from test/Lower/forall: forall-allocatable.f90,
forall-allocatable-2.f90, forall-array.f90, forall-construct-2.f90,
forall-construct-3.f90


  Commit: 21b346144033994685edd93f73cae7782d0b1381
      https://github.com/llvm/llvm-project/commit/21b346144033994685edd93f73cae7782d0b1381
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/CMakeLists.txt
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/include/flang-rt/runtime/memory.h
    M flang-rt/lib/runtime/CMakeLists.txt
    A flang-rt/lib/runtime/array.h
    A flang-rt/lib/runtime/io-api-gpu.cpp
    A flang-rt/lib/runtime/io-api-gpu.h
    A flang-rt/lib/runtime/io-api-server.cpp
    M flang/include/flang/Runtime/io-api.h
    M offload/plugins-nextgen/common/CMakeLists.txt
    M offload/plugins-nextgen/common/src/RPC.cpp
    A offload/test/offloading/fortran/io.f90
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  [flang-rt] Implement basic support for I/O from OpenMP GPU Offloading (#181039)

Summary:
This PR provides the minimal support for Fortran I/O coming from a GPU
in OpenMP offloading. We use the same support the `libc` uses for its
printing through the RPC server. The helper functions `rpc::dispatch`
and `rpc::invoke` help make this mostly automatic.

Becaus Fortran I/O is not reentrant, the vast majority of complexity
comes from needing to stitch together calls from the GPU until they can
be executed all at once. This is needed not only because of the
limitations of recursive I/O, but without this the output would all be
interleaved because of the GPU's lock-step execution.

As such, the return values from the intermediate functions are
meaningless, all returning true. The final value is correct however. For
cookies we create a context pointer on the server to chain these
together.

Works on both my AMD and NVIDIA GPUs.
```fortran
program hello_gpu
  implicit none

  !$omp target teams num_teams(1)
  !$omp parallel num_threads(2)
    ! Print strings
    print *, "Hello from GPU"
  !$omp end parallel
  !$omp end target teams

end program hello_gpu
```
```console
> flang hello.f90 -O2 -fopenmp --offload-arch=gfx1030 
> ./a.out 
 Hello from GPU
 Hello from GPU
> flang hello.f90 -O2 -fopenmp --offload-arch=sm_89  
> ./a.out 
 Hello from GPU
 Hello from GPU
```


  Commit: 95a960daa0ebc4b582dbfebed26981552d94a3cd
      https://github.com/llvm/llvm-project/commit/95a960daa0ebc4b582dbfebed26981552d94a3cd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/compare-node-with-reuses.ll

  Log Message:
  -----------
  [SLP]Do not convert inversed cmp nodes, if they reordered/reused

If the cmp node with inversed compares must be reordered/shuffled with
the reuses, disable transformation for such nodes for now, they require
some special processing.

Fixes https://github.com/llvm/llvm-project/pull/181580#issuecomment-3933026221


  Commit: 044ff0fe2d3549459476024a446231fc9230166e
      https://github.com/llvm/llvm-project/commit/044ff0fe2d3549459476024a446231fc9230166e
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4204 diagnostic; NFC (#182491)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4204?view=msvc-170

> nonstandard extension used : non-constant aggregate initializer

This is an ANSI compatibility diagnostic which isn't useful for us to
disable. In my local testing, this diagnostic is not emitted.


  Commit: d3443fdf36353efab2eb01501b4ce3142185a9b0
      https://github.com/llvm/llvm-project/commit/d3443fdf36353efab2eb01501b4ce3142185a9b0
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    A llvm/test/Analysis/DependenceAnalysis/exact-rdiv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/strong-siv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
    A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-addrec-wrap.ll

  Log Message:
  -----------
  [DA] Add tests for dependencies are missed due to addrecs wrap (NFC) (#179683)

Add test cases where dependencies are missed since nowrap properties of
addrecs are not checked properly. This patch doesn't contain test cases
for the MIV tests.


  Commit: 21e1a300bce074db55af4544b2192c9643c79449
      https://github.com/llvm/llvm-project/commit/21e1a300bce074db55af4544b2192c9643c79449
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4091 diagnostic; NFC (#182500)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4091?view=msvc-170

> 'keyword': ignored on left of 'type' when no variable is declared

This diagnostic was disabled in 0cba642a05ad0675f313e55fce29ce5273340a59
because the diagnostic was being hit in system headers under MSVC 2015.
That no longer appears to be the case from my local testing; this
diagnostic does not appear to be emitted.


  Commit: e9c658fd218d2207a7a8cf7023bc9d59c1b1bf1b
      https://github.com/llvm/llvm-project/commit/e9c658fd218d2207a7a8cf7023bc9d59c1b1bf1b
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lldb/test/Shell/SymbolFile/DWARF/delayed-definition-die-searching.test

  Log Message:
  -----------
  [lldb][test] delayed-definition-die-searching.test: compile without simple template names

Fails on Darwin after we made `-gsimple-template-names` the default (in https://github.com/llvm/llvm-project/pull/182297):
```
13:42:19  | # CHECK: DWARFASTParserClang::ParseTypeFromDWARF{{.*}}DW_TAG_structure_type (DW_TAG_structure_type) name = 't2<t1>'
13:42:19  |          ^
13:42:19  | <stdin>:9:12: note: scanning from here
13:42:19  | (lldb) p v1
13:42:19  |            ^
13:42:19  | <stdin>:10:278: note: possible intended match here
13:42:19  |  (arm64) /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake-os-verficiation/lldb-build/tools/lldb/test/Shell/SymbolFile/DWARF/Output/delayed-definition-die-searching.test.tmp.out: DWARFASTParserClang::ParseTypeFromDWARF (die = 0x0000000000000037, decl_ctx = 0x0000000B723D2030 (die 0x000000000000000c)) DW_TAG_structure_type (DW_TAG_structure_type) name = 't2')
13:42:19  |
```

This just checks the delayed definition search. It used to always run without `-gsimple-template-names`, so we're not losing coverage here. Also the failure is expected with `-gsimple-template-names` because the DIE name no longer include template parameters. I didn't want to make the `CHECK` less strict because it useful to check that the types being resolved are the correct instantiations.


  Commit: 98f0b6f4026fa578d269bc39d4d7bab5d81c2279
      https://github.com/llvm/llvm-project/commit/98f0b6f4026fa578d269bc39d4d7bab5d81c2279
  Author: Will Hawkins <hawkinsw at obs.cr>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/AST/Expr.h

  Log Message:
  -----------
  [Clang][AST][NFC] Correct Comment in GenericSelectionExpr (#180850)

Correct a misleading comment about the number/type of trailing objects
in the GenericSelectionExpr.


  Commit: 20dba979f77124acb2fc51df0f8c7f92028e60b5
      https://github.com/llvm/llvm-project/commit/20dba979f77124acb2fc51df0f8c7f92028e60b5
  Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/si-pre-allocate-wwm-regs.mir

  Log Message:
  -----------
  [AMDGPU] Add target features to guard DPP controls (#182391)

This patch adds target features:
- `+dpp-wavefront-shifts`, for DPP `wave_shl/rol/shr/ror`
- `+dpp-row-bcast`, for DPP `row_bcast15/31`

These DPP controls are not available in gfx10+, so these target features
enable `AMDGPURemoveIncompatibleFunctions` to remove functions that rely
on these controls when compiling for newer GPUs.


  Commit: acc15fbce100e941f028f52d7774cab130df9714
      https://github.com/llvm/llvm-project/commit/acc15fbce100e941f028f52d7774cab130df9714
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/CMakeLists.txt

  Log Message:
  -----------
  [CMake][LLVM] Disable PCH on MSVC for file with custom flags

See: https://github.com/llvm/llvm-project/pull/176420


  Commit: 5f5d27d7d32e9d85fbdabc0bc2632ce0ab485681
      https://github.com/llvm/llvm-project/commit/5f5d27d7d32e9d85fbdabc0bc2632ce0ab485681
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_util.h
    M offload/test/libc/rpc_callback.cpp

  Log Message:
  -----------
  [libc] Support array tags in the RPC dispatch helpers (#181395)

Summary:
This PR adds support for tagging a pointer as an array when marshaling
between the CPU and GPU.


  Commit: d8d64569baca395d9358991a0244049e44d2eb0f
      https://github.com/llvm/llvm-project/commit/d8d64569baca395d9358991a0244049e44d2eb0f
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt

  Log Message:
  -----------
  [Flang][Doc] Specify dialect for ops doc (#182506)


  Commit: 5e5e082aebccd20761fe5879cae62135e4d5608d
      https://github.com/llvm/llvm-project/commit/5e5e082aebccd20761fe5879cae62135e4d5608d
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake][MSVC] Add /Zi to release flags (#182515)

Try to fix MSVC error C2859, which complains about an outdated PDB file.
CMake appears to copy the PDB file for this reason, but it only looks in
one specific place for the /Zi flag.


  Commit: cb82236896f070bb8482b9423274b66d19a38017
      https://github.com/llvm/llvm-project/commit/cb82236896f070bb8482b9423274b66d19a38017
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp

  Log Message:
  -----------
  [CIR] Handle Type::OverflowBehavior in CIR CodeGen (#182469)

This PR adds OverflowBehavior  case to CIR CodeGen.
Fixes CI failures in clangIR introduced by
https://github.com/llvm/llvm-project/pull/148914


  Commit: b2eb876ca6bde79ef3755b38f252bf05914dd7f7
      https://github.com/llvm/llvm-project/commit/b2eb876ca6bde79ef3755b38f252bf05914dd7f7
  Author: Son Tuan Vu <sontuan.vu119 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Use range-based for loops in KD reserved bytes checks (#182340)


  Commit: b6d465ceaac4207bef79a0b8418b4477f3bf1597
      https://github.com/llvm/llvm-project/commit/b6d465ceaac4207bef79a0b8418b4477f3bf1597
  Author: Guillot Tony <tony.guillot at protonmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/Sema/type-dependent-attrs.cpp
    M clang/test/SemaCXX/init-priority-attr.cpp

  Log Message:
  -----------
  [clang] Fix init_priority attribute by delaying type checks after the type is deduced (#182208)

This PR fixes the way we are dealing with type checks for the
`init_priority`
attribute, by delaying these checks after we are deducing the type.

It is a follow up from the list of affected attributes in PR #164440.


  Commit: 18403bd2ab2d3e4db0524b6255a84db2551c73fe
      https://github.com/llvm/llvm-project/commit/18403bd2ab2d3e4db0524b6255a84db2551c73fe
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/JSON.h
    M llvm/lib/Support/JSON.cpp

  Log Message:
  -----------
  [Support][NFC] Avoid weak vtable warning for JSON ParseError (#182511)


  Commit: 3f2c28ec16a51e429ac3f2212287fa28b1ed5686
      https://github.com/llvm/llvm-project/commit/3f2c28ec16a51e429ac3f2212287fa28b1ed5686
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/DependencyScanning/ModuleDepCollector.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M llvm/include/llvm/Support/Path.h
    M llvm/lib/Support/Path.cpp

  Log Message:
  -----------
  [clang] Simplify usage of FileManager::makeAbsolutePath (#182360)

Fold normalization of `.`'s into `FileManager::makeAbsolutePath` so that
different places that need to see through it can just call it instead of
handling it in wrappers.

There shouldn't be a functional impact.


  Commit: 0364a25f4eca1aa1f8073838d6fb3189c1df7c60
      https://github.com/llvm/llvm-project/commit/0364a25f4eca1aa1f8073838d6fb3189c1df7c60
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td

  Log Message:
  -----------
  [flang][nfc] fix typo in fir.declare_value description (#182505)

Fix typo from
https://github.com/llvm/llvm-project/pull/181848#discussion_r2832803471


  Commit: f3f0b621f74ef5cf51bff44240841cc4a0862c53
      https://github.com/llvm/llvm-project/commit/f3f0b621f74ef5cf51bff44240841cc4a0862c53
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/test/Driver/exec.f90

  Log Message:
  -----------
  [flang-rt] Add sysroot to test (#182508)

This fixes the test on MacOS. Without this change the SDK sysroot is not
set and so the library path is incorrect and the 'System' library cannot
be found.

Test with https://github.com/llvm/llvm-project/pull/182501 so that the
sysroot variable is correctly set.

Assisted-by: Codex


  Commit: 1d505f62ade3acbc13eb15e83953f6afcd4c2e0c
      https://github.com/llvm/llvm-project/commit/1d505f62ade3acbc13eb15e83953f6afcd4c2e0c
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp

  Log Message:
  -----------
  [LoopUnrollPass] Use `PragmaCount` instead of reparsing the metadata (NFC) (#182080)


  Commit: c6096a111dc0a6acd81e99ea63b1af94467d3731
      https://github.com/llvm/llvm-project/commit/c6096a111dc0a6acd81e99ea63b1af94467d3731
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/Analysis/DependenceAnalysis/rdiv-minor-algebra.ll

  Log Message:
  -----------
  [DA] Add test for RDIV misses dependency due to "minor algebra" (NFC) (#179653)

The function `testRDIV` contains the following comments:

```
// With minor algebra, this test can also be used for things like
// [c1 + a1*i + a2*j][c2].
```

```
// we have 3 possible situations here:
//   1) [a*i + b] and [c*j + d]
//   2) [a*i + c*j + b] and [d]
//   3) [b] and [a*i + c*j + d]
// We need to find what we've got and get organized
```

In case `2)`, it moves `c*j` from `Src` to `Dst` and performs dependence
testing between `[a*i + b]` and `[-c*j + d]`. Similar algebraic
manipulations are applied in case `3)`. This "minor algebra" is unsound
in LLVM because whether wraps occur can change. This patch adds a test
case to illustrate the issue.


  Commit: 49de34459c99b33c27aae4596ed5e67ce3d89eae
      https://github.com/llvm/llvm-project/commit/49de34459c99b33c27aae4596ed5e67ce3d89eae
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
    M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Work around vfs bug in tests (#182529)

Work around #182526 after #176420 by renaming virtual file from main.cpp
(which sometimes collides with a file in our build tree) to cqc-main.cpp
(which is hopefully unique).


  Commit: f343cc0eff1cb8b6c0c7aa912c2c8e132b972481
      https://github.com/llvm/llvm-project/commit/f343cc0eff1cb8b6c0c7aa912c2c8e132b972481
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRT.cmake

  Log Message:
  -----------
  [flang-rt] Add missing libc dependency to object library


  Commit: c6cb8f30d0039e5ec310acd750d3d7c0a6cbacdf
      https://github.com/llvm/llvm-project/commit/c6cb8f30d0039e5ec310acd750d3d7c0a6cbacdf
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [NFC] `clang-format` GenericDomTreeConstruction.h (#182509)


  Commit: 1b1ed4f25adb24210b09fe353667d68bba910062
      https://github.com/llvm/llvm-project/commit/1b1ed4f25adb24210b09fe353667d68bba910062
  Author: Abhinav Pradeep <abhinav.pradeep at oracle.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/CFG.h
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    A clang/test/Analysis/exprwithcleanups-lifetime-marker-cfg.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Overhaul CFG and analysis to also work with trivially destructed temporary objects (#177985)

Change summary:

Modification to CFG:
1. Added `CFGFullExprCleanup` which has a pointer to `BumpVector<const
MaterializeTemporaryExpr *>` to track all MTE that **might** (in the
sense that we take union on branches) be spawned by an
`ExprWithCleanups`
2. Modified logic in `CFGBuilder` to appropriately insert this marker.
It inserts the marker primarily via `CFGBuilder::VisitExprWithCleanups`,
and also `CFGBuilder::addInitializer` and `CFGBuilder::VisitDeclSubExpr`
as these bypass visiting the `ExprWithCleanups`. The bump vector is
allocated appropriately using the bump allocator of the CFG to respect
its lifetime rules.
3. Visiting to track the temporaries is done in
`CFGBuilder::VisitForTemporaries`. Behaviour is modulated via the
`BuildOpts` so as to enable tracking only when necessary. The
encountered non-lifetime extended MTE are stored in a small vector
member of `TempDtorContext`.

Modification to analysis:
1. Logic to issue the loans remains mostly the same, with the caveat
that we now **always** issue a loan to any MTE that expires at the end
of full expression.
2. Introduced `handleFullExprCleanup` to replace `handleTemporaryDtor`.
It loops through all active loans, expiring them if the path matches an
MTE in the `CFGFullExprCleanup` node's `ExpiringMTEs`.

Fixes:
#175893
#178159


  Commit: fa1cda8f091f34301d956bcf6c789865e619a5ee
      https://github.com/llvm/llvm-project/commit/fa1cda8f091f34301d956bcf6c789865e619a5ee
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
    R llvm/test/CodeGen/DirectX/issue-152348.ll
    R llvm/test/CodeGen/DirectX/phi-node-replacement.ll
    A llvm/test/Transforms/GVN/no-sink-dxgetpointer.ll
    A llvm/test/Transforms/SimplifyCFG/DirectX/no-sink-dxgetpointer.ll

  Log Message:
  -----------
  [DirectX] Mark `dx.resource.getpointer` as convergent (#182099)

By marking `dx.resource.getpointer` as convergent, we are able to
prevent unwanted code transforms that make resource access look illegal.
Namely, this prevents the creation of a ptr into a resource handle to be
moved throughout control flow (eg in `SimplifyCFG`), further preventing
sink/hoist optimizations on the returned ptr during `InstCombine`.

Previously, these transforms were undone by the `phiNodeReplacement`
function in `dxil-resource-access`. However, in general, we would like
to follow a policy of preventing these transforms from occurring rather
than having to undo the work. This change is aligned with this.

This is a pre-requisite to resolving
https://github.com/llvm/llvm-project/issues/165288.


  Commit: bdc151e099993764105dfe94f8fb2160fb6ad0af
      https://github.com/llvm/llvm-project/commit/bdc151e099993764105dfe94f8fb2160fb6ad0af
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c

  Log Message:
  -----------
  [CIR][AArch64] Add CIR tests for predicated SVE svdup_m builtins (#182307)

This PR adds CIR lowering tests for the predicated SVE `svdup` builtins
on AArch64. The corresponding ACLE intrinsics are documented at:
https://developer.arm.com/architectures/instruction-sets/intrinsics

The tests cover the merging-predicated variants (suffix `_m`, e.g.
`svdup_n_f32_m`). These forms take an explicit inactive-lane value,
which is merged into the result for lanes where the predicate is false.

No functional changes are introduced. The existing lowering
infrastructure already handles these builtins; this change adds
test coverage only.


  Commit: 103cef9e4fce49ab0dbb329b0aa18cf64896bae7
      https://github.com/llvm/llvm-project/commit/103cef9e4fce49ab0dbb329b0aa18cf64896bae7
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/include/flang/Lower/OpenMP/Clauses.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    A flang/test/Lower/OpenMP/Todo/depth-clause.f90
    A flang/test/Parser/OpenMP/depth-clause.f90
    A flang/test/Semantics/OpenMP/depth-clause.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP] Initial support for DEPTH clause (#182288)

The semantic checks do not check any conditions on the associated loop
nest (such as actual depth or whether it is a perfect nest). Lowering
will emit a not-implemented-yet message.


  Commit: c9c1b15c66852abd69cf550374755611451197cb
      https://github.com/llvm/llvm-project/commit/c9c1b15c66852abd69cf550374755611451197cb
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4709 diagnostic; NFC (#182514)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4709?view=msvc-170

> comma operator within array index expression

This is a useful diagnostic to have enabled in general. It was disabled
in 02e1f1915f94413a64efd295fa3dc63d40046fcf because of false positives,
but those appear to have been resolved. Enabling the diagnostic locally
does not emit any diagnostics.


  Commit: b8fbf9ec26fb526ef4a05bb42e1b0939f133775a
      https://github.com/llvm/llvm-project/commit/b8fbf9ec26fb526ef4a05bb42e1b0939f133775a
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C5105 diagnostic; NFC (#182524)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/c5105?view=msvc-170

> macro expansion producing 'defined' has undefined behavior

This diagnostic was disabled in 9a708855daeb6f70bbde7c2bc63e061ebaf072df
due to it triggering in system headers like WinBase.h. From my local
testing, the issue seems to have either been resolved in the system
headers or in MSVC, because enabling the warning does not trigger any
diagnostics for me.


  Commit: 6d95235b12412ebb54667ca15f7d50f65d2b8f7b
      https://github.com/llvm/llvm-project/commit/6d95235b12412ebb54667ca15f7d50f65d2b8f7b
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrFuture.td
    M llvm/lib/Target/PowerPC/PPCOperands.td

  Log Message:
  -----------
  [PowerPC] Fix 32bit paddis implementation (#182525)

Fix issue with paddis 32bit implementation exposed due to imm operand
refactoring work.


  Commit: 56569270b5f2deeadb568649ea1bf7fa1b3afcb0
      https://github.com/llvm/llvm-project/commit/56569270b5f2deeadb568649ea1bf7fa1b3afcb0
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Add `modernize-type-traits` test case to verify issue #179386 was fixed (#182407)

#179386 was indirectly fixed by #170953, and this PR just adds a test
case to confirm it was indeed fixed.


  Commit: e01b867890f8dcb222dab2cb273d4c992742eac7
      https://github.com/llvm/llvm-project/commit/e01b867890f8dcb222dab2cb273d4c992742eac7
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/ExactRDIV.ll
    M llvm/test/Analysis/DependenceAnalysis/rdiv-minor-algebra.ll

  Log Message:
  -----------
  [DA] Remove "minor algebra" in the RDIV test (#179654)

As mentioned in #179653, the "minor algebra" in `testRDIV` is incorrect.
This patch deletes that part completely.

Fixes the test case added in #179653.


  Commit: 21d93c2172483194bf82c4de1d1090d2cabf2ba2
      https://github.com/llvm/llvm-project/commit/21d93c2172483194bf82c4de1d1090d2cabf2ba2
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/test/CodeGen/NVPTX/bug21465.ll
    M llvm/test/CodeGen/NVPTX/lower-args-alignment.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll

  Log Message:
  -----------
  [NVPTX] Cleanup NVPTXLowerArgs, simplifying logic and improving alignment propagation (#180286)


  Commit: e321d2a1a5d20faab427ce3b427d6023a0382ce4
      https://github.com/llvm/llvm-project/commit/e321d2a1a5d20faab427ce3b427d6023a0382ce4
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake] Re-enable LIBCXX_HARDENING_MODE for assert build (#182383)

Previously in #68541, the change disabled LIBCXX_HARDENING_MODE for all
non-bootstrapping assert build to fix bootstrapping issues. CMake
variable `LIBCXX_HARDENING_MODE` is only affective in libcxx build to
set a default harderning mode. That means unless the build is
bootstrapped from the newly built libcxx, the harderning mode is not
enabled for assert built compiler, thus the compiler loses test coverage
like accessing the value from an empty std::optional.

The fix is to correctly define `_LIBCPP_HARDENING_MODE` in a way that
respect user defined LIBCXX_HARDENING_MODE. To be extra safe, compile
and test the defined marco will not cause error before using it.


  Commit: 2d69ab262b26a90a1e42b416a5e344a31f62cadb
      https://github.com/llvm/llvm-project/commit/2d69ab262b26a90a1e42b416a5e344a31f62cadb
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c

  Log Message:
  -----------
  [clang][ARM] Refactor argument handling in `EmitAArch64BuiltinExpr` (1/2) (NFC) (#181794)

Refactor `EmitAArch64BuiltinExpr` so that all AArch64/NEON builtins
handled by this hook _and marked as non-overloaded_ share a common path
for generating LLVM IR arguments (collected into the `Ops`
`SmallVector<Value*>`) (*)

Previously, the argument emission loop unconditionally skipped the
trailing argument:

```cpp
  for (unsigned i = 0, e = E->getNumArgs() - 1; i != e; ++i)
```

This was originally intended to ignore the extra Sema-only argument
used by overloaded NEON builtins (e.g. the type discriminator passed
by `__builtin_neon_*` intrinsics). However, this logic was applied
unconditionally.

This patch updates the loop to skip the trailing argument only when
`HasExtraNeonArgument` returns true for non-SISD builtins:

```cpp
  bool HasExtraArg = !IsSISD && HasExtraNeonArgument(BuiltinID);
  unsigned NumArgs =
      E->getNumArgs() - (HasExtraArg ? 1 : 0);
  for (unsigned i = 0, e = NumArgs; i != e; ++i)
```

This preserves existing IR generation behaviour while making the
handling of Sema-only NEON discriminator arguments explicit.

For context, type discriminators can be found in definitions of various
builtins in `arm_neon.h`. For example, `vsriq_n_p64(<args>)` expands
into the following call:

```cpp
  __builtin_neon_vsriq_n_v(<args>, 38)
```

The trailing `38` encodes the concrete NEON vector type
(e.g. `poly64x2_t`) for overload resolution in Sema; it is not
semantically part of the operation and is ignored during IR generation.

As part of this change, `HasExtraNeonArgument` was completed so
that these discriminator arguments are correctly identified.

No functional change intended.

(*) This refers to two large `switch` stmts inside
`EmitAArch64BuiltinExpr` that are meant to switch the processing into
non-overloaded and overloaded builtins. The intended split between
non-overloaded and overloaded builtins is not consistently enforced: the
second switch (nominally handling overloaded builtins) also processes
some non-overloaded cases. This patch refactors only the first switch
and prepares for a follow-up cleanup in 2/2.


  Commit: 7064ff2226141034fdb264c29b97acbc733f8dae
      https://github.com/llvm/llvm-project/commit/7064ff2226141034fdb264c29b97acbc733f8dae
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    M llvm/lib/Target/Hexagon/Hexagon.h
    A llvm/lib/Target/Hexagon/HexagonGlobalScheduler.cpp
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/test/CodeGen/Hexagon/autohvx/hfsplat.ll
    A llvm/test/CodeGen/Hexagon/avoid-debug-increment.mir
    M llvm/test/CodeGen/Hexagon/cext-check.ll
    A llvm/test/CodeGen/Hexagon/dbg-label-pullup.ll
    A llvm/test/CodeGen/Hexagon/global-sched-iterator-invalidation.ll
    A llvm/test/CodeGen/Hexagon/global-sched-skip-vsub_fake.ll
    A llvm/test/CodeGen/Hexagon/pull-delayed-new.mir
    A llvm/test/CodeGen/Hexagon/pull-no-comp-code.ll
    A llvm/test/CodeGen/Hexagon/pull-up-dbg-label.mir
    A llvm/test/CodeGen/Hexagon/pull-up-slots.mir
    A llvm/test/CodeGen/Hexagon/pull-up.ll

  Log Message:
  -----------
  [Hexagon] Add HexagonGlobalScheduler pass (#180803) (#181961)

This patch adds the HexagonGlobalScheduler, a post-packetization pass
that performs global instruction scheduling and pull-up optimizations to
improve packet density on Hexagon VLIW architecture.

The scheduler operates on scheduling regions (super-blocks with single
entry and multiple exits) and attempts to move instructions across basic
blocks to fill packet slots more efficiently. It supports both
speculative and predicative scheduling modes.

Key features:
- Global instruction scheduling across basic blocks
- Speculative scheduling with safety checks
- Predicative scheduling using predication
- Local pull-up within basic blocks
- Dual jump formation
- Branch optimizations
- Liveness preservation using HexagonLiveVariables

The pass depends on HexagonLiveVariables and HexagonGlobalRegion
infrastructure for maintaining correct liveness information when moving
instructions across basic block boundaries.

This patch also adds two helper functions to HexagonRegisterInfo that
are required by the scheduler to prevent correctness issues.

1. isGlobalReg(MCPhysReg Reg) - Returns true for reserved physical
registers (R29, R30, R31) that are live across function calls. This
prevents the scheduler from incorrectly speculating instructions that
modify the stack pointer or frame pointer.

2. isFakeReg(MCPhysReg Reg) - Returns true for fake HVX registers
(VF0-VF31, VFR0-VFR31) used as sub-registers in vector pairs. This
prevents crashes when the scheduler processes HVX vector operations by
skipping these internal bookkeeping registers.

The scheduler runs in the pre-emit pipeline after packetization and is
only active when optimizations are enabled.

This implementation includes fixes for iterator invalidation issues that
could cause crashes when built with libstdc++ debug mode enabled.

Original-work-by: Sergei Larin <slarin at qti.qualcomm.com>
Co-authored-by: Ikhlas Ajbar <iajbar at qti.qualcomm.com>
Co-authored-by: Krzysztof Parzyszek <kparzysz at codeaurora.org>
Co-authored-by: Brian Cain <brian.cain at oss.qualcomm.com>


  Commit: faf050cd136a414484a810e5110d85f1569b21ab
      https://github.com/llvm/llvm-project/commit/faf050cd136a414484a810e5110d85f1569b21ab
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
    M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/fminnum.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines-gfx1200.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/minimummaximum.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Regbanklegalize rules for G_FMIN*/MAX* (#179778)


  Commit: ef20b6a1caf1144ad70d762020564faabdd9626a
      https://github.com/llvm/llvm-project/commit/ef20b6a1caf1144ad70d762020564faabdd9626a
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Host/windows/ConnectionGenericFileWindows.h
    M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp

  Log Message:
  -----------
  [lldb][windows] keep track of interrupted reads in ConnectionGenericFile (#182536)

If a read is interrupted in `ConnectionGenericFile::Read`, the data that
has already been read by `ReadFile` is lost.

This patch adds `m_read_pending` to mark a read as interrupted. The next
read will pick up the results of the previous read and return the number
of `bytes_read`.


  Commit: da3ddab6a53ba56b077b80f7db5c3e91b7da52a0
      https://github.com/llvm/llvm-project/commit/da3ddab6a53ba56b077b80f7db5c3e91b7da52a0
  Author: Serafean <Serafean at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/Index.h
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  Fix crash in clang_getUnaryOperatorKindSpelling() (#182247)

When clang_getUnaryOperatorKindSpelling() is called with
CXUnaryOperator_Invalid as argument, UnaryOperator::getOpcodeStr() gets
called with an invalid Opcode of -1, leading to a crash.

Fix it by checking for the last valid opcode as is done in
clang_getBinaryOperatorKindSpelling().

Do the same for clang_getBinaryOperatorKindSpelling(), as its logic is
the same.


  Commit: 978e150d6638ede3a7d5b3f902627187425d34cc
      https://github.com/llvm/llvm-project/commit/978e150d6638ede3a7d5b3f902627187425d34cc
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang-tools-extra/include-cleaner/tool/CMakeLists.txt

  Log Message:
  -----------
  [clang-tools] Fix cl::opt usage with Clang+PCH+dylib

Clang instantiates the vtable but not the method compare() of
OptionValueCopy<std::string> when using PCH. compare() is instantiated
as past of libLLVM.so, but due to -fvisibility-inlines-hidden, the
function is not visible when linking the tool. This might be a Clang
bug.

In any case, avoid this problem by disabling PCH.


  Commit: 1ea49c77b36e8ecfc0053db137bf0d68f5021ba5
      https://github.com/llvm/llvm-project/commit/1ea49c77b36e8ecfc0053db137bf0d68f5021ba5
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake] Disable PCH on AIX

There are name collisions from transitive system includes, which are
hard to debug without access to AIX systems.


  Commit: 8adcf7efd16544b24e55b73ef126011b41e66192
      https://github.com/llvm/llvm-project/commit/8adcf7efd16544b24e55b73ef126011b41e66192
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/APINotes.rst

  Log Message:
  -----------
  [APINotes] Document `SwiftReturnOwnership` annotation

The API Notes attribute was added in 48f7f63a, but wasn't documented.


  Commit: 874c8b6f2ba7ca9f58f1c7bd7ecf7b17b6b13b2a
      https://github.com/llvm/llvm-project/commit/874c8b6f2ba7ca9f58f1c7bd7ecf7b17b6b13b2a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cmov-fp.ll
    M llvm/test/CodeGen/X86/dagcombine-select.ll
    M llvm/test/CodeGen/X86/fdiv-combine.ll
    M llvm/test/CodeGen/X86/fp128-select.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/select_const.ll
    M llvm/test/CodeGen/X86/sse-load-ret.ll

  Log Message:
  -----------
  Revert "[X86] combineCMov - fold CMOV(LOAD(PTR0),LOAD(PTR1)) -> LOAD(CMOV(PTR0,PTR1))" (#182545)

Reverts llvm/llvm-project#182084 / e80e9405f91e35783d0cbc8f492af0684ec1a758

Investigating reports of regressions from the flang rocm teams


  Commit: ceb3b4cea7fd424be738609c2d9938c846445ec6
      https://github.com/llvm/llvm-project/commit/ceb3b4cea7fd424be738609c2d9938c846445ec6
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4592 diagnostic; NFC (#182503)

This diagnostic is no longer documented on MSDN, but the diagnostic text
was:

> ''var': symbol will be dynamically initialized (implementation
limitation)

This was disabled in 5cbf37fe3703ee7744f864a53df443ab97e29af7 to work
around false positives with MSVC 2015 Update 1. I believe those false
positives have been fixed and this diagnostic no longer needs to be
disabled. Local testing shows it is not emitted.


  Commit: 6c3cfb62bf2da04384ee18093cf3c1e56b8f93a4
      https://github.com/llvm/llvm-project/commit/6c3cfb62bf2da04384ee18093cf3c1e56b8f93a4
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp

  Log Message:
  -----------
  [NCFI][OpenMPIRBuilderTest] remove some trivial uses of getAllocatedType (#181722)

These are the required uses of the alloca type, but have trivial access
to the expected result of that API call. The remaining uses in unittests
are for testing the LLVM API itself.

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 321922938869c873f9e3cb67b43b8c727f0acb5b
      https://github.com/llvm/llvm-project/commit/321922938869c873f9e3cb67b43b8c727f0acb5b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] matchPMADDWD - reduce code duplication and use ISD::matchUnaryPredicate to check shift amount range. NFC. (#182548)


  Commit: c06ea02bfd3f78a35164b5c57f7d2c5b1b2736c2
      https://github.com/llvm/llvm-project/commit/c06ea02bfd3f78a35164b5c57f7d2c5b1b2736c2
  Author: Arjun Bhamra <33864884+abhamra at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    A mlir/test/Dialect/SparseTensor/codegen_invalid.mlir

  Log Message:
  -----------
  [MLIR] Graceful handling of uninitialized sparse tensor encodings with `sparse-tensor-codegen` (#181145)

This PR handles the case where users call the `--sparse-tensor-codegen`
pass without sufficiently lowering dense tensors to sparse ones (with
passes like `--lower-sparse-ops-to-foreach` and
`--lower-sparse-foreach-to-scf` among others). This results in dense
tensors having a null `SparseTensorEncodingAttr`, which was originally
assumed to be true in the SparseTensor's `ConvertOp` lowering, but is
now checked against.

This PR closes #177779.


  Commit: 494bc4ca1237fd5c8aff3f013a7c7d011ab8d0df
      https://github.com/llvm/llvm-project/commit/494bc4ca1237fd5c8aff3f013a7c7d011ab8d0df
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts][NFC] Clean up loop (#179572)

After merging https://github.com/llvm/llvm-project/pull/181760 this loop
no longer erases instructions while iterating. So this patch moves the
iteration increment inside the for statement.

Note: Replacing the loop with a range loop like `for (MachineInstr
&Instr : Block)` is not an NFC.


  Commit: b117dc8a6bac4b7260897be8dbb116b4cc37d697
      https://github.com/llvm/llvm-project/commit/b117dc8a6bac4b7260897be8dbb116b4cc37d697
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/docs/APINotes.rst

  Log Message:
  -----------
  [APINotes] Document that Methods can now be nested under Tags

`Tags` can be nested under other `Tags`, which represents nested C++
classes.

`Methods` can be nested under `Tags`, which represents C++ methods.

rdar://151033780


  Commit: be7267002357a3955d225da84d7fcf6c7e3540b3
      https://github.com/llvm/llvm-project/commit/be7267002357a3955d225da84d7fcf6c7e3540b3
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/IR/global-var-linkage.cir
    A clang/test/CIR/IR/invalid-linkage.cir
    A clang/test/CIR/Lowering/global-var-linkage.cir

  Log Message:
  -----------
  [CIR] Enable AppendingLinkage in GlobalLinkage enum (#182228)

Upstreaming clangIR PR: https://github.com/llvm/clangir/pull/2098

This PR enables AppendingLinkage in CIR_GlobalLinkageKind.


  Commit: ef55e5938936fa51b88b2a8008c8a2821ec51dd5
      https://github.com/llvm/llvm-project/commit/ef55e5938936fa51b88b2a8008c8a2821ec51dd5
  Author: RattataKing <amilywu2 at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td

  Log Message:
  -----------
  [mlir][rocdl] Add IR examples to OP definitions (#182147)

This PR added IR examples for rocdl as suggested in #157945.
Examples are extracted from:
-
https://github.com/llvm/llvm-project/blob/main/mlir/test/Dialect/LLVMIR/rocdl.mlir
-
https://github.com/llvm/llvm-project/blob/main/mlir/test/Target/LLVMIR/rocdl.mlir


  Commit: 943504eb08adca2106768715285626dd92e166a2
      https://github.com/llvm/llvm-project/commit/943504eb08adca2106768715285626dd92e166a2
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/Function.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    A llvm/test/Assembler/prefalign-error1.ll
    A llvm/test/Assembler/prefalign-error2.ll
    A llvm/test/Assembler/prefalign-error3.ll
    A llvm/test/Assembler/prefalign-error4.ll
    M llvm/test/Bitcode/compatibility.ll

  Log Message:
  -----------
  IR: Add prefalign attribute for function definitions.

The prefalign attribute determines the function's preferred alignment.
By default, the function's preferred alignment is set in a target-specific
way, but it may be overridden with this attribute.

The backend logic will be added in followup patches.

Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019

Reviewers: efriedma-quic, nikic, arsenm

Pull Request: https://github.com/llvm/llvm-project/pull/155527


  Commit: 4c380cfe3fbf20f470de32ed52756417bdd1eaaf
      https://github.com/llvm/llvm-project/commit/4c380cfe3fbf20f470de32ed52756417bdd1eaaf
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/redundant-void-arg.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.c

  Log Message:
  -----------
  [clang-tidy] Enable `modernize-redundant-void-arg` in C23 (#182422)

As suggested in [this
comment](https://github.com/llvm/llvm-project/pull/173340#discussion_r2810951335)!


  Commit: 47d420a2c8e0f9edbdf58ce8b8dcc7d6743b4191
      https://github.com/llvm/llvm-project/commit/47d420a2c8e0f9edbdf58ce8b8dcc7d6743b4191
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-safety-invalidations.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add UseFacts for function arguments and assignment RHS (#180446)

Add missing `UseFact` for binary operators and function call arguments
to track object usage.

These changes allow the analyzer to properly detect cases where an
object is used after being invalidated, particularly in container
operations like map access.

**Pointer vs Iterator Invalidation:**
Different containers provide different stability guarantees:
- **Pointer/Reference Stability**: Containers like `std::unordered_map`
guarantee that pointers and references to elements remain valid even
after insertions. This makes operations like `mp[2] = mp[1]` safe in
practice.
- **No Pointer Stability**: Containers like `std::flat_hash_map` (C++23)
do not provide pointer stability on insertion, making such operations
unsafe.
- **Iterator Stability**: Most containers (including
`std::unordered_map`) do not provide iterator stability. Operations that
invalidate iterators (like `erase`) make subsequent use of those
iterators unsafe.

The current implementation conservatively warns on all such cases.


  Commit: de3034b1c14daafa8f35f39e5b885523f28e10a5
      https://github.com/llvm/llvm-project/commit/de3034b1c14daafa8f35f39e5b885523f28e10a5
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
    A clang/unittests/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt

  Log Message:
  -----------
  [clang][ssaf] Add UnsafeBufferUsage summary data structures (#181067)

An UnsafeBufferUsage summary is the ssaf representation of the set of
unsafe buffer pointers found by `-Wunsafe-buffer-usage` in a translation
unit.

rdar://170176278

---------

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>


  Commit: 763fbee264fe85182c4aefdc37c3a299c4dbcf98
      https://github.com/llvm/llvm-project/commit/763fbee264fe85182c4aefdc37c3a299c4dbcf98
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    A .github/workflows/lldb-pylint-action.yml
    A llvm/utils/git/requirements_pylint.txt
    A llvm/utils/git/requirements_pylint.txt.in

  Log Message:
  -----------
  [CI][lldb] Add a github workflow that runs pylint on LLDB API test changes (#182003)

The motivator here is that Python allows class methods to be redefined.
But in the vast majority of cases this is a bug. E.g., in our API
test-suite two methods with the same name cause the latest definition to
shadow the earlier, in which case only one test-case runs. This happens
silently. Every couple of months i've been running the script from
https://github.com/llvm/llvm-project/pull/97043 manually on the
code-base and it catches a handful of these every time.

This patch sets up a github action that runs on pull requests that
change any files under `lldb/test/API`. The action runs `pylint` on the
changed Python files. The caveat here is that `pylint` isn't set up to
run cleanly on our test-suite. So I just use the [specific redefinition
error
code](https://pylint.readthedocs.io/en/stable/user_guide/messages/error/function-redefined.html).
Any other errors won't cause `pylint` to fail for now (hence the
`--error-under=0`).

Here's an example:
<img width="1412" height="367" alt="Screenshot From 2026-02-20 10-29-28"
src="https://github.com/user-attachments/assets/20093be8-a122-4e17-944a-4472eb12ab25"
/>


  Commit: 47ad905d8d8d46e48b2a544009ca66f5c809cc95
      https://github.com/llvm/llvm-project/commit/47ad905d8d8d46e48b2a544009ca66f5c809cc95
  Author: Georgiy Samoylov <Ignitor21838 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lldb/source/Utility/ArchSpec.cpp

  Log Message:
  -----------
  [lldb][RISCV] Make char an unsigned type for RISC-V by default (#182260)

According to RISC-V ELF psABI, Section 4.3 (C/C++ Type Representations)
"char is unsigned".

This patch makes plain `char` unsigned by default on RISC-V. Also this
fixes TestConstStaticIntegralMember.py on RISC-V


  Commit: ebe9c6eabd4caeb441ecf87d4d29789424b68833
      https://github.com/llvm/llvm-project/commit/ebe9c6eabd4caeb441ecf87d4d29789424b68833
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/WinException.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/test/CodeGen/PowerPC/alloca-crspill.ll

  Log Message:
  -----------
  CodeGen: Introduce MachineFunction::getPreferredAlignment().

MachineFunction can now be queried for the preferred alignment which
comes from the function attributes (optsize, minsize, prefalign) and
TargetLowering.

Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019

Reviewers: vitalybuka, nikic, efriedma-quic, MaskRay

Reviewed By: vitalybuka

Pull Request: https://github.com/llvm/llvm-project/pull/158368


  Commit: 3a3081250c1f464e0c297c41e0b67e88286e8722
      https://github.com/llvm/llvm-project/commit/3a3081250c1f464e0c297c41e0b67e88286e8722
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/clmul.ll
    A llvm/test/CodeGen/RISCV/clmulh.ll
    A llvm/test/CodeGen/RISCV/clmulr.ll

  Log Message:
  -----------
  [RISCV] Pre-commit tests for #182389 (#182558)

Split clmul.ll into 3 files to reduce size.

Add RUN lines without M extension. Add RUN lines with M+Zbs.


  Commit: fef1c4334d83f0386af000b99f6ce20734fe4a39
      https://github.com/llvm/llvm-project/commit/fef1c4334d83f0386af000b99f6ce20734fe4a39
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 32392468d7139


  Commit: 847608cb92b62fb4cee69840c7e61517b02c2a22
      https://github.com/llvm/llvm-project/commit/847608cb92b62fb4cee69840c7e61517b02c2a22
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 41c6aa67a3430


  Commit: 13948d75aabb7786ee3038c207f0058177a437f0
      https://github.com/llvm/llvm-project/commit/13948d75aabb7786ee3038c207f0058177a437f0
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7c3c9c45f85da


  Commit: ce1628c6a3af6a46f37edbe183d159997d19c122
      https://github.com/llvm/llvm-project/commit/ce1628c6a3af6a46f37edbe183d159997d19c122
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 8f378ea7e6fa3


  Commit: fec29b3a585972cbd0c52292bf220693a5a47475
      https://github.com/llvm/llvm-project/commit/fec29b3a585972cbd0c52292bf220693a5a47475
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Analysis/Scalable/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Analysis/Scalable/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 98c76d36432cc


  Commit: a5fc887283a095f9c8045fc04388e61d0622483b
      https://github.com/llvm/llvm-project/commit/a5fc887283a095f9c8045fc04388e61d0622483b
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port d7a24d30f62bc


  Commit: 11ddeceb917a32e37ccc16248044c5ba0c63ccce
      https://github.com/llvm/llvm-project/commit/11ddeceb917a32e37ccc16248044c5ba0c63ccce
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/MC/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/MC/MCParser/BUILD.gn

  Log Message:
  -----------
  [gn build] Port f6c86bd69d92e


  Commit: 6767bfeec5ede8a878792e39aedff053c36854b2
      https://github.com/llvm/llvm-project/commit/6767bfeec5ede8a878792e39aedff053c36854b2
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M lld/test/ELF/lto/linker-script-symbols-ipo.ll
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    A llvm/test/CodeGen/X86/prefalign.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll

  Log Message:
  -----------
  CodeGen: Emit .prefalign directives based on the prefalign attribute.

The result of the MachineFunction preferred alignment query is emitted
as a .prefalign directive if supported, otherwise it gets combined into
the minimum alignment.

Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019

Reviewers: nikic, vitalybuka

Reviewed By: vitalybuka

Pull Request: https://github.com/llvm/llvm-project/pull/155529


  Commit: 2092145360ac8cf85e035cfda926ddb9aa909533
      https://github.com/llvm/llvm-project/commit/2092145360ac8cf85e035cfda926ddb9aa909533
  Author: SiliconA-Z <gfunni234 at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M libc/src/setjmp/arm/longjmp.cpp
    M libc/src/setjmp/arm/setjmp.cpp

  Log Message:
  -----------
  [libc] Save one instruction on ARM (#181515)

For assembler functions, doing them as best as possible is paramount.
Save sp in ARM, restore sp in ARM.


  Commit: 741b2cda32e17e21aa9b3188f971532ecda7c2d5
      https://github.com/llvm/llvm-project/commit/741b2cda32e17e21aa9b3188f971532ecda7c2d5
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4706 diagnostic; NFC (#182564)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4706?view=msvc-170

> assignment used as a condition

This diagnostic was disabled as part of enabling /W4 use in
5c73e1f85c5d37a5b037c70f3c112eec5646acb3 where there were hundreds of
instances of the diagnostic being triggered. However, local testing
suggests we now are adding the parentheses required to silence the
diagnostic, and so I believe this can be enabled again.


  Commit: 11d7e13eba0e4fb91b5393c7983dd3bf750c45c2
      https://github.com/llvm/llvm-project/commit/11d7e13eba0e4fb91b5393c7983dd3bf750c45c2
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/tools/c-index-test/core_main.cpp

  Log Message:
  -----------
  [c-index-test] Avoid loading a module input file when we need a file name only. (#182426)

Loading a module input file triggers its validation. Avoid this process
when we need only a file name.

rdar://167647519


  Commit: 0dd1cb015e8b1439e70c152eb134abb01e1af831
      https://github.com/llvm/llvm-project/commit/0dd1cb015e8b1439e70c152eb134abb01e1af831
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Sema/SemaARM.cpp

  Log Message:
  -----------
  [clang][ARM] Refactor argument handling in `EmitAArch64BuiltinExpr` (2/2) (NFC) (#181974)

Refactor `EmitAArch64BuiltinExpr` so that all AArch64/NEON builtins
handled by this hook _and marked as overloaded_ share a common path
for generating LLVM IR arguments (collected into the `Ops`
`SmallVector<Value*>`) (*). This is a follow-up for #181794 - please
refer to that PR for more context.

As in the previous PR, the key change is implemented in
`HasExtraNeonArgument` , i.e. in the hook that identifies Builtins with
the extra argument. In this PR, I am replacing the ad-hoc switch
statement with a more principled approach borrowed from SemaARM.cpp,
namely:
```cpp
static bool HasExtraNeonArgument(unsigned BuiltinID) {
  // (...)
  uint64_t mask = 0;
  switch (BuiltinID) {
  #define GET_NEON_OVERLOAD_CHECK
  #include "clang/Basic/arm_fp16.inc"
  #include "clang/Basic/arm_neon.inc"
  #undef GET_NEON_OVERLOAD_CHECK
  // Non-neon builtins for controling VFP that take extra argument for
  // discriminating the type.
  case ARM::BI__builtin_arm_vcvtr_f:
  case ARM::BI__builtin_arm_vcvtr_d:
    mask = 1;
  }
  switch (BuiltinID) {
  default: break;
  }

  if (mask)
    return true;

  return false;
```

This is preferred because the extra argument is defined for Sema
verification. CodeGen should reuse the same source of truth rather than
duplicating or partially reimplementing the logic.

No functional change intended.

(*) `EmitAArch64BuiltinExpr` contains two large switch statements
intended to separate handling of non-overloaded and overloaded builtins.
In practice, the split is not consistently enforced. Patch 1/2
refactored the first switch (non-overloaded path). This patch applies
the same cleanup to the overloaded path and completes the refactoring.


  Commit: a8989c08a87ed5183c53f7292f62a0ce56fcf0c5
      https://github.com/llvm/llvm-project/commit/a8989c08a87ed5183c53f7292f62a0ce56fcf0c5
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    R clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest.cpp
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp

  Log Message:
  -----------
  [clang][ssaf] Refactor `JSONFormatTest` into a directory with a shared fixture header (#182523)

This change converts `Serialization/JSONFormatTest.cpp` into a directory
to support reuse of the `JSONFormatTest` fixture by upcoming test files
for additional data structures with JSON serialization support. New test
files for other serializable data structures can now include
`JSONFormatTest.h`, inherit from `JSONFormatTest`, and add their own
fixture and tests without duplicating the filesystem scaffolding.


  Commit: 7d9b863bc39f690c6f7716dd27d24e6ccfcfae33
      https://github.com/llvm/llvm-project/commit/7d9b863bc39f690c6f7716dd27d24e6ccfcfae33
  Author: Jason Van Beusekom <jason.van-beusekom at hpe.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
    A mlir/include/mlir/Conversion/MathToNVVM/MathToNVVM.h
    M mlir/include/mlir/Conversion/Passes.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/lib/Conversion/CMakeLists.txt
    M mlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    A mlir/lib/Conversion/MathToNVVM/CMakeLists.txt
    A mlir/lib/Conversion/MathToNVVM/MathToNVVM.cpp

  Log Message:
  -----------
  [NVVM][MLIR] Refactor conversion of Math / Arith Operations seperate Passes (#180058)

This Commit refactors the conversion of Math / Arith operations to NVVM
into a separate Pass called MathToNVVM. This was done to allow to
support the lowering of Math / Arith operations in flang. This mirrors
what was done in MathToROCDL.

This is PR (1/2) to address
https://github.com/llvm/llvm-project/issues/147023 and
https://github.com/llvm/llvm-project/issues/179347.

PR(2/2) that adds this pass to flang is here:
https://github.com/llvm/llvm-project/pull/180060


  Commit: 94724e80e92516db20c5e88ea4e056e92405545f
      https://github.com/llvm/llvm-project/commit/94724e80e92516db20c5e88ea4e056e92405545f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll

  Log Message:
  -----------
  [LV] Add epilogue test with FindLast reduction of wrapping IV.

Extra test coverage for https://github.com/llvm/llvm-project/pull/172569


  Commit: 8735e69f1e9fe196e6dd47449112235387c56e4c
      https://github.com/llvm/llvm-project/commit/8735e69f1e9fe196e6dd47449112235387c56e4c
  Author: tedj <tedmjohnson at protonmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp

  Log Message:
  -----------
  [flang] OPTIONAL char dummy has no defining op; add null check (#182582)

size.getDefiningOp() returns nullptr for block arguments when a OPTIONAL
character length generated the conditional "fir.if". Check for a nullptr
before calling mlir::isa<> to avoid the crash.

Addresses: https://github.com/llvm/llvm-project/issues/182436
Passes check-flang, check-flang-rt, and llvm-test-suite (x86_64)

---------

Co-authored-by: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>


  Commit: 5c929816a32429246123c1d17e166d129f7a7c37
      https://github.com/llvm/llvm-project/commit/5c929816a32429246123c1d17e166d129f7a7c37
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel][NVVM][MLIR] Port 7d9b863bc39f690c6f7716dd27d24e6ccfcfae33 (#182588)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 2f47bbf7bbd2bac2d308fd1b701c49d92693e2bb
      https://github.com/llvm/llvm-project/commit/2f47bbf7bbd2bac2d308fd1b701c49d92693e2bb
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    A clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu

  Log Message:
  -----------
  [CIR][CUDA] Add CUDAKernelNameAttr for device stubs (#180051)

Besides the Attribute description. It is worth noting that this
attribute will later be consumed when handling runtime registration on
loweringPrepare.


  Commit: fafaaa165ba3982f0a3456cfebf3a07e1d18564a
      https://github.com/llvm/llvm-project/commit/fafaaa165ba3982f0a3456cfebf3a07e1d18564a
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp

  Log Message:
  -----------
  [LoopFusion] Improve collectFusionCandidates() (#182571)

The order of visiting loops in collectFusionCandidates() guarantees that
a new member can only possibly be added to the end of a set.

Also currently `NumFusionCandidates` counts any loop that is added to a
candidate set. Usually large majority of candidate sets have a single
members so they are not really candidates for fusion. Only the second
member of a candidate set and the ones that come after that could be
counted as fusion candidates.


  Commit: 2b074823e478a07bf40a4b9d71f0aaa2f1902f15
      https://github.com/llvm/llvm-project/commit/2b074823e478a07bf40a4b9d71f0aaa2f1902f15
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    A flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
    M flang/test/Transforms/FIRToMemRef/no-declare.mlir

  Log Message:
  -----------
  Reapply "[flang] Lowering a ArrayCoorOp to arithmetic computations" (#182585)

Reapplying the changes. Reverted it wrongly yesterday

This reverts commit 3c6523dcb8ebc0396f69c578285599b66e16dce7.


  Commit: 70b5a1d0500bc587d749a93a4f03329ed9c33c94
      https://github.com/llvm/llvm-project/commit/70b5a1d0500bc587d749a93a4f03329ed9c33c94
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/lib/runtime/io-api-gpu.cpp
    M flang-rt/lib/runtime/io-api-gpu.h
    M flang-rt/lib/runtime/io-api-server.cpp
    A offload/test/offloading/fortran/formatted-io.f90

  Log Message:
  -----------
  [flang-rt] Add support for formatted I/O on the GPU (#182580)

Summary:
Expands on the previous support to enable formatted output, characters,
and checking basic iostat. We intentionally do not handle cases where
the descriptor is non-null as this is a non-trivial class that cannot
easily be shepherded across the wire.


  Commit: e1feac36249c2aa964f9e198df7957868acb559a
      https://github.com/llvm/llvm-project/commit/e1feac36249c2aa964f9e198df7957868acb559a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_util.h

  Log Message:
  -----------
  [libc] Properly handle null handles in rpc_dispatch.h

Summary:
We autuomatically dereference pointers, we should check if these are
null. Minimal change made by just keeping it zero and handling zero.


  Commit: 67fcdc9016690688b7de8286efec4c18ea89d29d
      https://github.com/llvm/llvm-project/commit/67fcdc9016690688b7de8286efec4c18ea89d29d
  Author: Sirish Pande <sirpande at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Efficient way to get NumArchVGPRs. (#182537)

No functional change. Cleaning up to get number of VGPRs for different
AMDGPU target based on features.


  Commit: fd4dec9b1e9ff9b5f4d1896ac4ae0405070eccc7
      https://github.com/llvm/llvm-project/commit/fd4dec9b1e9ff9b5f4d1896ac4ae0405070eccc7
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/test/Dialect/Complex/canonicalize.mlir

  Log Message:
  -----------
   [MLIR][Complex] Check for FastMathFlag in DivOp folder (#176249)

- Fold DivOp with LHS that has NaN as real or imag to Complex of NaNs
- Fold `div(a, Complex<1, 0>) -> a` if fast math flag with nnan is set


  Commit: 41964111323302805e31d5d8efdaebf5bbf74508
      https://github.com/llvm/llvm-project/commit/41964111323302805e31d5d8efdaebf5bbf74508
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/IR/Utils.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for readability-simplify-boolean-expr in Utils.cpp (NFC)


  Commit: 603e5c832a5508e789316475cc0b8228de876f7c
      https://github.com/llvm/llvm-project/commit/603e5c832a5508e789316475cc0b8228de876f7c
  Author: Tim <timsmith78 at yahoo.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIRAttr.td
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    A flang/test/Lower/HLFIR/recursive-user-procedure.f90
    M flang/test/Lower/OpenMP/declare-target-func-and-subr.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap-enter.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-tarop-cap.f90
    A flang/test/Transforms/debug-fn-attr.fir

  Log Message:
  -----------
  [flang][debug] Supply missing subprogram attributes (#181425)

Add DW_AT_elemental, DW_AT_pure, and DW_AT_recursive attributes to
subprograms and functions when they are specified in the source.


  Commit: a22cf92da75da04f99727d183879cf58023bae96
      https://github.com/llvm/llvm-project/commit/a22cf92da75da04f99727d183879cf58023bae96
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for llvm-qualified-auto in XeGPUDialect.cpp (NFC)


  Commit: 09a3d830a888f15abca0ca51f68786e5517cd61f
      https://github.com/llvm/llvm-project/commit/09a3d830a888f15abca0ca51f68786e5517cd61f
  Author: Kees Cook <kees at kernel.org>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/attr-counted-by-pr88931.c
    M clang/test/CodeGen/builtin-counted-by-ref.c

  Log Message:
  -----------
  [Clang][CodeGen] Fix __builtin_counted_by_ref for nested struct FAMs (#182575) (#182590)

GetCountedByFieldExprGEP() used getOuterLexicalRecordContext() to find
the RecordDecl containing the counted_by count field. This walks up
through all lexically enclosing records to find the outermost one, which
is wrong when a struct with a counted_by FAM is defined nested inside
another named struct.

For example, when struct inner (containing the FAM) is defined inside
struct outer, getOuterLexicalRecordContext() resolves to struct outer
instead of struct inner. The StructAccessBase visitor then fails to
match the base expression type (struct inner *) against the expected
record (struct outer), returning nullptr. This nullptr propagates back
as the GEP result, and the subsequent dereference in
*__builtin_counted_by_ref() triggers an assertion failure in
Address::getBasePointer().

Replace getOuterLexicalRecordContext() with a walk that only traverses
anonymous structs and unions, which are transparent in C and must be
walked past. Named nested structs are independently-addressable types,
so the walk stops at them.

Add a regression test for a FAM struct defined nested inside another
struct.

This also fixes __builtin_dynamic_object_size() for FAMs in nested
structs, which was silently returning -1 (unknown) instead of computing
the correct size. Update the attr-counted-by-pr88931.c test to reflect
the now-correct dynamic object size calculation.

Fixes #182575

Signed-off-by: Kees Cook <kees at kernel.org>


  Commit: 4ce49873814cd35bfe85c59e60fb7cb7b04e2441
      https://github.com/llvm/llvm-project/commit/4ce49873814cd35bfe85c59e60fb7cb7b04e2441
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-no-wrap.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll

  Log Message:
  -----------
  [VPlan] Optimize FindLast of FindIV w/o sentinel. (#172569)

For FindLast reduction selecting an IV, we can avoid the horizontal
AnyOf in the vector loop, by introducing an independent  boolean
reduction to track if the condition was ever true in the loop. If it was
never true in the loop, we select the start value, otherwise the select
the min/max of the FindIV reduction, as required by the predicate.

The main advantage of this approach is that we have 2 independent
reductions, that do not require a horizontal AnyOf reduction in the
loop.

Currently this requires a non-wrapping IV, but this can be relaxed in
the future by selecting a canonical IV, which is then transformed to the
specific derived IV for the reduction after the loop.

Depends on https://github.com/llvm/llvm-project/pull/177870.

PR: https://github.com/llvm/llvm-project/pull/172569


  Commit: 2e88688ba7e048e25143117cd7b1e5697d9cec86
      https://github.com/llvm/llvm-project/commit/2e88688ba7e048e25143117cd7b1e5697d9cec86
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Use bits<1> for AltFmt in RISCVVPseudo. (#182581)

This makes the searchable table emitter use uint8_t instead of bool in
the KeyType struct. This is needed to allow us to use a bitfield in the
PseudoInfo struct and avoid a compare between a bool and uint16_t. We
already use this same bits<1> trick in other searchable tables.

Fixes #182485


  Commit: 5e09590993a9eaf256df07c7aecafa26f1e81253
      https://github.com/llvm/llvm-project/commit/5e09590993a9eaf256df07c7aecafa26f1e81253
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp

  Log Message:
  -----------
  [NFC] [FlowSensitive] Add mock header for coroutines

These are copied from libcxx with some details and implementation removed.

Reviewers: rohanjr

Pull Request: https://github.com/llvm/llvm-project/pull/182602


  Commit: cedd736518bc07d70c166b8a0c7c0389a1df183e
      https://github.com/llvm/llvm-project/commit/cedd736518bc07d70c166b8a0c7c0389a1df183e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.h

  Log Message:
  -----------
  [NFCI] [FlowSensitive] [StatusOr] use c++20 for test

This is to test coroutines

Reviewers: rohanjr

Reviewed By: rohanjr

Pull Request: https://github.com/llvm/llvm-project/pull/182603


  Commit: d5787171df8f8ddbcd90bb9720ed16da8e9942d8
      https://github.com/llvm/llvm-project/commit/d5787171df8f8ddbcd90bb9720ed16da8e9942d8
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in OpenACCOpsTest.cpp (NFC)


  Commit: c12f73b3d65f262ffdc77879001d609df45a98aa
      https://github.com/llvm/llvm-project/commit/c12f73b3d65f262ffdc77879001d609df45a98aa
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for modernize-loop-convert in Utils.cpp (NFC)


  Commit: 580a3bb8ea1208873671b6e78986c5e253a64152
      https://github.com/llvm/llvm-project/commit/580a3bb8ea1208873671b6e78986c5e253a64152
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h

  Log Message:
  -----------
  [NFC][MC] Add LLVM_ABI annotations to createAsmParser functions (#182393)

Following the MCLFIRewriter PR, this adds the `LLVM_ABI` annotations for
related functions that were flagged by the ABI bot.


  Commit: 410c64eebfa55eed36c9a44531ca6c1938170a0c
      https://github.com/llvm/llvm-project/commit/410c64eebfa55eed36c9a44531ca6c1938170a0c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp

  Log Message:
  -----------
  AMDGPU: Try to fix leak in AMDGPULibFunc (#182583)

I don't know why this was trying to do placement do. I guess
this was overriding the unique_ptr, bypassing its destructor.


  Commit: a412d7372a2d5e2ef1ca56d517362d9d5dfdb68f
      https://github.com/llvm/llvm-project/commit/a412d7372a2d5e2ef1ca56d517362d9d5dfdb68f
  Author: Amara Emerson <amara at apple.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineOutliner.cpp
    A llvm/test/CodeGen/AArch64/machine-outliner-bundle-debuginfo.mir

  Log Message:
  -----------
  [AArch64][MachineOutliner] Clear debug locations on bundled instructions (#175655)

When the machine outliner duplicates instructions, it clears their debug
locations to avoid having the outlined function reference DISubprograms
from the original functions. However, this only cleared the debug
location on the bundle header, not on the individual instructions inside
the bundle.

This caused assertion failures in `LexicalScopes::getOrCreateRegularScope`,
because the bundled instructions still had debug locations pointing to
the original function's.

Fix this by iterating through all instructions in a bundle and clearing
their debug locations as well.


  Commit: 6b44a2f9119012451b3cb9f37ba4cb5c6b2de53e
      https://github.com/llvm/llvm-project/commit/6b44a2f9119012451b3cb9f37ba4cb5c6b2de53e
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/AST/HLSL/matrix-member-access-scalar.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Make matrix single element accessor return a scalar instead of vector (#182609)

Fixes #182599 by making `SemaHLSL::checkMatrixComponent` return the
element type instead of a vector when the number of vector components is
exactly 1.


  Commit: 9f6ad7654b07391525124edcab498c938da10e92
      https://github.com/llvm/llvm-project/commit/9f6ad7654b07391525124edcab498c938da10e92
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang-rt/lib/cuda/stream.cpp

  Log Message:
  -----------
  [flang][cuda] Use default stream when calling cudaStreamSynchronize without arg (#182623)


  Commit: 689ecf880373bb4e0f01ed5e004f19a466e869dc
      https://github.com/llvm/llvm-project/commit/689ecf880373bb4e0f01ed5e004f19a466e869dc
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/BitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTfrCleanup.cpp
    A llvm/test/CodeGen/Hexagon/copy-phys-int-dbl.mir
    A llvm/test/CodeGen/Hexagon/tfr-cleanup-subreg-copy.ll
    A llvm/test/CodeGen/Hexagon/truncating-copy-double-to-int.ll

  Log Message:
  -----------
  [Hexagon] Handle subreg copies between DoubleRegs and IntRegs (#181360)

ISel can generate truncating COPYs from DoubleRegs to IntRegs when a
64-bit result (e.g., C2_mask) is used in a 32-bit context. Several
passes crashed on this pattern:

BitTracker asserted WD >= WS for COPY instructions. Handle the WD < WS
case by extracting the low WD bits from the source.

HexagonInstrInfo::copyPhysReg had no case for IntRegs <- DoubleRegs or
DoubleRegs <- IntRegs. Add both directions, respecting the subreg index
on the operand (isub_lo/isub_hi) when present.

HexagonTfrCleanup asserted that source and destination register sizes
match. Replace with proper subreg resolution on both operands and a
hasNoVRegs() guard since the pass runs post-RA.

HexagonGenMux asserted no subregs on physical register operands.
Preserve subreg information when building mux instructions and resolve
subregs when fixing kill flags.

Co-authored-by: Sergei Larin <slarin at codeaurora.org>

---------

Co-authored-by: Sergei Larin <slarin at codeaurora.org>


  Commit: 99dc561c7da3448cb90c73b10e08c2061ed34991
      https://github.com/llvm/llvm-project/commit/99dc561c7da3448cb90c73b10e08c2061ed34991
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-tensor-load-store.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/waitcnt-debug-output-crash.ll
    R llvm/test/Transforms/InstCombine/AMDGPU/tensor-load-store-lds.ll
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/gfx1250.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [AMDGPU] Use a general form of intrinsic for tensor load/store (#182334)

  The intrinsic has five arguments for the tensor descriptor (D#), while the fifth one is reserved for future targets, and it will be silently ignored in codegen for gfx1250.
  For tensor up to 2D, only the first two D# groups are meaningful and the rest should be zero-initialized.


  Commit: 555cb279c271c25c88cf0fc31bec91801b6bd24e
      https://github.com/llvm/llvm-project/commit/555cb279c271c25c88cf0fc31bec91801b6bd24e
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/Analysis/FunctionPropertiesAnalysis/properties-stats.ll
    R llvm/test/Other/functionpropertiesanalysis.ll

  Log Message:
  -----------
  Moved FunctionProperties test to correct test path (#182637)

Test was previously in Other ambiguous path. Now under its appropiate
folder


  Commit: 3343a5bd81ddb0b76e703463292fabf655bfdf19
      https://github.com/llvm/llvm-project/commit/3343a5bd81ddb0b76e703463292fabf655bfdf19
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    A clang/test/Driver/HLSL/conversion-warning-flags.hlsl
    R clang/test/Driver/HLSL/wconversion.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
    M clang/test/SemaHLSL/Language/ImpCastAddrSpace.hlsl
    M clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitLists.hlsl
    M clang/test/SemaHLSL/Language/OutputParameters.hlsl
    M clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
    M clang/test/SemaHLSL/ScalarOverloadResolution.hlsl
    M clang/test/SemaHLSL/SplatOverloadResolution.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes_no_16bit.hlsl
    M clang/test/SemaHLSL/VectorElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/matrix-member-access-errors.hlsl
    A clang/test/SemaHLSL/no-conversion-warnings.hlsl
    M clang/test/SemaHLSL/parameter_modifiers.hlsl
    M clang/test/SemaHLSL/standard_conversion_sequences.hlsl

  Log Message:
  -----------
  [HLSL] Enable `-Wconversion`, `-Wvector-conversion`, and `-Wmatrix-conversion` warnings for HLSL by default (#182607)

Fixes #180038 by enabling `-Wconversion`, `-Wvector-conversion`, and
`-Wmatrix-conversion` warnings for HLSL by default, both in the HLSL
clang driver and when fixing up clang invocations under HLSL in
CompilerInvocation.cpp (so that they are enabled even with clang -cc1).

This PR also updates existing tests to expect warnings that weren't
expected before, and removes the `-Wconversion` flags from existing HLSL
tests since it is now redundant due to being enabled by default.

Note that no existing HLSL tests use or exercise `-Wvector-conversion`
or `-Wmatrix-conversion`.


  Commit: 594e9fb3e34e93f125ea0f0e8b371c5015f51323
      https://github.com/llvm/llvm-project/commit/594e9fb3e34e93f125ea0f0e8b371c5015f51323
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/select.ll

  Log Message:
  -----------
  [RISCV] Remove srl from (srl (and X, (1 << C)), C) used as czero.eqz/nez condition. (#182598)

(setne (and X, 1 << C), 0) is canonicalized to (srl (and X, (1 << C)),
C).
If this is later used as a czero.eqz/nez condition, we can remove
the srl if the and can be represented as an ANDI.


  Commit: a2b7f1fcad77b506d469c1ed171e3c93cf1bc2b1
      https://github.com/llvm/llvm-project/commit/a2b7f1fcad77b506d469c1ed171e3c93cf1bc2b1
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/test/ThinLTO/X86/memprof-basic.ll

  Log Message:
  -----------
  [ThinLTO][MemProf] Support remark emission for thin link and use in MemProf (#182570)

Enable optimization remark emission during the ThinLTO thin link phase.
This is useful for global analysis passes like MemProf context
disambiguation which operate on the summary index and may need to
report diagnostics before any IR modules are available.

Key changes:
- Create a dummy function ("thinlto_remark_dummy") in a private Module
  within the LTO class to provide the necessary Function context for
  OptimizationRemarkEmitter.
- Update MemProfContextDisambiguation to use a callback for remark
  emission, allowing it to report hinted sizes and other diagnostics
  during the thin link.
- Ensure the dummy module and function are safely cleaned up at the end
  of the LTO session via the LTO::cleanup mechanism.


  Commit: f2eff5aa2ffe530658083069ccc2997c0605f4ca
      https://github.com/llvm/llvm-project/commit/f2eff5aa2ffe530658083069ccc2997c0605f4ca
  Author: Eric Feng <55723758+efric at users.noreply.github.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td

  Log Message:
  -----------
  [mlir][amdgpu] Revise AMDGPU dialect DPP documentation (#182639)

Assisted by: Claude

---------

Signed-off-by: Eric Feng <Eric.Feng at amd.com>


  Commit: 553ce3a11598cc00be929e091fd59055719e7c2b
      https://github.com/llvm/llvm-project/commit/553ce3a11598cc00be929e091fd59055719e7c2b
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/memory.h

  Log Message:
  -----------
  [flang-rt] Temporarily disable destructor call in OwningPtr::delete_ptr. (#182635)

This is causing failures in CUF testing, because the device compiler
cannot identify the static stack size for kernels.


  Commit: bf83bbf9d75f2107c05ed1f5f4b7833d4081748e
      https://github.com/llvm/llvm-project/commit/bf83bbf9d75f2107c05ed1f5f4b7833d4081748e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SlotIndexes.h

  Log Message:
  -----------
  [SlotIndexes] Make IndexListEntry/slot constructor private

This was made public only for some unit tests introduced in
e5e3dccd0741c2cf6e1885f0b6053fcfc6684102 that have now been removed.
Since they have been removed, make the method private to prevent misuse,
remove the warning now that misuse is prevented by visibility, and
remove the description of the destructor given it is redundant with the
code.


  Commit: 17ad5559c215201b9bdb7090b10c4b213861ce93
      https://github.com/llvm/llvm-project/commit/17ad5559c215201b9bdb7090b10c4b213861ce93
  Author: BgZun <137060662+BgZun at users.noreply.github.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp

  Log Message:
  -----------
  [Clang] Added clang diagnostic when snprintf/vsnprintf uses sizeof(dest) for the len parameter

Closes: [#162366](https://github.com/llvm/llvm-project/issues/162366)

---------

Co-authored-by: Bogdan Zunic <bzunic at cisco.com>


  Commit: 1aaa33883b0407d9e427bc105d4014b3a9ae8801
      https://github.com/llvm/llvm-project/commit/1aaa33883b0407d9e427bc105d4014b3a9ae8801
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsBase.td
    A clang/test/TableGen/builtin-docs.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [Clang][TableGen] Add documentation generation infrastructure for builtins (#181573)

Add a `-gen-builtin-docs` TableGen backend that generates RST
documentation from builtin definitions, modeled after the existing
attribute documentation system (`-gen-attr-docs`).

The emitter generates per-builtin RST sections grouped by category,
including
prototype rendering with optional named parameters (via `ArgNames`),
target
feature annotations, and documentation content. A mismatch between
`ArgNames`
count and prototype parameter count is a fatal error.


  Commit: af9ca0e5bea319a976e57cf92d6aa033ffce44b2
      https://github.com/llvm/llvm-project/commit/af9ca0e5bea319a976e57cf92d6aa033ffce44b2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/module/cuda_runtime_api.f90
    M flang/test/Lower/CUDA/cuda-default-stream.cuf

  Log Message:
  -----------
  Revert "[flang][cuda] Add entry points for cudastreamsynchronize (#181932)" (#182657)

This is causing some testing issue. Reverting for now.


  Commit: 7c6159660d97c634965bc387b1267519989b3800
      https://github.com/llvm/llvm-project/commit/7c6159660d97c634965bc387b1267519989b3800
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp

  Log Message:
  -----------
  [clang-tidy] Correctly handle array of pointers in misc-const-correctness (#179059)

In arrays of pointers, `misc-const-correctness` check wrongly inspects
whether the array element type was const-qualified, rather than the type
it points to, leading to redundant `const` suggestions. This patch fixes
the problem.

Closes [#178880](https://github.com/llvm/llvm-project/issues/178880)


  Commit: 24b9655e3626d1440409406827132df12dbee448
      https://github.com/llvm/llvm-project/commit/24b9655e3626d1440409406827132df12dbee448
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCLFI.h
    M llvm/include/llvm/MC/MCLFIRewriter.h
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/lib/MC/MCLFI.cpp
    M llvm/lib/MC/MCLFIRewriter.cpp
    M llvm/lib/MC/MCParser/LFIAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp

  Log Message:
  -----------
  [NFC][LFI] Reduce includes due to c-t impact (#182617)

Removes header includes that don't need to be made at the top-level by
moving transitive dependencies directly into source files and using
forward declarations. Biggest impact is that we no longer include
`MCLFIRewriter.h` in `MCStreamer.h` and `MCAsmParserExtension.h`.


  Commit: 1373aa05ec11dbc137d434bf9926b4978f9afe19
      https://github.com/llvm/llvm-project/commit/1373aa05ec11dbc137d434bf9926b4978f9afe19
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll

  Log Message:
  -----------
  [AArch64] Add clmulh/r v16i8/v8i16/v4i32/v2i64 test coverage (#182305)

Some of the v16i8/v2i64 tests are currently disabled due to #182270 and
#182039


  Commit: ce5c1932e2b278de320d1e7ada3babb361c80643
      https://github.com/llvm/llvm-project/commit/ce5c1932e2b278de320d1e7ada3babb361c80643
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    A llvm/test/CodeGen/RISCV/xqcisls-merge-base-offset-shladd.ll

  Log Message:
  -----------
  [RISCV] Fold shladd into Xqcisls scaled load/store in RISCVMergeBaseOffset (#182221)

We can fold `shxadd\qc.shladd` into base+offset load/store instructions
by transforming the load/store into `Xqcisls` scaled load/store
instructions.

For eg.

```
qc.e.li vreg1, s 
shxadd vreg2, vreg3, vreg1
lx vreg4, imm(vreg2)

can be transformed to

qc.e.li vreg1, s+imm
qc.lrx vreg4, vreg1, vreg3, (1-7)
```

Such patterns are not folded during ISEL because the we prefer the
`ShlAdd` in `isWorthFoldingIntoRegRegScale` which gives us better code
in most cases.

Test case were generated by an AI which I then hand-edited to add the
negative cases.


  Commit: 4a4912294e4088791b56818f0651a5637cc74c19
      https://github.com/llvm/llvm-project/commit/4a4912294e4088791b56818f0651a5637cc74c19
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-powi.ll

  Log Message:
  -----------
  ValueTracking: Handle tracking nan through powi (#179311)


  Commit: b397c9d24196fe4103ad7cfe6bbfdfc08496364b
      https://github.com/llvm/llvm-project/commit/b397c9d24196fe4103ad7cfe6bbfdfc08496364b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/nofpclass.ll

  Log Message:
  -----------
  FunctionAttrs: Basic propagation of nofpclass (#182444)


  Commit: f1bfed10ad5a5214eab553dbec99fa7dfd604551
      https://github.com/llvm/llvm-project/commit/f1bfed10ad5a5214eab553dbec99fa7dfd604551
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/inline-asm-clobber.ll

  Log Message:
  -----------
  [ARM] support `r14` as an alias for `lr` in inline assembly (#179740)

In rustc (and I suspect Clang and Zig) there is some special logic to
rewrite `r14` into `lr` when used in inline assembly. LLVM should
probably support `r14` directly.


https://developer.arm.com/documentation/ddi0211/i/programmer-s-model/registers/the-arm-state-register-set

> You can treat r14 as a general-purpose register at all other times.

This heavily suggests that we should be able to use it as a clobber and
read its value.

This is the arm analogue to
https://github.com/llvm/llvm-project/pull/167783.


  Commit: c93639830af8d54efe5158373b3a6661dbe595c1
      https://github.com/llvm/llvm-project/commit/c93639830af8d54efe5158373b3a6661dbe595c1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  InstCombine: Add baseline test for fcmp-0-select combine (#172380)


  Commit: 8d3e6e709c59024fc6c1b468e366e66368d26e0f
      https://github.com/llvm/llvm-project/commit/8d3e6e709c59024fc6c1b468e366e66368d26e0f
  Author: Hongxu Xu <xuhongxu96 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/vector-reductions.ll

  Log Message:
  -----------
  [InstCombine] Transform splat before n x i1 for vec.reduce.add (#182213)

```llvm
define i1 @src(i1 %0) {
  %2 = insertelement <8 x i1> poison, i1 %0, i32 0
  %3 = shufflevector <8 x i1> %2, <8 x i1> poison, <8 x i32> zeroinitializer
  %4 = tail call i1 @llvm.vector.reduce.add.v8i1(<8 x i1> %3)
  ret i1 %4
}

define i1 @tgt(i1 %0) {
  ret i1 0
}
```

alive2: https://alive2.llvm.org/ce/z/vejxot

`vector_reduce_add(<n x i1>)` to `Trunc(ctpop(bitcast <n x i1> to in))`
interferes with the `vector_reduce_add(<splat>)` to `mul`, so I
exchanged their order.

Relevant PR: #161020


  Commit: fe5096f6983203410d616b408ae8d88cd8cda24c
      https://github.com/llvm/llvm-project/commit/fe5096f6983203410d616b408ae8d88cd8cda24c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h

  Log Message:
  -----------
  [PatternMatch] Use APInt::tryZExtValue. NFC (#182618)


  Commit: 15430ba094bedceb919d5e000adf15977d702983
      https://github.com/llvm/llvm-project/commit/15430ba094bedceb919d5e000adf15977d702983
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner] Use APInt::isPower2() instead of popcount() == 1. NFC (#182600)


  Commit: 7ed0aa2652b4d8d86b9e2d60ce91b7b9046d27cf
      https://github.com/llvm/llvm-project/commit/7ed0aa2652b4d8d86b9e2d60ce91b7b9046d27cf
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Plugin.h
    M offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp
    M offload/plugins-nextgen/level_zero/src/L0Program.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Remove leftover global constructor (#182611) (#182665)

fixes #182611


  Commit: 7a1c498f26cbadf16144ea635c358c83ebcf6c50
      https://github.com/llvm/llvm-project/commit/7a1c498f26cbadf16144ea635c358c83ebcf6c50
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  [InstCombine] Update test

This was breaking buildbots due to a mid-air collision where some change
caused test differences between when the test was put up/passed CI and
when it landed.


  Commit: a67bf7d796df75592a26a377420696e3c7b7993f
      https://github.com/llvm/llvm-project/commit/a67bf7d796df75592a26a377420696e3c7b7993f
  Author: 🍙 𝑹𝒖𝒓𝒊 🎋 <tokynblast at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M .github/workflows/lldb-pylint-action.yml

  Log Message:
  -----------
  Remove whitespace on blank lines (#182574)

I removed some whitespace on a workflow job, which only had spaces.
I did not remove the newline completelty, only the whitespace junk,
which I found by git diffing the head.


  Commit: 6e0054aa512aaa29cc04788291bbf3b4dfcbd2b3
      https://github.com/llvm/llvm-project/commit/6e0054aa512aaa29cc04788291bbf3b4dfcbd2b3
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/test/Transforms/Scalarizer/constant-extractelement.ll

  Log Message:
  -----------
  [Scalarizer] Fix out-of-bounds crash (#180359)

When processing an extractelement instruction with an index that exceeds
the vector size (e.g., extracting index 2147483647 from a 4-element
vector), the scalarizer would calculate an out-of-bounds Fragment index
and crash with an assertion failure in `SmallVector::operator[]`.

This PR adds a bounds check in
`ScalarizerVisitor::visitExtractElementInst` to prevent a crash when the
extractelement index is out of bounds.

Fixes #179880


  Commit: 20bce6de5e72aa7129869315e3a23972bd897285
      https://github.com/llvm/llvm-project/commit/20bce6de5e72aa7129869315e3a23972bd897285
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/faster-string-find.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp

  Log Message:
  -----------
  [clang-tidy] Teach `performance-faster-string-find` about `starts_with`, `ends_with`, and `contains` (#182633)

These aren't "find" functions per se, so they don't totally match the
check name, but the same optimization is applicable to them (for
example, see
https://en.cppreference.com/w/cpp/string/basic_string_view/starts_with.html).
This optimization could be expanded to `operator+=` as well, but that's
a bit more involved, so I'm not doing it in this PR.


  Commit: 18131dca55488478d455d5e36cea97a3f36d794b
      https://github.com/llvm/llvm-project/commit/18131dca55488478d455d5e36cea97a3f36d794b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/lit.cfg.py
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Exclude bitcode tests

These tests fail due to inserted function entry count annotations. Just
exclude them for now given they aren't actually running any passes.


  Commit: 4846e3a400ec427444027d8ae28fd71bcbd4fd4e
      https://github.com/llvm/llvm-project/commit/4846e3a400ec427444027d8ae28fd71bcbd4fd4e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-fcmp-fmul-zero-absorbing-value.ll

  Log Message:
  -----------
  InstCombine: Fold absorbing fmul of compared 0 into select (#172381)

This is similar to the select-bin-op identity case, except
in this case we are looking for the absorbing value for the
binary operator.

If the compared value is a floating-point 0, and the fmul is
implied to return a +0, put the 0 directly into the select
operand. This pattern appears in scale-if-denormal sequences
after  optimizations assume denormals are treated as 0.

Fold:

```
%fabs.x = call float @llvm.fabs.f32(float %x)
%mul.fabs.x = fmul float %fabs.x, known_positive
%x.is.zero = fcmp oeq float %x, 0.0
%select = select i1 %x.is.zero, float %mul.fabs.x, float %fabs.x

```

To:

```
%fabs.x = call float @llvm.fabs.f32(float %x)
%mul.fabs.x = fmul float %fabs.x,known_positive
%x.is.zero = fcmp oeq float %x, 0.0
%select = select i1 %x.is.zero, float 0.0, float %fabs.x

```

https://alive2.llvm.org/ce/z/Qcy56Z


  Commit: a6416a8411add524066ffbad288617e280bd0fbe
      https://github.com/llvm/llvm-project/commit/a6416a8411add524066ffbad288617e280bd0fbe
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-tuple.td

  Log Message:
  -----------
  [NFC] Simplify a RegisterInfoEmitter lit test (#182672)

Eliminate SubRegIndex defs that are not used/required for the test.


  Commit: 8e2222795bcc70bfdf8d7506c19ca8cee59be548
      https://github.com/llvm/llvm-project/commit/8e2222795bcc70bfdf8d7506c19ca8cee59be548
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/TableGen.cmake

  Log Message:
  -----------
  Revert "[CMake][TableGen] Fix Ninja depslog error with implicit outputs on Ninja <1.10" (#182695)

Reverts llvm/llvm-project#179842

This seems to break some dependency tracking, as I no longer see .inc
files being regenerated when I update a TableGen .cpp file. Reverting
for now per the discussion on the PR.


  Commit: 4ec0c73227869d8cd782f819faee21dd3c5537a7
      https://github.com/llvm/llvm-project/commit/4ec0c73227869d8cd782f819faee21dd3c5537a7
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    M llvm/test/CodeGen/Hexagon/bfloat_vec.ll
    M llvm/test/CodeGen/Hexagon/constp-extract.ll
    A llvm/test/CodeGen/Hexagon/frame-pointer-attr.ll
    M llvm/test/CodeGen/Hexagon/hasfp-crash1.ll

  Log Message:
  -----------
  [Hexagon] Fix hasFP to respect frame-pointer attribute unconditionally (#181524)

HexagonFrameLowering::hasFPImpl() incorrectly gated the
DisableFramePointerElim check behind MFI.getStackSize() > 0. This meant
leaf functions with no stack allocation would not get a frame pointer
even when "frame-pointer"="all" (-fno-omit-frame-pointer) was set,
violating the user/ABI request. Every other LLVM target checks
DisableFramePointerElim unconditionally.

Move the DisableFramePointerElim and EliminateFramePointer checks
outside the getStackSize() > 0 guard so they are always evaluated.
Update affected tests whose CHECK patterns change due to the now-
correct allocframe emission.


  Commit: 09d791608a4cdd317d12a4399194ccf8d0940269
      https://github.com/llvm/llvm-project/commit/09d791608a4cdd317d12a4399194ccf8d0940269
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/bitcnt-big-integer.ll

  Log Message:
  -----------
  [X86] bitcnt-big-integer.ll - add non-VLX avx512vpopcntdq test coverage (#182676)

Pulled out of #182547


  Commit: 567a5466edba854a097744c14ecdb7b9a388ba15
      https://github.com/llvm/llvm-project/commit/567a5466edba854a097744c14ecdb7b9a388ba15
  Author: YohayAiTe <40911048+YohayAiTe at users.noreply.github.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp

  Log Message:
  -----------
  Clean vector clamps in X86 GlobalISel. (#182664)


  Commit: 5e0ef90141b7df64cd1b8cd6aec763ff347a6458
      https://github.com/llvm/llvm-project/commit/5e0ef90141b7df64cd1b8cd6aec763ff347a6458
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/urem.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [profcheck][CVP] Adding 'unknown' branch weights for `urem` expansion in CVP (#180637)

This change ensures that !prof metadata is preserved and scaled
appropriately when the `CorrelatedValuePropagation` (CVP) pass expands
an expensive `urem` instruction into a sequence of `icmp`, `select`, and
`sub`.

In the RP, we add the `unknown`(50/50) branch weights for the new
`select` based on the original instruction's profile data.

Co-authored-by: Jin Huang <jingold at google.com>


  Commit: 62e55b410c1de01a9ba0cdd324fd53984e15c7b5
      https://github.com/llvm/llvm-project/commit/62e55b410c1de01a9ba0cdd324fd53984e15c7b5
  Author: Sergey Subbotin <ssubbotin at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add per-operator granularity for BreakBinaryOperations (#181051)

## Summary

Extend `BreakBinaryOperations` to accept a structured YAML configuration
with per-operator break rules and minimum chain length gating via
`PerOperator`.

- **Per-operator rules**: specify break style (`Never`, `OnePerLine`,
`RespectPrecedence`) for specific operator groups
- **Minimum chain length**: only trigger breaking when a chain has N or
more operators
- **Fully backward-compatible**: the simple scalar form
(`BreakBinaryOperations: OnePerLine`) behaves identically to the current
enum value

RFC discussion:
https://discourse.llvm.org/t/rfc-per-operator-granularity-for-breakbinaryoperations/89800

### New YAML syntax

```yaml
BreakBinaryOperations:
  Default: Never
  PerOperator:
    - Operators: ['&&', '||']
      Style: OnePerLine
      MinChainLength: 3
    - Operators: ['|']
      Style: OnePerLine
```

### Motivation

`BreakBinaryOperations` operates at the level of all binary operators
simultaneously. Enabling `OnePerLine` for `&&`/`||` condition chains
also forces it on `+`, `|`, and other operators, which may not be
desired. The only workaround today is `// clang-format off`.

## Test plan

- [x] All existing `BreakBinaryOperations` unit tests updated and
passing
- [x] New tests for per-operator rules (`&&`/`||` OnePerLine + default
Never)
- [x] New tests for multiple operator groups (`&&`/`||` + `|`)
- [x] New tests for `MinChainLength` gating (chain of 2 vs 3+)
- [x] Config parse tests for structured YAML form
- [x] RST documentation auto-generated via `dump_format_style.py`
- [x] Release notes updated


  Commit: 7063b22c6371a4624f75e77dadd1a40a2824eaaa
      https://github.com/llvm/llvm-project/commit/7063b22c6371a4624f75e77dadd1a40a2824eaaa
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/X86/phdr-load-order.test

  Log Message:
  -----------
  [BOLT] Always place new PT_LOAD after existing ones (#182642)

Insert new PT_LOAD segments right after the last existing PT_LOAD in the
program header table, instead of before PT_DYNAMIC or at the end. This
maintains the ascending p_vaddr order required by the ELF specification.

Previously, new segments could end up breaking PT_LOAD p_vaddr order
when PT_LOAD segments followed PT_DYNAMIC or PT_GNU_STACK. This lead to
runtime loader incorrectly assessing dynamic object size and silently
corrupting memory.


  Commit: c6ade8a170b259fabc9999f53a1bd8a73e5ef111
      https://github.com/llvm/llvm-project/commit/c6ade8a170b259fabc9999f53a1bd8a73e5ef111
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    A llvm/test/CodeGen/AArch64/unsupported-fpext-x86-fp80.ll

  Log Message:
  -----------
  [SelectionDAG] Emit error instead of asserting for unsupported FP_EXTEND (#182660)

Replace the assertion failure in
`DAGTypeLegalizer::SoftenFloatRes_FP_EXTEND` with a user-friendly error
when no libcall is available for the requested

Fix
Replace the `assert` with an `emitError` call that reports the
unsupported
conversion gracefully and returns a poison value


Fixes: #182449


  Commit: fdce869d723f8032b48bb0e551b59a13b5d002d9
      https://github.com/llvm/llvm-project/commit/fdce869d723f8032b48bb0e551b59a13b5d002d9
  Author: dan rouhana <danielrouhana at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    A llvm/test/tools/llvm-mca/AArch64/Apple/darwin-subsections-via-symbols.s
    M llvm/tools/llvm-mca/CodeRegionGenerator.h

  Log Message:
  -----------
  [llvm-mca][Darwin] Fix crash on .subsections_via_symbols in asm input (#182694)

## Summary

This PR fixes an llvm-mca crash on Darwin assembly containing
`.subsections_via_symbols`. The directive is forwarded by
`DarwinAsmParser` to `emitSubsectionsViaSymbols()`, which crashes when
it hits the base `MCStreamer` `llvm_unreachable` path. The fix adds a
no-op override in `llvm/tools/llvm-mca/CodeRegionGenerator.h`, scoped to
llvm-mca only

## Problem manifestation

I ran across this while tinkering around with making an interactive
interpreter/code analyzer and implementing apple silicon support.

## Root cause

- `DarwinAsmParser::parseDirectiveSubsectionsViaSymbols` calls
`getStreamer().emitSubsectionsViaSymbols()`
- llvm-mca uses `MCStreamerWrapper`, derived from `MCStreamer`
- `MCStreamerWrapper` did not override `emitSubsectionsViaSymbols()`
- the call therefore reached `MCStreamer::emitSubsectionsViaSymbols()`,
which is `llvm_unreachable`, causing a crash

## Reproduction

I was able to reproduce this in three ways (note: no difference in
behavior was observed with the inclusion/exclusion of `-target
arm64-apple-macos` or any other arch flags):

1. AppleClang-generated assembly:
    ```bash
    cat > /tmp/repro.cpp <<'EOF'
    int foo(int x) { return x + 1; }
    EOF
    
/usr/bin/clang++ -target arm64-apple-macos -O0 -S /tmp/repro.cpp -o
/tmp/repro-appleclang.s
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/repro-appleclang.s
    ```

2. Homebrew Clang-generated assembly:
    ```bash
    cat > /tmp/repro.cpp <<'EOF'
    int foo(int x) { return x + 1; }
    EOF
    
/opt/homebrew/opt/llvm/bin/clang++ -target arm64-apple-macos -O0 -S
/tmp/repro.cpp -o /tmp/repro-hbclang.s
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/repro-hbclang.s
    ```

3. Handwritten Darwin assembly:
    ```bash
    cat > /tmp/min.s <<'EOF'
      .text
      .subsections_via_symbols
      .globl _foo
      _foo:
          ret
    EOF
    
/opt/homebrew/opt/llvm/bin/llvm-mca --show-encoding
--register-file-stats /tmp/min.s
    ```

## Fix

Add a no-op `emitSubsectionsViaSymbols()` override to
`MCStreamerWrapper` in `llvm/tools/llvm-mca/CodeRegionGenerator.h`.

This keeps the fix local to llvm-mca’s analysis streamer and does not
change Mach-O object emission behavior. A similar pattern fix is
implemented in `llvm/lib/Object/RecordStreamer.h`
([link](https://github.com/llvm/llvm-project/blob/main/llvm/lib/Object/RecordStreamer.h#L57-L60)).

## Validation

Reproduced and verified on macOS arm64 with the above three reproduction
cases:
1. assembly generated by AppleClang
2. assembly generated by Homebrew Clang
3. manually-authored `.s` file containing `.subsections_via_symbols`

`llvm-mca --show-encoding --register-file-stats` no longer crashes!!

## Notes

>From what I can surmise, this is a consumer-side fix (llvm-mca
parser/streamer), not a producer fix in clang, since the directive is
valid Darwin assembly and can appear in external input files. This
seemed to me like the most targeted, distilled fix that follows the same
pattern used elsewhere. Happy to revise the approach if there’s a better
fit for llvm-mca, thanks for taking a look!!


  Commit: 9d9c7fc00bdddd72e78b19e9fbb6af9d07c2218b
      https://github.com/llvm/llvm-project/commit/9d9c7fc00bdddd72e78b19e9fbb6af9d07c2218b
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Process/FreeBSDKernel] Print unread message buffer on start (#178027)

This is equivalent of kgdb_dmesg() in fbsd-kvm.c in FreeBSD kgdb(1)
port. Unread kernel messages is only printed in interactive mode (i.e.
not in batch mode) to mimic KGDB's behaviour.

Example output:
```
➜ sudo ./build/bin/lldb /boot/kernel/kernel -c /var/crash/vmcore.last
(lldb) target create "/boot/kernel/kernel" --core "/var/crash/vmcore.last"

Unread portion of the kernel message buffer:
panic: kdb_sysctl_panic
cpuid = 1
time = 1769364579
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe01b435fa20
vpanic() at vpanic+0x136/frame 0xfffffe01b435fb50
panic() at panic+0x43/frame 0xfffffe01b435fbb0
kdb_sysctl_panic() at kdb_sysctl_panic+0x63/frame 0xfffffe01b435fbe0
sysctl_root_handler_locked() at sysctl_root_handler_locked+0x9c/frame 0xfffffe01b435fc30
sysctl_root() at sysctl_root+0x22f/frame 0xfffffe01b435fcb0
userland_sysctl() at userland_sysctl+0x196/frame 0xfffffe01b435fd50
sys___sysctl() at sys___sysctl+0x65/frame 0xfffffe01b435fe00
amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe01b435ff30
fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe01b435ff30
--- syscall (202, FreeBSD ELF64, __sysctl), rip = 0x3f67cad1c8da, rsp = 0x3f67c80261d8, rbp = 0x3f67c8026220 ---
KDB: enter: panic

Core file '/var/crash/vmcore.last' (x86_64) was loaded.
(lldb)
```

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>


  Commit: f912679b761bdd3d8ab3a1042d3ea848a663e201
      https://github.com/llvm/llvm-project/commit/f912679b761bdd3d8ab3a1042d3ea848a663e201
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M flang/test/Lower/forall/forall-construct-4.f90
    M flang/test/Lower/forall/forall-construct.f90
    M flang/test/Lower/forall/forall-ranked.f90
    M flang/test/Lower/forall/forall-slice.f90
    M flang/test/Lower/forall/forall-stmt.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 19) (#182554)

Tests converted from test/Lower/forall: forall-construct-4.f90,
forall-construct.f90, forall-ranked.f90, forall-slice.f90,
forall-stmt.f90


  Commit: c04b00de750801238bc85f11874c66a41b61b2c5
      https://github.com/llvm/llvm-project/commit/c04b00de750801238bc85f11874c66a41b61b2c5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Relocations.cpp

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for ARM (#182440)

Implement ARM::scanSectionImpl, following the pattern established for
AArch64 and other targets. This merges the getRelExpr and TLS handling
for SHF_ALLOC sections into the target-specific scanner, enabling
devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle TLS inline: checkTlsLe for TLS LE, handleTlsIe<false> for
  TLS IE (no IE-to-LE optimization for ARM), and direct flag/reloc
  emission for TLS GD/LD (no GD/LD optimization for ARM).
- Set hasGotOffRel for R_GOTREL/R_GOTONLY_PC relocations.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and preprocessRelocs.


  Commit: d5b94174971f4ce5d8659e4ade27e21858221514
      https://github.com/llvm/llvm-project/commit/d5b94174971f4ce5d8659e4ade27e21858221514
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/SmallString.h
    M llvm/unittests/ADT/SmallStringTest.cpp

  Log Message:
  -----------
  [LLVM][ADT] Add some more `starts_with`, `ends_with`, and `contains` overloads to `SmallString` (#182692)

This makes `SmallString` consistent with `std::string`,
`std::string_view`, and `StringRef`.


  Commit: 76af74004e8bd1be55dc3b6b497575492fc47586
      https://github.com/llvm/llvm-project/commit/76af74004e8bd1be55dc3b6b497575492fc47586
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticCommentKinds.td
    M clang/lib/AST/CommentSema.cpp

  Log Message:
  -----------
  [clang][diagnostics] Refactor `warn_doc_function_method_decl_mismatch` to use enum_select (#181769)

Related: https://github.com/llvm/llvm-project/issues/123121

This patch refactors the `warn_doc_function_method_decl_mismatch`
diagnostic to use `enum_select` instead of `select`. This gets rid of
magic numbers in its caller and improves readability.


  Commit: d92011fe7df8955423a8ed6e3d12841d9719f460
      https://github.com/llvm/llvm-project/commit/d92011fe7df8955423a8ed6e3d12841d9719f460
  Author: Mohamed Ali <mohmedali1462005 at gmail.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaBoundsSafety.cpp

  Log Message:
  -----------
  [clang][NFC] Fix typo in SemaBoundsSafety.cpp comments (#181585)

Minor comment fix.


  Commit: a0f344f69d7eb5d87dd78c628a196a3a7440e792
      https://github.com/llvm/llvm-project/commit/a0f344f69d7eb5d87dd78c628a196a3a7440e792
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/tools/mlir-tblgen/OpDocGen.cpp

  Log Message:
  -----------
  [mlir-tblgen] Remove `namespace {}` around OpDocGroup (#182721)

This is temporary workaround for Asan report #182720.


  Commit: 6e9a308a884d18315fa3cb31693718148dfa63dd
      https://github.com/llvm/llvm-project/commit/6e9a308a884d18315fa3cb31693718148dfa63dd
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/lib/Basic/DiagnosticIDs.cpp

  Log Message:
  -----------
  [clang] Avoid calling isInSystemMacro() too often (#182217)

This caused a performance regression as reported in
https://github.com/llvm/llvm-project/pull/141950


  Commit: 31daf5cd55beb30c3cec8b525a17a8de875e0502
      https://github.com/llvm/llvm-project/commit/31daf5cd55beb30c3cec8b525a17a8de875e0502
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Add OPC_EmitIntegerByHwMode0 and OPC_CheckChildXTypeByHwMode0. NFC (#182686)

Add versions of these opcodes that implicitly call getValueTypeForHwMode
with index 0.

This reduces llc size by ~100K.


  Commit: be2588ae02f2348c8932311a11ffb512e20009fc
      https://github.com/llvm/llvm-project/commit/be2588ae02f2348c8932311a11ffb512e20009fc
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][ExprConst] Remove bogus diagnostic (#181792)

This diagnostic is untested and this code path should be dead.


  Commit: 8701cfc0008c4756f04f9839fd4afbb3f112bdad
      https://github.com/llvm/llvm-project/commit/8701cfc0008c4756f04f9839fd4afbb3f112bdad
  Author: Zinovy Nis <zinovy.nis at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    M clang-tools-extra/docs/clang-tidy/checks/performance/string-view-conversions.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp

  Log Message:
  -----------
  [clang-tidy] perf-str-view-conv improvement: support c_str/data fixing (#181473)

Handle new cases:
```
foo_sv(42, std::string(sv).c_str(), 3.14);  -> foo_sv(42, sv, 3.14);
foo_sv(42, std::string(sv).data(), 2.71);  -> foo_sv(42, sv, 2.71);
```


  Commit: 8542514e5cc39730cf40b939a08edc68374a94e5
      https://github.com/llvm/llvm-project/commit/8542514e5cc39730cf40b939a08edc68374a94e5
  Author: Twice <twice at apache.org>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/python/mlir/dialects/ext.py
    M mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Allow passing dialect as a class keyword argument (#182465)

Previously, we constructed new ops using the pattern `class
MyOp(MyInt.Operation)`.

Now we’ve added a new pattern: `class MyOp(Operation, dialect=MyInt)`,
which allows more flexible composition. For example:
```python
class BinOpBase(Operation): # it can be used in any dialect!
  res: Result[Any]
  lhs: Operand[Any]
  rhs: Operand[Any]
  
class MyInt(Dialect, name="myint"):
  pass

class AddOp(BinOpBase, dialect=MyInt, name="add"):
  ...
```


  Commit: 15487238c4e5d433f8e2078fdf1534ae6a0e8d10
      https://github.com/llvm/llvm-project/commit/15487238c4e5d433f8e2078fdf1534ae6a0e8d10
  Author: dianqk <dianqk at dianqk.net>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    A llvm/test/CodeGen/SPARC/stack-slot-coloring.mir

  Log Message:
  -----------
  [SPARC] Set how many bytes load from or store to stack slot (#182674)

Refer from: https://reviews.llvm.org/D44782

The testcase is copied from
llvm/test/CodeGen/RISCV/stack-slot-coloring.mir.


  Commit: 4226250a421b6dbb734d4358fcb36a97da2278d7
      https://github.com/llvm/llvm-project/commit/4226250a421b6dbb734d4358fcb36a97da2278d7
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h
    M mlir/include/mlir/Dialect/XeGPU/uArch/uArchBase.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Fix matrix ops layout propagation (#182268)


  Commit: c42ad5898e67e24d218e1310685d17d2590c44f6
      https://github.com/llvm/llvm-project/commit/c42ad5898e67e24d218e1310685d17d2590c44f6
  Author: Sietze Riemersma <43845930+KungFuDonkey at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
    A clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
    A llvm/test/CodeGen/DirectX/WaveActiveProduct.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

  Log Message:
  -----------
  [HLSL][DXIL][SPRIV] Added WaveActiveProduct intrinsic #164385 (#165109)

>From issue #99165, adds the implementation of WaveActiveProduct. Mainly
followed how WaveActiveSum was implemented

- [x] Implement WaveActiveProduct clang builtin,
- [x] Link WaveActiveProduct clang builtin with hlsl_intrinsics.h
- [x] Add sema checks for WaveActiveProduct to
CheckHLSLBuiltinFunctionCall in SemaChecking.cpp
- [x] Add codegen for WaveActiveProduct to EmitHLSLBuiltinExpr in
CGBuiltin.cpp
- [x] Add codegen tests to
clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
- [x] Add sema tests to
clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
- [x] Create the int_dx_WaveActiveProduct intrinsic in
IntrinsicsDirectX.td
- [x] Create the DXILOpMapping of int_dx_WaveActiveProduct to 119 in
DXIL.td
- [x] Create the WaveActiveProduct.ll and WaveActiveProduct_errors.ll
tests in llvm/test/CodeGen/DirectX/
- [x] Create the int_spv_WaveActiveProduct intrinsic in
IntrinsicsSPIRV.td
- [x] In SPIRVInstructionSelector.cpp create the WaveActiveProduct
lowering and map it to int_spv_WaveActiveProduct in
SPIRVInstructionSelector::selectIntrinsic.
- [x] Create SPIR-V backend test case in
llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

Also created the [offload
tests](https://github.com/llvm/offload-test-suite/pull/486)


  Commit: 844619e52653d084c898131e890e0c2411033e67
      https://github.com/llvm/llvm-project/commit/844619e52653d084c898131e890e0c2411033e67
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    R clang/test/CodeGenHLSL/builtins/WaveActiveProduct.hlsl
    R clang/test/SemaHLSL/BuiltIns/WaveActiveProduct-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
    R llvm/test/CodeGen/DirectX/WaveActiveProduct.ll
    R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveProduct.ll

  Log Message:
  -----------
  Revert "[HLSL][DXIL][SPRIV] Added WaveActiveProduct intrinsic #164385" (#182741)

Reverts llvm/llvm-project#165109


  Commit: 8d53f11955057a5ffd1482978631128fa8ae7e74
      https://github.com/llvm/llvm-project/commit/8d53f11955057a5ffd1482978631128fa8ae7e74
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/extern_c.pass.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/include_as_c.sh.cpp
    M libcxx/test/extensions/libcxx/depr/depr.c.headers/stdint_h.xopen_source.compile.pass.cpp
    M libcxx/test/extensions/posix/xopen_source.gen.py
    M libcxx/test/libcxx-03/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx-03/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx-03/transitive_includes.gen.py
    M libcxx/test/libcxx-03/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_nontrivial.pass.cpp
    M libcxx/test/libcxx/algorithms/alg.modifying.operations/copy_move_trivial.pass.cpp
    M libcxx/test/libcxx/assertions/customize_verbose_abort.compile-time.pass.cpp
    M libcxx/test/libcxx/assertions/modes/hardening_mode_incorrect_value.sh.cpp
    M libcxx/test/libcxx/assertions/semantics/assertion_semantic_incorrect_value.sh.cpp
    M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
    M libcxx/test/libcxx/language.support/timespec_get.xopen.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
    M libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/selftest/modules/std-module.sh.cpp
    M libcxx/test/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/modules/std.pass.cpp
    M libcxx/utils/libcxx/test/config.py
    M libcxx/utils/libcxx/test/dsl.py
    M libcxx/utils/libcxx/test/format.py
    M libcxx/utils/libcxx/test/modules.py

  Log Message:
  -----------
  [libc++] Enable additional tests when Clang modules are enabled (#168967)

Disabling tests when Clang modules are enabled is not great because we
are moving more and more tests towards using Clang modules by default.
Instead, disable Clang modules on a per-test basis.


  Commit: d7170f6235ec3eb86cd8551d49be34c255a33eed
      https://github.com/llvm/llvm-project/commit/d7170f6235ec3eb86cd8551d49be34c255a33eed
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/docs/TestSuiteGuide.md
    R llvm/docs/TestSuiteMakefileGuide.rst
    M llvm/docs/TestingGuide.rst

  Log Message:
  -----------
  [llvm] Remove the docs for the (now removed) LLVM test-suite Makefiles (#179288)

The LLVM test suite used to provide a Makefile-based suite, which had
been deprecated and mostly unmaintained for many years. As explained in
https://discourse.llvm.org/t/llvm-test-suite-removing-the-deprecated-makefiles,
we recently got consensus to remove that test suite, which was done in
llvm/llvm-test-suite#320. This patch cleans up the related
documentation.


  Commit: 0d0012ec63dfd02a124c8b3c96683eb4103051aa
      https://github.com/llvm/llvm-project/commit/0d0012ec63dfd02a124c8b3c96683eb4103051aa
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp

  Log Message:
  -----------
  [CIR] Emit cir.zero directly in Vector logical ops (#182703)

Emit `cir.zero` directly instead of `vec.create<n, 0>` that will be
folded to `cir.const_vector<n, 0>` later


  Commit: 188346d433d61909cf1abc6749cec973b1ca51f9
      https://github.com/llvm/llvm-project/commit/188346d433d61909cf1abc6749cec973b1ca51f9
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/clmul-fixed.ll

  Log Message:
  -----------
  [DAGCombiner] Add legality check for CLMULR fold to prevent infinite loop (#182376)

The bitreverse(clmul(bitreverse, bitreverse)) -> clmulr fold was missing
a legality check, causing an infinite loop when CLMULR isn't supported
on the target. Added the check to match other folds in visitBITREVERSE.

Fixes #182270


  Commit: d3081aafc47eccba242ffc3cc43ecfcb545a51bb
      https://github.com/llvm/llvm-project/commit/d3081aafc47eccba242ffc3cc43ecfcb545a51bb
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/SystemZ/vectorized-epilogue-loop.ll

  Log Message:
  -----------
  [SystemZ, LoopVectorizer] Enable vectorization of epilogue loops. (#172925)

This enables vectorization of epilogue loops produced by LoopVectorizer on
SystemZ.

LoopVectorizationCostModel::isEpilogueVectorizationProfitable() and
TTI.preferEpilogueVectorization() have been refactored slightly so that
targets can override preferEpilogueVectorization(ElementCount Iters) and
directly control this, whereas before this depended on
TTI.getMaxInterleaveFactor() as well.

The Iters passed to preferEpilogueVectorization() reflects the total number
of scalar iterations performed in the vectorized loop (including interleaving).

The default implementation of preferEpilogueVectorization() now subsumes
the old check against getMaxInterleaveFactor(). This patch should be NFC for
other targets.


  Commit: 1161d0732a004814fb42e9b3d4b15b5660cc3870
      https://github.com/llvm/llvm-project/commit/1161d0732a004814fb42e9b3d4b15b5660cc3870
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-freeze.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-same-op.mir
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    M llvm/test/CodeGen/AArch64/rem-by-const.ll
    M llvm/test/CodeGen/X86/GlobalISel/sub-scalar.ll

  Log Message:
  -----------
  [GlobalISel] Add sub_same_val rewrites from SelectionDAG (#181134)

This PR adds the patterns `// Fold x op x -> 0` for `G_SUB` and `G_XOR`
operations to GlobalISel.

SelectionDAG rewrite:
https://github.com/llvm/llvm-project/blob/838be78e44cd1f70006eb508bfc925e3e56aac03/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L4192


  Commit: 1bf4ca3a19d675390f2188ea21a58f86fa53feb8
      https://github.com/llvm/llvm-project/commit/1bf4ca3a19d675390f2188ea21a58f86fa53feb8
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-sub.mir

  Log Message:
  -----------
  [GlobalISel] Add sub_one_from_sub from SelectionDAG (#181670)

This PR adds the rewrite `// fold (A - B) - 1 -> add (xor B, -1), A`
from
[SelectionDAG](https://github.com/llvm/llvm-project/blob/3765b09d20e01976a6ab6f8b922a6b93751fbf44/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L4411)
to GlobalISel.


  Commit: d8f778935a5bf8a173a3c1d886fd736a4ef6cf05
      https://github.com/llvm/llvm-project/commit/d8f778935a5bf8a173a3c1d886fd736a4ef6cf05
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/Matchers.h

  Log Message:
  -----------
  [clang-tidy][NFC] Fix llvm-use-ranges warnings on codebase (#182758)


  Commit: 1dcaf4793a150475d84114cb865d95564ff6d6e5
      https://github.com/llvm/llvm-project/commit/1dcaf4793a150475d84114cb865d95564ff6d6e5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/lib/Analysis/IVDescriptors.cpp

  Log Message:
  -----------
  [IVDescriptors] Identify min/max recurrences in single pass. (#163460)

This patch ties to extend the approach from
https://github.com/llvm/llvm-project/pull/141431 to all min/max
recurrence kinds.

This patch adds a new getMinMaxRecurrence that identifies all min/max
recurrences in a single pass. It starts at the backedge value of a phi
and tries to identify the kind of the min/max recurrences.

It then walks from the backedge value to its operands recursively until
it reaches out-of-loop values or the phi.

Then users of both the backedge value and all instructions in the chain
from backedge value to phi are checked.

This consolidates all logic to identify min/max recurrences to a single
function, and avoids the need to try to identify each min/max reduction
kind individually.

PR: https://github.com/llvm/llvm-project/pull/163460


  Commit: d999f94aee4e630804214812d81e6916ca67c7bf
      https://github.com/llvm/llvm-project/commit/d999f94aee4e630804214812d81e6916ca67c7bf
  Author: John Mitchell <fauxprogrammer at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp

  Log Message:
  -----------
  [clang-format] Add C language support for IntegerLiteralSeparator (#182296)

C23 language standard has added support for the C++ tick mark as a
numeric separator. Add support to clang-format so that when formatting
configured for LK_C this code path is enabled.

Fixes #179686


  Commit: 57f486195aff60037686418d26c473f4a287dcdf
      https://github.com/llvm/llvm-project/commit/57f486195aff60037686418d26c473f4a287dcdf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/select-first-index-fp.ll
    R llvm/test/Transforms/LoopVectorize/select-fmax-last-index.ll
    R llvm/test/Transforms/LoopVectorize/select-fmin-last-index.ll
    A llvm/test/Transforms/LoopVectorize/select-last-index-fp.ll

  Log Message:
  -----------
  [LV] Add additional tests for FP argmin/argmax.

Extend existing tests to cover both finding first/last argmin/argmax for
floating point reductions.


  Commit: 37a32d47fb2cfa4db8405ed9184a6bc331420d77
      https://github.com/llvm/llvm-project/commit/37a32d47fb2cfa4db8405ed9184a6bc331420d77
  Author: David Green <david.green at arm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/bfx.ll
    M llvm/test/CodeGen/Thumb/pr35836.ll
    M llvm/test/CodeGen/Thumb/pr35836_2.ll

  Log Message:
  -----------
  [ARM] Regenerate bfx.ll and pr35836.ll tests. NFC


  Commit: 690312e08885eca30759c108e9e47ebf4e5eceba
      https://github.com/llvm/llvm-project/commit/690312e08885eca30759c108e9e47ebf4e5eceba
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    A llvm/test/Transforms/LoopVectorize/find-last-iv-interleave.ll
    A llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-expr.ll
    A llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
    R llvm/test/Transforms/LoopVectorize/find-last-sink-based-iv-expr.ll

  Log Message:
  -----------
  [LV] Add additional find-last reduction tests with sink-able exprs.


  Commit: bd3b163dce306040e2fa8d3bf5eef2385fc0bb37
      https://github.com/llvm/llvm-project/commit/bd3b163dce306040e2fa8d3bf5eef2385fc0bb37
  Author: Eli Friedman <efriedma at qti.qualcomm.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/freeze-fp-ops.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/nsw.ll
    M llvm/test/Transforms/InstCombine/select-gep.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible.ll
    M llvm/test/Transforms/InstCombine/urem-via-cmp-select.ll
    M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll

  Log Message:
  -----------
  Revert "[InstCombine] Allow freezing multiple operands (#154336)" (#182769)

This reverts commit f8f6965ceece9e330ddb66db5f402ecfb5e3ad34.

This is causing infinte loops interacting with other transforms. See
discussion on #182647 .


  Commit: 648193e1619f7af68230f6eddc526af542446cd8
      https://github.com/llvm/llvm-project/commit/648193e1619f7af68230f6eddc526af542446cd8
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/unittests/Dialect/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/InferConvolutionDimsTest.cpp

  Log Message:
  -----------
  Reapply "[mlir][linalg] Make conv dim inference return pairing (outputImage, filterLoop)" (#182740)

The original method sorts all the dimensions which loses the information
about pairing. It makes other transformation that works on generic op
form harder. The revision ensures the pairing, so callers have more
useful information when they work on transformations.

The revision was reverted because of memory leak. The fix is using
OwningOpRef to wrap ModuleOp, so the nested operations are destroyed at
the end, which is similar to other MLIR unittests.

---------

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 8e8974e5ebb0aa73abb498f10133756d3fd37711
      https://github.com/llvm/llvm-project/commit/8e8974e5ebb0aa73abb498f10133756d3fd37711
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M polly/lib/External/isl/GIT_HEAD_ID
    M polly/lib/External/isl/isl_ast_build.c
    M polly/lib/External/isl/isl_ast_build_private.h
    M polly/lib/External/isl/isl_ast_codegen.c
    M polly/lib/External/isl/isl_coalesce.c
    M polly/lib/External/isl/isl_test2.cc
    M polly/lib/External/isl/test_inputs/codegen/omega/wak1-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/wak2-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/wak2-1.c
    M polly/lib/External/isl/test_inputs/codegen/redundant.c
    M polly/lib/External/isl/test_inputs/codegen/shift2.c
    M polly/test/DeLICM/reduction_looprotate_hoisted.ll
    M polly/test/DependenceInfo/reduction_multiple_reductions_2.ll
    M polly/test/ScopInfo/invariant_load_addrec_sum.ll
    M polly/test/ScopInfo/long-sequence-of-error-blocks.ll
    M polly/test/ScopInfo/multidim_2d_with_modref_call.ll
    M polly/test/ScopInfo/multidim_2d_with_modref_call_2.ll
    M polly/test/ScopInfo/multidim_fortran_2d_with_modref_call.ll
    M polly/test/ScopInfo/wraping_signed_expr_5.ll

  Log Message:
  -----------
  [Polly] Update isl to isl-0.27-82-g38cf72a4 (#182786)

Update isl to include
https://repo.or.cz/isl.git/commit/38cf72a41b708475fc22dc9fc62c7caae1ac29f6
which fixes #179993. This changes some string representations of ISL
objects in tests which are updated.

Fixes #179993

Thanks @skimo-openhub for the fix and @thapgua for the bugreport.


  Commit: 5b1a0230d9fe3480c41acf3ecbc855027b4066a3
      https://github.com/llvm/llvm-project/commit/5b1a0230d9fe3480c41acf3ecbc855027b4066a3
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc][CMake] Add COMPONENT ${ARG_PARENT_TARGET} to install (#182716)

Toolchain can specify the component to selectively install libclc to a
deploy folder. E.g. our downstream SYCL toolchain deploy:
https://github.com/intel/llvm/blob/e7b423fd517d/sycl/CMakeLists.txt#L531

Also check ARG_PARENT_TARGET is defined and non-empty.

Co-authored-by: Jinsong Ji <jinsong.ji at intel.com>


  Commit: 686acf63823734b38f55dd8ae6fcd8aa27930f15
      https://github.com/llvm/llvm-project/commit/686acf63823734b38f55dd8ae6fcd8aa27930f15
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
    M mlir/test/Dialect/MemRef/invalid.mlir
    M mlir/test/Dialect/Tensor/canonicalize.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir] Make [tensor|memref]::ExpandShapeOp verifier stricter. (#181020)

The number of dynamic dims in output_shape is expected to be as the same
as the result type.

The revision also trims double whitespaces from the doc, because it also
updates the op description.

---------

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: e37c985ba09d424a1c8b553a8c511b18f437d386
      https://github.com/llvm/llvm-project/commit/e37c985ba09d424a1c8b553a8c511b18f437d386
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/include/__atomic/atomic.h

  Log Message:
  -----------
  [libc++] Fix typo in atomic.h comment (#182719)


  Commit: 384106b8ec2a7afc43e7b263af598429d50f068e
      https://github.com/llvm/llvm-project/commit/384106b8ec2a7afc43e7b263af598429d50f068e
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-conversion.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-fma.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-fp.s
    M llvm/test/tools/llvm-mca/RISCV/Andes45/rvv-permutation.s

  Log Message:
  -----------
  [RISCV] Update Andes45 vector floating-point arithmetic scheduling info (#181289)

This PR adds latency/throughput for all RVV floating-point arithmetic to
the andes45 series scheduling model.


  Commit: 0285308d34a5122e6e6833690d4f973347293394
      https://github.com/llvm/llvm-project/commit/0285308d34a5122e6e6833690d4f973347293394
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/Target/X86/X86TargetMachine.h

  Log Message:
  -----------
  [CodeGen][NewPM] Name parameters in buildCodeGenPipeline

This is consistent with the coding style, and makes things consistent
between the various header files/improves readability slightly.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/182774


  Commit: 2617cc5e82da19820d3da531c84df95f59e63b42
      https://github.com/llvm/llvm-project/commit/2617cc5e82da19820d3da531c84df95f59e63b42
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-22 (Sun, 22 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/Analysis/CostModel/X86/clmul.ll
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/RISCV/clmulh.ll
    M llvm/test/CodeGen/RISCV/clmulr.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [TargetLowering][RISCV] Avoid ISD::MUL in expandCLMUL if hasBitTest or MUL requires a library call. (#182389)

Scalar multiply is not part of the most basic RISC-V ISA. Use a
and+setcc+select for these targets.

The and+setcc+select is also beneficial for targets with bit test
instructions. RISC-V may not get the full benefit here due to
not having a cmove-like instruction without Zicond.

Co-authored-by: fbrv <Fabio.Baravalle at gmail.com>


  Commit: ff88b83fed12d12d513e3cb45cd5f2bf1c230d3d
      https://github.com/llvm/llvm-project/commit/ff88b83fed12d12d513e3cb45cd5f2bf1c230d3d
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Handle extracts for middle blocks also used by early exiting blocks. NFC (#181789)

Currently createExtractsForLiveOuts only handles creating extracts when
the middle block has one predecessor, but if an early exit exits to the
same block as the latch then it might have multiple predecessors.

This handles the latter case to avoid the need to handle it in
VPlanTransforms::handleUncountableEarlyExits. Addresses the comment in
https://github.com/llvm/llvm-project/pull/174864#discussion_r2794153217


  Commit: 059accca5367283d842cfb2bbe03aa45af2fc543
      https://github.com/llvm/llvm-project/commit/059accca5367283d842cfb2bbe03aa45af2fc543
  Author: Twice <twice at apache.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/ExtensibleDialect.h
    M mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/ExtensibleDialect.cpp
    M mlir/test/python/dialects/irdl.py

  Log Message:
  -----------
  [MLIR][Python] Add Python and C API of `mlir::DynamicType` (#182751)

This PR adds C and Python API support for `mlir::DynamicType`. It
primarily enables types in dialects that are dynamically generated via
IRDL to be constructed in Python, and allows retrieving the parameters
contained in a dynamic type from Python.

---------

Co-authored-by: Rolf Morel <rolfmorel at gmail.com>


  Commit: c4e26ae27936e6c5442b36be84fd16f643ff4b1d
      https://github.com/llvm/llvm-project/commit/c4e26ae27936e6c5442b36be84fd16f643ff4b1d
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td

  Log Message:
  -----------
  [RISCV] Reduce duplicated SFB patterns in RISCVInstrInfoXAndes.td. NFC. (#182800)

This PR is similar to what we did in RISCVInstrInfoSFB.td.


  Commit: 9a109fbb6e184ec9bcce10615949f598f4c974a9
      https://github.com/llvm/llvm-project/commit/9a109fbb6e184ec9bcce10615949f598f4c974a9
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/vk-ext-builtin-input.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/NonUniformIdx/RWStructuredBufferNonUniformIdx.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array-minimal.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-peeled-array.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-simple.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/cbuffer-struct.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/issue-146942-ptr-cast.ll
    M llvm/test/CodeGen/SPIRV/legalization/load-store-global.ll
    M llvm/test/CodeGen/SPIRV/legalization/vector-index-scalarization.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/lifetime.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/logical-memcpy.ll
    M llvm/test/CodeGen/SPIRV/pointers/array-skips-gep.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/global-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/pointer-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/ptrcast-bitcast.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
    M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-dynamic-index.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-nested-struct-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-runtime-array.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/sgep-vector.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-access.ll
    M llvm/test/CodeGen/SPIRV/pointers/structured-buffer-vector-access.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.ps.ll
    M llvm/test/CodeGen/SPIRV/semantics/position.vs.ll
    M llvm/test/CodeGen/SPIRV/semantics/target.ps.ll
    M llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/return-early.ll

  Log Message:
  -----------
  [SPIR-V] Don't emit alignment decoration for non-kernel SPIR-V (#182772)

Fixes: https://github.com/llvm/llvm-project/issues/135165


  Commit: 57f3f1470e5d359d63e16f633a9ca6c377698413
      https://github.com/llvm/llvm-project/commit/57f3f1470e5d359d63e16f633a9ca6c377698413
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix readability-redundant-parentheses warnings (#182766)


  Commit: 404452b29e4b59c6cdece2ec1c99cf7fc57e93db
      https://github.com/llvm/llvm-project/commit/404452b29e4b59c6cdece2ec1c99cf7fc57e93db
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix readability-inconsistent-ifelse-braces warnings (#182764)

This align with [LLVM coding
conventions](https://llvm.org/docs/CodingStandards.html#don-t-use-braces-on-simple-single-statement-bodies-of-if-else-loop-statements):
Quote:
```cpp
// Use braces for the `if` block to keep it uniform with the `else` block.
if (isa<FunctionDecl>(D)) {
  handleFunctionDecl(D);
} else {
  // In this `else` case, it is necessary that we explain the situation with
  // this surprisingly long comment, so it would be unclear without the braces
  // whether the following statement is in the scope of the `if`.
  handleOtherDecl(D);
}
```


  Commit: f4f17bd86c14acb265e1caa7bdc5b3501a7e3b83
      https://github.com/llvm/llvm-project/commit/f4f17bd86c14acb265e1caa7bdc5b3501a7e3b83
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidy.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix misc-override-with-different-visibility warnings (#182763)

Ran with config:
```yaml
  - key:             misc-override-with-different-visibility.DisallowedVisibilityChange
    value:           widening
```
I think we should only care about widening changes.


  Commit: cb3d7ffb09e8be115da1fd57a6c09860e89f5449
      https://github.com/llvm/llvm-project/commit/cb3d7ffb09e8be115da1fd57a6c09860e89f5449
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/fixed-length-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-combines.ll

  Log Message:
  -----------
  [AArch64] Add bfloat patterns for `partial_reduce_fmla` (#181982)

A BFMLALT/B pair exactly matches the semantics of a partial_reduce_fmla
from (nx)v8bf16 to (nx)v4f32.


  Commit: ca7cf834bcbff5a1e243575d46a5258032a02b2a
      https://github.com/llvm/llvm-project/commit/ca7cf834bcbff5a1e243575d46a5258032a02b2a
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [Maintainers] Fix broken clang link (NFC) (#182451)

Was recently converted to .md (44f248499616).


  Commit: 53648f571a0e91378706dcb92f877721275a86a8
      https://github.com/llvm/llvm-project/commit/53648f571a0e91378706dcb92f877721275a86a8
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option-fastisel.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll

  Log Message:
  -----------
  [AArch64] -aarch64-enable-global-isel-at-O=-1 should disable GISel (#182250)

Recent changes in #174746 to use GISel for optnone functions broke this.
Now at O3 -aarch64-enable-global-isel-at-O=-1 is having the opposite
affect of actually enabling GISel instead of SDAG and at O0 FastISel is
no longer used. I've added a check for if this is disabled.


  Commit: 84be3259dd470dbd18a5b57847f499aff59c719b
      https://github.com/llvm/llvm-project/commit/84be3259dd470dbd18a5b57847f499aff59c719b
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp

  Log Message:
  -----------
  [mlir][Linalg] Allow isaBroadcastOpInterface to accept LinalgOp (#182806)

Allow isaBroadcastOpInterface to accept LinalgOp so that both the named
linalg.broadcast op and broadcast-like linalg.generic are handled by a
single API instead of special-casing check for named vs generic op in
downstream projects.

No test is being added for this change because callers that pass
GenericOp (e.g. Specialize.cpp) continue to work since GenericOp is a
LinalgOp.

Signed-off-by: Abhishek Varma <abhvarma at amd.com>


  Commit: 63e3e89b8532745f6617a931c964b1f7a1119b46
      https://github.com/llvm/llvm-project/commit/63e3e89b8532745f6617a931c964b1f7a1119b46
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/strlen-7.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vsx-tsvc-s173.ll
    M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll

  Log Message:
  -----------
  [InstCombine] Only ignore first zero index during GEP canonicalization (#180764)

When canonicalizing GEPs to have a single index, only ignore the first
leading zero index. This fixes a hole in the canonicalization in case
there was a struct zero offset, which can't be removed by the the
leading zero stripping.


  Commit: a0cf0221824afaa1b5d55f348daa9fe59e7fb0e6
      https://github.com/llvm/llvm-project/commit/a0cf0221824afaa1b5d55f348daa9fe59e7fb0e6
  Author: Björn Schäpers <bjoern at hazardy.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/test/CodeCompletion/included-files.cpp

  Log Message:
  -----------
  [CodeCompletion] Consider header files without extension, if... (#166447)

... the path passed to -I ends with /include.

I've brought it up, when the special handling for Qt was added
(https://reviews.llvm.org/D112996#3349609) but got no feedback.


  Commit: d7fac0f42a3a8a6d6cf827d1f8b38663f872fe0f
      https://github.com/llvm/llvm-project/commit/d7fac0f42a3a8a6d6cf827d1f8b38663f872fe0f
  Author: daniilavdeev <daniilavdeev237 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Host/common/MonitoringProcessLauncher.cpp

  Log Message:
  -----------
  [lldb] address memory leakage in lldb-server (#177572)

lldb-server has exhibited fairly unexpected behaviour. The time each
iteration of the main loop takes (attach + spawn a child process) has
been progressively increasing over the course of the lldb-server
execution. For instance, at the beginning of the remote tests run (when
a single instance of lldb-server on the remote side processes all the
incoming connections), each iteration took approximately 0.1 seconds,
increasing to 1.5 seconds by the end.

The analysis of the lldb-server application indicates that the
__libc_fork function takes more and more time on each iteration. The
most plausible interpretation of this fact would appear to be that the
application accumulates a certain resource that the fork function
subsequently had to process.

The following investigation has shown that the memory leakage did seem
to take place during the lldb-server execution. After the spawn of a
child process lldb-server additionally creates a monitoring thread, the
only purpose of which is to call a waitpid on the corresponding child
process. However, it appears to me that lldb-server application tracks
neither its children nor these internal threads, which ultimately
results in the threads not being joined or detached and the resources
associated with these threads won't be released.

Meanwhile, the creation of the thread is followed by the allocation of
the stack memory for this thread (usually 8MB), which is never released.
Given this behaviour, the amount of unfreed memory accumulated by the
lldb-server reaches approximately 30-35GB by the end of the test run. At
the same time, the fork function maps the parent's memory to the child
process, therefore the uncontrolled growth of unnecessary memory slows
the execution of the fork function significantly.

To summarise, the memory leakage that was caused by the inappropriate
managing of the internal threads appears to be the underlying cause of
the progressively increasing duration of the main loop, leading to
performance degradation of lldb-server application, which is especially
noticeable during long tests runs.

The proposed solution at this stage is to simply detach internal
threads, so that the OS can release memory associated with these
threads. That is to say, it seems to me that lldb-server doesn't have
appropriate mechanisms to track spawned threads, therefore a more
thoughtful approach would likely require changes to a substantial part
of the existing logic.


  Commit: c8e2503336409b2eb63b126c2f1039435ec70689
      https://github.com/llvm/llvm-project/commit/c8e2503336409b2eb63b126c2f1039435ec70689
  Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/lib/Lower/Support/Utils.cpp
    A flang/test/Lower/OpenMP/block-use-predetermined-privatization.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix crash privatizing USE'd module variable in BLOCK (#182060)

Module variables accessed via USE inside a BLOCK nested in an OpenMP
construct (parallel do, taskloop) crash during lowering because the host
symbol box doesn't exist yet — the BLOCK hasn't been lowered when
privatization runs.

The fix instantiates the module global on demand in the
DataSharingProcessor before privatization, and adds a fallback from
lookupOneLevelUpSymbol to lookupSymbol in privatizeSymbol for symbols
bound at the current scope level.
 
Fixes : [#161183 ](https://github.com/llvm/llvm-project/issues/161183)

---------

Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>


  Commit: de3cefe5608331c3156eb14ad8e14d837166170e
      https://github.com/llvm/llvm-project/commit/de3cefe5608331c3156eb14ad8e14d837166170e
  Author: Twice <twice at apache.org>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir-c/ExtensibleDialect.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/CAPI/IR/ExtensibleDialect.cpp
    M mlir/test/python/dialects/irdl.py

  Log Message:
  -----------
  [MLIR][Python] Add C and Python API for `mlir::DynamicAttr` (#182820)

This PR adds C and Python API support for `mlir::DynamicAttr`. It
primarily enables attributes in dialects that are dynamically generated
via IRDL to be constructed in Python, and allows retrieving the
parameters contained in a dynamic attribute from Python.

This PR is quite similiar to #182751, so I use tab to autocomplete some
code via github copilot, but manually verified.


  Commit: 3849fceb8a78c8785c85af361ad383864c3599c1
      https://github.com/llvm/llvm-project/commit/3849fceb8a78c8785c85af361ad383864c3599c1
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [CMake] Don't try to reuse PCH if PCH is disabled (#182819)

Very recently, CMake started to emit warnings if REUSE_FROM is used but
the source has PCH disabled. Therefore, before using REUSE_FROM, check
that PCH is not disabled.


  Commit: f02aadc9456c05b17aaf2cef975212bacfe15357
      https://github.com/llvm/llvm-project/commit/f02aadc9456c05b17aaf2cef975212bacfe15357
  Author: David Green <david.green at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/AArch64/qshrn.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Combine to sqxtn pre legalization for FewerElements (#181163)

Post legalization we will not have v2i64 MIN and MAX, which prevents the
recognition of saturating truncates. This changes the combiner rules to
combine pre-legalization, providing that the vector operation will be
clamped (like a v4i64).


  Commit: 279b3dbec65c8bc898e254f373b4f443a7e106b9
      https://github.com/llvm/llvm-project/commit/279b3dbec65c8bc898e254f373b4f443a7e106b9
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    A llvm/test/Transforms/InstCombine/icmp-vector-bitwise-reductions.ll

  Log Message:
  -----------
  [InstCombine] Fold icmp (vreduce_(or|and) %x), (0|-1) (#182684)

We can just compare the entire bitcasted value against Zero or AllOnes
in this case.

It is profitable on all major targets: https://godbolt.org/z/o7ecKjbsK


  Commit: 5870fcf24c6390bcb8ae4dd4de682a1af2562907
      https://github.com/llvm/llvm-project/commit/5870fcf24c6390bcb8ae4dd4de682a1af2562907
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/M68k/pipeline.ll

  Log Message:
  -----------
  [M68k] Update llvm/test/CodeGen/M68k/pipeline.ll (#182809)

Due to https://github.com/llvm/llvm-project/pull/181547.


  Commit: 4bd0e49f8a61b1992a2be724a9d24844b0aec411
      https://github.com/llvm/llvm-project/commit/4bd0e49f8a61b1992a2be724a9d24844b0aec411
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp

  Log Message:
  -----------
  [VPlan] Remove verifyEVLRecipe (#182798)

In #182254 we want to start aborting compilation when the verifier fails
between passes, but currently we run into various EVL related failures.

The EVL is used in quite a few more places than when the verification
was originally added, all of which need to be handled by the verifier. I
think this is also exacerbated by the fact that many recipes nowadays
are converted to concrete recipes later in the pipeline which duplicates
the number of patterns we need to match.

The EVL transform itself has also changed much since its original
implementation, i.e. non-trapping recipes don't use EVL (#127180) and VP
recipes are generated via pattern matching instead of unconditionally
(#155394), so I'm not sure if the verification is as relevant today.

Rather than try to add more patterns this PR removes the verification to
reduce the maintainence cost. Split off from #182254


  Commit: f8906704104e446a7482aeca32d058b91867e05c
      https://github.com/llvm/llvm-project/commit/f8906704104e446a7482aeca32d058b91867e05c
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp

  Log Message:
  -----------
  [CIR][ARM] Refactor argument handling in `emitAArch64BuiltinExpr` (NFC) (#182105)

Port recent argument-handling refactors from
CodeGen/TargetBuiltins/ARM.cpp into
CIR/CodeGen/CIRGenBuiltinAArch64.cpp to keep the CIR
implementation in sync with Clang CodeGen.

In particular, mirror the updated handling of Sema-only NEON
discriminator arguments and the common argument emission logic
used to populate the `Ops` vector.

This is a mechanical port of the following changes:

  * https://github.com/llvm/llvm-project/pull/181974
  * https://github.com/llvm/llvm-project/pull/181794

No functional change intended.


  Commit: 7c0c0dfa49d19a42126dff682d41508f2b28f0a8
      https://github.com/llvm/llvm-project/commit/7c0c0dfa49d19a42126dff682d41508f2b28f0a8
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    A flang/test/Lower/Intrinsics/rtc.f90

  Log Message:
  -----------
  [flang] Implement non-standard RTC intrinsic (#182560)

RTC is supported by classic flang and used in a proprietary HPC
application. I've implemented it as an alias for TIME.

Assisted-by: codex


  Commit: 594e889b7ffaf61817c30c12e2d92717e6ceaddb
      https://github.com/llvm/llvm-project/commit/594e889b7ffaf61817c30c12e2d92717e6ceaddb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/Frames-dyn-alloca.ll
    M llvm/test/CodeGen/PowerPC/asm-dialect.ll
    M llvm/test/CodeGen/PowerPC/ppc64-blnop.ll

  Log Message:
  -----------
  [PowerPC] Fix duplicate RUN lines in tests (#182275)


  Commit: 3fc90181cdb3edb11682a70ab6bad941a11c408a
      https://github.com/llvm/llvm-project/commit/3fc90181cdb3edb11682a70ab6bad941a11c408a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lld/test/ELF/lto/linker-script-symbols-ipo.ll
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    R llvm/test/CodeGen/X86/prefalign.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll

  Log Message:
  -----------
  Revert "CodeGen: Emit .prefalign directives based on the prefalign attribute."

This reverts commit 6767bfeec5ede8a878792e39aedff053c36854b2.

This breaks the tools/gold/X86/multiple-sections.ll test.


  Commit: 20bdcbd41db797be47d525525811fdbcf6c15870
      https://github.com/llvm/llvm-project/commit/20bdcbd41db797be47d525525811fdbcf6c15870
  Author: Hunter Baker <hunterbaker at me.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/test/APINotes/Inputs/Headers/Fields.apinotes
    M clang/test/APINotes/Inputs/Headers/Fields.h
    M clang/test/APINotes/fields.cpp

  Log Message:
  -----------
  [APINotes] Fix fatal error when using the Type key on fields (#180672)

This fixes a clang crash when importing a module with apinotes that sets
the Type key on a Field:
```
# .---command stderr------------
# | API notes allowed a type on an unknown declaration
# | UNREACHABLE executed at <path>/llvm-project/clang/lib/Sema/SemaAPINotes.cpp:419!
# | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
# | Stack dump:
# | 0.  <path>/llvm-project/clang/test/APINotes/Inputs/Headers/Fields.h:4:12: current parser token ';'
# | 1.  <path>/llvm-project/clang/test/APINotes/Inputs/Headers/Fields.h:3:1: parsing struct/union/class body 'IntWrapper'
...
# |  #8 0x0000000109540868 clang::Sema::ApplyAPINotesType(clang::Decl*, llvm::StringRef)
# |  #9 0x000000010955c6ec applyAPINotesType(clang::Sema&, clang::Decl*, llvm::StringRef, (anonymous namespace)::VersionedInfoMetadata)
```
```yaml
Tags:
- Name: IntWrapper
  Fields:
  - Name: value
    Type: ValueType  # Fails because of this
```

Previously, the case that the Decl passed to `ApplyAPINotesType` could
be a `FieldDecl` was overlooked.
```cpp
struct Field {
  …
  StringRef Type;
  ...
}
...
template <> struct MappingTraits<Field> {
  static void mapping(IO &IO, Field &F) {
    …
    IO.mapOptional("Type", F.Type, StringRef(""));  // ‘Type' is already a valid key in apinotes files.
    ….
  }
}
```
This adds the case to handle `FieldDecl`s.

@egorzhdan @compnerd


  Commit: baef055d30dd5860133eededefba499d55afa4c2
      https://github.com/llvm/llvm-project/commit/baef055d30dd5860133eededefba499d55afa4c2
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.integer.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.pointer.pass.cpp

  Log Message:
  -----------
  [libc++][NFC] Format `std::midpoint` tests (#175531)

### Summary

- Format code
- Fix comments

Extracted NFC changes from PR #175388.


  Commit: d70d18b963a0e0f2a67e1effe7cbaa52b3da1918
      https://github.com/llvm/llvm-project/commit/d70d18b963a0e0f2a67e1effe7cbaa52b3da1918
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in TestAttributes.cpp (NFC)


  Commit: 36d60b16df50e648f21196f25e5f87dad8659909
      https://github.com/llvm/llvm-project/commit/36d60b16df50e648f21196f25e5f87dad8659909
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    A clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    A clang/test/Analysis/unconditional-va_arg.c
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer] New checker: optin.core.UnconditionalVAArg (#175602)

Add a new optin checker which reports variadic functions that
unconditionally use `va_arg()`. It would be undefined behavior to call
such functions without passing any variadic arguments, so the SEI-CERT
rule EXP47-C says that this pattern should be avoided.

As this part of this SEI-CERT rule focuses on a very narrow area, I
aimed to write a simple and stable checker that can report basic "clear"
occurrences of this fault. It would be possible to cover some additional
corner cases, but it isn't worth the effort.


  Commit: fd44b06a8dc3a3ef89d6c31268747d714f381610
      https://github.com/llvm/llvm-project/commit/fd44b06a8dc3a3ef89d6c31268747d714f381610
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Reorganize diagnostic groups and remove confidence-based warnings (#179309)

Reorganized lifetime safety diagnostic groups to be more granular and
renamed diagnostic messages for better clarity.

- **Diagnostic Group Restructuring**: Split lifetime safety warnings
into more specific categories:
- `lifetime-safety-use-after-scope` and
`lifetime-safety-use-after-scope-moved` for scope-related issues
- `lifetime-safety-return-stack-addr` and
`lifetime-safety-return-stack-addr-moved` for return address issues
- `lifetime-safety-dangling-field` and
`lifetime-safety-dangling-field-moved` for field reference issues
- Added new umbrella groups `lifetime-safety-validations` and
`lifetime-safety-all`
- **Diagnostic Message Updates**: Renamed warning diagnostics from
generic "loan expires" terminology to more specific messages like "use
after scope" and "return stack addr"
- **Code Cleanup**: Removed `Confidence` logic (based on possible vs
guaranteed control-flow) from diagnostic reporting functions. Added TODO
comment to deprecate the `Confidence` enum

The new diagnostic group tree is:

```
lifetime-safety-all
├── lifetime-safety
│   ├── lifetime-safety-permissive
│   │   ├── lifetime-safety-use-after-scope
│   │   ├── lifetime-safety-return-stack-addr
│   │   └── lifetime-safety-dangling-field
│   └── lifetime-safety-strict
│       ├── lifetime-safety-use-after-scope-moved
│       ├── lifetime-safety-return-stack-addr-moved
│       ├── lifetime-safety-dangling-field-moved
│       └── lifetime-safety-invalidation
├── lifetime-safety-suggestions
│   ├── lifetime-safety-cross-tu-suggestions
│   └── lifetime-safety-intra-tu-suggestions
└── lifetime-safety-validations
    └── lifetime-safety-noescape
```


  Commit: 0e3a96d0ec01e3575674d72c4e23bf98affdca28
      https://github.com/llvm/llvm-project/commit/0e3a96d0ec01e3575674d72c4e23bf98affdca28
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll

  Log Message:
  -----------
  [X86] Add test coverage for #137422 (#182832)


  Commit: 72f5050ae7656a23e9c5f23f6fdb524a0b0bd2d9
      https://github.com/llvm/llvm-project/commit/72f5050ae7656a23e9c5f23f6fdb524a0b0bd2d9
  Author: Vladimir Miloserdov <milosvova at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/IR/OperationSupport.h
    M mlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h

  Log Message:
  -----------
  [mlir][NFC] Remove unused deprecated API wrappers (#182715)

Remove deprecated functions and constructors that have zero callers in
the monorepo: `applyPatternsAndFoldGreedily`, `applyOpPatternsAndFold`,
`NamedAttrList(std::nullopt_t)`, and `OpPrintingFlags(std::nullopt_t)`.

These had FIXME comments requesting their removal.


  Commit: 2da729af35580e98ba9074ec41b22691ddb3fe88
      https://github.com/llvm/llvm-project/commit/2da729af35580e98ba9074ec41b22691ddb3fe88
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A clang/.clang-format-ignore

  Log Message:
  -----------
  Do not format .td files in Clang; NFC (#182075)

We have varying needs for these files. e.g., a diagnostic file is a
different kind of file than compiler options which is different than
attributes which is different than attribute documentation, etc. So
running clang-format over .td files in Clang is not going well in
practice because of how often it reformats things unlike the rest of the
file. This results in a poor new contributor experience because
pre-commit CI tells them the changes are not clang-format clean but we
don't want the changes to be clang-format clean and so a reviewer asks
them to revert and ignore pre-commit CI.

---------

Co-authored-by: Sirraide <aeternalmail at gmail.com>


  Commit: 966a4618b85db0f9c3ba6c0d518356c146cf7ab6
      https://github.com/llvm/llvm-project/commit/966a4618b85db0f9c3ba6c0d518356c146cf7ab6
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll

  Log Message:
  -----------
  [VectorCombine] Support ashr sign-bit extraction (#181998)

This change extends a sign-bit reduction fold introduced earlier. Prior
to it, we only supported LSHR isntructions for sign-bits extraction.
Similar logic can be applied to ASHR and the fold can be generalized.

## Alive2 proofs

| Reduction | == 0 | == -1 / -N | slt 0 | sgt -1 / -N | 
|-----------|------|------------|-------|-------------|
| or | [proof](https://alive2.llvm.org/ce/z/DaSMPt) |
[proof](https://alive2.llvm.org/ce/z/wzR48R) |
[proof](https://alive2.llvm.org/ce/z/rfyr_7) |
[proof](https://alive2.llvm.org/ce/z/MTFFe5) |
| and | [proof](https://alive2.llvm.org/ce/z/PmmpbX) |
[proof](https://alive2.llvm.org/ce/z/7_9hSn) |
[proof](https://alive2.llvm.org/ce/z/wudWY3) |
[proof](https://alive2.llvm.org/ce/z/QZ33KB) |
| umax | [proof](https://alive2.llvm.org/ce/z/gQGnDc) |
[proof](https://alive2.llvm.org/ce/z/dMsoQF) |
[proof](https://alive2.llvm.org/ce/z/QwFbae) |
[proof](https://alive2.llvm.org/ce/z/3dbmy6) |
| umin | [proof](https://alive2.llvm.org/ce/z/Z2pZUQ) |
[proof](https://alive2.llvm.org/ce/z/6FQgGR) |
[proof](https://alive2.llvm.org/ce/z/95-em6) |
[proof](https://alive2.llvm.org/ce/z/PW7c-m) |
| add | [proof](https://alive2.llvm.org/ce/z/FVhuhj) |
[proof](https://alive2.llvm.org/ce/z/h1B9jQ) |
[proof](https://alive2.llvm.org/ce/z/DmiYRr) |
[proof](https://alive2.llvm.org/ce/z/P4WDN5) |


  Commit: eac18e783f034bd294a82cd0e69a7abf73583d28
      https://github.com/llvm/llvm-project/commit/eac18e783f034bd294a82cd0e69a7abf73583d28
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp

  Log Message:
  -----------
  [libc] Update the GPU allocator to work under post-Volta ITS

Summary:
There were several gaps that caused the allocator not to work under
NVIDIA's independent thread scheduling model. The problems (I know of)
are fixed in this commit. Generally this required using correct masks,
synchronizing before a few dependent operations, and overhauling the
allocate function to stick with the existing mask instead of querying
it.

The general idiom here is that at the start we obtain a single mask and
opportunistically use it. Every use must specifically sync this subset.
I.e. query a single time and never change it.

This passes most tests, however I have encountered two issues.
1. A bug in `nvlink` failing to link symbols called in 'free'
2. A deadlock under heavy divergence caused by IPSCCP altering control
   flow.

I will address these later, but for now this makes the *source* correct
so it can be enabled by anyone else if they need it.


  Commit: 9e6a6be8a84f32072e40b27e146fa9076560274e
      https://github.com/llvm/llvm-project/commit/9e6a6be8a84f32072e40b27e146fa9076560274e
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll

  Log Message:
  -----------
  [AMDGPU] Remove AMDGPUArgumentUsageInfo pass (#182490)

`AMDGPUArgumentUsageInfo` provided a per-function map that
`lowerFormalArguments` would write each function's implicit argument
register layout into, and `passSpecialInputs` would read back when
lowering calls to look up the callee's layout. This per-function map is
redundant for all non-entry callees, which already use the same
`FixedABIFunctionInfo` register layout.

GlobalISel already used `FixedABIFunctionInfo` unconditionally. This
change makes SelectionDAG do the same.


  Commit: a78a22356b5acc89ab5f301e47f6bdd94568adb9
      https://github.com/llvm/llvm-project/commit/a78a22356b5acc89ab5f301e47f6bdd94568adb9
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.h
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp

  Log Message:
  -----------
  [MLIR] Migrate AffineDma ops to ODS (NFC) (#182497)

For some historical reasons, seems like we never converted these.


  Commit: 8b36a41d89aea26ffdb75456854022b767c5bf4b
      https://github.com/llvm/llvm-project/commit/8b36a41d89aea26ffdb75456854022b767c5bf4b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/nofpclass-issue182834.ll

  Log Message:
  -----------
  FunctionAttrs: Do not infer top down on functions with no uses (#182839)


  Commit: 5e5e300d07898f788e0151e2d14732cf2170a85e
      https://github.com/llvm/llvm-project/commit/5e5e300d07898f788e0151e2d14732cf2170a85e
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/reduce-or.ll
    M llvm/test/CodeGen/AArch64/reduce-xor.ll
    M llvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i8.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/LoongArch/lasx/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/lsx/rotl-rotr.ll
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-ind8-unscaled.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-scatter-ind8-unscaled.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-addpred.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-mlapred.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512vl-vec-masked-cmp.ll
    M llvm/test/CodeGen/X86/bitcast-and-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-128.ll
    M llvm/test/CodeGen/X86/bitcast-setcc-512.ll
    M llvm/test/CodeGen/X86/bitcast-vector-bool.ll
    M llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
    M llvm/test/CodeGen/X86/combine-multiplies.ll
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/combine-rotates.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/combine-shl.ll
    M llvm/test/CodeGen/X86/combine-sra.ll
    M llvm/test/CodeGen/X86/combine-storetomstore.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/dagcombine-shifts.ll
    M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/test/CodeGen/X86/known-signbits-shl.ll
    M llvm/test/CodeGen/X86/known-signbits-vector.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/mulvi32.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/pmul.ll
    M llvm/test/CodeGen/X86/pmulh.ll
    M llvm/test/CodeGen/X86/pr107423.ll
    M llvm/test/CodeGen/X86/pr161013.ll
    M llvm/test/CodeGen/X86/pr173794.ll
    M llvm/test/CodeGen/X86/pr179489.ll
    M llvm/test/CodeGen/X86/pr35918.ll
    M llvm/test/CodeGen/X86/pr41619.ll
    M llvm/test/CodeGen/X86/pr42727.ll
    M llvm/test/CodeGen/X86/pr45563-2.ll
    M llvm/test/CodeGen/X86/pr45833.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    M llvm/test/CodeGen/X86/promote-cmp.ll
    M llvm/test/CodeGen/X86/promote-vec3.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/rotate-extract-vector.ll
    M llvm/test/CodeGen/X86/sadd_sat_vec.ll
    M llvm/test/CodeGen/X86/sat-add.ll
    M llvm/test/CodeGen/X86/sdiv-exact.ll
    M llvm/test/CodeGen/X86/shrink_vmul.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/sshl_sat_vec.ll
    M llvm/test/CodeGen/X86/ssub_sat_vec.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv-exact.ll
    M llvm/test/CodeGen/X86/undo-mul-and.ll
    M llvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-splat.ll
    M llvm/test/CodeGen/X86/ushl_sat_vec.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
    M llvm/test/CodeGen/X86/vec_int_to_fp.ll
    M llvm/test/CodeGen/X86/vec_minmax_sint.ll
    M llvm/test/CodeGen/X86/vec_minmax_uint.ll
    M llvm/test/CodeGen/X86/vec_smulo.ll
    M llvm/test/CodeGen/X86/vec_umulo.ll
    M llvm/test/CodeGen/X86/vector-compare-all_of.ll
    M llvm/test/CodeGen/X86/vector-compare-any_of.ll
    M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/X86/vector-fshl-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-256.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-mul.ll
    M llvm/test/CodeGen/X86/vector-pcmp.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/CodeGen/X86/vector-reduce-smax.ll
    M llvm/test/CodeGen/X86/vector-reduce-smin.ll
    M llvm/test/CodeGen/X86/vector-reduce-umax.ll
    M llvm/test/CodeGen/X86/vector-reduce-umin.ll
    M llvm/test/CodeGen/X86/vector-rotate-128.ll
    M llvm/test/CodeGen/X86/vector-rotate-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-sub128.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vector-trunc-math.ll
    M llvm/test/CodeGen/X86/vector-trunc-packus.ll
    M llvm/test/CodeGen/X86/vector-trunc-ssat.ll
    M llvm/test/CodeGen/X86/vector-trunc-usat.ll
    M llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
    M llvm/test/CodeGen/X86/vselect.ll

  Log Message:
  -----------
  [SelectionDAG] Fix bug related to demanded bits/elts for BITCAST (#145902)

When we have a BITCAST and the source type is a vector with smaller
elements compared to the destination type, then we need to demand all
the source elements that make up the demanded elts for the result when
doing recursive calls to SimplifyDemandedBits,
SimplifyDemandedVectorElts and SimplifyMultipleUseDemandedBits. Problem
is that those simplifications are allowed to turn non-demanded elements
of a vector into POISON, so unless we demand all source elements that
make up the result there is a risk that the result would be more
poisonous (even for demanded elts) after the simplification.

The patch fixes some bugs in SimplifyMultipleUseDemandedBits and
SimplifyDemandedBits for situations when we did not consider the problem
described above. Now we make sure that we also demand vector elements
that "must not be turned into poison" even if those elements correspond
to bits that does not need to be defined according to the DemandedBits
mask.

Fixes #138513


  Commit: c6ca2a07d343d5b22da349a8dd554707ddc1fa25
      https://github.com/llvm/llvm-project/commit/c6ca2a07d343d5b22da349a8dd554707ddc1fa25
  Author: Swastik Saha <134371044+SwastikSaha at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/UsersManual.rst

  Log Message:
  -----------
  [Docs] Clarify that -w suppresses warnings, not all diagnostics (#182670)

The UsersManual previously stated that -w disables all diagnostics.
However, -w suppresses warning diagnostics only; errors are still
emitted.


  Commit: 92447ed2733855f5e2a37821f23b55b44588a383
      https://github.com/llvm/llvm-project/commit/92447ed2733855f5e2a37821f23b55b44588a383
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M offload/plugins-nextgen/common/src/PluginInterface.cpp

  Log Message:
  -----------
  [Offload] Fix copy-elision warning (#182848)

This fixes a warning about a prohibited copy-elision due to the move of
a temporary object.


  Commit: 595c5bcdc5199244cd2e18c9860427c94f129e9c
      https://github.com/llvm/llvm-project/commit/595c5bcdc5199244cd2e18c9860427c94f129e9c
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/SemaCXX/constexpr-x86-avx512f-builtins.cpp
    A clang/test/SemaCXX/constexpr-x86-avx512fp16-builtins.cpp

  Log Message:
  -----------
  [X86][Clang] Add constexpr support for _mm_min_ss/_mm_max_ss/_mm_min_sd/_mm_max_sd/_mm_min_sh/_mm_max_sh intrinsics (#178029)

- Added boolean IsScalar argument to the helper functions in
InterpBuiltin/ExprConstant
- Made minsh_round_mask, maxsh_round_mask constexpr only for
_MM_FROUND_CUR_DIRECTION rounding mode.
- Added helper function for scalar round mask in
InterpBuiltin/ExprConstant

Resolves #175198


  Commit: 630a4185d4ccecfbf9068dddffe8ae32daa4da5b
      https://github.com/llvm/llvm-project/commit/630a4185d4ccecfbf9068dddffe8ae32daa4da5b
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4141 diagnostic; NFC (#182586)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4141?view=msvc-170

> 'modifier': used more than once

This diagnostic was disabled in e11ce62707c8e0f51fce06097f71a97d02283d7a
due to triggering repeatedly for combinations of __forceinline and
inline. However, local testing shows that this diagnostic is no longer
emitted and so I believe this can be re-enabled.


  Commit: a28755537b41f1d0683fcf53ef09832a2d61670a
      https://github.com/llvm/llvm-project/commit/a28755537b41f1d0683fcf53ef09832a2d61670a
  Author: Matt Stephanson <stephanson.matt at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/test/std/time/time.clock/time.clock.gps/gps_time.ostream.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.tai/tai_time.ostream.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.gps_time.pass.cpp

  Log Message:
  -----------
  [libc++] Fix `gps_time` formatting and related tests (#181560)

- The Standard wording in https://eel.is/c++draft/time.format#13 is similar
  to TAI formatting in that it's equivalent to formatting a `sys_time`
  with a fixed offset. Leap seconds should not be considered.

- Tests need to be adjusted by adding the number of leap seconds between
  the GPS epoch and the tested date, which is 15s for 2010 and 18s for
  2019.

- The TAI and GPS tests using `meow_time<cr::duration<long, ...>>`
  should use `long long` because the offset swill overflow a 32-bit
  signed integer.


  Commit: 1737b61ac86a028f63186d87ba3a9bd8451e3ac7
      https://github.com/llvm/llvm-project/commit/1737b61ac86a028f63186d87ba3a9bd8451e3ac7
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  Re-enable MSVC C4722 diagnostic; NFC (#182845)

>From MSDN:

https://learn.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4722?view=msvc-170

> 'function' : destructor never returns, potential memory leak

This diagnostic was disabled in 24fdbe567638d942fff6b1cf3df3cb4f5adf6823
as not having value for us, but enabling the diagnostic triggers no new
warnings, so I believe it's safe for us to re-enable. It may not be the
most valuable diagnostic, but knowing about non-returning destructors is
still good for code health.


  Commit: 5ea70b62bdfb91f64472dd6473e4880cc41ece4f
      https://github.com/llvm/llvm-project/commit/5ea70b62bdfb91f64472dd6473e4880cc41ece4f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M libcxx/test/benchmarks/spec.gen.py
    M libcxx/utils/ci/lnt/run-benchmarks

  Log Message:
  -----------
  [libc++] Simplify and optimize the run-benchmarks script (#181382)

Instead of configuring and running the benchmark suite once for SPEC and
once for the microbenchmarks, run it only once for everything. This
saves a configuration of the test suite (which includes building Google
Benchmark).

To replicate the functionality we had with --disable-microbenchmarks
(whose goal was mostly to run only SPEC), introduce a --filter argument
that can be used to select exactly which benchmarks are run. This is
simpler and more powerful.

Making this work requires hardcoding the only C++ standard that works
for SPEC (C++17) inside spec.gen.py instead of expecting it to be set
correctly when running the test suite.


  Commit: 817b7f33332e7f03b47fc3d1d6f94e5527635748
      https://github.com/llvm/llvm-project/commit/817b7f33332e7f03b47fc3d1d6f94e5527635748
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/aarch64-scal-to-vec-bitcast-insert.ll
    A llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi-strictfp.ll
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll

  Log Message:
  -----------
  [NFC][AArch64] Split fptoi tests and add scal_to_vec convert tests (#179315)

This patch splits simd-fptoi tests into strictfp and nonstrictfp files
for simplicity and adds tests which will test correct insertion of
bitcasts to certain scalar_to_vector variant which will be introduced in
#172837.


  Commit: 8f5880d3ae4e5dfc748985d90e5413671028aa3e
      https://github.com/llvm/llvm-project/commit/8f5880d3ae4e5dfc748985d90e5413671028aa3e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll

  Log Message:
  -----------
  [X86] lowerV64I8Shuffle - prefer VPERMV3 byte shuffles to OR(PSHUFB,PSHUFB) on VBMI targets (#182852)

Minor improvement for #137422


  Commit: a236331070e94e838495d3fede52f193d709d895
      https://github.com/llvm/llvm-project/commit/a236331070e94e838495d3fede52f193d709d895
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.cpp
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M lldb/source/Plugins/Process/FreeBSDKernel/ThreadFreeBSDKernel.h

  Log Message:
  -----------
  [NFC][lldb][Process/FreeBSDKernel] Reorder class member functions (#182717)


  Commit: 4c795dba0677eae055e6f2fb8efa4008d2a5e24f
      https://github.com/llvm/llvm-project/commit/4c795dba0677eae055e6f2fb8efa4008d2a5e24f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/test/Sema/format-strings.c

  Log Message:
  -----------
  [clang][test] Try to fix Sema/format-strings.c on i686 (#181800)

https://github.com/llvm/llvm-project/pull/180566 did this for 32bit arm,
but this still breaks for us downstream on i686 with:
```
# .---command stderr------------
# | error: 'expected-warning' diagnostics expected but not seen: 
# |   File /builddir/build/BUILD/llvm-project/clang/test/Sema/format-strings.c Line 990: format specifies type 'size_t' (aka '{{.+}}') but the argument has type '_Bool'
# |   File /builddir/build/BUILD/llvm-project/clang/test/Sema/format-strings.c Line 991: format specifies type 'ptrdiff_t' (aka '{{.+}}') but the argument has type '_Bool'
# | 2 errors generated.
# `-----------------------------
```


  Commit: a9645ebadf31114ba9b72f9e1edc58823cf135e6
      https://github.com/llvm/llvm-project/commit/a9645ebadf31114ba9b72f9e1edc58823cf135e6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-debug.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir

  Log Message:
  -----------
  [AMDGPU] Move `advanceBeforeNext` before `advanceToNext` (#182808)

The document of `advanceToNext` says, `advanceBeforeNext` has to be
called first.


  Commit: 222e661c89cfbfd8a6b55e4cd1d0925182655c9d
      https://github.com/llvm/llvm-project/commit/222e661c89cfbfd8a6b55e4cd1d0925182655c9d
  Author: Akram Hany <109467185+akramhany at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/RecordLayoutBuilder.cpp
    A clang/test/Layout/ms-x86-bitfields-overflow.c

  Log Message:
  -----------
  [clang][layout] Fix unsigned char overflow in ms_struct bitfield layout (#181433)

Fixes #161511

When using MS-struct layout rules (`#pragma ms_struct`), Clang produces
incorrect memory layouts when encountering large `_BitInt` bit-fields.
The reason was that `LastBitfieldStorageUnitSize` variable was declared
as `unsigned char`, which caused it to overflow when the values used
with `_BitInt` exceeded `255`, so I changed it from `unsigned char` to
`uint64_t`.

In the added test, we can clearly see that `f2` and `f3` are both packed
in the same 256-bit unit.


  Commit: 0e9880cc04b1025a2a7e860d2f493f1b9396555f
      https://github.com/llvm/llvm-project/commit/0e9880cc04b1025a2a7e860d2f493f1b9396555f
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.h

  Log Message:
  -----------
  [VPlan] Remove verifyLate from VPlanVerifier. NFC (#182799)

We can instead just check if the VPlan has been unrolled.


  Commit: 4f30127f44519e0553fc41ad58c682b390491791
      https://github.com/llvm/llvm-project/commit/4f30127f44519e0553fc41ad58c682b390491791
  Author: hjagasiaAMD <harsha.jagasia at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir

  Log Message:
  -----------
  [AMDGPU] fix eliminateFrameIndex to use SGPR frame index (#178991)

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 426573f1e131367eecdb021d6e4c221a1f3c4b43
      https://github.com/llvm/llvm-project/commit/426573f1e131367eecdb021d6e4c221a1f3c4b43
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    R clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/rocm-device-libs.cl

  Log Message:
  -----------
  clang/AMDGPU: Stop looking for oclc_correctly_rounded_sqrt control libraries (#182858)

These have not done anything in almost a year.


  Commit: 329cd8985d8a2486bb7e7f5d1b5cfe640caed42f
      https://github.com/llvm/llvm-project/commit/329cd8985d8a2486bb7e7f5d1b5cfe640caed42f
  Author: Haoren Wang <43286339+MetalOxideSemi at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    A llvm/test/CodeGen/X86/selectiondag-dbgvalue-null-crash.ll

  Log Message:
  -----------
  [SelectionDAG] Fix null pointer dereference in resolveDanglingDebugInfo (#180425)

Fix crash when Val.getNode() is null by moving ValSDNodeOrder
declaration inside the null check.

The crash occurred when compiling code with debug info containing
aggregate types with nested empty structs.


  Commit: 3215645b8d81bbef7db1d16b88de7ed0288f2274
      https://github.com/llvm/llvm-project/commit/3215645b8d81bbef7db1d16b88de7ed0288f2274
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp

  Log Message:
  -----------
  [AMDGPU] Enable scheduler mfma rewrite stage by default (#180751)

After performance testing, it was determined that the large number of
copies that are inserted outside the loop are more than offset by better
allocation within the loop as a result of the rewrite. Additionally, there is a
minor cleanup of the cost logic.

---------

Co-authored-by: Tony Linthicum <tlinthic at gmail.com>


  Commit: f16162c03c139258e7d282ffa15408b7e79c1e3b
      https://github.com/llvm/llvm-project/commit/f16162c03c139258e7d282ffa15408b7e79c1e3b
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M flang/docs/OpenMP-declare-target.md
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    R flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M mlir/include/mlir/Dialect/OpenMP/Transforms/Passes.td
    M mlir/lib/Dialect/OpenMP/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenMP/Transforms/MarkDeclareTarget.cpp

  Log Message:
  -----------
  [flang][MLIR][NFC] Move MarkDeclareTarget pass form flang to MLIR (#181205)

This patch moves the MarkDeclareTarget pass from flang to MLIR since it
will be used in ClangIR as well.


  Commit: 5a3fdecba6145b38264f2fd187a418bc05bbb751
      https://github.com/llvm/llvm-project/commit/5a3fdecba6145b38264f2fd187a418bc05bbb751
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitcnt-big-integer.ll

  Log Message:
  -----------
  [X86] Add i256/i512 CTPOP expansion on AVX512VPOPCNTDQ targets (#182830)

If we can freely fold the i256/i512 value to the FPU, then we can use
VPOPCNTQ to perform a per-element CTPOP, then perform an expanded
VECREDUCE_ADD (VPMOVQB v4i64/v8i64 to v16i8 with zero uppers - then
VPSADBW to sum the lower v8i8 bits).

Fixes #182829


  Commit: ce2a9cbf1507b0a17c0824769a72772f5541df9d
      https://github.com/llvm/llvm-project/commit/ce2a9cbf1507b0a17c0824769a72772f5541df9d
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/ppc_test_data_class.ll

  Log Message:
  -----------
  [PowerPC] Fix inefficient code for __builtin_ppc_test_data_class (#181420)

emit a more efficient asm for  llvm.ppc.test.data.class.f64


  Commit: 8b9d4719146857042e296f008791483e39983473
      https://github.com/llvm/llvm-project/commit/8b9d4719146857042e296f008791483e39983473
  Author: pzhengqc <55604844+pzhengqc at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Multilib] Expose shadow call stack as multilib flags for RISC-V (#182350)

This allows multilib selection based on shadow call stack for RISC-V.


  Commit: f5f171ebff55d57e9ec4e7e82e694c599c47ccd6
      https://github.com/llvm/llvm-project/commit/f5f171ebff55d57e9ec4e7e82e694c599c47ccd6
  Author: Serafean <Serafean at users.noreply.github.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    A clang/test/Index/cxx17-switch-with-initializer.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [libclang]: visit C++17 switch init statements (#173670)

Modelled after commit 08e18126431878373abfa33136768d0ec7c13def, which
did the same for If statements.

Tested with KDevelop : with a patched clang, initializers in switch
statement get cursors.


  Commit: 239e14baa4c4a1b48d4d7b8b6ac2817c17fa2437
      https://github.com/llvm/llvm-project/commit/239e14baa4c4a1b48d4d7b8b6ac2817c17fa2437
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Add test showing caller/callee SGPR mismatch for inreg args (#182753)

Add a test demonstrating a bug where the caller and callee disagree on
which SGPRs hold user inreg arguments when there are enough to reach the
SGPR0-3 range.

On the callee side, `LowerFormalArguments` marks SGPR0-3 as allocated in
`CCState` before the CC analysis runs. On the caller side, `LowerCall`
adds the scratch resource to `RegsToPass` without marking SGPR0-3 in
`CCState`. This causes `CC_AMDGPU_Func` to assign user inreg args to
SGPR0-3 on the caller side (they appear free) while the callee skips
them.

In the test, the caller writes arg 0 (value 42) to s0, but the callee
reads arg 0 from s16.


  Commit: 1237bd6df05a4777f444677186e4814388916ea9
      https://github.com/llvm/llvm-project/commit/1237bd6df05a4777f444677186e4814388916ea9
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/casting-through-void.c

  Log Message:
  -----------
  [clang-tidy] Fix bugprone-casting-through-void to run only on C++ code (#182844)

This check tells users to use `reinterpret_cast`, which is not possible
in pure C code.


  Commit: 7b4fa711bd22570f38bb95a38801fe9237443a14
      https://github.com/llvm/llvm-project/commit/7b4fa711bd22570f38bb95a38801fe9237443a14
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-02-23 (Mon, 23 Feb 2026)

  Changed paths:
    M .ci/buildbot/worker.py
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    A .ci/green-dragon/bisect.groovy
    A .ci/green-dragon/clang-san-iossim.groovy
    A .ci/green-dragon/clang-stage1-RA-as.groovy
    A .ci/green-dragon/clang-stage1-RA-cmake-incremental.groovy
    A .ci/green-dragon/clang-stage1-RA-expensive.groovy
    A .ci/green-dragon/clang-stage1-RA.groovy
    A .ci/green-dragon/clang-stage2-Rthinlto.groovy
    A .ci/green-dragon/clang-stage2-cmake-RgSan.groovy
    A .ci/green-dragon/clang-stage2-cmake-RgTSan.groovy
    A .ci/green-dragon/lnt-ctmark-aarch64-O0-g.groovy
    A .ci/green-dragon/lnt-ctmark-aarch64-O3-flto.groovy
    A .ci/green-dragon/lnt-ctmark-aarch64-Os.groovy
    A .ci/green-dragon/lnt-ctmark-aarch64-Oz.groovy
    A .ci/green-dragon/relay-clang-stage2-sanitizers.groovy
    A .ci/green-dragon/relay-clang-stage2-thinlto.groovy
    A .ci/green-dragon/relay-lnt-ctmark.groovy
    A .ci/green-dragon/relay-test-suite-verify-machineinstrs.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-aarch64-O0-g.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-aarch64-O3.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-aarch64-globalisel-O0-g.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-x86_64-O0-g.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-x86_64-O3.groovy
    A .ci/green-dragon/test-suite-verify-machineinstrs-x86_64h-O3.groovy
    M .ci/premerge_advisor_explain.py
    M .github/new-prs-labeler.yml
    M .github/renovate.json
    A .github/workflows/build-libc-container.yml
    M .github/workflows/commit-access-review.py
    M .github/workflows/commit-access-review.yml
    M .github/workflows/commit-create-issue.py
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    A .github/workflows/containers/libc/Dockerfile
    M .github/workflows/docs.yml
    M .github/workflows/ids-check.yml
    M .github/workflows/issue-release-workflow.yml
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M .github/workflows/libcxx-check-generated-files.yml
    M .github/workflows/libcxx-run-benchmarks.yml
    A .github/workflows/lldb-pylint-action.yml
    A .github/workflows/prune-branches.yml
    A .github/workflows/prune-unused-branches.py
    M .github/workflows/release-asset-audit.yml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-tasks.yml
    M .gitignore
    M .mailmap
    M SECURITY.md
    M bolt/docs/CommandLineArgumentReference.md
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/Hugify.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/PLTCall.cpp
    M bolt/lib/Passes/PatchEntries.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/runtime/instr.cpp
    M bolt/runtime/sys_aarch64.h
    A bolt/test/AArch64/bti-inline-dbg.s
    A bolt/test/AArch64/bti-inline.s
    A bolt/test/AArch64/bti-long-jmp-ignored.s
    A bolt/test/AArch64/bti-long-jmp.s
    A bolt/test/AArch64/bti-note-unused.test
    A bolt/test/AArch64/bti-patch-entries.s
    A bolt/test/AArch64/compare-and-branch-inversion.S
    A bolt/test/AArch64/compare-and-branch-reorder-blocks.S
    A bolt/test/AArch64/compare-and-branch-split-functions.S
    A bolt/test/AArch64/compare-and-branch-unsupported.S
    A bolt/test/AArch64/constant-island-reference.s
    R bolt/test/AArch64/inline-bti-dbg.s
    R bolt/test/AArch64/inline-bti.s
    R bolt/test/AArch64/long-jmp-bti-ignored.s
    R bolt/test/AArch64/long-jmp-bti.s
    R bolt/test/AArch64/no-bti-note.test
    M bolt/test/X86/lit.local.cfg
    A bolt/test/X86/phdr-load-order.test
    A bolt/test/bolt-reserved.test
    A bolt/test/icf-hot-text-mover.c
    M bolt/test/lit.local.cfg
    A bolt/test/runtime/AArch64/bti-hugify.c
    A bolt/test/runtime/AArch64/bti-instrumentation-ind-call.c
    A bolt/test/runtime/AArch64/bti-long-jmp-plt.c
    R bolt/test/runtime/AArch64/instrumentation-ind-call-bti.c
    M bolt/test/runtime/AArch64/instrumentation-ind-call.c
    R bolt/test/runtime/AArch64/long-jmp-bti-plt.c
    A bolt/test/runtime/X86/plt-call.c
    M clang-tools-extra/Maintainers.rst
    M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
    M clang-tools-extra/clang-doc/Generators.cpp
    M clang-tools-extra/clang-doc/Generators.h
    M clang-tools-extra/clang-doc/assets/head-template.mustache
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
    M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
    M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/UnsafeToAllowExceptionsCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/UnsafeToAllowExceptionsCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.h
    M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.h
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.h
    A clang-tools-extra/clang-tidy/modernize/UseStructuredBindingCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStructuredBindingCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
    M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
    M clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
    M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    A clang-tools-extra/clang-tidy/readability/TrailingCommaCheck.cpp
    A clang-tools-extra/clang-tidy/readability/TrailingCommaCheck.h
    M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.h
    M clang-tools-extra/clang-tidy/rename_check.py
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
    M clang-tools-extra/clang-tidy/utils/FixItHintUtils.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.h
    M clang-tools-extra/clang-tidy/utils/Matchers.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/ClangdLSPServer.cpp
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/DumpAST.cpp
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/FindSymbols.h
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/ScanningProjectModules.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/TidyProvider.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/Background.cpp
    M clang-tools-extra/clangd/index/IndexAction.cpp
    M clang-tools-extra/clangd/index/IndexAction.h
    M clang-tools-extra/clangd/index/remote/Client.cpp
    M clang-tools-extra/clangd/index/remote/monitor/Monitor.cpp
    M clang-tools-extra/clangd/index/remote/server/Server.cpp
    M clang-tools-extra/clangd/indexer/IndexerMain.cpp
    M clang-tools-extra/clangd/test/call-hierarchy.test
    A clang-tools-extra/clangd/test/symbol-tags.test
    M clang-tools-extra/clangd/test/symbols.test
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
    M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
    M clang-tools-extra/clangd/unittests/DumpASTTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/IndexActionTests.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-reorder-fields.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-escape.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-to-allow-exceptions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/flp30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-goto.rst
    M clang-tools-extra/docs/clang-tidy/checks/fuchsia/multiple-inheritance.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/readability-casting.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/avoid-c-arrays.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/avoid-goto.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/braces-around-statements.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/deprecated-headers.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/exception-baseclass.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/explicit-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/function-size.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/ignored-remove-result.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/invalid-access-moved.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/move-const-arg.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/multiway-paths-covered.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/named-parameter.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/new-delete-operators.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/no-array-decay.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/no-assembler.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/no-malloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/noexcept-move.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/signed-bitwise.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/special-member-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/static-assert.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/undelegated-constructor.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/uppercase-literal-suffix.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-auto.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-emplace.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-equals-default.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-equals-delete.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-noexcept.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-nullptr.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/use-override.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/vararg.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/type-switch-case-types.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/use-vector-utils.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/pass-by-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/redundant-void-arg.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-string-view.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-structured-binding.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/faster-string-find.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/string-view-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/magic-numbers.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/trailing-comma.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/docs/index.rst
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/Record.cpp
    M clang-tools-extra/include-cleaner/tool/CMakeLists.txt
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment-cxx-11-inherited-constructors.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/casting-through-void.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-treat-functions-without-specification-as-throwing.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses-cmdline.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-to-allow-exceptions-precpp17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-to-allow-exceptions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-vararg.cpp
    A clang-tools-extra/test/clang-tidy/checkers/llvm/type-switch-case-types.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
    A clang-tools-extra/test/clang-tidy/checkers/llvm/use-vector-utils.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/concat-nested-namespaces/modernize-concat-nested-namespaces.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/pass-by-value/header-with-fix.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/pass-by-value/header.h
    A clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-structured-binding/fake_std_pair_tuple.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-header.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-ignore-macros.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-multi-fixes.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.c
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-custom-view.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-ignored.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-structured-binding.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/Inputs/unnecessary-value-param/header.h
    M clang-tools-extra/test/clang-tidy/checkers/performance/enum-size.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
    A clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation-vectorlike-classes.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-header.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-c23.c
    A clang-tools-extra/test/clang-tidy/checkers/readability/suspicious-call-argument-option.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/suspicious-call-argument.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma-cxx11.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma-cxx20-remove.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma-remove.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma-wrong-config.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma.c
    A clang-tools-extra/test/clang-tidy/checkers/readability/trailing-comma.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
    M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
    M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
    A clang-tools-extra/unittests/clang-tidy/LexerUtilsTest.cpp
    A clang/.clang-format-ignore
    M clang/AreaTeamMembers.txt
    A clang/Maintainers.md
    R clang/Maintainers.rst
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_enums.py
    M clang/bindings/python/tests/cindex/test_location.py
    M clang/bindings/python/tests/cindex/test_source_range.py
    M clang/cmake/caches/VectorEngine.cmake
    A clang/cmake/caches/cross-linux-toolchain.cmake
    M clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dylib.cmake
    M clang/docs/APINotes.rst
    M clang/docs/AddressSanitizer.rst
    M clang/docs/BoundsSafety.rst
    M clang/docs/CMakeLists.txt
    M clang/docs/ClangFormatStyleOptions.rst
    A clang/docs/ClangIRCleanupAndEHDesign.md
    A clang/docs/LLVMExceptionHandlingCodeGen.rst
    M clang/docs/LanguageExtensions.rst
    A clang/docs/Maintainers.md
    R clang/docs/Maintainers.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/OpenMPSupport.rst
    A clang/docs/OverflowBehaviorTypes.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SafeBuffers.rst
    M clang/docs/SanitizerSpecialCaseList.rst
    M clang/docs/SourceBasedCodeCoverage.rst
    M clang/docs/StandardCPlusPlusModules.rst
    A clang/docs/StructureProtection.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/index.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/CXXRecordDeclDefinitionBits.def
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclObjCCommon.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/HLSLResource.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/MovedLoans.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
    M clang/include/clang/Analysis/CFG.h
    A clang/include/clang/Analysis/CFGBackEdges.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
    A clang/include/clang/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
    M clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    M clang/include/clang/Analysis/Scalable/Model/EntityId.h
    M clang/include/clang/Analysis/Scalable/Model/EntityIdTable.h
    A clang/include/clang/Analysis/Scalable/Model/EntityLinkage.h
    M clang/include/clang/Analysis/Scalable/Model/EntityName.h
    A clang/include/clang/Analysis/Scalable/Model/PrivateFieldNames.def
    M clang/include/clang/Analysis/Scalable/Model/SummaryName.h
    A clang/include/clang/Analysis/Scalable/Serialization/JSONFormat.h
    A clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    A clang/include/clang/Analysis/Scalable/Serialization/SerializationFormatRegistry.h
    A clang/include/clang/Analysis/Scalable/TUSummary/EntitySummary.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.h
    M clang/include/clang/Analysis/Scalable/TUSummary/TUSummaryBuilder.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticCommentKinds.td
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/ObjCRuntime.h
    M clang/include/clang/Basic/OffloadArch.h
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/SourceLocation.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TargetOSMacros.def
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TypeNodes.td
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/CIR/ABIArgInfo.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    A clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    A clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.h
    A clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.td
    M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
    M clang/include/clang/CIR/Interfaces/CMakeLists.txt
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
    M clang/include/clang/DependencyScanning/ModuleDepCollector.h
    M clang/include/clang/Driver/CommonArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Driver/SyclInstallationDetector.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Driver/Types.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Index/IndexSymbol.h
    M clang/include/clang/Lex/Lexer.h
    M clang/include/clang/Lex/ModuleMap.h
    M clang/include/clang/Lex/PPCallbacks.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaAMDGPU.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ModuleFile.h
    M clang/include/clang/Serialization/TypeBitCodes.def
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
    M clang/include/clang/Tooling/DependencyScanningTool.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpHelpers.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/MemberPointer.cpp
    M clang/lib/AST/ByteCode/MemberPointer.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/PrimType.h
    M clang/lib/AST/ByteCode/State.cpp
    M clang/lib/AST/ByteCode/State.h
    M clang/lib/AST/CommentSema.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtOpenACC.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/ASTMatchers/ASTMatchFinder.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/Analysis/CFG.cpp
    A clang/lib/Analysis/CFGBackEdges.cpp
    M clang/lib/Analysis/CMakeLists.txt
    M clang/lib/Analysis/CloneDetection.cpp
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Dataflow.h
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    A clang/lib/Analysis/LifetimeSafety/MovedLoans.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/Serialization/JSONFormat.cpp
    A clang/lib/Analysis/Scalable/Serialization/SerializationFormatRegistry.cpp
    A clang/lib/Analysis/Scalable/TUSummary/TUSummaryBuilder.cpp
    M clang/lib/Analysis/ThreadSafety.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/OperatorPrecedence.cpp
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/Mips.cpp
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    A clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/lib/CIR/CodeGen/CIRGenCUDANV.cpp
    A clang/lib/CIR/CodeGen/CIRGenCUDARuntime.cpp
    A clang/lib/CIR/CodeGen/CIRGenCUDARuntime.h
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenClass.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenDeclCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/lib/CIR/CodeGen/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDataLayout.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/TargetLoweringInfo.h
    A clang/lib/CIR/Interfaces/ASTAttrInterfaces.cpp
    M clang/lib/CIR/Interfaces/CMakeLists.txt
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/DirectX.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/DependencyScanningService.cpp
    M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.h
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.cpp
    M clang/lib/Driver/ToolChains/Arch/PPC.cpp
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.h
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Hexagon.h
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/SYCL.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/LayoutOverrideSource.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/__clang_cuda_complex_builtins.h
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Headers/openmp_wrappers/complex
    M clang/lib/Headers/openmp_wrappers/complex.h
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Headers/sifive_vector.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Index/IndexSymbol.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Interpreter/InterpreterUtils.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/CMakeLists.txt
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    A clang/lib/Parse/ParseReflect.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    R clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/OpaqueSTLFunctionsModeling.cpp
    A clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    A clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    M clang/lib/Tooling/ASTDiff/ASTDiff.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/APINotes/Inputs/Headers/Fields.apinotes
    M clang/test/APINotes/Inputs/Headers/Fields.h
    M clang/test/APINotes/Inputs/Headers/Methods.apinotes
    M clang/test/APINotes/Inputs/Headers/Methods.h
    M clang/test/APINotes/fields.cpp
    M clang/test/APINotes/methods.cpp
    M clang/test/AST/ByteCode/builtin-align-cxx.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    A clang/test/AST/ByteCode/builtin-object-size-codegen.c
    M clang/test/AST/ByteCode/builtin-object-size-codegen.cpp
    M clang/test/AST/ByteCode/builtins.c
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/complex.c
    M clang/test/AST/ByteCode/complex.cpp
    A clang/test/AST/ByteCode/constexpr-steps.cpp
    M clang/test/AST/ByteCode/constexpr.c
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx26.cpp
    M clang/test/AST/ByteCode/floats.cpp
    M clang/test/AST/ByteCode/functions.cpp
    A clang/test/AST/ByteCode/gh176549.cpp
    M clang/test/AST/ByteCode/intap.cpp
    M clang/test/AST/ByteCode/invalid.cpp
    A clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
    M clang/test/AST/ByteCode/memberpointers.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    A clang/test/AST/ByteCode/object-size-flex-array.c
    A clang/test/AST/ByteCode/pass-object-size.c
    M clang/test/AST/ByteCode/placement-new.cpp
    M clang/test/AST/ByteCode/records.cpp
    M clang/test/AST/ByteCode/vectors.cpp
    M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    A clang/test/AST/HLSL/Texture2D-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    A clang/test/AST/HLSL/ast-dump-availability-attr.hlsl
    M clang/test/AST/HLSL/matrix-constructors.hlsl
    A clang/test/AST/HLSL/matrix-elementexpr-tree-transform.hlsl
    M clang/test/AST/HLSL/matrix-general-initializer.hlsl
    A clang/test/AST/HLSL/matrix-member-access-scalar.hlsl
    A clang/test/AST/HLSL/matrix-member-access-swizzle-ast-dump-json.hlsl
    A clang/test/AST/HLSL/matrix-member-access-swizzle-ast-print.hlsl
    A clang/test/AST/HLSL/matrix-member-access-swizzle.hlsl
    A clang/test/AST/HLSL/pch_with_matrix_element_accessor.hlsl
    M clang/test/AST/ast-dump-attr-json.cpp
    M clang/test/AST/ast-dump-decl-stmts.cpp
    A clang/test/AST/ast-print-overflow-behavior.cpp
    M clang/test/AST/ms-constexpr-new.cpp
    A clang/test/AST/overflow-behavior-keywords-ast.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    A clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-cxx-std-suppression.h
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/analyzer-enabled-checkers.c
    M clang/test/Analysis/auto-obj-dtors-cfg-output.cpp
    M clang/test/Analysis/builtin_bitcast.cpp
    A clang/test/Analysis/cfg-assignment-eval-order.cpp
    M clang/test/Analysis/concrete-address.c
    A clang/test/Analysis/diagnostics/opaque-stl-functions-modeling.cpp
    M clang/test/Analysis/dtor.cpp
    A clang/test/Analysis/exprwithcleanups-lifetime-marker-cfg.cpp
    M clang/test/Analysis/fixed-address-notes.c
    A clang/test/Analysis/indirect-goto-basics.c
    M clang/test/Analysis/lifetime-cfg-output.cpp
    M clang/test/Analysis/misc-ps-eager-assume.m
    M clang/test/Analysis/misc-ps-region-store.cpp
    M clang/test/Analysis/misc-ps.m
    M clang/test/Analysis/missing-bind-temporary.cpp
    M clang/test/Analysis/pr22954.c
    M clang/test/Analysis/ptr-arith.c
    M clang/test/Analysis/scopes-cfg-output.cpp
    M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
    A clang/test/Analysis/store-union-aggregates.c
    M clang/test/Analysis/suppress-dereferences-from-any-address-space.c
    A clang/test/Analysis/suppress-namespace-redecl-core.cpp
    A clang/test/Analysis/suppress-namespace-redecl-webkit.cpp
    A clang/test/Analysis/switch-basics.c
    A clang/test/Analysis/unconditional-va_arg.c
    M clang/test/Analysis/uninit-vals.cpp
    A clang/test/Analysis/uninitialized-branch.c
    M clang/test/C/C2y/n3369.c
    A clang/test/C/C2y/n3605.c
    A clang/test/C/C2y/n3605_1.c
    A clang/test/C/C2y/n3605_2.c
    R clang/test/CIR/CodeGen/X86/prefetchw-builtin.c
    A clang/test/CIR/CodeGen/address-of.cpp
    M clang/test/CIR/CodeGen/agg-expr-lvalue.c
    A clang/test/CIR/CodeGen/alloc-size.c
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/assign-operator.cpp
    M clang/test/CIR/CodeGen/atomic-scoped.c
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    A clang/test/CIR/CodeGen/builtin-bit-cast.cpp
    A clang/test/CIR/CodeGen/builtin-floating-point.c
    A clang/test/CIR/CodeGen/builtin-memchr.c
    A clang/test/CIR/CodeGen/builtins-elementwise.c
    A clang/test/CIR/CodeGen/builtins-x86.c
    M clang/test/CIR/CodeGen/call-via-class-member-funcptr.cpp
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    A clang/test/CIR/CodeGen/clear-cache.c
    M clang/test/CIR/CodeGen/complex.cpp
    M clang/test/CIR/CodeGen/compound_literal.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/cxx-conversion-operators.cpp
    M clang/test/CIR/CodeGen/cxx-rewritten-binary-operator.cpp
    M clang/test/CIR/CodeGen/cxx-special-member-attr.cpp
    A clang/test/CIR/CodeGen/default-func-attrs-cmd-line.cpp
    M clang/test/CIR/CodeGen/derived-to-base.cpp
    M clang/test/CIR/CodeGen/dtors.cpp
    M clang/test/CIR/CodeGen/dynamic-cast-exact.cpp
    M clang/test/CIR/CodeGen/embed-expr.c
    M clang/test/CIR/CodeGen/forrange.cpp
    M clang/test/CIR/CodeGen/global-array-dtor.cpp
    M clang/test/CIR/CodeGen/global-init.cpp
    M clang/test/CIR/CodeGen/goto.cpp
    M clang/test/CIR/CodeGen/if.cpp
    M clang/test/CIR/CodeGen/inline-attributes.cpp
    M clang/test/CIR/CodeGen/inline-cxx-func.cpp
    A clang/test/CIR/CodeGen/integer-overflow.c
    M clang/test/CIR/CodeGen/label-values.c
    M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/libc.c
    M clang/test/CIR/CodeGen/loop.cpp
    A clang/test/CIR/CodeGen/misc-attrs.cpp
    M clang/test/CIR/CodeGen/new.cpp
    A clang/test/CIR/CodeGen/no-builtin-attr-automatic.cpp
    A clang/test/CIR/CodeGen/no-builtin-attr.cpp
    A clang/test/CIR/CodeGen/no-odr-use.cpp
    A clang/test/CIR/CodeGen/noreturn.cpp
    A clang/test/CIR/CodeGen/offload-convergent-attr.cu
    A clang/test/CIR/CodeGen/optsize-func-attr.cpp
    M clang/test/CIR/CodeGen/pack-indexing.cpp
    M clang/test/CIR/CodeGen/paren-init-list.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func-cmp.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    A clang/test/CIR/CodeGen/pred-info-builtins.c
    A clang/test/CIR/CodeGen/ret-attrs.cpp
    A clang/test/CIR/CodeGen/save-reg-params-func-attr.cpp
    A clang/test/CIR/CodeGen/side-effect.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    A clang/test/CIR/CodeGen/static-local.cpp
    M clang/test/CIR/CodeGen/string-literals.cpp
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/template-specialization.cpp
    M clang/test/CIR/CodeGen/temporary-materialization.cpp
    M clang/test/CIR/CodeGen/ternary.cpp
    A clang/test/CIR/CodeGen/trap-func-name-attr.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp
    M clang/test/CIR/CodeGen/try-catch.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/CodeGen/var-arg-aggregate.c
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp
    M clang/test/CIR/CodeGen/vtt.cpp
    A clang/test/CIR/CodeGen/zero-call-used-regs-func-attr.cpp
    M clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceIntrin.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceMinMaxIntrin.c
    A clang/test/CIR/CodeGenBuiltins/X86/avx512-select-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512fp16-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/avx512vbmi2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlbf16-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlfp16-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/cmp-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
    A clang/test/CIR/CodeGenBuiltins/X86/prefetchw-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/rd-builtins.c
    M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
    A clang/test/CIR/CodeGenBuiltins/builtin-rotate.c
    A clang/test/CIR/CodeGenBuiltins/builtin-setjmp-longjmp.c
    A clang/test/CIR/CodeGenBuiltins/builtin-structured-binding-size.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-trivally-copyable.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-types-compatible.c
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_new_delete.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    A clang/test/CIR/CodeGenCUDA/Inputs/cuda.h
    A clang/test/CIR/CodeGenCUDA/filter-decl.cu
    A clang/test/CIR/CodeGenCUDA/kernel-call.cu
    A clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
    A clang/test/CIR/CodeGenCUDA/nvptx-basic.cu
    A clang/test/CIR/CodeGenHLSL/matrix-element-expr-load.hlsl
    M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenMP/not-yet-implemented.c
    A clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
    M clang/test/CIR/CodeGenOpenMP/parallel.c
    M clang/test/CIR/IR/atomic.cir
    A clang/test/CIR/IR/cleanup-scope.cir
    A clang/test/CIR/IR/eh-flat.cir
    M clang/test/CIR/IR/global-var-linkage.cir
    M clang/test/CIR/IR/invalid-atomic.cir
    A clang/test/CIR/IR/invalid-eh-flat.cir
    A clang/test/CIR/IR/invalid-linkage.cir
    A clang/test/CIR/IR/invalid-static-local.cir
    M clang/test/CIR/IR/invalid-struct.cir
    M clang/test/CIR/IR/invalid-try-catch.cir
    A clang/test/CIR/IR/libc-memchr.cir
    M clang/test/CIR/IR/method-attr.cir
    A clang/test/CIR/IR/static-local.cir
    M clang/test/CIR/IR/try-catch.cir
    M clang/test/CIR/Lowering/array.cpp
    A clang/test/CIR/Lowering/global-var-linkage.cir
    A clang/test/CIR/Transforms/flatten-cleanup-scope-multi-exit.cir
    A clang/test/CIR/Transforms/flatten-cleanup-scope-nyi.cir
    A clang/test/CIR/Transforms/flatten-cleanup-scope-simple.cir
    M clang/test/CIR/func-simple.cpp
    M clang/test/CXX/drs/cwg0xx.cpp
    M clang/test/CXX/drs/cwg10xx.cpp
    M clang/test/CXX/drs/cwg11xx.cpp
    M clang/test/CXX/drs/cwg13xx.cpp
    M clang/test/CXX/drs/cwg14xx.cpp
    M clang/test/CXX/drs/cwg15xx.cpp
    M clang/test/CXX/drs/cwg16xx.cpp
    A clang/test/CXX/drs/cwg1736.cpp
    M clang/test/CXX/drs/cwg17xx.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/drs/cwg19xx.cpp
    M clang/test/CXX/drs/cwg1xx.cpp
    A clang/test/CXX/drs/cwg2026.cpp
    M clang/test/CXX/drs/cwg20xx.cpp
    M clang/test/CXX/drs/cwg22xx.cpp
    M clang/test/CXX/drs/cwg23xx.cpp
    A clang/test/CXX/drs/cwg2406.cpp
    M clang/test/CXX/drs/cwg24xx.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    M clang/test/CXX/drs/cwg27xx.cpp
    A clang/test/CXX/drs/cwg2881.cpp
    M clang/test/CXX/drs/cwg28xx.cpp
    M clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/CXX/drs/cwg2xx.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    A clang/test/CXX/drs/cwg329.cpp
    A clang/test/CXX/drs/cwg390.cpp
    M clang/test/CXX/drs/cwg3xx.cpp
    M clang/test/CXX/drs/cwg4xx.cpp
    M clang/test/CXX/drs/cwg5xx.cpp
    M clang/test/CXX/drs/cwg6xx.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    A clang/test/CXX/drs/cwg98.cpp
    M clang/test/CXX/drs/cwg9xx.cpp
    M clang/test/ClangScanDeps/P1689.cppm
    M clang/test/ClangScanDeps/header_stat_before_open.m
    M clang/test/ClangScanDeps/headerwithdirname.cpp
    M clang/test/ClangScanDeps/headerwithdirnamefollowedbyinclude.cpp
    M clang/test/ClangScanDeps/macro-expansions.cpp
    A clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
    M clang/test/ClangScanDeps/modules.cpp
    A clang/test/ClangScanDeps/prune-scanning-modules.m
    M clang/test/ClangScanDeps/regular_cdb.cpp
    M clang/test/ClangScanDeps/relative_directory.cpp
    M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
    M clang/test/ClangScanDeps/target-filename.cpp
    M clang/test/ClangScanDeps/vfsoverlay.cpp
    M clang/test/CodeCompletion/included-files.cpp
    A clang/test/CodeCompletion/objc-cast-parenthesized-expr.m
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    A clang/test/CodeGen/AArch64/neon/fullfp16.c
    A clang/test/CodeGen/AArch64/neon/intrinsics.c
    M clang/test/CodeGen/AArch64/v8.2a-fp16-intrinsics.c
    M clang/test/CodeGen/AMDGPU/amdgpu-atomic-float.c
    M clang/test/CodeGen/AMDGPU/full-bf16.c
    A clang/test/CodeGen/ARM/build-attributes.c
    A clang/test/CodeGen/Mips/musttail-forward-declaration.c
    A clang/test/CodeGen/Mips/musttail-pic.c
    A clang/test/CodeGen/Mips/musttail-visibility.c
    A clang/test/CodeGen/Mips/musttail-weak.c
    A clang/test/CodeGen/Mips/musttail.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/RISCV/math-builtins.c
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbc.c
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbkc.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/non-overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/non-policy/overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/non-overloaded/vwabdau.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabd.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabdu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vabs.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vwabda.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/zvabd/policy/overloaded/vwabdau.c
    M clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M clang/test/CodeGen/SystemZ/systemz-ppa2.c
    A clang/test/CodeGen/WebAssembly/builtins-table-externref.c
    A clang/test/CodeGen/WebAssembly/builtins-table-funcref.c
    R clang/test/CodeGen/WebAssembly/builtins-table.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/amdgpu-abi-version.c
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    M clang/test/CodeGen/arm_acle.c
    M clang/test/CodeGen/attr-counted-by-pr88931.c
    M clang/test/CodeGen/attr-ifunc.c
    M clang/test/CodeGen/attr-ifunc.cpp
    A clang/test/CodeGen/attr-no-outline.c
    M clang/test/CodeGen/builtin-counted-by-ref.c
    M clang/test/CodeGen/builtin-rotate.c
    M clang/test/CodeGen/builtins-arm64.c
    M clang/test/CodeGen/builtins-extended-image.c
    M clang/test/CodeGen/builtins-image-load.c
    M clang/test/CodeGen/builtins-nvptx-ptx60.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/builtins.c
    A clang/test/CodeGen/compound-assign-atomic-bool.c
    M clang/test/CodeGen/denormalfpmode-f32.c
    M clang/test/CodeGen/denormalfpmode.c
    M clang/test/CodeGen/ext-int-cc.c
    M clang/test/CodeGen/fp-function-attrs.cpp
    M clang/test/CodeGen/hexagon-linux-vararg.c
    M clang/test/CodeGen/ifunc.c
    A clang/test/CodeGen/mangle-ms-overflow-behavior.cpp
    M clang/test/CodeGen/math-builtins-long.c
    M clang/test/CodeGen/nvptx_attributes.c
    A clang/test/CodeGen/overflow-behavior-types-extensions.c
    A clang/test/CodeGen/overflow-behavior-types-operators.cpp
    A clang/test/CodeGen/overflow-behavior-types-promotions.cpp
    A clang/test/CodeGen/overflow-behavior-types-scl.c
    A clang/test/CodeGen/overflow-behavior-types.c
    A clang/test/CodeGen/overflow-behavior-types.cpp
    M clang/test/CodeGen/paren-list-agg-init.cpp
    A clang/test/CodeGen/pragma-export.c
    A clang/test/CodeGen/pragma-export.cpp
    M clang/test/CodeGen/ptrauth-intrinsics.c
    A clang/test/CodeGen/riscv-be-data-layout.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    A clang/test/CodeGen/stack-protector-vars.cpp
    M clang/test/CodeGen/target-addrspace.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGen/ubsan-function-sugared.cpp
    M clang/test/CodeGen/ubsan-function.cpp
    A clang/test/CodeGen/zos-pragmas.c
    A clang/test/CodeGen/zos-pragmas.cpp
    M clang/test/CodeGenCUDA/amdgpu-bf16.cu
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/CodeGenCUDA/flush-denormals.cu
    M clang/test/CodeGenCUDA/link-builtin-bitcode-denormal-fp-mode.cu
    M clang/test/CodeGenCUDA/propagate-attributes.cu
    M clang/test/CodeGenCUDA/spirv-amdgcn-bf16.cu
    M clang/test/CodeGenCXX/amdgcn-automatic-variable.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/builtins.cpp
    M clang/test/CodeGenCXX/control-flow-in-stmt-expr.cpp
    M clang/test/CodeGenCXX/cxx2a-consteval.cpp
    M clang/test/CodeGenCXX/cxx2a-destroying-delete.cpp
    A clang/test/CodeGenCXX/destructor-dead-on-return.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/exceptions-seh.cpp
    M clang/test/CodeGenCXX/externc-ifunc-resolver.cpp
    M clang/test/CodeGenCXX/inheriting-constructor.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors2.cpp
    A clang/test/CodeGenCXX/pfp-attribute-disable.cpp
    A clang/test/CodeGenCXX/pfp-coerce.cpp
    A clang/test/CodeGenCXX/pfp-load-store.cpp
    A clang/test/CodeGenCXX/pfp-member-pointer-offsetof.cpp
    A clang/test/CodeGenCXX/pfp-memcpy.cpp
    A clang/test/CodeGenCXX/pfp-null-init.cpp
    A clang/test/CodeGenCXX/pfp-struct-gep.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    A clang/test/CodeGenCXX/reflection-mangle-itanium.cpp
    A clang/test/CodeGenCXX/reflection-mangle-ms.cpp
    A clang/test/CodeGenCXX/sanitize-trap-loop.cpp
    M clang/test/CodeGenCXX/template-cxx20.cpp
    A clang/test/CodeGenCXX/tmp-md-nodes3.cpp
    M clang/test/CodeGenCXX/vtt-address-space.cpp
    A clang/test/CodeGenCXX/zos-typename.cpp
    M clang/test/CodeGenCoroutines/coro-await-elidable.cpp
    M clang/test/CodeGenHIP/amdgpu-barrier-type.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-cooperative-atomics-templated.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx1250-load-monitor-templated.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    M clang/test/CodeGenHIP/builtins-make-buffer-rsrc.hip
    M clang/test/CodeGenHIP/hip_weak_alias.cpp
    M clang/test/CodeGenHIP/printf.cpp
    M clang/test/CodeGenHIP/printf_nonhostcall.cpp
    M clang/test/CodeGenHIP/sanitize-undefined-null.hip
    M clang/test/CodeGenHIP/spirv-amdgcn-ballot.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl
    M clang/test/CodeGenHLSL/basic_types.hlsl
    A clang/test/CodeGenHLSL/builtins/WavePrefixCountBits.hlsl
    A clang/test/CodeGenHLSL/builtins/WavePrefixProduct.hlsl
    A clang/test/CodeGenHLSL/builtins/WavePrefixSum.hlsl
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/distance.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    A clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/length.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/max-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/min-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/pow-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/reflect.hlsl
    M clang/test/CodeGenHLSL/builtins/refract.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/smoothstep.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    A clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
    A clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
    A clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-load.hlsl
    A clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-store.hlsl
    A clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
    A clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
    A clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-load.hlsl
    A clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-store.hlsl
    A clang/test/CodeGenHLSL/matrix_types.hlsl
    A clang/test/CodeGenHLSL/resources-declared-only-once.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-methods.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-Sample.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-SampleBias.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-SampleCmp.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-SampleCmpLevelZero.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-SampleGrad.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2D-SampleLevel.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_geps.hlsl
    A clang/test/CodeGenHLSL/resources/cbuffer_matrix_align.hlsl
    M clang/test/CodeGenHLSL/resources/default_cbuffer_with_layout.hlsl
    M clang/test/CodeGenHLSL/semantics/semantic.explicit-mix-builtin.vs.hlsl
    A clang/test/CodeGenHLSL/semantics/semantic.nested.vs.hlsl
    A clang/test/CodeGenHLSL/sgep/array_load.hlsl
    A clang/test/CodeGenHLSL/sgep/array_store.hlsl
    A clang/test/CodeGenHLSL/sgep/load_global.hlsl
    A clang/test/CodeGenHLSL/sgep/object_method.hlsl
    A clang/test/CodeGenObjC/attr-no-outline.m
    A clang/test/CodeGenObjCXX/arc-lifetime-rvalue-ref-binding.mm
    M clang/test/CodeGenObjCXX/objc-struct-cxx-abi.mm
    M clang/test/CodeGenObjCXX/ptrauth-struct-cxx-abi.mm
    A clang/test/CodeGenOpenCL/.gdb_history
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-debug-info-pointer-address-space.cl
    M clang/test/CodeGenOpenCL/amdgpu-debug-info-variable-expression.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    A clang/test/CodeGenOpenCL/builtins-amdgcn-asyncmark-errs.cl
    A clang/test/CodeGenOpenCL/builtins-amdgcn-asyncmark.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-fp8.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-load-monitor.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-tensor-load-store.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-lds.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-load-to-lds.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-lds.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32-gfx10-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64-gfx10-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/CodeGenOpenCL/builtins-f16.cl
    M clang/test/CodeGenOpenCL/check-atomic-alignment.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
    M clang/test/CodeGenOpenCL/fpmath.cl
    A clang/test/CodeGenOpenCL/local-scope.cl
    M clang/test/CodeGenOpenCL/relaxed-fpmath.cl
    M clang/test/CodeGenOpenCL/sqrt-fpmath.cl
    M clang/test/CodeGenSYCL/function-attrs.cpp
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/CoverageMapping/mcdc-nested-expr.cpp
    M clang/test/CoverageMapping/single-byte-counters.cpp
    M clang/test/DebugInfo/CXX/anon-union-vars.cpp
    M clang/test/DebugInfo/CXX/bpf-structors.cpp
    M clang/test/DebugInfo/CXX/codeview-unnamed.cpp
    A clang/test/DebugInfo/CXX/ctor-homing-local-type.cpp
    M clang/test/DebugInfo/CXX/fn-template.cpp
    M clang/test/DebugInfo/CXX/gline-tables-only-codeview.cpp
    M clang/test/DebugInfo/CXX/lambda-capture-packs.cpp
    M clang/test/DebugInfo/CXX/lambda-this.cpp
    M clang/test/DebugInfo/CXX/trivial_abi.cpp
    M clang/test/DebugInfo/Generic/codeview-unnamed.c
    M clang/test/DebugInfo/Generic/unused-types.c
    M clang/test/DebugInfo/Generic/unused-types.cpp
    A clang/test/Driver/HLSL/conversion-warning-flags.hlsl
    R clang/test/Driver/HLSL/wconversion.hlsl
    R clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.plist
    A clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.txt
    M clang/test/Driver/Inputs/DriverKit21.0.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/FakeOS1.0.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/MacOSX10.15.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/XROS1.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/XRSimulator1.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/XRSimulator1.0.sdk/usr/include/libxml/.keep
    A clang/test/Driver/Inputs/basic_linux_tree/usr/bin/.keep
    A clang/test/Driver/Inputs/basic_linux_tree/usr/include/x86_64-unknown-linux-gnu/.keep
    R clang/test/Driver/Inputs/hip_dev_lib/oclc_correctly_rounded_sqrt_on.amdgcn.bc
    A clang/test/Driver/Inputs/hipspv/lib/hip-device-lib/hipspv-spirv64-unknown-chipstar.bc
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib32/ilp32d/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/lib/gcc/riscv64be-unknown-linux-gnu/7.2.0/lib64/lp64d/crtbegin.o
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/riscv64be-unknown-linux-gnu/bin/ld
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib32/ilp32d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/lib64/lp64d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib32/ilp32d/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64/.keep
    A clang/test/Driver/Inputs/multilib_riscv_linux_sdk_be/sysroot/usr/lib64/lp64d/.keep
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa-llvm/gfx90a/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa-llvm/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/gfx90a/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libflang_rt.runtime.a
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm-invalid/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode-no-abi-ver/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
    R clang/test/Driver/Inputs/rocm_resource_dir/lib64/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
    M clang/test/Driver/aarch64-mcpu-native.c
    A clang/test/Driver/aarch64-mtune-apple-macos.c
    M clang/test/Driver/aarch64-outliner.c
    M clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/aarch64-v97a.c
    M clang/test/Driver/aix-as.c
    A clang/test/Driver/aix-print-search-dirs.c
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/amdgpu-toolchain-opencl.cl
    M clang/test/Driver/arm-machine-outliner.c
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/cl-x86-flags.c
    M clang/test/Driver/clang-cc1as-target-variant.s
    M clang/test/Driver/clang-sycl-linker-test.cpp
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/cuda-cross-compiling.c
    M clang/test/Driver/cuda-detect.cu
    M clang/test/Driver/darwin-builtin-modules.c
    A clang/test/Driver/darwin-depfile-sdksettings-maccatalyst.m
    M clang/test/Driver/darwin-fapple-link-rtlib.c
    M clang/test/Driver/darwin-invalid-version-range.c
    M clang/test/Driver/darwin-ld-lto.c
    M clang/test/Driver/darwin-ld-platform-version-driverkit.c
    M clang/test/Driver/darwin-ld-platform-version-maccatalyst.c
    M clang/test/Driver/darwin-ld-platform-version-macos.c
    M clang/test/Driver/darwin-ld-platform-version-target-version.c
    M clang/test/Driver/darwin-ld.c
    M clang/test/Driver/darwin-objc-runtime-maccatalyst-target-variant.m
    M clang/test/Driver/darwin-objc-runtime-maccatalyst.m
    M clang/test/Driver/darwin-sdk-version-maccatalyst.c
    M clang/test/Driver/darwin-sdk-version.c
    M clang/test/Driver/darwin-sdk-vs-os-version.c
    M clang/test/Driver/darwin-sdk-with-prefix.c
    M clang/test/Driver/darwin-target-variant-sdk-version.c
    M clang/test/Driver/debug-options.c
    M clang/test/Driver/emit-reproducer.c
    M clang/test/Driver/fdefine-target-os-macros.c
    M clang/test/Driver/fuzzer.c
    M clang/test/Driver/hexagon-hvx.c
    A clang/test/Driver/hip-device-libs-llvm-env.hip
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/hip-rdc-device-only.hip
    M clang/test/Driver/hip-runtime-libs-linux.hip
    M clang/test/Driver/hip-runtime-libs-msvc.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hip-toolchain-rdc-separate.hip
    M clang/test/Driver/hip-toolchain-rdc.hip
    M clang/test/Driver/hipspv-device-libs.hip
    M clang/test/Driver/hipspv-link-static-library.hip
    M clang/test/Driver/hipspv-pass-plugin.hip
    A clang/test/Driver/hipspv-toolchain-rdc-separate.hip
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/hipstdpar.c
    M clang/test/Driver/incompatible_sysroot.c
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linux-cross.cpp
    M clang/test/Driver/linux-header-search.cpp
    M clang/test/Driver/lit.local.cfg
    A clang/test/Driver/module-fgen-reduced-bmi-precompile.cppm
    M clang/test/Driver/modulemap-allow-subdirectory-search.c
    A clang/test/Driver/ms-anonymous-structs.c
    A clang/test/Driver/offload.f90
    M clang/test/Driver/opencl-libclc.cl
    M clang/test/Driver/opencl.cl
    M clang/test/Driver/openmp-offload-gpu.c
    A clang/test/Driver/openmp-target-fast-flag.c
    M clang/test/Driver/output-file-cleanup.c
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    A clang/test/Driver/print-enabled-extensions/riscv-spacemit-a100.c
    A clang/test/Driver/print-enabled-extensions/riscv-spacemit-x100.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    A clang/test/Driver/reflection-requires-cxx26.cpp
    A clang/test/Driver/riscv-be.c
    M clang/test/Driver/riscv-cpus.c
    A clang/test/Driver/riscv-outliner.c
    M clang/test/Driver/rocm-detect.hip
    M clang/test/Driver/rocm-device-libs.cl
    A clang/test/Driver/sanitize-trap-loop.c
    M clang/test/Driver/sanitizer-ld.c
    M clang/test/Driver/spirv-openmp-toolchain.c
    M clang/test/Driver/spirv-tools-err.c
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/test/Driver/unsupported-option.c
    A clang/test/Driver/unsupported-outliner.c
    A clang/test/Driver/unsupported-target-vendor.c
    M clang/test/Driver/wasm-features.c
    M clang/test/Driver/x86-march.c
    A clang/test/Driver/x86-outliner.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Driver/xros-driver-requires-darwin-host.c
    M clang/test/ExtractAPI/objc_property.m
    A clang/test/FixIt/fixit-missing-type-spec.c
    M clang/test/Frontend/custom-diag-werror-interaction.c
    M clang/test/Frontend/dependency-gen-phony.c
    A clang/test/Frontend/ms-anon-structs-args.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_libdevice_declares.cpp
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/amdgcn_openmp_device_math.c
    M clang/test/Headers/amdgcn_openmp_device_math_c.c
    M clang/test/Headers/amdgcn_openmp_device_math_constexpr.cpp
    M clang/test/Headers/gpu_disabled_math.cpp
    M clang/test/Headers/gpuintrin.c
    M clang/test/Headers/gpuintrin_lang.c
    M clang/test/Headers/nvptx_device_math_complex.c
    M clang/test/Headers/nvptx_device_math_complex.cpp
    M clang/test/Headers/openmp-device-functions-bool.c
    M clang/test/Headers/openmp_new_nothrow.cpp
    M clang/test/Index/Core/index-source.cpp
    A clang/test/Index/cxx17-switch-with-initializer.cpp
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    A clang/test/Interpreter/access.cpp
    M clang/test/Interpreter/disambiguate-decl-stmt.cpp
    A clang/test/Layout/ms-x86-bitfields-overflow.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/mips.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    A clang/test/Modules/GH170429.cpp
    M clang/test/Modules/module-file-modified.c
    A clang/test/Modules/modulemap-with-named-module.cppm
    A clang/test/Modules/pr177385.cppm
    M clang/test/Modules/sdk-settings-json-dep.m
    A clang/test/Modules/single-module-parse-mode-compiles.m
    M clang/test/Modules/validate-file-content.m
    M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
    M clang/test/OpenMP/amdgcn_weak_alias.c
    M clang/test/OpenMP/amdgcn_weak_alias.cpp
    A clang/test/OpenMP/codegen_attr_pgo.c
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/distribute_private_codegen.cpp
    M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/for_firstprivate_codegen.cpp
    M clang/test/OpenMP/for_lastprivate_codegen.cpp
    M clang/test/OpenMP/for_linear_codegen.cpp
    M clang/test/OpenMP/for_private_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen.cpp
    M clang/test/OpenMP/for_reduction_codegen_UDR.cpp
    M clang/test/OpenMP/for_reduction_task_codegen.cpp
    M clang/test/OpenMP/master_taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    M clang/test/OpenMP/parallel_copyin_codegen.cpp
    M clang/test/OpenMP/parallel_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_for_linear_codegen.cpp
    M clang/test/OpenMP/parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_codegen.cpp
    M clang/test/OpenMP/parallel_master_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_lastprivate_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_private_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/parallel_sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/scope_codegen.cpp
    M clang/test/OpenMP/sections_firstprivate_codegen.cpp
    M clang/test/OpenMP/sections_lastprivate_codegen.cpp
    M clang/test/OpenMP/sections_private_codegen.cpp
    M clang/test/OpenMP/sections_reduction_codegen.cpp
    M clang/test/OpenMP/sections_reduction_task_codegen.cpp
    M clang/test/OpenMP/simd_private_taskloop_codegen.cpp
    M clang/test/OpenMP/single_codegen.cpp
    M clang/test/OpenMP/single_firstprivate_codegen.cpp
    M clang/test/OpenMP/single_private_codegen.cpp
    M clang/test/OpenMP/target_data_use_device_addr_codegen.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
    M clang/test/OpenMP/target_in_reduction_codegen.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_34.cpp
    M clang/test/OpenMP/target_map_codegen_35.cpp
    M clang/test/OpenMP/target_map_codegen_hold.cpp
    M clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp
    M clang/test/OpenMP/target_map_structptr_and_member_global.cpp
    M clang/test/OpenMP/target_map_structptr_and_member_local.cpp
    M clang/test/OpenMP/target_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/target_parallel_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/task_ast_print.cpp
    M clang/test/OpenMP/task_codegen.cpp
    M clang/test/OpenMP/task_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_ast_print.cpp
    M clang/test/OpenMP/taskloop_codegen.cpp
    M clang/test/OpenMP/taskloop_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_in_reduction_codegen.cpp
    M clang/test/OpenMP/taskloop_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_task_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/teams_private_codegen.cpp
    M clang/test/OpenMP/threadprivate_codegen.cpp
    M clang/test/PCH/debug-info-pch-path.c
    M clang/test/PCH/include-timestamp.cpp
    M clang/test/PCH/modified-module-dependency.m
    A clang/test/PCH/pch-input-path-independent.c
    M clang/test/PCH/reloc.c
    M clang/test/PCH/validate-file-content.m
    M clang/test/PCH/verify_pch.m
    A clang/test/Parser/parsing-reflection-with-blocks.cpp
    A clang/test/Parser/parsing-reflection.cpp
    A clang/test/Parser/pragma-export.c
    A clang/test/Parser/pragma-export.cpp
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    A clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS1.0.sdk/SDKSettings.json
    A clang/test/PlatformSpecific/xrOS/Sema/infer-ios-availability.c
    A clang/test/PlatformSpecific/xrOS/Sema/infer-unavailable-from-missing-ios-availability-mapping.c
    M clang/test/Preprocessor/embed___has_embed_parsing_errors.c
    M clang/test/Preprocessor/embed_dependencies.c
    M clang/test/Preprocessor/has_attribute_errors.cpp
    A clang/test/Preprocessor/has_c_attribute_errors.c
    M clang/test/Preprocessor/has_include.c
    A clang/test/Preprocessor/pfp-predefines.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/WatchOS8.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/XROS.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/XROS26.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/lifetime-analysis.h
    A clang/test/Sema/MicrosoftAnonymousStructs.c
    M clang/test/Sema/attr-availability-ios-fallback-aligned-versions.c
    M clang/test/Sema/attr-availability-iosmac-infer-from-macos.c
    M clang/test/Sema/attr-availability-watchos.c
    M clang/test/Sema/attr-modular-format.c
    A clang/test/Sema/attr-no-outline.c
    A clang/test/Sema/attr-no-outline.cpp
    A clang/test/Sema/attr-overflow-behavior-constexpr.cpp
    A clang/test/Sema/attr-overflow-behavior-format-strings.c
    A clang/test/Sema/attr-overflow-behavior-off.c
    A clang/test/Sema/attr-overflow-behavior-templates.cpp
    A clang/test/Sema/attr-overflow-behavior.c
    A clang/test/Sema/attr-overflow-behavior.cpp
    M clang/test/Sema/builtins-bcd-format-conversion.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/const-ptr-int-ptr-cast.c
    M clang/test/Sema/constant-builtins-2.c
    M clang/test/Sema/constant-builtins.c
    M clang/test/Sema/constexpr.c
    M clang/test/Sema/format-strings-nonnull.c
    M clang/test/Sema/format-strings.c
    A clang/test/Sema/overflow-behavior-assignment-pedantic.c
    A clang/test/Sema/overflow-behavior-function-boundary-default.c
    A clang/test/Sema/overflow-behavior-keywords-off.c
    A clang/test/Sema/overflow-behavior-keywords.c
    A clang/test/Sema/pragma-export-failing.c
    A clang/test/Sema/pragma-export-failing.cpp
    M clang/test/Sema/ptrauth.c
    M clang/test/Sema/sizeless-1.c
    A clang/test/Sema/stack_protector_ignore.c
    A clang/test/Sema/type-dependent-attrs.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    A clang/test/Sema/warn-lifetime-safety-cfg-bailout.cpp
    A clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    A clang/test/Sema/warn-lifetime-safety-fixits.cpp
    A clang/test/Sema/warn-lifetime-safety-invalidations.cpp
    A clang/test/Sema/warn-lifetime-safety-noescape.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/Sema/warn-outof-range-assign-enum.c
    M clang/test/Sema/warn-thread-safety-analysis.c
    A clang/test/Sema/wasm-funcref-table.c
    A clang/test/Sema/wave-reduce-builtins-validate-amdgpu.cl
    M clang/test/SemaCUDA/vararg.cu
    A clang/test/SemaCXX/GH167120.cpp
    A clang/test/SemaCXX/address-space-new-delete.cpp
    M clang/test/SemaCXX/alignof-sizeof-reference.cpp
    M clang/test/SemaCXX/alloc-token.cpp
    A clang/test/SemaCXX/attr-pointer-field-protection.cpp
    A clang/test/SemaCXX/builtin-bitreverseg.cpp
    M clang/test/SemaCXX/builtin-bswapg.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    M clang/test/SemaCXX/constexpr-vectors-access-elements.cpp
    M clang/test/SemaCXX/constexpr-x86-avx512f-builtins.cpp
    A clang/test/SemaCXX/constexpr-x86-avx512fp16-builtins.cpp
    A clang/test/SemaCXX/crash-GH170433.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
    M clang/test/SemaCXX/ifunc-has-attribute.cpp
    M clang/test/SemaCXX/init-priority-attr.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/ms-constexpr-invalid.cpp
    M clang/test/SemaCXX/ms-constexpr-new.cpp
    M clang/test/SemaCXX/ms-constexpr.cpp
    M clang/test/SemaCXX/nested-name-spec.cpp
    M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
    M clang/test/SemaCXX/return-noreturn.cpp
    M clang/test/SemaCXX/sugar-common-types.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/underlying_type.cpp
    M clang/test/SemaCXX/warn-loop-analysis.cpp
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-format-attr-builtins.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    A clang/test/SemaHIP/builtins-amdgcn-gfx1250-cooperative-atomics-templated.hip
    A clang/test/SemaHIP/builtins-amdgcn-gfx1250-load-monitor-templated.hip
    A clang/test/SemaHIP/hip-builtin-lvalue-to-rvalue.hip
    A clang/test/SemaHIP/shared-variable-too-large.hip
    A clang/test/SemaHLSL/BuiltIns/ByteAddressBuffers.hlsl
    A clang/test/SemaHLSL/BuiltIns/WavePrefixCountBits-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/WavePrefixProduct-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/WavePrefixSum-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/f32tof16-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/select-errors.hlsl
    M clang/test/SemaHLSL/Language/ImpCastAddrSpace.hlsl
    M clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitLists.hlsl
    M clang/test/SemaHLSL/Language/OutputParameters.hlsl
    M clang/test/SemaHLSL/Language/UsualArithmeticConversions.hlsl
    M clang/test/SemaHLSL/ScalarOverloadResolution.hlsl
    M clang/test/SemaHLSL/SplatOverloadResolution.hlsl
    A clang/test/SemaHLSL/Texture2D-SampleBias.hlsl
    A clang/test/SemaHLSL/Texture2D-SampleCmp.hlsl
    A clang/test/SemaHLSL/Texture2D-SampleCmpLevelZero.hlsl
    A clang/test/SemaHLSL/Texture2D-SampleGrad.hlsl
    A clang/test/SemaHLSL/Texture2D-SampleLevel.hlsl
    A clang/test/SemaHLSL/Texture2D-Sema.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes.hlsl
    M clang/test/SemaHLSL/Types/Arithmetic/literal_suffixes_no_16bit.hlsl
    M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixSplatErrors.hlsl
    M clang/test/SemaHLSL/VectorElementOverloadResolution.hlsl
    A clang/test/SemaHLSL/matrix-member-access-errors.hlsl
    A clang/test/SemaHLSL/no-conversion-warnings.hlsl
    M clang/test/SemaHLSL/parameter_modifiers.hlsl
    M clang/test/SemaHLSL/standard_conversion_sequences.hlsl
    A clang/test/SemaObjCXX/arc-lifetime-rvalue-ref-binding.mm
    A clang/test/SemaOpenCL/amdgpu-variables-too-large-for-address-space.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-s-wait-event.cl
    M clang/test/SemaOpenCL/extension-version.cl
    A clang/test/SemaOpenCL/function-scope-local-return.cl
    M clang/test/SemaOpenCL/invalid-pipes-cl2.0.cl
    M clang/test/SemaOpenCL/invalid-vector-literals.cl
    M clang/test/SemaOpenCL/storageclass.cl
    A clang/test/TableGen/builtin-docs.td
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/test/lit.cfg.py
    M clang/test/utils/update_cc_test_checks/Inputs/basic-cplusplus.cpp.expected
    M clang/test/utils/update_cc_test_checks/Inputs/explicit-template-instantiation.cpp.expected
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/cir-opt/cir-opt.cpp
    M clang/tools/cir-translate/cir-translate.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/clang-scan-deps/Opts.td
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
    M clang/tools/driver/driver.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/unittests/AST/ByteCode/toAPValue.cpp
    M clang/unittests/AST/TypePrinterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    A clang/unittests/Analysis/CFGBackEdgesTest.cpp
    M clang/unittests/Analysis/CMakeLists.txt
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.h
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    A clang/unittests/Analysis/Scalable/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
    M clang/unittests/Analysis/Scalable/CMakeLists.txt
    A clang/unittests/Analysis/Scalable/EntityLinkageTest.cpp
    A clang/unittests/Analysis/Scalable/Registries/FancyAnalysisData.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.cpp
    A clang/unittests/Analysis/Scalable/Registries/MockSerializationFormat.h
    M clang/unittests/Analysis/Scalable/Registries/MockTUSummaryBuilder.h
    A clang/unittests/Analysis/Scalable/Registries/SerializationFormatRegistryTest.cpp
    M clang/unittests/Analysis/Scalable/Registries/SummaryExtractorRegistryTest.cpp
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/JSONFormatTest.h
    A clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
    A clang/unittests/Analysis/Scalable/TUSummaryBuilderTest.cpp
    A clang/unittests/Analysis/Scalable/TestFixture.cpp
    A clang/unittests/Analysis/Scalable/TestFixture.h
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp
    M clang/unittests/DependencyScanning/DependencyScanningWorkerTest.cpp
    M clang/unittests/DirectoryWatcher/CMakeLists.txt
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestJava.cpp
    M clang/unittests/Format/FormatTestMacroExpansion.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
    M clang/unittests/StaticAnalyzer/BlockEntranceCallbackTest.cpp
    M clang/unittests/Tooling/DependencyScannerTest.cpp
    M clang/unittests/Tooling/QualTypeNamesTest.cpp
    M clang/utils/TableGen/CIRLoweringEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h
    M clang/utils/analyzer/entrypoint.py
    M clang/utils/reduce-clang-crash.py
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M clang/www/get_started.html
    M clang/www/hacking.html
    M compiler-rt/CMakeLists.txt
    M compiler-rt/include/CMakeLists.txt
    M compiler-rt/include/fuzzer/FuzzedDataProvider.h
    A compiler-rt/include/sanitizer/tysan_interface.h
    M compiler-rt/include/sanitizer/ubsan_interface.h
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_flags.cpp
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/asan/asan_malloc_win.cpp
    M compiler-rt/lib/asan/asan_poisoning.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove-sve.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove.S
    A compiler-rt/lib/builtins/arm/aeabi_uread4.S
    A compiler-rt/lib/builtins/arm/aeabi_uread8.S
    A compiler-rt/lib/builtins/arm/aeabi_uwrite4.S
    A compiler-rt/lib/builtins/arm/aeabi_uwrite8.S
    M compiler-rt/lib/builtins/cpu_model/x86.c
    A compiler-rt/lib/builtins/ppc/init_ifuncs.c
    M compiler-rt/lib/hwasan/hwasan_fuchsia.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_unwind_win.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_common_test.cpp
    M compiler-rt/lib/scudo/standalone/common.h
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    M compiler-rt/lib/tsan/rtl/CMakeLists.txt
    A compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.cpp
    A compiler-rt/lib/tsan/rtl/tsan_adaptive_delay.h
    M compiler-rt/lib/tsan/rtl/tsan_flags.inc
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface_ann.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.h
    M compiler-rt/lib/tsan/tests/unit/CMakeLists.txt
    A compiler-rt/lib/tsan/tests/unit/tsan_percent_test.cpp
    M compiler-rt/lib/ubsan/CMakeLists.txt
    A compiler-rt/lib/ubsan/ubsan_loop_detect.cpp
    A compiler-rt/test/asan/TestCases/AIX/lit.local.cfg.py
    A compiler-rt/test/asan/TestCases/AIX/strict-init-order-warning.cpp
    A compiler-rt/test/asan/TestCases/AIX/vec_malloc_calloc.cpp
    M compiler-rt/test/asan/TestCases/Windows/heaprealloc_alloc_zero.cpp
    A compiler-rt/test/asan/TestCases/Windows/rtlsizeheap_zero.cpp
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    A compiler-rt/test/asan/TestCases/mmap_shadow_overlap.cpp
    A compiler-rt/test/asan/TestCases/munmap_shadow_partial.cpp
    A compiler-rt/test/builtins/Unit/arm/aeabi_unaligned_access_test.c
    A compiler-rt/test/builtins/Unit/ppc/aix_ifunc.c
    M compiler-rt/test/cfi/CMakeLists.txt
    M compiler-rt/test/cfi/lit.cfg.py
    M compiler-rt/test/cfi/lit.site.cfg.py.in
    A compiler-rt/test/cfi/trap_loop_signal_handler.inc
    A compiler-rt/test/profile/AIX/ifunc.c
    M compiler-rt/test/profile/instrprof-binary-correlate.c
    M compiler-rt/test/ubsan/TestCases/Misc/Posix/static-link.cpp
    M cross-project-tests/debuginfo-tests/clang_llvm_roundtrip/Inputs/simplified_template_names.cpp
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/expected.cpp
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/expected.test
    A cross-project-tests/dtlto/fat-lto-objects.test
    A cross-project-tests/dtlto/link-savetemps.test
    A cross-project-tests/dtlto/local_codegen_and_wait.py
    A cross-project-tests/dtlto/path.test
    A cross-project-tests/dtlto/savetemps-lock.test
    A cross-project-tests/dtlto/savetemps.test
    M cross-project-tests/dtlto/signal.test
    A cross-project-tests/dtlto/test_temps.py
    M cross-project-tests/lit.cfg.py
    M cross-project-tests/lit.site.cfg.py.in
    M flang-rt/CMakeLists.txt
    M flang-rt/README.md
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/include/flang-rt/runtime/memory.h
    M flang-rt/include/flang-rt/runtime/terminator.h
    M flang-rt/include/flang-rt/runtime/type-info.h
    M flang-rt/lib/cuda/CMakeLists.txt
    M flang-rt/lib/cuda/allocator.cpp
    A flang-rt/lib/cuda/stream.cpp
    M flang-rt/lib/runtime/CMakeLists.txt
    A flang-rt/lib/runtime/array.h
    M flang-rt/lib/runtime/assign.cpp
    M flang-rt/lib/runtime/character.cpp
    M flang-rt/lib/runtime/copy.cpp
    M flang-rt/lib/runtime/derived.cpp
    M flang-rt/lib/runtime/descriptor-io.cpp
    M flang-rt/lib/runtime/extensions.cpp
    M flang-rt/lib/runtime/external-unit.cpp
    M flang-rt/lib/runtime/file.cpp
    A flang-rt/lib/runtime/io-api-gpu.cpp
    A flang-rt/lib/runtime/io-api-gpu.h
    A flang-rt/lib/runtime/io-api-server.cpp
    M flang-rt/lib/runtime/io-api.cpp
    M flang-rt/lib/runtime/io-stmt.cpp
    M flang-rt/lib/runtime/iostat.cpp
    M flang-rt/lib/runtime/main.cpp
    M flang-rt/lib/runtime/pseudo-unit.cpp
    M flang-rt/lib/runtime/stop.cpp
    M flang-rt/lib/runtime/terminator.cpp
    M flang-rt/lib/runtime/time-intrinsic.cpp
    M flang-rt/lib/runtime/type-info.cpp
    M flang-rt/lib/runtime/unit.h
    M flang-rt/test/Driver/exec.f90
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/CMakeLists.txt
    A flang-rt/unittests/Runtime/CUDA/DefaultStream.cpp
    M flang-rt/unittests/Runtime/CharacterTest.cpp
    M flang-rt/unittests/Runtime/ExternalIOTest.cpp
    M flang-rt/unittests/Runtime/Reduction.cpp
    M flang/CMakeLists.txt
    M flang/docs/Directives.md
    M flang/docs/Extensions.md
    M flang/docs/FlangDriver.md
    M flang/docs/FortranStandardsSupport.md
    M flang/docs/GettingInvolved.md
    M flang/docs/Intrinsics.md
    A flang/docs/MeetingNotes/2025/2025-12-03.md
    A flang/docs/MeetingNotes/2025/2025-12-17.md
    A flang/docs/MeetingNotes/2026/2026-01-14.md
    A flang/docs/MeetingNotes/2026/2026-01-21.md
    A flang/docs/MeetingNotes/2026/2026-01-28.md
    A flang/docs/MeetingNotes/2026/2026-02-11.md
    A flang/docs/MeetingNotes/README.md
    M flang/docs/OpenMP-declare-target.md
    M flang/docs/ParallelMultiImageFortranRuntime.md
    M flang/docs/conf.py
    M flang/include/flang/Evaluate/check-expression.h
    M flang/include/flang/Evaluate/real.h
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/include/flang/Lower/ConvertCall.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Lower/OpenMP/Clauses.h
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    A flang/include/flang/Optimizer/Analysis/ArraySectionAnalyzer.h
    M flang/include/flang/Optimizer/Builder/CUDAIntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Character.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Dialect/FIRAttr.td
    M flang/include/flang/Optimizer/Dialect/FIROps.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/OpenACC/Passes.h
    M flang/include/flang/Optimizer/OpenACC/Passes.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCUtils.h
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/include/flang/Optimizer/Passes/Pipelines.h
    A flang/include/flang/Optimizer/Support/LazySymbolTable.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Parser/options.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    A flang/include/flang/Runtime/CUDA/stream.h
    M flang/include/flang/Runtime/character.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Runtime/io-api.h
    M flang/include/flang/Runtime/iostat-consts.h
    M flang/include/flang/Runtime/stop.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Evaluate/CMakeLists.txt
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/fold.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/shape.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CMakeLists.txt
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/HlfirIntrinsics.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Lower/Runtime.cpp
    M flang/lib/Lower/Support/PrivateReductionUtils.cpp
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    M flang/lib/Lower/Support/Utils.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    A flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    M flang/lib/Optimizer/Builder/CMakeLists.txt
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Character.cpp
    M flang/lib/Optimizer/Builder/Runtime/Main.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ScheduleOrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ScheduleOrderedAssignments.h
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCDeclareActionConversion.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCOptimizeFirstprivateMap.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/DeleteUnreachableTargets.cpp
    M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    M flang/lib/Optimizer/OpenMP/LowerNontemporal.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
    R flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFComputeSharedMemoryOffsetsAndSize.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/VScaleAttr.cpp
    M flang/lib/Parser/CMakeLists.txt
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Parser/parsing.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/CMakeLists.txt
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/openmp-modifiers.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/module/__fortran_builtins.f90
    M flang/module/__fortran_type_info.f90
    A flang/module/cuda_runtime_api.f90
    M flang/module/iso_c_binding.f90
    M flang/test/Analysis/AliasAnalysis/alias-analysis-cray-pointers.fir
    M flang/test/Analysis/AliasAnalysis/load-ptr-alloca.fir
    M flang/test/Analysis/AliasAnalysis/load-ptr-designate.fir
    A flang/test/Analysis/AliasAnalysis/modref-alloc-free-effects.fir
    A flang/test/Analysis/AliasAnalysis/modref-call-after-external-name-conversion.fir
    M flang/test/Analysis/AliasAnalysis/ptr-component.fir
    A flang/test/Driver/asm-error-fix.s
    M flang/test/Driver/bbc-mlir-pass-pipeline.f90
    M flang/test/Driver/fast-math.f90
    M flang/test/Driver/func-attr-fast-math.f90
    M flang/test/Driver/func-attr.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    A flang/test/Driver/protect-parens.f90
    A flang/test/Fir/CUDA/cuda-alias-analysis.fir
    M flang/test/Fir/CUDA/cuda-device-func-transform.mlir
    M flang/test/Fir/CUDA/cuda-shared-offset.mlir
    M flang/test/Fir/MIF/init.mlir
    A flang/test/Fir/OpenACC/declare-action-conversion.fir
    M flang/test/Fir/OpenACC/openacc-mappable.fir
    M flang/test/Fir/basic-program.fir
    A flang/test/Fir/declare_value-codegen.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/invalid.fir
    M flang/test/Fir/mem2reg.mlir
    M flang/test/Fir/select.fir
    M flang/test/HLFIR/inline-hlfir-assign.fir
    M flang/test/HLFIR/order_assignments/inlined-stack-temp.fir
    A flang/test/HLFIR/order_assignments/where-array-sections.f90
    M flang/test/HLFIR/order_assignments/where-fusing-scheduling.f90
    M flang/test/HLFIR/order_assignments/where-scheduling.f90
    M flang/test/HLFIR/simplify-hlfir-intrinsics-cshift.fir
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    A flang/test/Integration/OpenMP/target-nesting-in-host-ops.f90
    A flang/test/Integration/OpenMP/target-use-device-nested.f90
    A flang/test/Integration/OpenMP/task-target-device.f90
    A flang/test/Integration/OpenMP/threadprivate-target-device.f90
    M flang/test/Integration/ivdep.f90
    M flang/test/Lower/CUDA/cuda-allocatable-device.cuf
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    A flang/test/Lower/CUDA/cuda-default-stream.cuf
    M flang/test/Lower/CUDA/cuda-synchronization.cuf
    M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
    M flang/test/Lower/HLFIR/calls-f77.f90
    M flang/test/Lower/HLFIR/cray-pointers.f90
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    A flang/test/Lower/HLFIR/elemental-result-length-len-folding.f90
    M flang/test/Lower/HLFIR/function-return-as-expr.f90
    M flang/test/Lower/HLFIR/function-return-destroy.f90
    A flang/test/Lower/HLFIR/ivdep-elemental.f90
    A flang/test/Lower/HLFIR/ivdep-where.f90
    M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
    A flang/test/Lower/HLFIR/protect-parens-arrays.f90
    A flang/test/Lower/HLFIR/protect-parens.f90
    A flang/test/Lower/HLFIR/recursive-user-procedure.f90
    M flang/test/Lower/HLFIR/where.f90
    A flang/test/Lower/Intrinsics/c_f_strpointer.f90
    M flang/test/Lower/Intrinsics/exit.f90
    A flang/test/Lower/Intrinsics/f_c_string.f90
    A flang/test/Lower/Intrinsics/rtc.f90
    M flang/test/Lower/Intrinsics/storage_size-2.f90
    M flang/test/Lower/OpenACC/acc-cache.f90
    A flang/test/Lower/OpenACC/acc-deviceptr.f90
    A flang/test/Lower/OpenACC/acc-no-create-array-section.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenMP/Todo/affinity-clause.f90
    A flang/test/Lower/OpenMP/Todo/depth-clause.f90
    A flang/test/Lower/OpenMP/Todo/multiple-types-declare_reduction.f90
    R flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90
    A flang/test/Lower/OpenMP/Todo/reduction-character-dynamic-length.f90
    A flang/test/Lower/OpenMP/block-use-predetermined-privatization.f90
    A flang/test/Lower/OpenMP/declare-reduction-character-allocatable.f90
    M flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/OpenMP/declare-target-func-and-subr.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap-enter.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-func-and-subr-cap.f90
    M flang/test/Lower/OpenMP/declare-target-implicit-tarop-cap.f90
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/defaultmap.f90
    A flang/test/Lower/OpenMP/fuse01.f90
    A flang/test/Lower/OpenMP/fuse02.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    A flang/test/Lower/OpenMP/num-teams-dims.f90
    A flang/test/Lower/OpenMP/num-threads-dims.f90
    M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.f90
    M flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/real10.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/simd.f90
    A flang/test/Lower/OpenMP/target-dead-code.f90
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    A flang/test/Lower/OpenMP/task-affinity.f90
    A flang/test/Lower/OpenMP/thread-limit-dims.f90
    M flang/test/Lower/array-elemental-calls-char-dynamic.f90
    M flang/test/Lower/array-elemental-calls-char.f90
    M flang/test/Lower/c-interoperability-c-pointer.f90
    M flang/test/Lower/c-interoperability.f90
    M flang/test/Lower/c_ptr-constant-init.f90
    M flang/test/Lower/character-elemental.f90
    M flang/test/Lower/character-local-variables.f90
    M flang/test/Lower/complex-operations.f90
    M flang/test/Lower/complex-real.f90
    M flang/test/Lower/computed-goto.f90
    A flang/test/Lower/const-arg-glob.f90
    M flang/test/Lower/constant-literal-mangling.f90
    M flang/test/Lower/control-flow.f90
    M flang/test/Lower/default-initialization.f90
    M flang/test/Lower/dense-attributed-array.f90
    M flang/test/Lower/derived-pointer-components.f90
    M flang/test/Lower/derived-type-finalization.f90
    A flang/test/Lower/derived-type-sequence-alias-assign.f90
    M flang/test/Lower/derived-types.f90
    A flang/test/Lower/do-while-to-scf-while.f90
    M flang/test/Lower/do_loop.f90
    M flang/test/Lower/do_loop_unstructured.f90
    M flang/test/Lower/dummy-argument-assumed-shape-optional.f90
    M flang/test/Lower/dummy-argument-contiguous.f90
    M flang/test/Lower/dummy-argument-optional-2.f90
    M flang/test/Lower/dummy-argument-optional.f90
    M flang/test/Lower/dummy-arguments.f90
    M flang/test/Lower/dummy-procedure-character.f90
    M flang/test/Lower/dummy-procedure-in-entry.f90
    M flang/test/Lower/dummy-procedure.f90
    M flang/test/Lower/equivalence-1.f90
    M flang/test/Lower/equivalence-2.f90
    M flang/test/Lower/equivalence-with-host-assoc.f90
    M flang/test/Lower/explicit-interface-results-2.f90
    M flang/test/Lower/explicit-interface-results.f90
    M flang/test/Lower/ext-proc-as-actual-argument-1.f90
    M flang/test/Lower/ext-proc-as-actual-argument-2.f90
    M flang/test/Lower/fail_image.f90
    M flang/test/Lower/forall/array-constructor.f90
    M flang/test/Lower/forall/array-pointer.f90
    M flang/test/Lower/forall/array-subscripts.f90
    M flang/test/Lower/forall/character-1.f90
    M flang/test/Lower/forall/degenerate.f90
    M flang/test/Lower/forall/forall-2.f90
    M flang/test/Lower/forall/forall-allocatable-2.f90
    M flang/test/Lower/forall/forall-allocatable.f90
    M flang/test/Lower/forall/forall-array.f90
    M flang/test/Lower/forall/forall-construct-2.f90
    M flang/test/Lower/forall/forall-construct-3.f90
    M flang/test/Lower/forall/forall-construct-4.f90
    M flang/test/Lower/forall/forall-construct.f90
    M flang/test/Lower/forall/forall-ranked.f90
    M flang/test/Lower/forall/forall-slice.f90
    M flang/test/Lower/forall/forall-stmt.f90
    M flang/test/Lower/goto-do-body.f90
    M flang/test/Lower/goto-statement.f90
    M flang/test/Lower/infinite_loop.f90
    M flang/test/Lower/io-statement-clean-ups.f90
    A flang/test/Lower/ivdep-array.f90
    M flang/test/Lower/ivdep.f90
    M flang/test/Lower/mixed_loops.f90
    M flang/test/Lower/polymorphic.f90
    A flang/test/Lower/rank-clause02.f90
    M flang/test/Lower/return-statement.f90
    M flang/test/Lower/stop-statement.f90
    M flang/test/Lower/volatile-openmp.f90
    M flang/test/Lower/while_loop.f90
    A flang/test/Parser/OpenMP/cont-in-cond-comp.f
    A flang/test/Parser/OpenMP/depth-clause.f90
    M flang/test/Parser/OpenMP/sentinels.f
    A flang/test/Parser/compiler-directive-sentinel.f90
    M flang/test/Parser/continuation-in-conditional-compilation.f
    A flang/test/Parser/unparse-rank-clause.f90
    A flang/test/Semantics/OpenMP/allocate_do.f90
    A flang/test/Semantics/OpenMP/allocate_do1.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    A flang/test/Semantics/OpenMP/common-block_copyin.f90
    M flang/test/Semantics/OpenMP/compiler-directive.f90
    A flang/test/Semantics/OpenMP/declare-reduction-derived-module.f90
    A flang/test/Semantics/OpenMP/depth-clause.f90
    M flang/test/Semantics/OpenMP/do10.f90
    A flang/test/Semantics/OpenMP/implicit_linear_symbols.f90
    A flang/test/Semantics/OpenMP/lastprivate-intent-in-pointer.f90
    A flang/test/Semantics/OpenMP/linear-clause03.f90
    A flang/test/Semantics/OpenMP/local-variables-1.f90
    A flang/test/Semantics/OpenMP/local-variables-2.f90
    A flang/test/Semantics/OpenMP/nested_parallel_sections_valid.f90
    M flang/test/Semantics/OpenMP/workshare04.f90
    M flang/test/Semantics/OpenMP/workshare05.f90
    A flang/test/Semantics/ac-impl-do-data-ptr.f90
    M flang/test/Semantics/bug1214.cuf
    A flang/test/Semantics/bug177502.f90
    A flang/test/Semantics/bug177601.f90
    A flang/test/Semantics/bug178786.f90
    A flang/test/Semantics/bug178813.f90
    A flang/test/Semantics/bug179580.f90
    A flang/test/Semantics/bug2131.cuf
    A flang/test/Semantics/bug2131b.cuf
    A flang/test/Semantics/bug2174.f90
    A flang/test/Semantics/bug2203.f90
    M flang/test/Semantics/c7108.f90
    A flang/test/Semantics/c_f_strpointer.f90
    A flang/test/Semantics/cuf17.cuf
    M flang/test/Semantics/cuf23.cuf
    A flang/test/Semantics/f_c_string.f90
    M flang/test/Semantics/generic09.f90
    M flang/test/Semantics/ignore_tkr01.f90
    A flang/test/Semantics/ignore_tkr05.f90
    A flang/test/Semantics/rank-clause01.f90
    M flang/test/Semantics/resolve11.f90
    M flang/test/Semantics/resolve17.f90
    M flang/test/Semantics/resolve18.f90
    M flang/test/Semantics/typeinfo01.f90
    M flang/test/Semantics/typeinfo08.f90
    A flang/test/Transforms/CUF/cuf-kernel-licm.fir
    M flang/test/Transforms/DoConcurrent/locally_destroyed_temp.f90
    M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
    A flang/test/Transforms/FIRToMemRef/array-coor-block-arg.mlir
    M flang/test/Transforms/FIRToMemRef/no-declare.mlir
    A flang/test/Transforms/OpenACC/acc-optimize-firstprivate-map.fir
    A flang/test/Transforms/OpenMP/conversion-declare-mapper.mlir
    A flang/test/Transforms/OpenMP/delete-unreachable-targets.mlir
    A flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
    A flang/test/Transforms/OpenMP/function-filtering.mlir
    A flang/test/Transforms/debug-fn-attr.fir
    M flang/test/Transforms/licm.fir
    R flang/test/Transforms/omp-function-filtering.mlir
    R flang/test/Transforms/tbaa-for-local-vars.fir
    M flang/test/Transforms/tbaa-target-inlined-results.fir
    M flang/test/Transforms/tbaa-with-dummy-scope2.fir
    A flang/test/Transforms/vscale-attr.fir
    M flang/test/lit.cfg.py
    M flang/tools/bbc/bbc.cpp
    M flang/tools/f18/CMakeLists.txt
    M flang/tools/flang-driver/driver.cpp
    M flang/unittests/Common/FortranFeaturesTest.cpp
    M flang/unittests/Optimizer/CMakeLists.txt
    M libc/CMakeLists.txt
    M libc/benchmarks/CMakeLists.txt
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/config/baremetal/config.json
    M libc/config/config.json
    M libc/config/gpu/config.json
    A libc/config/gpu/spirv/entrypoints.txt
    A libc/config/gpu/spirv/headers.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/app.h
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/docs/full_host_build.rst
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/rpc.rst
    M libc/docs/headers/math/index.rst
    M libc/docs/headers/time.rst
    M libc/hdr/CMakeLists.txt
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/Elf32_Xword.h
    M libc/include/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/include/llvm-libc-macros/link-macros.h
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/llvm-libc-macros/pthread-macros.h
    M libc/include/llvm-libc-macros/signal-macros.h
    M libc/include/llvm-libc-macros/time-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/Elf32_Xword.h
    M libc/include/llvm-libc-types/fenv_t.h
    R libc/include/pthread.h.def
    M libc/include/pthread.yaml
    M libc/lib/CMakeLists.txt
    M libc/shared/math.h
    A libc/shared/math/bf16add.h
    A libc/shared/math/bf16addf.h
    A libc/shared/math/bf16addf128.h
    A libc/shared/math/bf16divf.h
    A libc/shared/math/bf16divl.h
    A libc/shared/math/bf16fmaf.h
    A libc/shared/math/bf16fmal.h
    A libc/shared/math/canonicalize.h
    A libc/shared/math/canonicalizebf16.h
    A libc/shared/math/canonicalizef.h
    A libc/shared/math/canonicalizef128.h
    A libc/shared/math/canonicalizef16.h
    A libc/shared/math/canonicalizel.h
    A libc/shared/math/ceil.h
    A libc/shared/math/ceilbf16.h
    A libc/shared/math/ceilf.h
    A libc/shared/math/ceilf128.h
    A libc/shared/math/ceilf16.h
    A libc/shared/math/ceill.h
    A libc/shared/math/dfmaf128.h
    A libc/shared/math/f16add.h
    A libc/shared/math/f16addf.h
    A libc/shared/math/f16addf128.h
    A libc/shared/math/f16addl.h
    A libc/shared/math/f16fmaf.h
    A libc/shared/math/f16fmaf128.h
    A libc/shared/math/f16fmal.h
    A libc/shared/math/f16sqrt.h
    A libc/shared/math/f16sqrtf.h
    A libc/shared/math/f16sqrtl.h
    A libc/shared/math/fadd.h
    A libc/shared/math/faddf128.h
    A libc/shared/math/faddl.h
    A libc/shared/math/ffma.h
    A libc/shared/math/ffmal.h
    A libc/shared/math/fmax.h
    A libc/shared/math/fmaxbf16.h
    A libc/shared/math/fmaxf.h
    A libc/shared/math/fmaxf128.h
    A libc/shared/math/fmaxf16.h
    A libc/shared/math/fmaxl.h
    A libc/shared/math/fsqrtl.h
    A libc/shared/math/hypotf16.h
    A libc/shared/math/ilogb.h
    A libc/shared/math/ilogbf128.h
    A libc/shared/math/llogb.h
    A libc/shared/math/llogbf128.h
    A libc/shared/math/llogbf16.h
    A libc/shared/math/llogbl.h
    A libc/shared/math/log10f.h
    A libc/shared/math/log10f16.h
    A libc/shared/math/log1pf.h
    A libc/shared/math/log2f.h
    A libc/shared/math/log2f16.h
    A libc/shared/math/logb.h
    A libc/shared/math/logbl.h
    A libc/shared/math/logf.h
    A libc/shared/math/logf16.h
    A libc/shared/math/pow.h
    A libc/shared/math/powf.h
    A libc/shared/math/sincos.h
    A libc/shared/math/sincosf.h
    A libc/shared/math/sinf.h
    A libc/shared/math/sinf16.h
    A libc/shared/math/sinhf.h
    A libc/shared/math/sinhf16.h
    A libc/shared/math/sinpif.h
    A libc/shared/math/sinpif16.h
    A libc/shared/math/sqrt.h
    A libc/shared/math/sqrtf.h
    A libc/shared/math/sqrtf128.h
    A libc/shared/math/sqrtf16.h
    A libc/shared/math/tan.h
    A libc/shared/math/tanf.h
    A libc/shared/math/tanf16.h
    A libc/shared/math/tanhf.h
    A libc/shared/math/tanhf16.h
    A libc/shared/math/tanpif.h
    M libc/shared/rpc.h
    A libc/shared/rpc_dispatch.h
    M libc/shared/rpc_opcodes.h
    M libc/shared/rpc_util.h
    M libc/src/CMakeLists.txt
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_integral.h
    M libc/src/__support/CPP/type_traits/is_unsigned.h
    M libc/src/__support/FPUtil/generic/add_sub.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/OSUtil/gpu/exit.cpp
    M libc/src/__support/OSUtil/gpu/io.cpp
    M libc/src/__support/ctype_utils.h
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/macros/properties/architectures.h
    M libc/src/__support/macros/properties/cpu_features.h
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/acos.h
    M libc/src/__support/math/acosf.h
    M libc/src/__support/math/acosf16.h
    M libc/src/__support/math/acosh_float_constants.h
    M libc/src/__support/math/acoshf.h
    M libc/src/__support/math/acoshf16.h
    M libc/src/__support/math/acoshf_utils.h
    M libc/src/__support/math/acospif16.h
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/asin_utils.h
    M libc/src/__support/math/asinf.h
    M libc/src/__support/math/asinf16.h
    M libc/src/__support/math/asinhf.h
    M libc/src/__support/math/asinhf16.h
    M libc/src/__support/math/atan.h
    M libc/src/__support/math/atan2.h
    M libc/src/__support/math/atan2f.h
    M libc/src/__support/math/atan2f128.h
    M libc/src/__support/math/atan2f_float.h
    M libc/src/__support/math/atan_utils.h
    M libc/src/__support/math/atanf.h
    M libc/src/__support/math/atanf16.h
    M libc/src/__support/math/atanf_float.h
    M libc/src/__support/math/atanhf.h
    M libc/src/__support/math/atanhf16.h
    A libc/src/__support/math/bf16add.h
    A libc/src/__support/math/bf16addf.h
    A libc/src/__support/math/bf16addf128.h
    A libc/src/__support/math/bf16divf.h
    A libc/src/__support/math/bf16divl.h
    A libc/src/__support/math/bf16fmaf.h
    A libc/src/__support/math/bf16fmal.h
    A libc/src/__support/math/canonicalize.h
    A libc/src/__support/math/canonicalizebf16.h
    A libc/src/__support/math/canonicalizef.h
    A libc/src/__support/math/canonicalizef128.h
    A libc/src/__support/math/canonicalizef16.h
    A libc/src/__support/math/canonicalizel.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/math/cbrtf.h
    A libc/src/__support/math/ceil.h
    A libc/src/__support/math/ceilbf16.h
    A libc/src/__support/math/ceilf.h
    A libc/src/__support/math/ceilf128.h
    A libc/src/__support/math/ceilf16.h
    A libc/src/__support/math/ceill.h
    M libc/src/__support/math/common_constants.h
    M libc/src/__support/math/cos.h
    M libc/src/__support/math/cosf.h
    M libc/src/__support/math/cosf16.h
    M libc/src/__support/math/coshf.h
    M libc/src/__support/math/coshf16.h
    M libc/src/__support/math/cospif.h
    M libc/src/__support/math/cospif16.h
    A libc/src/__support/math/dfmaf128.h
    M libc/src/__support/math/dfmal.h
    M libc/src/__support/math/dsqrtl.h
    M libc/src/__support/math/erff.h
    M libc/src/__support/math/exp.h
    M libc/src/__support/math/exp10.h
    M libc/src/__support/math/exp10_float16_constants.h
    M libc/src/__support/math/exp10f.h
    M libc/src/__support/math/exp10f16.h
    M libc/src/__support/math/exp10f16_utils.h
    M libc/src/__support/math/exp10f_utils.h
    M libc/src/__support/math/exp10m1f.h
    M libc/src/__support/math/exp10m1f16.h
    M libc/src/__support/math/exp2.h
    M libc/src/__support/math/exp2f.h
    M libc/src/__support/math/exp2f16.h
    M libc/src/__support/math/exp2m1f.h
    M libc/src/__support/math/exp2m1f16.h
    M libc/src/__support/math/exp_constants.h
    M libc/src/__support/math/exp_float_constants.h
    M libc/src/__support/math/exp_utils.h
    M libc/src/__support/math/expf.h
    M libc/src/__support/math/expf16.h
    M libc/src/__support/math/expf16_utils.h
    M libc/src/__support/math/expm1.h
    M libc/src/__support/math/expm1f.h
    M libc/src/__support/math/expm1f16.h
    M libc/src/__support/math/expxf16_utils.h
    A libc/src/__support/math/f16add.h
    A libc/src/__support/math/f16addf.h
    A libc/src/__support/math/f16addf128.h
    A libc/src/__support/math/f16addl.h
    M libc/src/__support/math/f16fma.h
    A libc/src/__support/math/f16fmaf.h
    A libc/src/__support/math/f16fmaf128.h
    A libc/src/__support/math/f16fmal.h
    A libc/src/__support/math/f16sqrt.h
    A libc/src/__support/math/f16sqrtf.h
    A libc/src/__support/math/f16sqrtl.h
    A libc/src/__support/math/fadd.h
    A libc/src/__support/math/faddf128.h
    A libc/src/__support/math/faddl.h
    A libc/src/__support/math/ffma.h
    A libc/src/__support/math/ffmal.h
    A libc/src/__support/math/fmax.h
    A libc/src/__support/math/fmaxbf16.h
    A libc/src/__support/math/fmaxf.h
    A libc/src/__support/math/fmaxf128.h
    A libc/src/__support/math/fmaxf16.h
    A libc/src/__support/math/fmaxl.h
    M libc/src/__support/math/frexpf.h
    M libc/src/__support/math/frexpf128.h
    M libc/src/__support/math/frexpf16.h
    M libc/src/__support/math/fsqrt.h
    M libc/src/__support/math/fsqrtf128.h
    A libc/src/__support/math/fsqrtl.h
    M libc/src/__support/math/hypotf.h
    A libc/src/__support/math/hypotf16.h
    A libc/src/__support/math/ilogb.h
    A libc/src/__support/math/ilogbf128.h
    M libc/src/__support/math/ilogbl.h
    M libc/src/__support/math/inv_trigf_utils.h
    M libc/src/__support/math/ldexpf.h
    M libc/src/__support/math/ldexpf128.h
    M libc/src/__support/math/ldexpf16.h
    A libc/src/__support/math/llogb.h
    M libc/src/__support/math/llogbf.h
    A libc/src/__support/math/llogbf128.h
    A libc/src/__support/math/llogbf16.h
    A libc/src/__support/math/llogbl.h
    M libc/src/__support/math/log.h
    M libc/src/__support/math/log10.h
    A libc/src/__support/math/log10f.h
    A libc/src/__support/math/log10f16.h
    M libc/src/__support/math/log1p.h
    A libc/src/__support/math/log1pf.h
    M libc/src/__support/math/log2.h
    A libc/src/__support/math/log2f.h
    A libc/src/__support/math/log2f16.h
    A libc/src/__support/math/logb.h
    M libc/src/__support/math/logbf.h
    M libc/src/__support/math/logbf128.h
    M libc/src/__support/math/logbf16.h
    A libc/src/__support/math/logbl.h
    A libc/src/__support/math/logf.h
    A libc/src/__support/math/logf16.h
    A libc/src/__support/math/pow.h
    A libc/src/__support/math/powf.h
    M libc/src/__support/math/range_reduction.h
    M libc/src/__support/math/range_reduction_double_common.h
    M libc/src/__support/math/range_reduction_double_fma.h
    M libc/src/__support/math/range_reduction_double_nofma.h
    M libc/src/__support/math/range_reduction_fma.h
    M libc/src/__support/math/rsqrtf.h
    M libc/src/__support/math/rsqrtf16.h
    M libc/src/__support/math/sin.h
    A libc/src/__support/math/sincos.h
    M libc/src/__support/math/sincos_eval.h
    A libc/src/__support/math/sincosf.h
    M libc/src/__support/math/sincosf16_utils.h
    M libc/src/__support/math/sincosf_float_eval.h
    M libc/src/__support/math/sincosf_utils.h
    A libc/src/__support/math/sinf.h
    A libc/src/__support/math/sinf16.h
    A libc/src/__support/math/sinhf.h
    A libc/src/__support/math/sinhf16.h
    A libc/src/__support/math/sinpif.h
    A libc/src/__support/math/sinpif16.h
    A libc/src/__support/math/sqrt.h
    A libc/src/__support/math/sqrtf.h
    A libc/src/__support/math/sqrtf128.h
    A libc/src/__support/math/sqrtf16.h
    A libc/src/__support/math/tan.h
    A libc/src/__support/math/tanf.h
    A libc/src/__support/math/tanf16.h
    A libc/src/__support/math/tanhf.h
    A libc/src/__support/math/tanhf16.h
    A libc/src/__support/math/tanpif.h
    A libc/src/__support/mathvec/CMakeLists.txt
    A libc/src/__support/mathvec/common_constants.h
    A libc/src/__support/mathvec/expf.h
    A libc/src/__support/mathvec/expf_utils.h
    M libc/src/__support/str_to_float.h
    M libc/src/__support/threads/fork_callbacks.cpp
    M libc/src/__support/time/gpu/time_utils.cpp
    M libc/src/__support/time/gpu/time_utils.h
    M libc/src/__support/wctype/CMakeLists.txt
    A libc/src/__support/wctype/wctype_classification_utils.cpp
    M libc/src/__support/wctype/wctype_classification_utils.h
    M libc/src/__support/wctype_utils.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/asin.cpp
    M libc/src/math/generic/bf16add.cpp
    M libc/src/math/generic/bf16addf.cpp
    M libc/src/math/generic/bf16addf128.cpp
    M libc/src/math/generic/bf16divf.cpp
    M libc/src/math/generic/bf16divl.cpp
    M libc/src/math/generic/bf16fmaf.cpp
    M libc/src/math/generic/bf16fmal.cpp
    M libc/src/math/generic/canonicalize.cpp
    M libc/src/math/generic/canonicalizebf16.cpp
    M libc/src/math/generic/canonicalizef.cpp
    M libc/src/math/generic/canonicalizef128.cpp
    M libc/src/math/generic/canonicalizef16.cpp
    M libc/src/math/generic/canonicalizel.cpp
    M libc/src/math/generic/ceil.cpp
    M libc/src/math/generic/ceilbf16.cpp
    M libc/src/math/generic/ceilf.cpp
    M libc/src/math/generic/ceilf128.cpp
    M libc/src/math/generic/ceilf16.cpp
    M libc/src/math/generic/ceill.cpp
    M libc/src/math/generic/dfmaf128.cpp
    M libc/src/math/generic/f16add.cpp
    M libc/src/math/generic/f16addf.cpp
    M libc/src/math/generic/f16addf128.cpp
    M libc/src/math/generic/f16addl.cpp
    M libc/src/math/generic/f16fmaf.cpp
    M libc/src/math/generic/f16fmaf128.cpp
    M libc/src/math/generic/f16fmal.cpp
    M libc/src/math/generic/f16sqrt.cpp
    M libc/src/math/generic/f16sqrtf.cpp
    M libc/src/math/generic/f16sqrtl.cpp
    M libc/src/math/generic/fadd.cpp
    M libc/src/math/generic/faddf128.cpp
    M libc/src/math/generic/faddl.cpp
    M libc/src/math/generic/ffma.cpp
    M libc/src/math/generic/ffmal.cpp
    M libc/src/math/generic/fmax.cpp
    M libc/src/math/generic/fmaxbf16.cpp
    M libc/src/math/generic/fmaxf.cpp
    M libc/src/math/generic/fmaxf128.cpp
    M libc/src/math/generic/fmaxf16.cpp
    M libc/src/math/generic/fmaxl.cpp
    M libc/src/math/generic/fsqrtl.cpp
    M libc/src/math/generic/hypotf16.cpp
    M libc/src/math/generic/ilogb.cpp
    M libc/src/math/generic/ilogbf128.cpp
    M libc/src/math/generic/llogb.cpp
    M libc/src/math/generic/llogbf128.cpp
    M libc/src/math/generic/llogbf16.cpp
    M libc/src/math/generic/llogbl.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log10f16.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/log2f16.cpp
    M libc/src/math/generic/logb.cpp
    M libc/src/math/generic/logbl.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/logf16.cpp
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinf16.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/sinhf16.cpp
    M libc/src/math/generic/sinpif.cpp
    M libc/src/math/generic/sinpif16.cpp
    M libc/src/math/generic/sqrt.cpp
    M libc/src/math/generic/sqrtf.cpp
    M libc/src/math/generic/sqrtf128.cpp
    M libc/src/math/generic/sqrtf16.cpp
    M libc/src/math/generic/tan.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/src/math/generic/tanf16.cpp
    M libc/src/math/generic/tanhf.cpp
    M libc/src/math/generic/tanhf16.cpp
    M libc/src/math/generic/tanpif.cpp
    M libc/src/math/generic/tanpif16.cpp
    A libc/src/mathvec/CMakeLists.txt
    A libc/src/mathvec/expf.h
    A libc/src/mathvec/generic/CMakeLists.txt
    A libc/src/mathvec/generic/expf.cpp
    A libc/src/pthread/pthread_getattr_np.h
    M libc/src/setjmp/arm/longjmp.cpp
    M libc/src/setjmp/arm/setjmp.cpp
    M libc/src/stdio/gpu/clearerr.cpp
    M libc/src/stdio/gpu/fclose.cpp
    M libc/src/stdio/gpu/feof.cpp
    M libc/src/stdio/gpu/ferror.cpp
    M libc/src/stdio/gpu/fflush.cpp
    M libc/src/stdio/gpu/fgets.cpp
    M libc/src/stdio/gpu/file.h
    M libc/src/stdio/gpu/fopen.cpp
    M libc/src/stdio/gpu/fseek.cpp
    M libc/src/stdio/gpu/ftell.cpp
    M libc/src/stdio/gpu/remove.cpp
    M libc/src/stdio/gpu/rename.cpp
    M libc/src/stdio/gpu/ungetc.cpp
    M libc/src/stdio/gpu/vfprintf_utils.h
    M libc/src/stdio/printf_core/converter_utils.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/write_int_converter.h
    M libc/src/stdlib/gpu/abort.cpp
    M libc/src/stdlib/gpu/system.cpp
    M libc/src/string/memory_utils/aarch64/inline_memcpy.h
    M libc/src/string/memory_utils/generic/inline_strlen.h
    M libc/src/string/memory_utils/inline_memcpy.h
    M libc/src/string/memory_utils/inline_memmove.h
    M libc/src/string/memory_utils/inline_memset.h
    M libc/src/string/memory_utils/x86_64/inline_strlen.h
    M libc/startup/gpu/CMakeLists.txt
    M libc/test/CMakeLists.txt
    M libc/test/UnitTest/FEnvSafeTest.cpp
    M libc/test/UnitTest/PrintfMatcher.cpp
    A libc/test/UnitTest/SIMDMatcher.h
    M libc/test/include/complex_test.cpp
    M libc/test/integration/src/__support/GPU/fixedstack_test.cpp
    M libc/test/integration/src/__support/GPU/match.cpp
    M libc/test/integration/src/__support/GPU/scan_reduce.cpp
    M libc/test/integration/src/__support/GPU/shuffle.cpp
    M libc/test/integration/src/stdio/gpu/printf_test.cpp
    M libc/test/integration/src/stdlib/gpu/malloc_stress.cpp
    M libc/test/integration/startup/gpu/CMakeLists.txt
    M libc/test/integration/startup/gpu/init_fini_array_test.cpp
    A libc/test/integration/startup/gpu/rpc_divergence_test.cpp
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M libc/test/integration/startup/gpu/rpc_lane_test.cpp
    M libc/test/integration/startup/gpu/rpc_stream_test.cpp
    M libc/test/integration/startup/gpu/rpc_test.cpp
    A libc/test/lit.cfg.py
    A libc/test/lit.site.cfg.py.in
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    A libc/test/src/__support/wctype_utils_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/ceilf128_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_add_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_div_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_mul_test.cpp
    M libc/test/src/math/exhaustive/bfloat16_sub_test.cpp
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/SubTest.h
    A libc/test/src/mathvec/CMakeLists.txt
    A libc/test/src/mathvec/expf_test.cpp
    M libc/test/src/stdio/fopen_test.cpp
    M libc/test/src/stdio/printf_core/parser_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdlib/strtof_test.cpp
    M libc/test/src/stdlib/strtold_test.cpp
    M libc/test/src/strings/wide_read_memory_test.cpp
    M libc/test/src/time/TmMatcher.h
    M libc/test/src/time/gmtime_r_test.cpp
    M libc/test/src/time/gmtime_test.cpp
    M libc/test/src/time/mktime_test.cpp
    M libc/utils/docgen/wctype.yaml
    A libc/utils/libctest/__init__.py
    A libc/utils/libctest/format.py
    M libc/utils/wctype_utils/classification/gen_classification_data.py
    M libclc/CMakeLists.txt
    R libclc/clc/include/clc/clctypes.h
    M libclc/clc/include/clc/float/definitions.h
    M libclc/clc/include/clc/integer/clc_upsample.h
    M libclc/clc/include/clc/integer/definitions.h
    M libclc/clc/include/clc/integer/gentype.inc
    M libclc/clc/include/clc/integer/gentype24.inc
    M libclc/clc/include/clc/internal/clc.h
    M libclc/clc/include/clc/internal/math/clc_sw_fma.h
    M libclc/clc/include/clc/math/gentype.inc
    M libclc/clc/include/clc/math/math.h
    M libclc/clc/include/clc/math/tables.h
    M libclc/clc/include/clc/relational/clc_all.h
    M libclc/clc/include/clc/relational/clc_any.h
    M libclc/clc/include/clc/relational/clc_isequal.h
    M libclc/clc/include/clc/relational/clc_isinf.h
    M libclc/clc/include/clc/relational/clc_isnan.h
    A libclc/clc/include/clc/relational/clc_issubnormal.h
    M libclc/clc/include/clc/relational/relational.h
    M libclc/clc/lib/amdgcn/workitem/clc_get_global_offset.cl
    M libclc/clc/lib/amdgcn/workitem/clc_get_work_dim.cl
    M libclc/clc/lib/amdgpu/math/clc_sqrt.cl
    M libclc/clc/lib/generic/SOURCES
    M libclc/clc/lib/generic/math/clc_fma.cl
    R libclc/clc/lib/generic/math/clc_fma.inc
    R libclc/clc/lib/generic/math/clc_sw_fma.cl
    A libclc/clc/lib/generic/relational/clc_issubnormal.cl
    R libclc/clc/lib/r600/SOURCES
    R libclc/clc/lib/r600/math/clc_native_rsqrt.cl
    R libclc/clc/lib/r600/math/clc_rsqrt.cl
    M libclc/clc/lib/spirv/SOURCES
    R libclc/clc/lib/spirv/math/clc_runtime_has_hw_fma32.cl
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/include/clc/opencl/opencl-base.h
    M libclc/opencl/lib/amdgcn-amdhsa/workitem/get_global_size.cl

  Log Message:
  -----------
  Merge branch 'main' into users/shiltian/remove-unused-dump-code-feature


Compare: https://github.com/llvm/llvm-project/compare/e07076eaea33...7b4fa711bd22

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list