[all-commits] [llvm/llvm-project] 418204: Revert "[UBSan] [compiler-rt] add preservecc varia...

Florian Mayer via All-commits all-commits at lists.llvm.org
Mon Nov 24 13:51:28 PST 2025


  Branch: refs/heads/users/fmayer/spr/ubsan-add-fsanitize-preserve-runtime-flag
  Home:   https://github.com/llvm/llvm-project
  Commit: 418204d9c108351340fe21194ace0e31157b7189
      https://github.com/llvm/llvm-project/commit/418204d9c108351340fe21194ace0e31157b7189
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

  Changed paths:
    M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c

  Log Message:
  -----------
  Revert "[UBSan] [compiler-rt] add preservecc variants of handlers" (#168973)

Reverts llvm/llvm-project#168643


  Commit: ac55d7859fc53d9ca8444a29a93fc45d16ecb26a
      https://github.com/llvm/llvm-project/commit/ac55d7859fc53d9ca8444a29a93fc45d16ecb26a
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir

  Log Message:
  -----------
  AMDGPU: Don't duplicate implicit operands in 3-address conversion (#168426)

We previously got a duplicate implicit $exec operand. It didn't really
hurt anything (other than being a slight drag on compile-time
performance). Still, let's keep things clean.


  Commit: 06eac9feb92cba1d24e8a674c643aae1200d2bc8
      https://github.com/llvm/llvm-project/commit/06eac9feb92cba1d24e8a674c643aae1200d2bc8
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

  Changed paths:
    M lldb/include/lldb/Core/SourceManager.h
    M lldb/include/lldb/Symbol/CompileUnit.h
    M lldb/include/lldb/Symbol/Function.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Utility/FileSpecList.h
    A lldb/include/lldb/Utility/NonNullSharedPtr.h
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Expression/REPL.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    M lldb/source/Utility/FileSpecList.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp

  Log Message:
  -----------
  [lldb] Eliminate SupportFileSP nullptr derefs (#168624)

This patch fixes and eliminates the possibility of SupportFileSP ever
being nullptr. The support file was originally treated like a value
type, but became a polymorphic type and therefore has to be stored and
passed around as a pointer.

To avoid having all the callers check the validity of the pointer, I
introduced the invariant that SupportFileSP is never null and always
default constructed. However, without enforcement at the type level,
that's fragile and indeed, we already identified two crashes where
someone accidentally broke that invariant.

This PR introduces a NonNullSharedPtr to prevent that. NonNullSharedPtr
is a smart pointer wrapper around std::shared_ptr that guarantees the
pointer is never null. If default-constructed, it creates a
default-constructed instance of the contained type. Note that I'm using
private inheritance because you shouldn't inherit from standard library
classes due to the lack of virtual destructor. So while the new
abstraction looks like a `std::shared_ptr`, it is in fact **not** a
shared pointer. Given that our destructor is trivial, we could use
public inheritance, but currently there's no need for it.

rdar://164989579


  Commit: 3954df93384f10de2ec35501650120949972fbb1
      https://github.com/llvm/llvm-project/commit/3954df93384f10de2ec35501650120949972fbb1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll

  Log Message:
  -----------
  AMDGPU: Convert constant-address-space-32bit test to generated checks (#168975)


  Commit: 8439aebd3dd3e9d0586d44f0e8a68bba86785ae6
      https://github.com/llvm/llvm-project/commit/8439aebd3dd3e9d0586d44f0e8a68bba86785ae6
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  [Clang] Refactor getOptimizationLevel and getOptimizationLevelSize to non-static. NFC. (#168839)

So that we can reuse these functions in few place, such as in
clang/lib/Driver/ToolChains/CommonArgs.cpp. Part of the code there is
currently copied from getOptimizationLevel.


  Commit: 423bdb2bf257e19271d62e60b6339d84b8ce05aa
      https://github.com/llvm/llvm-project/commit/423bdb2bf257e19271d62e60b6339d84b8ce05aa
  Author: Wenju He <wenju.he at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/docs/OpenCLSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Headers/opencl-c-base.h
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/features.cl

  Log Message:
  -----------
  [OpenCL] Add missing OpenCL 3.0 features to OpenCLExtensions.def; revert header-only macros (#168016)

Adds the remaining optional feature macros from the OpenCL C 3.0 spec
(section 6.2.1 table). Targets can now enable these via
OpenCLFeaturesMap returned by getSupportedOpenCLOpts().

Revert a84599f177a6 (header‑only feature macros).
Header‑only macros are difficult to disable on SPIR-V targets,
and the prior undef approach (a60b8f468119) does not scale.
After this PR, they can be disabled via `-cl-ext=-<feature>`.

https://github.com/KhronosGroup/OpenCL-Docs/issues/1328 also notes that
unconditional definition of the header‑only macros in opencl-c-base.h
should be removed.


  Commit: c34f76dd553c3404962c3d6c3d38cbdc6ff9d778
      https://github.com/llvm/llvm-project/commit/c34f76dd553c3404962c3d6c3d38cbdc6ff9d778
  Author: Ch1p <hduch1p at gmail.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

  Changed paths:
    M llvm/tools/dsymutil/MachOUtils.cpp

  Log Message:
  -----------
  [dsymutil] Add missing validation for zero alignment section (#168925)


  Commit: 1d73b68463ba5ef75434f8d13390537b8e66efa9
      https://github.com/llvm/llvm-project/commit/1d73b68463ba5ef75434f8d13390537b8e66efa9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-20 (Thu, 20 Nov 2025)

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

  Log Message:
  -----------
  TargetLowering: Avoid hardcoding OpenBSD + __guard_local name (#167744)

Query RuntimeLibcalls for the support and the name. The check
that the implementation is exactly __guard_local instead of
unsupported feels a bit strange.


  Commit: bf4dc96bc15464fc4af9dde3a5a686a129abfdbd
      https://github.com/llvm/llvm-project/commit/bf4dc96bc15464fc4af9dde3a5a686a129abfdbd
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp

  Log Message:
  -----------
  [mlir][linalg] Clean up op verifiers without custom checks(NFC) (#168712)

This PR removes op verifiers that do not implement any custom
verification logic.


  Commit: 3d3307ecd8bdd6d9af0d82245c5fc50e4d624a7a
      https://github.com/llvm/llvm-project/commit/3d3307ecd8bdd6d9af0d82245c5fc50e4d624a7a
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/DependencyGraph.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TestModuleFileExtension.cpp
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/clang-repl/ClangRepl.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/driver/cc1as_main.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  [clang][NFC] Inline Frontend/FrontendDiagnostic.h -> Basic/DiagnosticFrontend.h (#162883)

d076608d58d1ec55016eb747a995511e3a3f72aa moved some deps around to avoid
cycles and left clang/Frontend/FrontendDiagnostic.h as a shim that
simply includes clang/Basic/DiagnosticFrontend.h. This PR inlines it so
that nothing in tree still includes clang/Frontend/FrontendDiagnostic.h.

Doing this will help prevent future layering issues. See #162865.

Frontend already depends on Basic, so no new deps need to be added
anywhere except for places that do strict dep checking.


  Commit: 2ab9492d8163de8d04704467939389d55a9b7d3e
      https://github.com/llvm/llvm-project/commit/2ab9492d8163de8d04704467939389d55a9b7d3e
  Author: Prasoon Mishra <Prasoon.Mishra at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/tools/llc/NewPMDriver.cpp

  Log Message:
  -----------
  [llc][NPM] Use buffer_ostream support for non-seekable streams (#168842)

NPM was missing buffering for non-seekable output streams (stdout,
pipes), causing assertion failures when generating object files with `-o
-`.

Use buffer_ostream to provide seekable buffering, matching legacy PM
behavior.

Co-authored-by: vikhegde <vikram.hegde at amd.com>


  Commit: cf837e2ffe7b89a861f7145235190a1a000f3559
      https://github.com/llvm/llvm-project/commit/cf837e2ffe7b89a861f7145235190a1a000f3559
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/include/lldb/Utility/NonNullSharedPtr.h

  Log Message:
  -----------
  [lldb] Add assert to NonNullSharedPtr move constructor (#168979)

As suggested by Augusto, add an assert to the NonNullSharedPtr move
constructor.


  Commit: 645e0dcbff33248bd2cdc4ac258420de9b5936b1
      https://github.com/llvm/llvm-project/commit/645e0dcbff33248bd2cdc4ac258420de9b5936b1
  Author: Brandon Wu <songwu0813 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    A llvm/lib/Target/RISCV/RISCVZilsdOptimizer.cpp
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/zilsd-ldst-opt-postra.mir
    A llvm/test/CodeGen/RISCV/zilsd-ldst-opt-prera.mir
    A llvm/test/CodeGen/RISCV/zilsd-regalloc-hints.mir

  Log Message:
  -----------
  [llvm][RISCV] Implement Zilsd load/store pair optimization (#158640)

This commit implements a complete load/store optimization pass for the
RISC-V Zilsd extension, which combines pairs of 32-bit load/store
instructions into single 64-bit LD/SD instructions when possible.
Default alignment is 8, it also provide zilsd-4byte-align feature for
looser condition.

Related work: https://reviews.llvm.org/D144002

---------

Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>


  Commit: 0a231c9ad9c8db10380379e2e6f021d6af9a7e7f
      https://github.com/llvm/llvm-project/commit/0a231c9ad9c8db10380379e2e6f021d6af9a7e7f
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/OpenMP/parallel_default_variableCategory_codegen.cpp

  Log Message:
  -----------
  [Clang][OpenMP] Bug fix Default clause variable category (#168846)

Same changes as in fix for
https://github.com/llvm/llvm-project/pull/165276 except for changes in
test case :
  1)   remove unnecessary include in test to restore Ubuntu build.
This is not needed as allocatable modifier is not applicable to the
default clause in C/C++.
2) Changes in CHECK statements to accommodate testing failure on
toolchain
builders at Google, Reported by Prabhu Rajasekaran.

---------

Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>


  Commit: 5c5c83d8bc7172b16631ed874482568444e0625a
      https://github.com/llvm/llvm-project/commit/5c5c83d8bc7172b16631ed874482568444e0625a
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [PowerPC] Fix Wparentheses warning

PPCISelLowering.cpp:15567:27: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
15567 |          CC == ISD::SETEQ && "CC mus be ISD::SETNE or ISD::SETEQ");
      |          ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


  Commit: b4a0d7e89fac280b2917b3fca906ad2f3a52da74
      https://github.com/llvm/llvm-project/commit/b4a0d7e89fac280b2917b3fca906ad2f3a52da74
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h

  Log Message:
  -----------
  [NVPTX] Fix PTX and SM conditions for narrow FP conversions (#168680)

This change fixes the PTX and SM conditions for narrow FP
conversion intrinsics and adds support for family-conditionals.


  Commit: cc5185bd146bed96d0d9e23263a56b6965d8572f
      https://github.com/llvm/llvm-project/commit/cc5185bd146bed96d0d9e23263a56b6965d8572f
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/Sema/SemaModule.cpp
    A clang/test/Modules/reference-tu-local-var.cppm

  Log Message:
  -----------
  [C++20] [Modules] Check TULocal entity within exported entities

See the attached test for example.


  Commit: e4a4bb0f6d3b3b9f3ccba79202a9074415b7dd71
      https://github.com/llvm/llvm-project/commit/e4a4bb0f6d3b3b9f3ccba79202a9074415b7dd71
  Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/addition-vector-all-ones.ll
    M llvm/test/CodeGen/PowerPC/vec_add_sub_doubleword.ll

  Log Message:
  -----------
  [PowerPC] Replace vspltisw+vadduwm instructions with xxleqv+vsubuwm for adding the vector {1, 1, 1, 1} (#160882)

This patch optimizes vector addition operations involving **`all-ones`**
vectors by leveraging the generation of vectors of -1s(using `xxleqv`,
which is cheaper than generating vectors of 1s(`vspltisw`). These are
the respective vector types.
`v2i64`: **`A + vector {1, 1}`**
`v4i32`: **`A + vector {1, 1, 1, 1}`**
`v8i16`: **`A + vector {1, 1, 1, 1, 1, 1, 1, 1}`**
`v16i8`: **`A + vector {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1}`**

The optimized version replaces `vspltisw (4 cycles)` with `xxleqv (2
cycles)` using the following identity:
`A - (-1) = A + 1`.

---------

Co-authored-by: himadhith <himadhith.v at ibm.com>
Co-authored-by: Tony Varghese <tonypalampalliyil at gmail.com>


  Commit: ea9ec7cfb538d9059a04777c5b738b4b49b6fb83
      https://github.com/llvm/llvm-project/commit/ea9ec7cfb538d9059a04777c5b738b4b49b6fb83
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M orc-rt/include/orc-rt-c/WrapperFunction.h
    M orc-rt/include/orc-rt/SPSWrapperFunction.h
    M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
    M orc-rt/unittests/DirectCaller.h
    M orc-rt/unittests/SPSWrapperFunctionTest.cpp

  Log Message:
  -----------
  [orc-rt] Rename 'Session' variables to avoid ambiguity with type. NFCI. (#168999)

Re-using Session as a variable name risks confusion with the Session
type.


  Commit: 31127b9e225c50ebadcdc268bccb16319b8db72d
      https://github.com/llvm/llvm-project/commit/31127b9e225c50ebadcdc268bccb16319b8db72d
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/Import/import-failure.ll

  Log Message:
  -----------
  [mlir][llvm] Handle debug record import edge cases (#168774)

This commit enables the direct import of debug records by default and
fixes issues with two edge cases:
- Detect early on if the address operand is an argument list (calling
getAddress() for argument lists asserts)
- Use getAddress() to check if the address operand is null, which means
the address operand is an empty metadata node, which currently is not
supported.
- Add support for debug label records.

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


  Commit: 4c81b92e602165e3f680236dde92a34de74f5e06
      https://github.com/llvm/llvm-project/commit/4c81b92e602165e3f680236dde92a34de74f5e06
  Author: Tuomas Kärnä <tuomas.karna at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  [MLIR][CODEOWNERS] Add XeGPU transform ops code owners (#168940)

Add charithaintc, Jianhui-Li and tkarna as code owners of XeGPU/TransformOps directories.


  Commit: e9fc393a9e431d1a0aebc3fe448f3cf1668fbb34
      https://github.com/llvm/llvm-project/commit/e9fc393a9e431d1a0aebc3fe448f3cf1668fbb34
  Author: Tuomas Kärnä <tuomas.karna at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.td
    M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
    M mlir/python/mlir/dialects/transform/xegpu.py
    M mlir/test/Dialect/XeGPU/transform-ops.mlir
    M mlir/test/python/dialects/transform_xegpu_ext.py

  Log Message:
  -----------
  [MLIR][XeGPU][TransformOps] Add slice_dims argument to set_op_layout_attr and set_desc_layout (#168929)

`set_op_layout_attr` and `set_desc_layout` transform ops wrap
`xegpu.layout` in an `xegpu.slice` attribute if `slice_dims` argument is
set.


  Commit: 299ea95747a5f4eb052fe37e5e10f043b8c11cf8
      https://github.com/llvm/llvm-project/commit/299ea95747a5f4eb052fe37e5e10f043b8c11cf8
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/streaming-compatible-sve-no-maximize-bandwidth.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
    M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/induction-wrapflags.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-gep-nowrap-flags.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/pr35773.ll
    M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
    M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll

  Log Message:
  -----------
  [VPlan] Drop poison-generating flags on induction trunc (#168922)

After truncating an integer-induction, neither nuw nor nsw hold.

Fixes #168902.

Co-authored-by: Florian Hahn <flo at fhahn.com>


  Commit: 8b7c49536ef3035524de09d58b6aaaea6bcc749b
      https://github.com/llvm/llvm-project/commit/8b7c49536ef3035524de09d58b6aaaea6bcc749b
  Author: David Green <david.green at arm.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/test/tools/llvm-ir2vec/entities.mir
    R llvm/test/tools/llvm-ir2vec/output/reference_triplets.txt
    R llvm/test/tools/llvm-ir2vec/output/reference_x86_entities.txt
    M llvm/test/tools/llvm-ir2vec/triplets.mir

  Log Message:
  -----------
  [IR2VEC] Rewrite triples.mir and entities.mir. NFC (#168574)

These test change and need updating every time a new instruction is
added, including generic G_ global isel instructions. The opcodes of all
instructions change force a manual update of the file, which makes it
very high cost for what it is testing.

I have rewritten it to use regexes for the triplets.mir test and just
test a couple of opcodes in the entities.mir file.


  Commit: af098e009695c07d5f56d1d8a1f9c8380919f26d
      https://github.com/llvm/llvm-project/commit/af098e009695c07d5f56d1d8a1f9c8380919f26d
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/misalignment.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/null.cpp

  Log Message:
  -----------
  Revert "[ubsan_minimal] Allow UBSan handler from Minimal runtime to accept arguments (#152192)" (#168812)

This partially reverts #152192, keeping updated tests and
some code reordering in clang/lib/CodeGen/CGExpr.cpp.

compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp is exact revert
(with followup #152419)

We don't have a good use case for that, so revert it before we are stuck
maintaining this API.

21.x does not have this patch.

This reverts commit a1209d868632b8aea10450cd2323848ab0b6776a.


  Commit: 316dbb4c1c661f08988ff8f86bf455e282012f2e
      https://github.com/llvm/llvm-project/commit/316dbb4c1c661f08988ff8f86bf455e282012f2e
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/.clang-format
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
    M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.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/SpuriouslyWakeUpFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccessCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
    M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
    M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.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/Matchers.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Reformat code and set 'KeepEmptyLines' to false (#168131)

Currently, default `clang-format` LLVM style is configured like this:
```
KeepEmptyLines:
  AtEndOfFile:     false
  AtStartOfBlock:  true
  AtStartOfFile:   true
```
This PR sets `AtStartOfBlock` and `AtStartOfFile` to false.
I think this is the general style pattern we tend to follow, in
particular Eugene made comments about empty newlines at start of
functions.


  Commit: f2cb5d7a05bacb3e39df8dd355b2fbd16f96c856
      https://github.com/llvm/llvm-project/commit/f2cb5d7a05bacb3e39df8dd355b2fbd16f96c856
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:

  Log Message:
  -----------
  [DAGCombiner] Strip outer match in visitBITREVERSE (NFC) (#169020)


  Commit: bb1b82af395fe4a717c9b10948312e260b5ca666
      https://github.com/llvm/llvm-project/commit/bb1b82af395fe4a717c9b10948312e260b5ca666
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/test/ASTMerge/struct/test.c
    M clang/test/CXX/drs/cwg6xx.cpp
    M clang/test/Index/print-type.c
    M clang/test/Layout/ms-x86-alias-avoidance-padding.cpp
    M clang/test/Modules/compare-record.c
    M clang/test/SemaObjCXX/arc-0x.mm
    M clang/unittests/AST/TypePrinterTest.cpp

  Log Message:
  -----------
  [clang][TypePrinter] Replace AppendScope with printNestedNameSpecifier (#168534)

In debug-info we soon have the need to print names using the full scope
of the entity (see discussion in
https://github.com/llvm/llvm-project/pull/159592). Particularly, when a
structure is scoped inside a function, we'd like to emit the name as
`func()::foo`. `CGDebugInfo` uses the `TypePrinter` to print type names
into debug-info. However, `TypePrinter` stops (and ignores)
`DeclContext`s that are functions. I.e., it would just print `foo`.
Ideally it would behave the same way `printNestedNameSpecifier` does.
The FIXME in
https://github.com/llvm/llvm-project/blob/47c1aa4cef638c97b74f3afb7bed60e92bba1f90/clang/lib/AST/TypePrinter.cpp#L1520-L1521
motivated this patch.

See https://github.com/llvm/llvm-project/pull/168533 for how this will
be used by `CGDebugInfo`. The plan is to introduce a new
`PrintingPolicy` that prints anonymous entities using their full scope
(including function/anonymous scopes) and the mangling number.


  Commit: 5a3c2573a9644efe3384c4144b119148088b48ef
      https://github.com/llvm/llvm-project/commit/5a3c2573a9644efe3384c4144b119148088b48ef
  Author: Yexuan Xiao <bizwen at nykz.org>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M libcxx/src/thread.cpp

  Log Message:
  -----------
  [libc++][Windows] Enable thread::hardware_concurrency to support more than 64 processors (#168229)

Starting with Windows 11, processes can utilize more than 64 processors
by default, but GetSystemInfo can only report a maximum of 64. Starting
with Windows Vista, GetActiveProcessorCount accurately retrieves the
total number of processors on the current system. I’ve implemented
similar improvements to Microsoft STL. The following links contain
additional background information:
https://github.com/microsoft/STL/issues/5453,
https://github.com/microsoft/STL/pull/5459 (note: Reason STL uses the
more complex GetLogicalProcessorInformationEx:
https://github.com/microsoft/STL/pull/5459#discussion_r2072242241.).


  Commit: 18d3db4bcd42e21e45b499a2999834904a925af0
      https://github.com/llvm/llvm-project/commit/18d3db4bcd42e21e45b499a2999834904a925af0
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/Shard/IR/ShardOps.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for readability-container-size-empty in ShardOps.cpp (NFC)


  Commit: 2f627c1878a3dba594c872773107c556992af3a1
      https://github.com/llvm/llvm-project/commit/2f627c1878a3dba594c872773107c556992af3a1
  Author: Kirill Vedernikov <kvedernikov at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/wmma-ptx88-sm120a.py
    M llvm/test/CodeGen/NVPTX/wmma.py

  Log Message:
  -----------
  [NVPTX] Support for dense and sparse MMA intrinsics with block scaling. (#163561)

This change adds dense and sparse MMA intrinsics with block scaling. The
implementation is based on [PTX ISA version
9.0](https://docs.nvidia.com/cuda/parallel-thread-execution/). Tests for
new intrinsics are added for PTX 8.7 and SM 120a and are generated by
`llvm/test/CodeGen/NVPTX/wmma-ptx87-sm120a.py`. The tests have been
verified with ptxas from CUDA-13.0 release.
Dense MMA intrinsics with block scaling were supported by
@schwarzschild-radius.


  Commit: a8058c177d0e45993108936cfca532d3dab037fc
      https://github.com/llvm/llvm-project/commit/a8058c177d0e45993108936cfca532d3dab037fc
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/lib/IR/AsmPrinter.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in AsmPrinter.cpp (NFC)


  Commit: 764c1d40ce89a2ece97d32240e5e943afdb2c9c9
      https://github.com/llvm/llvm-project/commit/764c1d40ce89a2ece97d32240e5e943afdb2c9c9
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for readability-container-size-empty in AffineOps.cpp (NFC)


  Commit: 41a9df2389b6db45b5159073c52232dd867c7f25
      https://github.com/llvm/llvm-project/commit/41a9df2389b6db45b5159073c52232dd867c7f25
  Author: Willem Kaufmann <willem.kaufmann at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/test/AST/ast-dump-expr-json.cpp
    A clang/test/AST/ast-dump-lambda-json.cpp

  Log Message:
  -----------
  [Clang] Fix handling of explicit parameters in `SemaLambda` (#168558)

Previously, the presence of an explicit parameter list was detected by
querying `getNumTypeObjects()` from the `Declarator` block of the lambda
definition. This breaks for lambdas which do not have a parameter list
but _do_ have a trailing return type; that is, both of

```
[]() -> int { return 0; };
[] -> int { return 0; };
```

would return `true` when inspecting
`LambdaExpr::hasExplicitParameters()`.

Fix this by instead querying the `LParenLoc()` from the `Declarator`'s
`FunctionTypeInfo`. If `isValid() == true`, then an explicit parameter
list must be present, and if it is `false`, then it is not.

This commit also adds `hasExplicitParameters` as an attribute to a
`LambdaExpr`'s JSON AST dump. A new test (`ast-dump-lambda-json.cpp`) is
also added to validate the fix and presence of the new attribute in the
output. `ast-dump-expr-json.cpp` is also updated to validate the new
attribute.

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


  Commit: 622f72f4bef8b177e1e4f318465260fbdb7711ef
      https://github.com/llvm/llvm-project/commit/622f72f4bef8b177e1e4f318465260fbdb7711ef
  Author: Sairudra More <sairudra60 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    A clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_01.cpp
    M clang/test/OpenMP/target_map_codegen_09.cpp
    M clang/test/OpenMP/target_map_codegen_10.cpp
    M clang/test/OpenMP/target_map_codegen_26.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp

  Log Message:
  -----------
  [OpenMP] Fix firstprivate pointer handling in target regions (#167879)

Firstprivate pointers in OpenMP target regions were not being lowered
correctly, causing the runtime to perform unnecessary present table
lookups instead of passing pointer values directly.

This patch adds the OMP_MAP_LITERAL flag for firstprivate pointers,
enabling the runtime to pass pointer values directly without lookups.
The fix handles both explicit firstprivate clauses and implicit
firstprivate semantics from defaultmap clauses.

Key changes:
- Track defaultmap(firstprivate:...) clauses in MappableExprsHandler
- Add isEffectivelyFirstprivate() to check both explicit and implicit
firstprivate semantics
- Apply OMP_MAP_LITERAL flag to firstprivate pointers in
generateDefaultMapInfo()

Map type values:
- 288 = OMP_MAP_TARGET_PARAM | OMP_MAP_LITERAL (explicit firstprivate)
- 800 = OMP_MAP_TARGET_PARAM | OMP_MAP_LITERAL | OMP_MAP_IS_PTR
(implicit firstprivate from defaultmap)

Before: Pointers got 544 (TARGET_PARAM | IS_PTR) causing runtime lookups
After:  Pointers get 288 or 800 (includes LITERAL) for direct pass

Updated the 16 existing test cases in OpenMP that were expecting the
previous (buggy) behavior. The tests were checking for map type values
of 544 (TARGET_PARAM | IS_PTR) and 32 (TARGET_PARAM) for firstprivate
pointers, which lacked the LITERAL flag (256). With this fix,
firstprivate pointers now correctly include the LITERAL flag, resulting
in map types 800 (TARGET_PARAM | LITERAL | IS_PTR) for implicit
firstprivate and 288 (TARGET_PARAM | LITERAL) for explicit firstprivate.
The updated tests now validate the correct behavior as per OpenMP 5.2
semantics, where firstprivate variables should be passed by value rather
than requiring runtime present table lookups.

---------

Co-authored-by: Sairudra More <moresair at pe31.hpc.amslabs.hpecorp.net>
Co-authored-by: Alexey Bataev <a.bataev at gmx.com>


  Commit: 274a4c0c03af8f37108479328285299414268cfa
      https://github.com/llvm/llvm-project/commit/274a4c0c03af8f37108479328285299414268cfa
  Author: Alcaro <floating at muncher.se>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M libcxx/include/__bit/has_single_bit.h

  Log Message:
  -----------
  [libc++] Optimize std::has_single_bit (#133063)

Clang translates most implementations of has_single_bit to `(v ^ (v-1))
> v-1` - except the one definition libc++ actually uses.

Proof of correctness: https://godbolt.org/z/d61bxW4r1

(Could also be fixed by teaching Clang to optimize better, but making
source match output feels clearer to me. And it improves unoptimized
performance.)


  Commit: 347512ff38748ac6ebfacbfda172edb5cf1edbe2
      https://github.com/llvm/llvm-project/commit/347512ff38748ac6ebfacbfda172edb5cf1edbe2
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/fstream
    R libcxx/test/benchmarks/streams/fstream.bench.cpp
    A libcxx/test/benchmarks/streams/ofstream.bench.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp

  Log Message:
  -----------
  [libc++] Revert fstream::read optimizations (#168894)

This causes various runtime failures, as reported in #168628.

This reverts both #165223 and #167779


  Commit: d36e2b621fd9e3354cef00135ad0cb8923ae4269
      https://github.com/llvm/llvm-project/commit/d36e2b621fd9e3354cef00135ad0cb8923ae4269
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M openmp/runtime/src/kmp.h

  Log Message:
  -----------
  [OpenMP][libomp] Add transparent task flag bit to kmp_tasking_flags (#168873)

Clang is adding support for the new `OpenMP transparent` clause on
`task` and `taskloop` directives.
The parsing and semantic handling for this clause is introduced in
https://github.com/llvm/llvm-project/pull/166810 .
To allow the compiler to communicate this clause to the `OpenMP`
runtime, a dedicated bit in `kmp_tasking_flags` is required.
This patch adds a new compiler-reserved bit `transparent` to the`
kmp_tasking_flags` structure.


  Commit: 4fca7b05e397e381466d6943a56f8407349c7594
      https://github.com/llvm/llvm-project/commit/4fca7b05e397e381466d6943a56f8407349c7594
  Author: Kashika Akhouri <akhourik at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Detect expiry of loans to trivially destructed types (#168855)

Handling Trivially Destructed Types

This PR uses `AddLifetime` to handle expiry of loans to trivially
destructed types.

Example:
```cpp
int * trivial_uar(){
    int *ptr;
    int x = 1;
    ptr = &x;
    return ptr;
}
```

The CFG created now has an Expire Fact for trivially destructed types:
```
Function: trivial_uar
  Block B2:
  End of Block
  Block B1:
    Issue (0 (Path: x), ToOrigin: 0 (Expr: DeclRefExpr))
    OriginFlow (Dest: 1 (Expr: UnaryOperator), Src: 0 (Expr: DeclRefExpr))
    Use (2 (Decl: ptr), Write)
    OriginFlow (Dest: 2 (Decl: ptr), Src: 1 (Expr: UnaryOperator))
    Use (2 (Decl: ptr), Read)
    OriginFlow (Dest: 3 (Expr: ImplicitCastExpr), Src: 2 (Decl: ptr))
    Expire (0 (Path: x))
    OriginEscapes (3 (Expr: ImplicitCastExpr))
  End of Block
  Block B0:
  End of Block
```

This Expire Fact issues UAR and UAF warnings.

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


  Commit: 5ab49edde282814f41b90431194afaff694deba7
      https://github.com/llvm/llvm-project/commit/5ab49edde282814f41b90431194afaff694deba7
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir-c/IR.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/test/python/ir/blocks.py

  Log Message:
  -----------
  [mlir][py][c] Enable setting block arg locations. (#169033)

This enables changing the location of a block argument. Follows the
approach for updating type of block arg.


  Commit: fe743233579113594f7ef964d735f41d60a211e3
      https://github.com/llvm/llvm-project/commit/fe743233579113594f7ef964d735f41d60a211e3
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

  Log Message:
  -----------
  [AArch64] Avoid introducing illegal types in LowerVECTOR_COMPRESS (NFC) (#168520)

This does not seem to be an issue currently, but when using
VECTOR_COMPRESS as part of another lowering, I found these BITCASTs
would result in "Unexpected illegal type!" errors.

For example, this would convert the legal nxv2f32 type into the illegal
nxv2i32 type. This patch avoids this by using no-op casts for unpacked
types.


  Commit: d69320e775a7c4af8f6e6bb6bd0574ead8e3d69c
      https://github.com/llvm/llvm-project/commit/d69320e775a7c4af8f6e6bb6bd0574ead8e3d69c
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/Basic/OpenMPKinds.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/OpenACC/ACC.td
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/lib/Frontend/OpenMP/OMP.cpp
    M llvm/test/TableGen/directive1.td
    M llvm/test/TableGen/directive2.td
    M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp

  Log Message:
  -----------
  [OpenMP] Introduce "loop sequence" as directive association (#168934)

OpenMP 6.0 introduced a `fuse` directive, and with it a "loop sequence"
as the associated code. What used to be "loop association" has become
"loop-nest association".

Rename Association::Loop to LoopNest, add Association::LoopSeq to
represent the "loop sequence" association.

Change the association of fuse from "block" to "loop sequence".


  Commit: e6f3cca4e846ff45eaf1d1e57cf297904da7189a
      https://github.com/llvm/llvm-project/commit/e6f3cca4e846ff45eaf1d1e57cf297904da7189a
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv-mask.s
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv-permutation.s

  Log Message:
  -----------
  [RISCV] Update SpacemiT-X60 vector mask instructions latencies (#150644)

This PR adds hardware-measured latencies for all instructions defined in
Section 15 of the RVV specification: "Vector Mask Instructions" to the
SpacemiT-X60 scheduling model.


  Commit: 6a5231e2005edce724844354f17060c5dd3c68aa
      https://github.com/llvm/llvm-project/commit/6a5231e2005edce724844354f17060c5dd3c68aa
  Author: Roger Ferrer Ibáñez <rofirrim at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp

  Log Message:
  -----------
  [clang][OpenMP][CodeGen] Use an else if instead of checking twice (#168776)

These two classes are mutually exclusive so avoid doing the two checks
when the first succeeded.


  Commit: db5eeddbd3f1d5cdb86e365a2a80b036bd66de7f
      https://github.com/llvm/llvm-project/commit/db5eeddbd3f1d5cdb86e365a2a80b036bd66de7f
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp

  Log Message:
  -----------
  [ORC] Tailor ELF debugger support plugin to load-address patching only (#168518)

In 4 years the ELF debugger support plugin wasn't adapted to other
object formats or debugging approaches. After the renaming NFC in
https://github.com/llvm/llvm-project/pull/168343, this patch tailors the
plugin to ELF and section load-address patching. It allows removal of
abstractions and consolidate processing steps with the newly enabled
AllocActions from https://github.com/llvm/llvm-project/pull/168343.

The key change is to process debug sections in one place in a
post-allocation pass. Since we can handle the endianness of the ELF file
the single `visitSectionLoadAddresses()` visitor function now, we don't
need to track debug objects and sections in template classes anymore. We
keep using the `DebugObject` class and drop `DebugObjectSection`,
`ELFDebugObjectSection<ELFT>` and `ELFDebugObject`.

Furthermore, we now use the allocation's working memory for load-address
fixups directly. We can drop the `WritableMemoryBuffer` from the debug
object and most of the `finalizeWorkingMemory()` step, which saves one
copy of the entire debug object buffer. Inlining `finalizeAsync()` into
the pre-fixup pass simplifies quite some logic.

We still track `RegisteredObjs` here, because we want to free memory
once the corresponding code is freed. There will be a follow-up patch
that turns it into a dealloc action.


  Commit: 31a552def53964025ccc507c6c90002a5d8d7e25
      https://github.com/llvm/llvm-project/commit/31a552def53964025ccc507c6c90002a5d8d7e25
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
    M llvm/lib/Analysis/LoopCacheAnalysis.cpp
    M llvm/test/Analysis/LoopCacheAnalysis/interchange-refcost-overflow.ll
    M llvm/test/Transforms/LoopInterchange/pr43326.ll

  Log Message:
  -----------
  [LoopCacheAnalysis] Replace delinearization for fixed size array (#164798)

This patch replaces the delinearization function used in
LoopCacheAnalysis, switching from one that depends on type information
in GEPs to one that does not. Once this patch and
https://github.com/llvm/llvm-project/pull/161822 are landed, we can
delete `tryDelinearizeFixedSize` from Delienarization, which is an
optimization heuristic guided by GEP type information. After Polly
eliminates its use of `getIndexExpressionsFromGEP`, we will be able to
completely delete GEP-driven heuristics from Delinearization.


  Commit: 49995b2af0abbec1095031dfe9eb049945b6d4f7
      https://github.com/llvm/llvm-project/commit/49995b2af0abbec1095031dfe9eb049945b6d4f7
  Author: Giacomo Castiglioni <giacastiglioni at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Conversion/GPUToNVVM/wmma-ops-to-nvvm.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    A mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f64.mlir

  Log Message:
  -----------
  [MLIR][GPU] subgroup_mma fp64 extension (#165873)

This PR extends the `gpu.subgroup_mma_*` ops to support fp64 type.
The extension requires special handling during the lowering to `nvvm`
due to the return type for load ops for fragment a and b (they return a
scalar instead of a struct).


  Commit: a2dc4e02e7ba77ddcb0afca0304535d8f142c98b
      https://github.com/llvm/llvm-project/commit/a2dc4e02e7ba77ddcb0afca0304535d8f142c98b
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/add-max.ll
    M llvm/test/CodeGen/AMDGPU/add_u64.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
    M llvm/test/CodeGen/AMDGPU/bf16-math.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/bitop3.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/ds_write2.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
    M llvm/test/CodeGen/AMDGPU/global-address.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/literal64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
    M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
    M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
    M llvm/test/CodeGen/AMDGPU/mad_u64_u32.ll
    M llvm/test/CodeGen/AMDGPU/max.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-local.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll
    M llvm/test/CodeGen/AMDGPU/mul.ll
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
    M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-global.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-scratch.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-smem.ll
    M llvm/test/CodeGen/AMDGPU/sub_u64.ll
    M llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
    M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll

  Log Message:
  -----------
  [AMDGPU] Enable multi-group xnack replay in hardware (GFX1250) (#169016)

This patch enables the multi-group xnack replay mode by
configuring the hardware MODE register at kernel entry.
This aligns the hardware behavior with the compiler's
existing multi-group s_wait_xcnt insertion logic.


  Commit: f4ebee0ca980f807de32841288b3785dadbc471d
      https://github.com/llvm/llvm-project/commit/f4ebee0ca980f807de32841288b3785dadbc471d
  Author: Ferran Toda <f.toda.c at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Semantics/openmp-directive-sets.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Semantics/canonicalize-omp.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/resolve-directives.cpp
    M flang/lib/Semantics/rewrite-parse-tree.cpp
    A flang/test/Parser/OpenMP/fail-looprange.f90
    A flang/test/Parser/OpenMP/fuse-looprange.f90
    A flang/test/Parser/OpenMP/fuse01.f90
    A flang/test/Parser/OpenMP/fuse02.f90
    A flang/test/Parser/OpenMP/loop-transformation-construct04.f90
    A flang/test/Parser/OpenMP/loop-transformation-construct05.f90
    A flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct01.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct02.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct03.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct04.f90
    M flang/test/Semantics/OpenMP/tile02.f90

  Log Message:
  -----------
  [Flang][OpenMP] Add semantic support for Loop Sequences and OpenMP loop fuse (#161213)

This patch adds semantics for the `omp fuse` directive in flang, as
specified in OpenMP 6.0. This patch also enables semantic support for
loop sequences which are needed for the fuse directive along with
semantics for the `looprange` clause. These changes are only semantic.
Relevant tests have been added , and previous behavior is retained with
no changes.

---------

Co-authored-by: Ferran Toda <ferran.todacasaban at bsc.es>
Co-authored-by: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>


  Commit: 3005886fee0402cbe7ae9fd93e765fa3a68e68eb
      https://github.com/llvm/llvm-project/commit/3005886fee0402cbe7ae9fd93e765fa3a68e68eb
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M flang/test/Semantics/OpenMP/loop-transformation-construct01.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix some typo-like things in test case (#168582)


  Commit: 31711c908fbd391601122c3457e71d0714fe4117
      https://github.com/llvm/llvm-project/commit/31711c908fbd391601122c3457e71d0714fe4117
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll

  Log Message:
  -----------
  [VPlan] Only apply forced cost to recipes with underlying values. (#168372)

Only apply forced instruction costs to recipes with underlying values to
match the legacy cost model. A VPlan may have a number of additional
VPInstructions without underlying values that are not considered for its
cost, and assigning forced costs to them would incorrectly inflate its
cost.

This fixes a cost divergence between legacy and VPlan-based cost models
with forced instruction costs.

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


  Commit: b98f6a54f6ccff67d6eb1cfa25a3f3d919c8f6c9
      https://github.com/llvm/llvm-project/commit/b98f6a54f6ccff67d6eb1cfa25a3f3d919c8f6c9
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

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

  Log Message:
  -----------
  [VPlan] Cast to VPIRMetadata in getMemoryLocation (NFC) (#169028)

This allows us to strip an unnecessary TypeSwitch.


  Commit: 2a3e745eaa75047e368024ad437950fa239a4aeb
      https://github.com/llvm/llvm-project/commit/2a3e745eaa75047e368024ad437950fa239a4aeb
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-scale-to-agpr.mir

  Log Message:
  -----------
  Fix test from #168609 (#169041)


  Commit: 560b83c0cd814562ed3542583b0f62a908bcd767
      https://github.com/llvm/llvm-project/commit/560b83c0cd814562ed3542583b0f62a908bcd767
  Author: Matthew Nagy <matthew.nagy at sony.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/docs/TypeSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/SanitizerArgs.cpp
    A clang/test/CodeGen/sanitize-type-outlined.cpp
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
    M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
    M llvm/test/Instrumentation/TypeSanitizer/alloca-only.ll
    M llvm/test/Instrumentation/TypeSanitizer/alloca.ll
    M llvm/test/Instrumentation/TypeSanitizer/anon.ll
    M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
    M llvm/test/Instrumentation/TypeSanitizer/basic.ll
    R llvm/test/Instrumentation/TypeSanitizer/basic_outlined.ll
    M llvm/test/Instrumentation/TypeSanitizer/byval.ll
    M llvm/test/Instrumentation/TypeSanitizer/globals.ll
    R llvm/test/Instrumentation/TypeSanitizer/globals_outlined.ll
    M llvm/test/Instrumentation/TypeSanitizer/invalid-metadata.ll
    M llvm/test/Instrumentation/TypeSanitizer/memintrinsics.ll
    M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
    M llvm/test/Instrumentation/TypeSanitizer/sanitize-no-tbaa.ll
    M llvm/test/Instrumentation/TypeSanitizer/swifterror.ll

  Log Message:
  -----------
  [TySan][Clang] Add clang flag to use tysan outlined instrumentation a… (#166170)

…nd update docs


  Commit: 8c3f59f1b297ec65b5870ebfd727a40f632de966
      https://github.com/llvm/llvm-project/commit/8c3f59f1b297ec65b5870ebfd727a40f632de966
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Conversion/GPUToNVVM/wmma-ops-to-nvvm.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    R mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f64.mlir

  Log Message:
  -----------
  Revert "[MLIR][GPU] subgroup_mma fp64 extension" (#169049)

Reverts llvm/llvm-project#165873

The revert is triggered by a failing integration test on a couple of
buildbots.


  Commit: 77c329f54ca5cc884001e216afa47990aad27de4
      https://github.com/llvm/llvm-project/commit/77c329f54ca5cc884001e216afa47990aad27de4
  Author: Muzammiluddin Syed <muzasyed at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  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] Adds wmma scaled intrinsics for gfx1250 (#165915)

Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>


  Commit: bc323b609bd54747b8acda45d91a19f7a343a91b
      https://github.com/llvm/llvm-project/commit/bc323b609bd54747b8acda45d91a19f7a343a91b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-nondeterminism.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/lds-misaligned-bug.ll
    R llvm/test/CodeGen/AMDGPU/limit-coalesce.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-local-i16.ll
    M llvm/test/CodeGen/AMDGPU/merge-stores.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    A llvm/test/CodeGen/AMDGPU/no-limit-coalesce.mir
    M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
    M llvm/test/CodeGen/AMDGPU/scratch-simple.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v8f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v8i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v8p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
    M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll

  Log Message:
  -----------
  AMDGPU: Stop implementing shouldCoalesce (#168988)

Use the default, which freely coalesces anything it can.
This mostly shows improvements, with a handful of regressions.
The main concern would be if introducing wider registers is more
likely to push the register usage up to the next occupancy tier.


  Commit: 0b6db777ba9821bc17b969ddf6fefee54519c4f4
      https://github.com/llvm/llvm-project/commit/0b6db777ba9821bc17b969ddf6fefee54519c4f4
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-av-classes.ll
    M llvm/test/CodeGen/AMDGPU/masked-load-vectortypes.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll

  Log Message:
  -----------
  [AMDGPU] Handle AV classes in SIFixSGPRCopies::processPHINode (#169038)

Fix a problem exposed by #166483 using AV classes in more places.
`isVectorRegister` only accepts registers of VGPR or AGPR classes.
`hasVectorRegisters` additionally accepts the combined AV classes.

Fixes: #168761


  Commit: 89bb99dd0ed9c7e5dbbc80c6cfb369768bfee96b
      https://github.com/llvm/llvm-project/commit/89bb99dd0ed9c7e5dbbc80c6cfb369768bfee96b
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td

  Log Message:
  -----------
  [acc][flang] Implement acc interface for tracking type descriptors (#168982)

FIR operations that use derived types need to have type descriptor
globals available on device when offloading. Examples of this can be
seen in `CUFDeviceGlobal` which ensures that such type descriptor uses
work on device for CUF.

Similarly, this is needed for OpenACC. This change introduces a new
interface to the OpenACC dialect named
`IndirectGlobalAccessOpInterface` which can be attached to operations
that may result in generation of accesses that use type descriptor
globals. This functionality is needed for the `ACCImplicitDeclare` pass
that is coming in a follow-up change which implicitly ensures that all
referenced globals are available in OpenACC compute contexts.

The interface provides a `getReferencedSymbols` method that collects all
global symbols referenced by an operation. When a symbol table is
provided, the implementation for FIR recursively walks type descriptor
globals to find all transitively referenced symbols.

Note that alternately this could have been implemented in different
ways:
- Codegen could implicitly generate such type globals as needed by
changing the technique that relies on populating them during lowering
(eg generate them directly in gpu.module during codegen).
- This interface could attach to types instead of operations for a
potentially more conservative implementation which maps all type
descriptors even if the underlying implementation using it won't
necessarily need such mapping.

The technique chosen here is consistent with `CUFDeviceGlobal` (which
walks operations inside `prepareImplicitDeviceGlobals`) and avoids
conservative mapping of all type descriptors.


  Commit: 4538818c797a486edf48cbdf047a354210c3843b
      https://github.com/llvm/llvm-project/commit/4538818c797a486edf48cbdf047a354210c3843b
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/test/OpenMP/spirv_target_codegen_basic.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-runtimecc.mlir

  Log Message:
  -----------
  [OpenMP][OMPIRBuilder] Use runtime CC for runtime calls (#168608)

Some targets have a specific calling convention that should be used for
generated calls to runtime functions.

Pass that down and use it.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: bb2e4686c1c8e4955ff5d18a7baaef3fe14ba36e
      https://github.com/llvm/llvm-project/commit/bb2e4686c1c8e4955ff5d18a7baaef3fe14ba36e
  Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp

  Log Message:
  -----------
  [TSan] [Darwin] Fix off by one in TSAN init due to MemoryRangeIsAvailable (#169008)


  Commit: 76a68164bb29171664c91f3583b047e2913f5e73
      https://github.com/llvm/llvm-project/commit/76a68164bb29171664c91f3583b047e2913f5e73
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M flang/lib/Lower/Runtime.cpp

  Log Message:
  -----------
  [flang][NFC] replace std::exit by fir::emitFatalError in Lower/Runtime.cpp (#169050)


  Commit: f56ddde410cd143792ce165958bc42fdcc9f7bb5
      https://github.com/llvm/llvm-project/commit/f56ddde410cd143792ce165958bc42fdcc9f7bb5
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/pr168209.ll

  Log Message:
  -----------
  [ARM] Restore hasSideEffects flag on t2WhileLoopSetup (#168948)

ARM relies on deprecated TableGen behavior of guessing instruction
properties from patterns (`def ARM : Target` doesn't have
`guessInstructionProperties` set to false).

Before #168209, TableGen conservatively guessed that `t2WhileLoopSetup`
has side effects because the instruction wasn't matched by any pattern.

After the patch, TableGen guesses it has no side effects because the
added pattern uses only `arm_wlssetup` node, which has no side effects.

Add `SDNPSideEffect` to the node so that TableGen guesses the property
right, and also `hasSideEffects = 1` to the instruction in case ARM ever
sets `guessInstructionProperties` to false.


  Commit: 01227abf8d0f2c4f8d0718354dab2e8ddca8640e
      https://github.com/llvm/llvm-project/commit/01227abf8d0f2c4f8d0718354dab2e8ddca8640e
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

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

  Log Message:
  -----------
  [bazel][ORC] Port #168518: orc deps (#169059)


  Commit: e724009f2f449dfcfb44c29f39872b56f6a85af1
      https://github.com/llvm/llvm-project/commit/e724009f2f449dfcfb44c29f39872b56f6a85af1
  Author: David Peixotto <peix at meta.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  [lldb] Add MockMemory class for dwarf expression testing (#168467)

This change unifies the way that we specify mocked memory to make it
easy to control the process and target memory contents for unit tests.
We add a MockMemory class that can be used in dwarf expression testing
to specify the output of the `ReadMemory` function.

The MockMemory class is built on a map that maps a `(address, size)`
pair to a vector of bytes that is `size` bytes long and contains the
memory contents for that `address`.

The MockProcessWithMemRead and MockTarget classes are updated to use the
new MockMemory interface. The MockProcessWithMemRead class was renamed
to MockProcess and the old MockProcess was deleted. The old MockProcess had
and ReadMemory implementation that returned the value `i & 0xff` for reading the
address `i` and was easily be replaced with the MockMemory object.

The CreateTestContext function now takes optional values for process memory and 
target memory and uses those to create the mock objects.


  Commit: 9d2b7ecb46e1c9e0f07679238bc060aebae24072
      https://github.com/llvm/llvm-project/commit/9d2b7ecb46e1c9e0f07679238bc060aebae24072
  Author: Sebastian Pop <spop at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/WeakCrossingSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/run-specific-dependence-test.ll

  Log Message:
  -----------
  [DA] remove getSplitIteration (#167698)

Remove getSplitIteration.
A follow-up patch will also remove DVEntry::Splitable and Dependnece::isSplitable.


  Commit: 8be46410248f8298af1f12be1c52e2824ce25951
      https://github.com/llvm/llvm-project/commit/8be46410248f8298af1f12be1c52e2824ce25951
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/test/Lower/select-case-statement.f90

  Log Message:
  -----------
  [flang] Use hlfir.cmpchar for SELECT CASE of charsSelect case hlfir cmpchar (#168476)

For SELECT CASE with character selector, instead of allways calling
runtime comparison function, emit hlfir.cmpchar. This has different
behaviors at different optimization levels: at -O0, it still emits
flang-rt call, but at higher optimization levels it does inline
comparison. Modify test/Lower/select-case-statement.f90 to test both
comparison cases.


  Commit: b27749d8c7191f894e337a402344af7a9de9a5b0
      https://github.com/llvm/llvm-project/commit/b27749d8c7191f894e337a402344af7a9de9a5b0
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp

  Log Message:
  -----------
  [scudo] Small cleanup of memory tagging code part 2. (#168807)

Make the systemSupportsMemoryTagging() function return even on system
that don't support memory tagging. This avoids the need to always check
if memory tagging is supported before calling the function.

Modify iterateOverChunks() to call useMemoryTagging<>(Options) to
determine if mte is supported. This already uses the cached check of
systemSupportsMemoryTagging() rather than directly calling that
function.

Updated the code that calls systemSupportsMemoryTagging().


  Commit: f7e0432219b2c9de80d0ccd198748f563d2a71ea
      https://github.com/llvm/llvm-project/commit/f7e0432219b2c9de80d0ccd198748f563d2a71ea
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/LTO/LTOModule.cpp

  Log Message:
  -----------
  [LTO] Use a range-based for loop (NFC) (#169000)

Identified with modernize-loop-convert.


  Commit: 2185379528cb3d7f29c3eca1501fec2121fd1c02
      https://github.com/llvm/llvm-project/commit/2185379528cb3d7f29c3eca1501fec2121fd1c02
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h

  Log Message:
  -----------
  [CAS] Remove redundant casts (NFC) (#169002)

FileOffset::get already returns uint64_t.

Identified with readability-redundant-casting.


  Commit: b6c2c100347b11bbf79277e442f505ca2d6bc021
      https://github.com/llvm/llvm-project/commit/b6c2c100347b11bbf79277e442f505ca2d6bc021
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/Stmt.h
    M clang/lib/AST/ExprObjC.cpp

  Log Message:
  -----------
  [AST] Construct iterator_range with the conversion constructor (NFC) (#169004)

This patch simplifies iterator_range construction with the conversion
constructor.


  Commit: 28c048ec0f0a677115a0b00a88a7d013f925f2b8
      https://github.com/llvm/llvm-project/commit/28c048ec0f0a677115a0b00a88a7d013f925f2b8
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    R compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-warnings.c
    A compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-warnings.ll
    M llvm/lib/ProfileData/InstrProfCorrelator.cpp

  Log Message:
  -----------
  [profdata] Skip probes with missing counter and function pointers (#163254)


  Commit: 55d8b63195882d07ec4dc390d2c558bebc4e295d
      https://github.com/llvm/llvm-project/commit/55d8b63195882d07ec4dc390d2c558bebc4e295d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake

  Log Message:
  -----------
  [lldb] Don't enable the Limited C API with Python 3.13 and SWIG 4.4.0 (#169065)

Don't automatically enable the Limited C API when we're targeting Python
3.13 or later in combination with SWIG 4.4.0 due to a bug in the latter.

SWIG Issue: https://github.com/swig/swig/issues/3283
SWIG PR: https://github.com/swig/swig/pull/3285


  Commit: f8a803952e9e8daa2c2714d8346b696799e9c833
      https://github.com/llvm/llvm-project/commit/f8a803952e9e8daa2c2714d8346b696799e9c833
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/Support/ThreadPool.h

  Log Message:
  -----------
  llvm: Disable copy for SingleThreadExecutor (#168782)

This is a workaround for the MSVC compiler, which attempts to generate a
copy assignment operator implementation for classes marked as
`__declspec(dllexport)`. Explicitly marking the copy assignment operator
as deleted works around the problem.

DevCom ticket:
https://developercommunity.microsoft.com/t/Classes-marked-with-__declspecdllexport/11003192


  Commit: 39d4dfbe55cbea6ca7d506b8acd8455ed0443bf9
      https://github.com/llvm/llvm-project/commit/39d4dfbe55cbea6ca7d506b8acd8455ed0443bf9
  Author: Ryan Buchner <buchner.ryan at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    A llvm/test/CodeGen/RISCV/vmadd-reassociate.ll

  Log Message:
  -----------
  [RISCV] Incorporate scalar addends to extend vector multiply accumulate chains (#168660)

Previously, the following:
      %mul0 = mul nsw <8 x i32> %m00, %m01
      %mul1 = mul nsw <8 x i32> %m10, %m11
      %add0 = add <8 x i32> %mul0, splat (i32 32)
      %add1 = add <8 x i32> %add0, %mul1

    lowered to:
      vsetivli zero, 8, e32, m2, ta, ma
      vmul.vv v8, v8, v9
      vmacc.vv v8, v11, v10
      li a0, 32
      vadd.vx v8, v8, a0

    After this patch, now lowers to:
      li a0, 32
      vsetivli zero, 8, e32, m2, ta, ma
      vmv.v.x v12, a0
      vmadd.vv v8, v9, v12
      vmacc.vv v8, v11, v10

Modeled on 0cc981e0 from the AArch64 backend.

C-code for the example case (`clang -O3 -S -mcpu=sifive-x280`):
```
int madd_fail(int a, int b, int * restrict src, int * restrict dst, int loop_bound) {
  for (int i = 0; i < loop_bound; i += 2) {
    dst[i] = src[i] * a + src[i + 1] * b + 32;
  }
}
```


  Commit: 4511c355c35153c6b8f5fd3d0b75f77c126fe8e6
      https://github.com/llvm/llvm-project/commit/4511c355c35153c6b8f5fd3d0b75f77c126fe8e6
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/scc-clobbered-sgpr-to-vmem-spill.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Remove leftover implicit operands from SI_SPILL/SI_RESTORE." (#169068)

PR causes build failures with expensive checks enabled

Reverts llvm/llvm-project#168546


  Commit: dbac91743aa0167d783568a593dfe8b675b38b46
      https://github.com/llvm/llvm-project/commit/dbac91743aa0167d783568a593dfe8b675b38b46
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp

  Log Message:
  -----------
  [CIR] Add NYI cases to builtin switch statement and move existing cases into functions (#168699)

This PR adds a number of cases to the switch statement in
`CIRGenBUiltin.cpp`. Some existing cases were relocated, so the order
matches the order from the switch statement in clangs codegen.
Additionally, some exisiting cases were moved to functions, to keep the
code a little cleaner. In the future, it will be easier to keep track of
which builtins have not been implemented, since there would always be a
NYI case for unimplemented builtins.


  Commit: 36d7e911dcb5f87145ad079e658bd564933ba19c
      https://github.com/llvm/llvm-project/commit/36d7e911dcb5f87145ad079e658bd564933ba19c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/test/Target/SPIRV/mlir-translate.mlir
    M mlir/test/Target/SPIRV/module.mlir

  Log Message:
  -----------
  [MLIR] Drop use of REQUIRES:shell from tests (#168989)

This patch drops two instances of REQUIRES: shell from MLIR tests. This
feature does not mean much given the internal shell is the default for
MLIR. It does prevent these tests from running on Windows, but it does
not seem like there is anything inherent to these tests preventing them
from running on Windows (minus maybe the lack of spirv-tools, which is
explicitly required anyways.


  Commit: 226c51c58b6a26b78f0884a2a45ecc527afdc4b1
      https://github.com/llvm/llvm-project/commit/226c51c58b6a26b78f0884a2a45ecc527afdc4b1
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaStmt.cpp
    R clang/test/OpenMP/nvptx_target_exceptions_messages.cpp
    A clang/test/OpenMP/target_exceptions_messages.cpp

  Log Message:
  -----------
  [clang][Sema][OpenMP] Fix GPU exception target check (#169056)

Looks like I missed this when I added `Triple::isGPU()`.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 00fb67af95635009f1539c88e8706665f4a2d017
      https://github.com/llvm/llvm-project/commit/00fb67af95635009f1539c88e8706665f4a2d017
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Support/CommandLine.cpp

  Log Message:
  -----------
  [Support] Use range-based for loops (NFC) (#169001)

Identified with modernize-loop-convert.


  Commit: fea070b610e0dc08447be60db7f13c150b2892d5
      https://github.com/llvm/llvm-project/commit/fea070b610e0dc08447be60db7f13c150b2892d5
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp

  Log Message:
  -----------
  [HLSL] Add Load overload with status (#166449)

This PR adds a Load method for resources, which takes an additional
parameter by reference, status. It fills the status parameter with a 1
or 0, depending on whether or not the resource access was mapped.
CheckAccessFullyMapped is also added as an intrinsic, and called in the
production of this status bit.
Only addresses DXIL for the below issue:
https://github.com/llvm/llvm-project/issues/138910
Also only addresses the DXIL variant for the below issue:
https://github.com/llvm/llvm-project/issues/99204


  Commit: 0182a76970e4e7a9faa3be049ea371128a28ee39
      https://github.com/llvm/llvm-project/commit/0182a76970e4e7a9faa3be049ea371128a28ee39
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp

  Log Message:
  -----------
  Revert "[ORC] Tailor ELF debugger support plugin to load-address patching only" (#169073)

Reverts llvm/llvm-project#168518


  Commit: 5dbe83c3023a795595b52e75cdfc7835882e5db1
      https://github.com/llvm/llvm-project/commit/5dbe83c3023a795595b52e75cdfc7835882e5db1
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-link.cpp
    M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp

  Log Message:
  -----------
  [OpenACC][CIR] Handle 'declare' construct local lowering (&link clause) (#168793)

'declare' is a declaration directive, so it can appear at 3 places:
Global/NS scope, class scope, or local scope. This patch implements ONLY
the 'local' scope lowering for 'declare'.

A 'declare' is lowered as a 'declare_enter' and 'declare_exit'
operation, plus data operands like all others. Sema restricts the form
of some of these, but they are otherwise identical.

'declare' DOES require at least 1 clause for the examples to make sense,
so this ALSO implements 'link', which is the 'simpliest' one. It is ONLY
attached to the 'declare_enter', and doesn't require any additional work
besides a very small addition to how we handle clauses.


  Commit: c6876603e9870fd16252f7796871b1a797a10bf1
      https://github.com/llvm/llvm-project/commit/c6876603e9870fd16252f7796871b1a797a10bf1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/load-global-invariant.ll

  Log Message:
  -----------
  AMDGPU: Add baseline test for split/widen invariant loads (#168913)

This works fine on main, but broke after a future patch.


  Commit: f8bbb21fb9d25c18cad6e197eb29378f060975aa
      https://github.com/llvm/llvm-project/commit/f8bbb21fb9d25c18cad6e197eb29378f060975aa
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  AMDGPU: Handle invariant when lowering global loads (#168914)

Global with invariant should be treated identically to
constant.


  Commit: 76425fd368f68813ed4b26759d9e91cc40a1c1bd
      https://github.com/llvm/llvm-project/commit/76425fd368f68813ed4b26759d9e91cc40a1c1bd
  Author: Matthew Nagy <matthew.nagy at sony.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/test/CodeGen/sanitize-type-outlined.cpp

  Log Message:
  -----------
  fix tysan test failing on unsupported arches (#169066)


  Commit: 1a29a2359b70f1bb4141324162dcfe4d27a6f026
      https://github.com/llvm/llvm-project/commit/1a29a2359b70f1bb4141324162dcfe4d27a6f026
  Author: venk-ks <156861430+venk-ks at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Sema/warn-fortify-source.c

  Log Message:
  -----------
  [Clang][Sema] Add fortify warnings for strcat (#168965)

Continue to add fortify warnings that are missing in Clang for string
functions as part of #142230


  Commit: ebb04b2b4c38e6bb7b6068f3474a8e8edf912f4d
      https://github.com/llvm/llvm-project/commit/ebb04b2b4c38e6bb7b6068f3474a8e8edf912f4d
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/test/Transforms/ExpandVariadics/expand-va-intrinsic-split-linkage.ll
    M llvm/test/Transforms/ExpandVariadics/expand-va-intrinsic-split-simple.ll
    M llvm/test/Transforms/ExpandVariadics/intrinsics.ll

  Log Message:
  -----------
  [profcheck] Propagate profile metadata to Wrapper function in optimize mode of ExpandVariadic. (#168161)

This PR fixes the issue where profile metadata (`!prof`) is dropped from
the `VariadicWrapper` when `ExpandVariadics` runs in
`--expand-variadics-override=optimize` mode.

In optimize mode, the pass splits the original variadic function into
two parts:

- A **VariadicWrapper** (retaining the original name) that handles the
`va_list` setup.
- A **FixedArityReplacement** (new function) that contains the original
core logic.

During this process, the basic blocks and associated metadata are
spliced into the `FixedArityReplacement`. Consequently, the
`VariadicWrapper`—which serves as the entry point for callers—is left
without function entry count metadata.

This change explicitly copies the `MD_prof` metadata from the
`FixedArityReplacement` back to the `VariadicWrapper` after the split is
defined.

Co-authored-by: Jin Huang <jingold at google.com>


  Commit: 52f9a57b2961da168b2a5ffe9eee687fe9068c2b
      https://github.com/llvm/llvm-project/commit/52f9a57b2961da168b2a5ffe9eee687fe9068c2b
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp

  Log Message:
  -----------
  [clang-doc] Fix `</section>` mismatch in the namespace template (#168966)

A `</section>` tag wasn't inside the `{{#HasRecords}}` Mustache tag, which caused a
mismatch if there weren't any records to render.


  Commit: 69589dd2c0b34a664c24f7ffbb084d2eea848ab6
      https://github.com/llvm/llvm-project/commit/69589dd2c0b34a664c24f7ffbb084d2eea848ab6
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/shufflevector.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
    M llvm/test/Transforms/VectorCombine/AMDGPU/extract-insert-chain-to-shuffles.ll
    M llvm/test/Transforms/VectorCombine/AMDGPU/extract-insert-i8.ll

  Log Message:
  -----------
  AMDGPU: Improve getShuffleCost accuracy for 8- and 16-bit shuffles (#168818)

These shuffles can always be implemented using v_perm_b32, and so this
rewrites the analysis from the perspective of "how many v_perm_b32s does
it take to assemble each register of the result?"

The test changes in Transforms/SLPVectorizer/reduction.ll are
reasonable: VI (gfx8) has native f16 math, but not packed math.


  Commit: 3fec26e3294ae0f276ff08fd810850421444588c
      https://github.com/llvm/llvm-project/commit/3fec26e3294ae0f276ff08fd810850421444588c
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

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

  Log Message:
  -----------
  [DAGCombiner] Don't optimize insert_vector_elt into shuffle if implicit truncation exists (#169022)

Fixes #169017


  Commit: ad9bc6a1b5f5dc51d25fe4c9715318b1023bcc80
      https://github.com/llvm/llvm-project/commit/ad9bc6a1b5f5dc51d25fe4c9715318b1023bcc80
  Author: Sebastian Pop <spop at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

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

  Log Message:
  -----------
  [DA] remove Constraints class (#168963)

Remove the Constraints class from dependence analysis as it is now unused.


  Commit: 9a56e55ee9b3ee174bef9d74710819c68908615f
      https://github.com/llvm/llvm-project/commit/9a56e55ee9b3ee174bef9d74710819c68908615f
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-deviceptr.cpp

  Log Message:
  -----------
  [OpenACC][CIR] deviceptr clause lowering for local 'declare' (#169085)

This is very similar to the 'link' that was done in the last patch,
except this works on all storage, but only on pointers. This also shows
a bit more of how the enter/exit pairs work in the test.

Implementation itself is very simple, as it is just properly handling it
in the clause handler.


  Commit: 45081fb706a6c4983d06285e0d0da991964a624a
      https://github.com/llvm/llvm-project/commit/45081fb706a6c4983d06285e0d0da991964a624a
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/mustache-index.cpp

  Log Message:
  -----------
  [clang-doc] `<ul>` must be nested in `<li>` (#168972)

The HTML spec states that only `<li>` can be children of `<ul>`. Nested
`<ul>` tags in an unordered list must be children of `<li>`.


  Commit: 6be7cf085ba9e2c02ecb490992f59bbcf111289e
      https://github.com/llvm/llvm-project/commit/6be7cf085ba9e2c02ecb490992f59bbcf111289e
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h

  Log Message:
  -----------
  [mlir][presburger] Fix PresburgerSpace comment (#167292)


  Commit: 427c18208f73e8d193c4e8f0e05493cb9d2272eb
      https://github.com/llvm/llvm-project/commit/427c18208f73e8d193c4e8f0e05493cb9d2272eb
  Author: Sebastian Pop <spop at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll

  Log Message:
  -----------
  [unroll-and-jam] Document dependencies_multidims.ll and fix loop bounds (NFC) (#156578)

Add detailed comments explaining why each function should/shouldn't be
unroll-and-jammed based on memory access patterns and dependencies.

Fix loop bounds to ensure array accesses are within array bounds:
  * sub_sub_less: j starts from 1 (not 0) to ensure j-1 >= 0
  * sub_sub_less_3d: k starts from 1 (not 0) to ensure k-1 >= 0
  * sub_sub_outer_scalar: j starts from 1 (not 0) to ensure j-1 >= 0


  Commit: a52e1af7f766e26a78d10d31da98af041dd66410
      https://github.com/llvm/llvm-project/commit/a52e1af7f766e26a78d10d31da98af041dd66410
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/objc/AssertEqualsCheck.cpp
    M clang/docs/LibASTMatchersReference.html
    M clang/include/clang/ASTMatchers/ASTMatchers.h

  Log Message:
  -----------
  [ASTMatchers] Make isExpandedFromMacro accept llvm::StringRef (#167060)

We can use non-owning `StringRef` in `MacroName` parameter to avoid
unnecessary copy because `MacroName` only used as an argument to
`internal::getExpansionLocOfMacro` which already accept `StringRef`.


  Commit: 4d97b78b8fa1f5e1a9ea1d7ab5ac181a239e0813
      https://github.com/llvm/llvm-project/commit/4d97b78b8fa1f5e1a9ea1d7ab5ac181a239e0813
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Enable misc-const-correctness rule in clang-tidy codebase (#167172)

After successful `misc-const-correctness` cleanup (last patch
https://github.com/llvm/llvm-project/pull/167131), we can enable
`misc-const-correctness` rule for the whole project.

During cleanup, I didn't encounter any false positives so it's safe to
assume that we will have minimal FP in the future.


  Commit: 778e104dee8186c8a8c8ed781692825fb3a8bec8
      https://github.com/llvm/llvm-project/commit/778e104dee8186c8a8c8ed781692825fb3a8bec8
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp

  Log Message:
  -----------
  [MLIR] [XeGPU] Fix dropSgLayoutAndData & dropInstData in SliceAttr (#168618)


  Commit: 68ba2864d936a59ac1e382f754a15b975b04900d
      https://github.com/llvm/llvm-project/commit/68ba2864d936a59ac1e382f754a15b975b04900d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp

  Log Message:
  -----------
  [SCEVExp] Remove early exit, rely on InstSimplifyFolder (NFCI).

Remove the SCEV-based check refined in
https://github.com/llvm/llvm-project/pull/156910, as InstSimplifyFolder
manages to simplify the generated code to false directly as well.


  Commit: 86cbb36b36c15af82a87e89c08fb84792657583d
      https://github.com/llvm/llvm-project/commit/86cbb36b36c15af82a87e89c08fb84792657583d
  Author: Frankie Robertson <frankier at users.noreply.github.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lld/COFF/DriverUtils.cpp
    M lld/COFF/Options.td
    M lld/test/COFF/driver.test

  Log Message:
  -----------
  [lld] Add (ignored) /link flag to lld-link for compatibility with MSVC link.exe (#168364)

Various build tools may produce command lines invoking clang-cl and
lld-link which contain /link twice like so: e.g. `clang-cl.exe
sanitycheckcpp.cc /Fesanitycheckcpp.exe .... /link /link ...`

If link.exe is used, it ignores the extra `/link` and just issues a
warning, however lld-link tries to treat `/link` as a file name.

This PR adds a flag which is ignored in order to improve compatibility
with link.exe

There's some extra context including an "in-the-wild" example and
reproducer of the problem here:
https://github.com/frankier/meson_clang_win_activation

Co-authored-by: Frankie Robertson <frankie at robertson.name>


  Commit: 6ed829baa3861adbe053c16878fbae74b9c1e9d6
      https://github.com/llvm/llvm-project/commit/6ed829baa3861adbe053c16878fbae74b9c1e9d6
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/bindings/lua/lua-typemaps.swig

  Log Message:
  -----------
  [lldb] Restore the old behavior in lua-typemaps.swig (#169103)

Restore the original behavior (i.e. before #167764), which uses
eOpenOptionWriteOnly, not eOpenOptionReadWrite. Fixes TestLuaAPI.py.


  Commit: 2fcbdc18dfdf13a13d693b3e6523c25d65246d8c
      https://github.com/llvm/llvm-project/commit/2fcbdc18dfdf13a13d693b3e6523c25d65246d8c
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/test/CodeGen/sanitize-type-outlined.cpp

  Log Message:
  -----------
  Really fix tysan test failing on unsupported arches (#169096)

'target' is not one of the features recognized by clang tests, and the
test doesn't require X86 backend to be built. Specify the target
explicitly instead. Remove duplicate `-fsanitize=type` as well.


  Commit: 3d5191fd7508caaff5435c2ed1d90fe472d3f0c1
      https://github.com/llvm/llvm-project/commit/3d5191fd7508caaff5435c2ed1d90fe472d3f0c1
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

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

  Log Message:
  -----------
  [test][Support] Disable SignalsTest.PrintsSymbolizerMarkup (#168974)

This test checks that DSOMarkupPrinter::printDSOMarkup prints the module
and segment mappings, but that is only done if we can determine the GNU
build ID for the given object, and in many environments that is not
enabled by default (e.g. the FreeBSD Clang driver never enables it, and
various other Clang drivers only do so when ENABLE_LINKER_BUILD_ID is
opted into at configure time). GCC tends to enable it by default, and
many distributions enable it for Clang, so this has gone unnoticed for a
while, but this test has been failing on FreeBSD since its creation.

Fixes: 22b9404f09dc ("Optionally print symbolizer markup backtraces.")
See: https://github.com/llvm/llvm-project/issues/168891


  Commit: bf6e3f1deed81b8783a6b4ceccbbc3f6a4f65283
      https://github.com/llvm/llvm-project/commit/bf6e3f1deed81b8783a6b4ceccbbc3f6a4f65283
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang-tools-extra/include-cleaner/test/lit.cfg.py

  Log Message:
  -----------
  [include-cleaner] Use lit internal shell by default for tests (#169092)

All of the tests seem to be compatible with the internal shell and the
internal shell is typically faster by 10-15% on top of providing a
better debugging experience.


  Commit: d7307f458cd3522470859ce0cee8d47d37a70670
      https://github.com/llvm/llvm-project/commit/d7307f458cd3522470859ce0cee8d47d37a70670
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M compiler-rt/test/orc/TestCases/Darwin/x86-64/objc-imageinfo.S

  Log Message:
  -----------
  [ORC] Fix obj-imageinfo.S on X86 Darwin with Internal Shell (#169104)

d464c99f595b69d3a34b361b6a935e803c60d308 fixes this test on AArch64
Darwin, but I did not realize that there was another X86 version of the
test. This patch also updates the X86 version of the test in a similar
manner.


  Commit: 9fa7627d891007e495eb701a30c09761403f8042
      https://github.com/llvm/llvm-project/commit/9fa7627d891007e495eb701a30c09761403f8042
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  DAG: Handle poison in m_Undef (#168288)


  Commit: 7e6c913f35de79d89eefb35f0ce5086f11a6f454
      https://github.com/llvm/llvm-project/commit/7e6c913f35de79d89eefb35f0ce5086f11a6f454
  Author: John Harrison <harjohn at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/unittests/Editline/EditlineTest.cpp

  Log Message:
  -----------
  [lldb] Fix EditlineTest closing files multiple times. (#169100)

This updates the EditlineTest to use `lldb::FileSP` to ensure the
associated FDs are only closed a single time.

Currently, there is some confusion between the `FilePointer`,
`PseudoTerminal` and `LockableStreamFile` about when the files are
closed resulting in a crash in some due to a `fflush` on a closed file.


  Commit: 677fbf8edbc5057f43e8cc178c4aa50a857aa7c1
      https://github.com/llvm/llvm-project/commit/677fbf8edbc5057f43e8cc178c4aa50a857aa7c1
  Author: Thibault Monnier <97551402+Thibault-Monnier at users.noreply.github.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGen/X86/avx-builtins.c
    A clang/test/CIR/CodeGen/X86/avx10_2_512bf16-builtins.c
    A clang/test/CIR/CodeGen/X86/avx10_2bf16-builtins.c
    A clang/test/CIR/CodeGen/X86/avx512f-builtins.c
    A clang/test/CIR/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CIR/CodeGen/X86/sse-builtins.c
    M clang/test/CIR/CodeGen/X86/sse2-builtins.c

  Log Message:
  -----------
  [CIR] Upstream CIR codegen for undef x86 builtins (#167945)


  Commit: 136c9da55f72f692b9d2e9f623e09ae619a86e37
      https://github.com/llvm/llvm-project/commit/136c9da55f72f692b9d2e9f623e09ae619a86e37
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/test/CIR/CodeGen/global-init.cpp

  Log Message:
  -----------
  [CIR] Implement global array dtor support (#169070)

This implements handling to destroy global arrays that require
destruction. Unlike classic codegen, CIR emits the destructor loop into
a 'dtor' region associated with the global array variable. Later, during
LoweringPrepare, this code is moved into a helper function and a call to
__cxa_atexit arranges for it to be called during the shared object
shutdown.


  Commit: 13011fe5c16be3ac12e9d7f5530d5301ebeb484e
      https://github.com/llvm/llvm-project/commit/13011fe5c16be3ac12e9d7f5530d5301ebeb484e
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/include/lldb/Utility/NonNullSharedPtr.h

  Log Message:
  -----------
  [lldb] Remove Base::unique from NonNullSharedPtr (#169130)

It seems like this fails on macOS with C++20


  Commit: 5bf7e8a59a281988a0f5d2b659ba9d71b2c389c8
      https://github.com/llvm/llvm-project/commit/5bf7e8a59a281988a0f5d2b659ba9d71b2c389c8
  Author: adams381 <adams at nvidia.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  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/CodeGen/builtins-overflow.cpp

  Log Message:
  -----------
  [CIR] Upstream overflow builtins (#166643)

This implements the builtins that handle overflow.

This fixes issue https://github.com/llvm/llvm-project/issues/163888


  Commit: dc3c5a5ffceb64c5c948e1d22b6d81023bef65b6
      https://github.com/llvm/llvm-project/commit/dc3c5a5ffceb64c5c948e1d22b6d81023bef65b6
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M utils/bazel/.bazelrc

  Log Message:
  -----------
  [bazel] Remove old config option (#169133)

The default of this has been flipped since we're on 8.x


  Commit: 99120bb51bf728d7ba7fad5068227f8c6e707159
      https://github.com/llvm/llvm-project/commit/99120bb51bf728d7ba7fad5068227f8c6e707159
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M .ci/premerge_advisor_explain.py

  Log Message:
  -----------
  [CI] Make Premerge only Comment if Tests Failed (#169102)

Before, we were unconditionally writing a message. After this patch, we
only write a message when the tests failed, or there is already an
existing comment. This is how this workflow was intended to work
originally, but is not how it ended up working, mostly due to my
misconceptions around how the existing code formatter pass handled this
case (we need to actually not write out any comments, not write out a
specific message).


  Commit: 58e2dde45f775328b71b532e65762a9696ccccbd
      https://github.com/llvm/llvm-project/commit/58e2dde45f775328b71b532e65762a9696ccccbd
  Author: Joshua Haberman <jhaberman at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lld/MachO/SymbolTable.cpp
    A lld/test/MachO/weak-alias-override.s

  Log Message:
  -----------
  [lld:MachO] Allow independent override of weak symbols aliased via .set (#167825)

Currently, if multiple external weak symbols are defined at the same
address in an object file (e.g., by using the .set assembler directive
to alias them to a single weak variable), ld64.lld treats them as a
single unit. When any one of these symbols is overridden by a strong
definition, all of the original weak symbols resolve to the strong
definition.

This patch changes the behavior in `transplantSymbolsAtOffset`. When a
weak symbol is being replaced by a strong one, only non-external (local)
symbols at the same offset are moved to the new symbol's section. Other
*external* symbols are no longer transplanted.

This allows each external weak symbol to be overridden independently.
This behavior is consistent with Apple's ld-classic, but diverges from
ld-prime in one case, as noted on
https://github.com/llvm/llvm-project/issues/167262 (this discrepancy has
recently been reported to Apple).

### Backward Compatibility

This change alters linker behavior for a specific scenario. The creation
of multiple external weak symbols aliased to the same address via
assembler directives is primarily an advanced technique. It's unlikely
that existing builds rely on the current behavior of all aliases being
overridden together.

If there are concerns, this could be put behind a linker option, but the
new default seems more correct, less surprising, and is consistent with
ld-classic.

### Testing

The new lit test `test/MachO/weak-alias-override.s` verifies this
behavior using llvm-nm.

Fixes #167262


  Commit: 54a4da9df6906b63878ad6d0ea6da3ed7d2d8432
      https://github.com/llvm/llvm-project/commit/54a4da9df6906b63878ad6d0ea6da3ed7d2d8432
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Basic/ABI.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGCXXABI.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    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/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Serialization/ASTCommon.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/CodeGenCXX/dllexport.cpp
    M clang/test/CodeGenCXX/microsoft-abi-extern-template.cpp
    M clang/test/CodeGenCXX/microsoft-abi-structors.cpp
    M clang/test/CodeGenCXX/microsoft-abi-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance-vdtors.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance-vtordisps.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-no-rtti-data.cpp
    R clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/vtable-consteval.cpp
    M clang/test/DebugInfo/CXX/windows-dtor.cpp
    R clang/test/Modules/Inputs/msvc-vector-deleting-dtors/module.modulemap
    R clang/test/Modules/Inputs/msvc-vector-deleting-dtors/msvc-vector-deleting-dtors.h
    R clang/test/Modules/msvc-vector-deleting-destructors.cpp
    M clang/test/Modules/vtable-windows.cppm
    R clang/test/PCH/Inputs/msvc-vector-deleting-dtors.h
    R clang/test/PCH/msvc-vector-deleting-destructors.cpp
    M clang/test/Profile/cxx-abc-deleting-dtor.cpp
    R clang/test/SemaCXX/gh134265.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

  Log Message:
  -----------
  Revert "Reland [MS][clang] Add support for vector deleting destructors" (#169116)

This reverts 4d10c1165442cbbbc0017b48fcdd7dae1ccf3678 and its two
dependent commits: e6b9805b574bb5c90263ec7fbcb94df76d2807a4 and
c243406a695ca056a07ef4064b0f9feee7685320, see discussion in
https://github.com/llvm/llvm-project/pull/165598#issuecomment-3563825509.


  Commit: 8bdbc57b8975d77da88562392299ee5d9c2b6cbb
      https://github.com/llvm/llvm-project/commit/8bdbc57b8975d77da88562392299ee5d9c2b6cbb
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/test/Shell/helper/toolchain.py
    M llvm/utils/lit/lit/llvm/config.py

  Log Message:
  -----------
  [NFC][LLDB] Make it possible to detect if the compiler used in tests supports -fbounds-safety (#169112)

This patch makes it possible to detect in LLDB shell and API tests if
`-fbounds-safety` is supported by the compiler used for testing. The
motivation behind this is to allow upstreaming
https://github.com/swiftlang/llvm-project/pull/11835 but with the tests
disabled in upstream because the full implementation of -fbounds-safety
isn't available in Clang yet.

For shell tests when -fbounds-safety is available the
`clang-bounds-safety` feature is available which means tests can be
annotated with `# REQUIRES: clang-bounds-safety`.

API tests that need -fbounds-safety support in the compiler can use the
new `@skipUnlessBoundsSafety` decorator.

rdar://165225507


  Commit: b6dadc7e4d263e9983418d5362653edd4575c1b2
      https://github.com/llvm/llvm-project/commit/b6dadc7e4d263e9983418d5362653edd4575c1b2
  Author: dpalermo <dan.palermo at amd.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    R clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_01.cpp
    M clang/test/OpenMP/target_map_codegen_09.cpp
    M clang/test/OpenMP/target_map_codegen_10.cpp
    M clang/test/OpenMP/target_map_codegen_26.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp

  Log Message:
  -----------
  Revert "[OpenMP] Fix firstprivate pointer handling in target regions" (#169143)

Reverts llvm/llvm-project#167879

This PR is causing assertions in the check-offload tests:

https://lab.llvm.org/staging/#/builders/105
https://lab.llvm.org/staging/#/builders/105/builds/37057


  Commit: cc7e2067b1a0fd799a5bfeab4b11d399ea7831a2
      https://github.com/llvm/llvm-project/commit/cc7e2067b1a0fd799a5bfeab4b11d399ea7831a2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/StringExtractorGDBRemote.cpp

  Log Message:
  -----------
  [lldb] Remove redundant declarations (NFC) (#169003)

In C++17, static constexpr members are implicitly inline, so they no
longer require an out-of-line definition.

Identified with readability-redundant-declaration.


  Commit: 89189218b8ba0a2a64ae1f0f76f485eaf06ad6c6
      https://github.com/llvm/llvm-project/commit/89189218b8ba0a2a64ae1f0f76f485eaf06ad6c6
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp

  Log Message:
  -----------
  [NFC][lldb] Remove duplicated checks (#169093)

Removed duplicated checks reported by cppcheck


  Commit: 3841e7d818de2b7581351c6de3bfc9b13bdaeb30
      https://github.com/llvm/llvm-project/commit/3841e7d818de2b7581351c6de3bfc9b13bdaeb30
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Don't call getThis() on the bottom function frame (#169044)

We can't access the calling frame in that case.

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


  Commit: 6b75b44ed5ed6e6e72955132a60ce8cca38bcbad
      https://github.com/llvm/llvm-project/commit/6b75b44ed5ed6e6e72955132a60ce8cca38bcbad
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_reference.pass.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/reference_types.verify.cpp

  Log Message:
  -----------
  [libc++][any][NFC] Reformat and refactor any_cast tests (#169057)

...in preparation for https://github.com/llvm/llvm-project/pull/168826
as requested in the review.

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 226765b60cc54e03386f38874a177c906f5aa6e7
      https://github.com/llvm/llvm-project/commit/226765b60cc54e03386f38874a177c906f5aa6e7
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M libcxx/utils/libcxx/test/features/availability.py

  Log Message:
  -----------
  [NFC] [test] [libcxx] Fix invalid escape sequences (#168636)

```
>>> "_target-has-llvm-21 || target={{.+}}-apple-macosx{{26.[0-9](.\d+)?}}" == r"_target-has-llvm-21 || target={{.+}}-apple-macosx{{26.[0-9](.\\
d+)?}}"
<python-input-6>:1: SyntaxWarning: invalid escape sequence '\d'
True
>>> "_target-has-llvm-20 || target={{.+}}-apple-macosx{{15.[4-9](.\d+)?}}" == r"_target-has-llvm-20 || target={{.+}}-apple-macosx{{15.[4-9](.\\
d+)?}}"
<python-input-7>:1: SyntaxWarning: invalid escape sequence '\d'
True
>>> "_target-has-llvm-19 || target={{.+}}-apple-macosx{{15.[0-3](.\d+)?}}" == r"_target-has-llvm-19 || target={{.+}}-apple-macosx{{15.[0-3](.\\
d+)?}}"
<python-input-8>:1: SyntaxWarning: invalid escape sequence '\d'
True
>>> "_target-has-llvm-18 || target={{.+}}-apple-macosx{{14.[4-9](.\d+)?}}" == r"_target-has-llvm-18 || target={{.+}}-apple-macosx{{14.[4-9](.\\
d+)?}}"
<python-input-9>:1: SyntaxWarning: invalid escape sequence '\d'
True
```


  Commit: ad7a5d4e059741819baa1561bfd9bc98d29260f3
      https://github.com/llvm/llvm-project/commit/ad7a5d4e059741819baa1561bfd9bc98d29260f3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/CallBrPrepare.h
    M llvm/lib/CodeGen/CallBrPrepare.cpp

  Log Message:
  -----------
  [CallBrPrepare] Prefer Function &F over Function &Fn

Function &F is the more standard abbreviation (~4000 uses in llvm versus
~300 uses).


  Commit: 20ebc7ea8209cb8f1ff3916706b6e7d8232c9f3f
      https://github.com/llvm/llvm-project/commit/20ebc7ea8209cb8f1ff3916706b6e7d8232c9f3f
  Author: Shubham Sandeep Rastogi <Shubham.Rastogi at sony.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Assembler/dbg_declare_value.ll

  Log Message:
  -----------
  Add new llvm.dbg.declare_value intrinsic. (#168132)

For swift async code, we need to use a debug intrinsic that behaves like
an llvm.dbg.declare but can take any location type rather than just a
pointer or integer.

To solve this, a new debug instrinsic called llvm.dbg.declare_value has
been created, which behaves exactly like an llvm.dbg.declare but can
take non pointer and integer location types.

More information here:
https://discourse.llvm.org/t/rfc-introduce-new-llvm-dbg-coroframe-entry-intrinsic/88269

This is the first patch as part of a stack of patches, with the one
succeeding it being: https://github.com/llvm/llvm-project/pull/168134


  Commit: b8f8ef5109fe117dc53f4f8f6afb1b2d3bd4101d
      https://github.com/llvm/llvm-project/commit/b8f8ef5109fe117dc53f4f8f6afb1b2d3bd4101d
  Author: Marco Elver <elver at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/test/Driver/fsanitize-coverage.c

  Log Message:
  -----------
  [Clang][Driver] Allow -fsanitize-coverage with -fsanitize=alloc-token (#169128)

These are not incompatible; allow them to be combined.


  Commit: 4128b213ee93750766c57b5b37d239be53b80c26
      https://github.com/llvm/llvm-project/commit/4128b213ee93750766c57b5b37d239be53b80c26
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/test/CIR/CodeGen/atomic.c

  Log Message:
  -----------
  [CIR] Add support for non-compile-time memory order (#168892)

This patch upstreams CIR support for atomic operations with memory
orders that are not known at compile time.


  Commit: 7305b6eb5458b5cea62b3ab70da95b790cf988f3
      https://github.com/llvm/llvm-project/commit/7305b6eb5458b5cea62b3ab70da95b790cf988f3
  Author: Muhammad Abdul <alilo.ghazali at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c

  Log Message:
  -----------
  [clang][X86] Allow VALIGND/Q element-shift intrinsics in constexpr evaluation (#168206)

Fixes #167681


  Commit: 9daf4345ec836d50740805c878bd570dd4093354
      https://github.com/llvm/llvm-project/commit/9daf4345ec836d50740805c878bd570dd4093354
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Support/LangOptions.def
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Driver/fast-real-mod.f90
    M flang/test/Lower/Intrinsics/fast-real-mod.f90

  Log Message:
  -----------
  [Flang] Add -ffast-real-mod back for further control of MOD optimizations (#167118)

It turns out that having `-ffast-math` as the only option to control
optimizations for MOD for REAL kinds (PR #160660) is too coarse-grained
for some applications. Thus, this PR adds back `-ffast-real-mod` to have
more control over the optimization. The `-ffast-math` flag will still
enable the optimization, and `-fno-fast-real-mod` allows one to disable
it.


  Commit: 8ba27138b2f948224fefdd0d2a44862d6100d119
      https://github.com/llvm/llvm-project/commit/8ba27138b2f948224fefdd0d2a44862d6100d119
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M libcxx/include/any
    A libcxx/test/libcxx/utilities/any/nodiscard.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/reference_types.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.verify.cpp

  Log Message:
  -----------
  [libc++][any] Applied `[[nodiscard]]` (#168826)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
-
https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant


  Commit: 2e424deeb6180d112323f4df955c8034eb56780c
      https://github.com/llvm/llvm-project/commit/2e424deeb6180d112323f4df955c8034eb56780c
  Author: stomfaig <55883018+stomfaig at users.noreply.github.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512vlintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c

  Log Message:
  -----------
   [Clang][X86] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow VPERMILPD/S variable mask intrinsics to be used in constexpr (#168861)

Allowing VPERMILPD/S intrinsics to be used in constexpr

Closes #167878


  Commit: cc4dd015ad4a1b33d43fbac00d62f6b309a96ff4
      https://github.com/llvm/llvm-project/commit/cc4dd015ad4a1b33d43fbac00d62f6b309a96ff4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Remove VariableScope::emitDestruction (#169148)

destroyLocals() does the same thing.


  Commit: e8af134bb7f891caa49178c8a04a8ca944c611df
      https://github.com/llvm/llvm-project/commit/e8af134bb7f891caa49178c8a04a8ca944c611df
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-trunc.ll

  Log Message:
  -----------
  [InstCombine] Generalize trunc-shift-icmp fold from (1 << Y) to (Pow2 << Y) (#169163)

Extends the `icmp(trunc(shl))` fold to handle any power of 2 constant as
the shift base, not just 1. This generalizes the following patterns by
adjusting the comparison offsets by `log2(Pow2)`.

```llvm
(trunc (1 << Y) to iN) == 0    --> Y u>= N
(trunc (1 << Y) to iN) != 0    --> Y u<  N
(trunc (1 << Y) to iN) == 2**C --> Y ==  C
(trunc (1 << Y) to iN) != 2**C --> Y !=  C

; to

(trunc (Pow2 << Y) to iN) == 0    --> Y u>= N - log2(Pow2)
(trunc (Pow2 << Y) to iN) != 0    --> Y u<  N - log2(Pow2)
(trunc (Pow2 << Y) to iN) == 2**C --> Y ==  C - log2(Pow2)
(trunc (Pow2 << Y) to iN) != 2**C --> Y !=  C - log2(Pow2)
```

Proof: https://alive2.llvm.org/ce/z/2zwTkp


  Commit: c4921b75a96ccebbad57a9938ec34ca7d0c89c42
      https://github.com/llvm/llvm-project/commit/c4921b75a96ccebbad57a9938ec34ca7d0c89c42
  Author: n2h9 <13541181+n2h9 at users.noreply.github.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/source/Core/Disassembler.cpp

  Log Message:
  -----------
  [lldb] [disassembler] chore: update VariableAnnotator::Annotate to except only Instruction as param and drop module and target (#168276)


  Commit: 126462035a1eb7adeb97f6beac48b6bddac65d09
      https://github.com/llvm/llvm-project/commit/126462035a1eb7adeb97f6beac48b6bddac65d09
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c

  Log Message:
  -----------
  [UBSan] Fix test-darwin-interface.c on X86 Darwin with Internal Shell (#169105)

This test was failing with the internal shell due to the use of
subshells. This was not caught in my initial round of testing due to me
only using a M4 Mac for running my tests.


  Commit: 456ca91815c3fdb60b5ca695c8bb05b75016a343
      https://github.com/llvm/llvm-project/commit/456ca91815c3fdb60b5ca695c8bb05b75016a343
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx512bitalgintrin.h
    M clang/lib/Headers/avx512vlbitalgintrin.h
    M clang/test/CodeGen/X86/avx512bitalg-builtins.c
    M clang/test/CodeGen/X86/avx512vlbitalg-builtins.c

  Log Message:
  -----------
  [Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - Allow AVX512 VPSHUFBITQMB intrinsics to be used in constexpr (#168100)

Resolves #161337


  Commit: b00c620b3504565d9769a434bc7d4e97854cd788
      https://github.com/llvm/llvm-project/commit/b00c620b3504565d9769a434bc7d4e97854cd788
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c

  Log Message:
  -----------
  [X86] Move _mm512_mask_blend_pd/ps tests to avx512f-builtins.c (#169170)

These aren't AVX512VL tests


  Commit: 216e85bdda22ae7eda3f3e04c51d9d6d82e2b617
      https://github.com/llvm/llvm-project/commit/216e85bdda22ae7eda3f3e04c51d9d6d82e2b617
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M mlir/python/mlir/dialects/linalg/opdsl/lang/yaml_helper.py
    M mlir/python/requirements.txt

  Log Message:
  -----------
  [MLIR][Python] remove PyYAML as a dep (#169145)

PyYAML is not an actual use-time/runtime dependency of our bindings. It
is necessary only if someone wants to regenerate
`LinalgNamedStructuredOps.yaml`:
https://github.com/llvm/llvm-project/blob/93097b2d47c87bf5eee0a2612d961c7a01831eab/mlir/tools/mlir-linalg-ods-gen/update_core_linalg_named_ops.sh.in#L29

This PR does the minimal refactor to remove the need during actual run/use time.


  Commit: c2d659b9b8efac9f80b8ebcb2b38b61295d82bdc
      https://github.com/llvm/llvm-project/commit/c2d659b9b8efac9f80b8ebcb2b38b61295d82bdc
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Semantics/canonicalize-omp.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Lower/OpenMP/nested-loop-transformation-construct02.f90
    M flang/test/Parser/OpenMP/fail-looprange.f90
    M flang/test/Parser/OpenMP/loop-transformation-construct01.f90
    M flang/test/Parser/OpenMP/loop-transformation-construct02.f90
    M flang/test/Parser/OpenMP/tile-fail.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/do21.f90
    M flang/test/Semantics/OpenMP/loop-association.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct01.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct02.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct03.f90
    M flang/test/Semantics/OpenMP/tile02.f90

  Log Message:
  -----------
  [flang][OpenMP] Implement loop nest parser (#168884)

Previously, loop constructs were parsed in a piece-wise manner: the
begin directive, the body, and the end directive were parsed separately.
Later on in canonicalization they were all coalesced into a loop
construct. To facilitate that end-loop directives were given a special
treatment, namely they were parsed as OpenMP constructs. As a result
syntax errors caused by misplaced end-loop directives were handled
differently from those cause by misplaced non-loop end directives.

The new loop nest parser constructs the complete loop construct,
removing the need for the canonicalization step. Additionally, it is the
basis for parsing loop-sequence-associated constructs in the future.

It also removes the need for the special treatment of end-loop
directives. While this patch temporarily degrades the error messaging
for misplaced end-loop directives, it enables uniform handling of any
misplaced end-directives in the future.


  Commit: 8baa5bf499e6bf2f43ec7fddf9601524159ec5ea
      https://github.com/llvm/llvm-project/commit/8baa5bf499e6bf2f43ec7fddf9601524159ec5ea
  Author: Usman Nadeem <mnadeem at qti.qualcomm.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll

  Log Message:
  -----------
  [DFAJumpThreading] Try harder to avoid cycles in paths. (#169151)

If a threading path has cycles within it then the transformation is not
correct. This patch fixes a couple of cases that create such cycles.

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


  Commit: e83cc896e7c2378914a391f942c188d454b517d2
      https://github.com/llvm/llvm-project/commit/e83cc896e7c2378914a391f942c188d454b517d2
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M flang/lib/Parser/openmp-parsers.cpp

  Log Message:
  -----------
  [flang][OpenMP] Fix build with gcc 7.5.0 (#169184)


  Commit: 080ca902c6aaf1a1bf48df04a65ed163825b2006
      https://github.com/llvm/llvm-project/commit/080ca902c6aaf1a1bf48df04a65ed163825b2006
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  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.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp

  Log Message:
  -----------
  [VPlan] Create resume phis in scalar preheader early. (NFC) (#166099)

Create phi recipes for scalar resume value up front in addInitialSkeleton during initial construction. This will allow moving the remaining code dealing with resume values to VPlan transforms/construction.

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


  Commit: d96a93ff00ac02bc523d36dd2e687d597a068ae1
      https://github.com/llvm/llvm-project/commit/d96a93ff00ac02bc523d36dd2e687d597a068ae1
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/test/ELF/linkerscript/version-script.s
    M lld/test/ELF/version-script-extern-undefined.s
    M llvm/include/llvm/BinaryFormat/ELF.h

  Log Message:
  -----------
  ELF: Use index 0 for unversioned undefined symbols (#168189)

The GNU documentation is ambiguous about the version index for
unversioned undefined symbols. The current specification at
https://sourceware.org/gnu-gabi/program-loading-and-dynamic-linking.txt
defines VER_NDX_LOCAL (0) as "The symbol is private, and is not
available outside this object."

However, this naming is misleading for undefined symbols. As suggested
in
discussions, VER_NDX_LOCAL should conceptually be VER_NDX_NONE and apply
to unversioned undefined symbols as well.

GNU ld has used index 0 for unversioned undefined symbols both before
version 2.35 (see https://sourceware.org/PR26002) and in the upcoming
2.46 release (see https://sourceware.org/PR33577). This change aligns
with GNU ld's behavior by switching from index 1 to index 0.

While here, add a test to dso-undef-extract-lazy.s that undefined
symbols of index 0 in DSO are treated as unversioned symbols.


  Commit: ebb0c9c559b5809be491aa71cbe8235611081194
      https://github.com/llvm/llvm-project/commit/ebb0c9c559b5809be491aa71cbe8235611081194
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M flang/include/flang/Parser/openmp-utils.h
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP] Move some utilities from openmp-parsers to openmp-uti… (#169188)

…ls, NFC


  Commit: 29d1e1857d445ca9a6e60c69fe2e1e5b30767e62
      https://github.com/llvm/llvm-project/commit/29d1e1857d445ca9a6e60c69fe2e1e5b30767e62
  Author: tyb0807 <sontuan.vu119 at gmail.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-invalid-register-class-error.mir
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-invalid-register-name-error.mir
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-mfi.ll
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-stack-type-error.mir

  Log Message:
  -----------
  [AMDGPU] Enable serializing of allocated preload kernarg SGPRs info (#168374)

- Support serialization of the number of allocated preload kernarg SGPRs
- Support serialization of the first preload kernarg SGPR allocated

Together they enable reconstructing correctly MIR with preload kernarg
SGPRs.


  Commit: a2231af5ddafbc82c9d6ecc994690639958c6661
      https://github.com/llvm/llvm-project/commit/a2231af5ddafbc82c9d6ecc994690639958c6661
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

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

  Log Message:
  -----------
  [VPlan] Share PreservesUniformity logic between isSingleScalar and isUniformAcrossVFsAndUFs

Extract the PreservesUniformity logic from isSingleScalar into a shared
static helper function. Update isUniformAcrossVFsAndUFs to use this
logic for VPWidenRecipe and VPInstruction, so that any opcode that
preserves uniformity is considered uniform-across-vf-and-uf if its
operands are.

This unifies the uniformity checking logic and makes it easier to extend
in the future.

This should effectively by NFC currently.


  Commit: c81a189c5083b72c128ec33cda8d39367c2e2f1f
      https://github.com/llvm/llvm-project/commit/c81a189c5083b72c128ec33cda8d39367c2e2f1f
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M flang/include/flang/Parser/openmp-utils.h
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Semantics/canonicalize-do.cpp
    A flang/test/Parser/OpenMP/atomic-label-do.f90
    A flang/test/Parser/OpenMP/cross-label-do.f90

  Log Message:
  -----------
  [flang][OpenMP] Canonicalize loops with intervening OpenMP constructs (#169191)

Example based on the gfortran test a.6.1.f90
```
  do 100 i = 1,10
  !$omp do
    do 100 j = 1,10
      call work(i,j)
    100 continue
```

During canonicalization of label-DO loops, if the body of an OpenMP
construct ends with a label, treat the label as ending the construct
itself.

This will also allow handling of cases like
```
  do 100 i = 1, 10
  !$omp atomic write
  100 x = i
```
which we were unable to before.


  Commit: 9de880e03076e7d9611a205974463465d47d3e21
      https://github.com/llvm/llvm-project/commit/9de880e03076e7d9611a205974463465d47d3e21
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    M llvm/utils/TableGen/Basic/TargetLibraryInfoEmitter.cpp

  Log Message:
  -----------
  [llvm] Remove unused local variables (NFC) (#169171)

Identified with bugprone-unused-local-non-trivial-variable.


  Commit: 637299e7e079b7d80f508691103092753d282ffa
      https://github.com/llvm/llvm-project/commit/637299e7e079b7d80f508691103092753d282ffa
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/utils/TableGen/NeonEmitter.cpp

  Log Message:
  -----------
  [clang] Use llvm::equal (NFC) (#169172)

Identified with llvm-use-ranges.


  Commit: b296386d2ca8595c23bc2f90eef902f3c485b1a0
      https://github.com/llvm/llvm-project/commit/b296386d2ca8595c23bc2f90eef902f3c485b1a0
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/lib/TextAPI/InterfaceFile.cpp

  Log Message:
  -----------
  [llvm] Use llvm::equal (NFC) (#169173)

While I am at it, this patch uses const l-value references for
std::shared_ptr.  We don't need to increment the reference count by
passing std::shared_ptr by value.

Identified with llvm-use-ranges.


  Commit: c5939937a4d1b7da4477762389dee0afa756bd9c
      https://github.com/llvm/llvm-project/commit/c5939937a4d1b7da4477762389dee0afa756bd9c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/Lex/Preprocessor.cpp

  Log Message:
  -----------
  [Lex] Use a range-based for loop (NFC) (#169174)

Identified with modernize-loop-convert.


  Commit: 1c05dfb0e2b14d783e2e08d5c02abdb8cf73877f
      https://github.com/llvm/llvm-project/commit/1c05dfb0e2b14d783e2e08d5c02abdb8cf73877f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp

  Log Message:
  -----------
  [StaticAnalyzer] Use a range-based for loop (NFC) (#169175)

Identified with modernize-loop-convert.


  Commit: 2d051adc75b45ff7f213bb5d4ee208ac999fc125
      https://github.com/llvm/llvm-project/commit/2d051adc75b45ff7f213bb5d4ee208ac999fc125
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M flang/lib/Semantics/canonicalize-do.cpp

  Log Message:
  -----------
  [flang] Add missing include, fix build break after c81a189c50 (#169192)


  Commit: 0619292195ecd47ac05b0c7759992b400abec52c
      https://github.com/llvm/llvm-project/commit/0619292195ecd47ac05b0c7759992b400abec52c
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/GlobalISel/PatternParser.cpp
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [TableGen] Constify CodeGenInstruction where possible (NFC) (#169193)


  Commit: 0ef522ff68fff4266bf85e7b7a507a16a8fd34ee
      https://github.com/llvm/llvm-project/commit/0ef522ff68fff4266bf85e7b7a507a16a8fd34ee
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SDNodeInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Use MVT instead of MVT::SimpleValueType. NFC (#169180)

This improves type safety and is less verbose. Use SimpleTy only where
an integer is needed like switches or emitting a VBR.

---------

Co-authored-by: Sergei Barannikov <barannikov88 at gmail.com>


  Commit: 0859ac5866a0228f5607dd329f83f4a9622dedcc
      https://github.com/llvm/llvm-project/commit/0859ac5866a0228f5607dd329f83f4a9622dedcc
  Author: hstk30-hw <hanwei62 at huawei.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-crash.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions.ll
    M llvm/test/CodeGen/AArch64/machine-sink-kill-flags.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op_2.ll
    M llvm/test/CodeGen/Hexagon/swp-stages5.ll
    M llvm/test/CodeGen/NVPTX/atomics-b128.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/PowerPC/ctrloop-fp128.ll
    M llvm/test/CodeGen/PowerPC/licm-xxsplti.ll
    M llvm/test/CodeGen/PowerPC/loop-instr-form-prepare.ll
    M llvm/test/CodeGen/PowerPC/sink-side-effect.ll
    M llvm/test/CodeGen/PowerPC/sms-phi-1.ll
    M llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vcpop-shl-zext-opt.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving-reduct.ll
    M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
    M llvm/test/CodeGen/X86/i128-mul.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce5.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/pr49451.ll
    M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/xor.ll

  Log Message:
  -----------
  [RegAlloc] Fix the terminal rule check for interfere with DstReg (#168661)

This maybe a bug which is introduced by commit
6749ae36b4a33769e7a77cf812d7cd0a908ae3b9, and has been present ever
since.
In this case, `OtherReg` always overlaps with `DstReg` cause they from
the `Copy` all.


  Commit: 525e68e9e9a44e88eb88ef2d6f058a482972c989
      https://github.com/llvm/llvm-project/commit/525e68e9e9a44e88eb88ef2d6f058a482972c989
  Author: Daniel M. Katz <katzdm at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaCXX/cxx2a-consteval.cpp

  Log Message:
  -----------
  Don't mark lambda non-dependent if nested in a generic lambda. (#149121)

Fixes #118187
Fixes #156579

An instantiated `LambdaExpr` can currently be marked as
`LDK_NeverDependent` if it's nested within a generic lambda. If that
`LambdaExpr` in fact depends on template parameters introduced by the
enclosing generic lambda, then its dependence will be misreported as
"never dependent" and spurious diagnostics can result.

The fix here proposed is a bit ugly, but the condition that it's being
bolted onto already seems like a bit of a hack, so this seems no worse
for wear.

Note that #89702 surfaced this change because it caused the inner lambda
expression to (correctly) be considered in a constant-evaluated context.
The affected check for whether to mark the inner lambda as
`LDK_NeverDependent` therefore started to apply, whereas it didn't
before.

**Tested**: `check-clang` and `check-cxx`.


  Commit: d5f3ab8ec97786476a077b0c8e35c7c337dfddf2
      https://github.com/llvm/llvm-project/commit/d5f3ab8ec97786476a077b0c8e35c7c337dfddf2
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-crash.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions.ll
    M llvm/test/CodeGen/AArch64/machine-sink-kill-flags.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op_2.ll
    M llvm/test/CodeGen/Hexagon/swp-stages5.ll
    M llvm/test/CodeGen/NVPTX/atomics-b128.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/PowerPC/ctrloop-fp128.ll
    M llvm/test/CodeGen/PowerPC/licm-xxsplti.ll
    M llvm/test/CodeGen/PowerPC/loop-instr-form-prepare.ll
    M llvm/test/CodeGen/PowerPC/sink-side-effect.ll
    M llvm/test/CodeGen/PowerPC/sms-phi-1.ll
    M llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vcpop-shl-zext-opt.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving-reduct.ll
    M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
    M llvm/test/CodeGen/X86/i128-mul.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce5.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/pr49451.ll
    M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/xor.ll

  Log Message:
  -----------
  Revert "[RegAlloc] Fix the terminal rule check for interfere with DstReg (#168661)"

This reverts commit 0859ac5866a0228f5607dd329f83f4a9622dedcc.

This caused a couple test failures, likely due to a mid-air collision.
Reverting for now to get the tree back to green and allow the original
author to run UTC/friends and verify the output.


  Commit: b9107bfc1faa8aa74e736169626e0cf7eb0925ba
      https://github.com/llvm/llvm-project/commit/b9107bfc1faa8aa74e736169626e0cf7eb0925ba
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-11-22 (Sat, 22 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVZilsdOptimizer.cpp
    M llvm/test/CodeGen/RISCV/zilsd.ll

  Log Message:
  -----------
  [RISCV] Support zilsd-4byte-align for i64 load/store in SelectionDAG. (#169182)

I think we need to keep the SelectionDAG code for volatile load/store so
we should support 4 byte alignment when possible.


  Commit: 08f72fe77a53762c94dc04f9fc7c6e038141aa55
      https://github.com/llvm/llvm-project/commit/08f72fe77a53762c94dc04f9fc7c6e038141aa55
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h

  Log Message:
  -----------
  [TableGen] Remove unnecessary use of MVT::SimpleTy. NFC

This was missed in 0ef522ff68fff4266bf85e7b7a507a16a8fd34ee


  Commit: a088e745b7211ab732c99a210ec99345913f668c
      https://github.com/llvm/llvm-project/commit/a088e745b7211ab732c99a210ec99345913f668c
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/test/Analysis/suppression-attr.cpp

  Log Message:
  -----------
  [analyzer] Fix [[clang::suppress]] for template instantiations (#168954)

BugSuppression works by traversing the lexical decl context of the
decl-with-issue to record what source ranges should be suppressed by
some attribute.
Note that the decl-with-issue will be changed to the lexical decl
context of the original decl-with-issue, to make suppression attributes
work that were attached to the CXXRecordDecl containing the
CXXMethodDecl (bug report's DeclWithIssue).

It happens so that it uses a DynamicRecursiveASTVisitor, which has a
couple of traversal options. Namely:

 - ShouldVisitTemplateInstantiations
 - ShouldWalkTypesOfTypeLocs
 - ShouldVisitImplicitCode
 - ShouldVisitLambdaBody

By default, these have the correct values, except for
ShouldVisitTemplateInstantiations. We should traverse template
instantiations because that might be where the bug is reported - thus,
where we might have a [[clang::suppress]] that we should honor.

In this patch I'll explicitly set these traversal options to avoid
further confusion.

rdar://164646398


  Commit: 8ea5e20ce4c44784e970f81a2edbb9680ba85b01
      https://github.com/llvm/llvm-project/commit/8ea5e20ce4c44784e970f81a2edbb9680ba85b01
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Disable block count usage in layout propagation (#168504)


  Commit: d8b6524d31d32717cf1f314de591f041b045684e
      https://github.com/llvm/llvm-project/commit/d8b6524d31d32717cf1f314de591f041b045684e
  Author: Hervé Poussineau <hpoussin at reactos.org>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M lld/MinGW/Driver.cpp
    M lld/test/MinGW/driver.test

  Log Message:
  -----------
  [LLD][MinGW] Handle MIPS machine (#157742)


  Commit: a83e09a788926eb70acdfeee851c6c2fcefd0515
      https://github.com/llvm/llvm-project/commit/a83e09a788926eb70acdfeee851c6c2fcefd0515
  Author: owenca <owenpiano at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Handle `&&` in requires clause in requires requires (#169207)

Fixes #152266


  Commit: 93b20e7d1f1d72c19c450a81ef5d84376e474b77
      https://github.com/llvm/llvm-project/commit/93b20e7d1f1d72c19c450a81ef5d84376e474b77
  Author: Guy David <guyda96 at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/int-to-fp-no-neon.ll
    M llvm/test/CodeGen/AArch64/itofp.ll

  Log Message:
  -----------
  [AArch64] Extend int-to-fp load optimization to support f16 (#168076)


  Commit: 06fc87bcd3d61a08f8c035e60949631f61bccee7
      https://github.com/llvm/llvm-project/commit/06fc87bcd3d61a08f8c035e60949631f61bccee7
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/type-parsers.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Parser/OpenMP/fail-construct2.f90
    M flang/test/Parser/OpenMP/tile-fail.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/loop-association.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct02.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct03.f90

  Log Message:
  -----------
  [flang][OpenMP] Better diagnostics for invalid or misplaced directives (#168885)

Add two more AST nodes, one for a misplaced end-directive, and one for
an invalid string following the OpenMP sentinel (e.g. "!$OMP XYZ").

Emit error messages when either node is encountered in semantic
analysis.


  Commit: 7485f34802f0ea1e00ac69499050e79692609b85
      https://github.com/llvm/llvm-project/commit/7485f34802f0ea1e00ac69499050e79692609b85
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    A llvm/test/CodeGen/X86/pr169205.ll

  Log Message:
  -----------
  [X86] X86ISelDAGToDAG - don't let ADD/SUB(X,1) -> SUB/ADD(X,-1) constant fold (#169217)

Extension to #168726 - ensure we peek through bitcasts to look for
constants (as constant folding will)

DAG should have constant folded this, but we're still fighting the lack
of proper topological sorting.

Fixes #169205


  Commit: 21378fb75a6e4df1525067d408ebbf241aa63c75
      https://github.com/llvm/llvm-project/commit/21378fb75a6e4df1525067d408ebbf241aa63c75
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fmin-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/fcmp-uno-fold-interleave.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll

  Log Message:
  -----------
  [VPlan] Merge `fcmp uno` feeding AnyOf. (#166823)

Fold
  any-of (fcmp uno %A, %A), (fcmp uno %B, %B), ... ->
  any-of (fcmp uno %A, %B), ...

This pattern is generated to check if any vector lane is NaN, and
combining multiple compares is beneficial on architectures that have
dedicated instructions.

Alive2 Proof: https://alive2.llvm.org/ce/z/vA_aoM

Combine suggested as part of
https://github.com/llvm/llvm-project/pull/161735

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


  Commit: 0332af25b9e33dad9b4d4ba4bef1400bbfe9383d
      https://github.com/llvm/llvm-project/commit/0332af25b9e33dad9b4d4ba4bef1400bbfe9383d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td

  Log Message:
  -----------
  [X86] BuiltinsX86.td - merge avx512 cmp/ucmp builtins into common Features/Attributes blocks. NFC. (#169223)


  Commit: a54edafa02bb4c11c1e4425c7da1e34864c9fde2
      https://github.com/llvm/llvm-project/commit/a54edafa02bb4c11c1e4425c7da1e34864c9fde2
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/MapVector.h
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/MapVectorTest.cpp

  Log Message:
  -----------
  ADT: Complete the at() methods for DenseMap and MapVector (#169147)

Make it easier to use these containers as drop-in replacements for
std::map.


  Commit: 8b7401f13d89fe7e1815a7ab95209afe49493d72
      https://github.com/llvm/llvm-project/commit/8b7401f13d89fe7e1815a7ab95209afe49493d72
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC. (#169222)


  Commit: 3773bbe9e7916ec89fb3e3cd02e29c54cabac82b
      https://github.com/llvm/llvm-project/commit/3773bbe9e7916ec89fb3e3cd02e29c54cabac82b
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/CommonArgs.h
    A clang/include/clang/Driver/CreateASTUnitFromArgs.h
    A clang/include/clang/Driver/CreateInvocationFromArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/ChainedDiagnosticConsumer.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    A clang/include/clang/Frontend/StandaloneDiagnostic.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Options/OptionUtils.h
    M clang/lib/CrossTU/CMakeLists.txt
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/CMakeLists.txt
    A clang/lib/Driver/CreateASTUnitFromArgs.cpp
    A clang/lib/Driver/CreateInvocationFromArgs.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CMakeLists.txt
    M clang/lib/Frontend/CompilerInvocation.cpp
    R clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    A clang/lib/Frontend/StandaloneDiagnostic.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Options/OptionUtils.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/c-index-test/CMakeLists.txt
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/diagtool/CMakeLists.txt
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CIndexer.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/Indexing.cpp
    M clang/unittests/Driver/DXCModeTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Sema/CMakeLists.txt
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/Tooling/Syntax/TokensTest.cpp
    M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
    M lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/unittests/Expression/ClangParserTest.cpp

  Log Message:
  -----------
   [clang] Refactor to remove clangDriver dependency from clangFrontend  and flangFrontend (#165277)

This removes the dependency on clangDriver from clangFrontend and
flangFrontend.

This refactoring is part of a broader effort to support driver-managed
builds for compilations using C++ named modules and/or Clang modules.
It is required for linking the dependency scanning tooling against the
driver without introducing cyclic dependencies, which would otherwise
cause build failures when dynamic linking is enabled.
In particular, clangFrontend must no longer depend on clangDriver
for this to be possible.

This change was discussed in the following RFC:
https://discourse.llvm.org/t/rfc-new-clangoptions-library-remove-dependency-on-clangdriver-from-clangfrontend-and-flangfrontend/88773


  Commit: 8e2f5442f8a5caaa968b6215bd416ece8ed694c7
      https://github.com/llvm/llvm-project/commit/8e2f5442f8a5caaa968b6215bd416ece8ed694c7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h

  Log Message:
  -----------
  [TableGen] Use std::array::fill instead of std::memset. NFC (#169204)


  Commit: e6f60a61cdaae8fcf79d4f001096f2c826628074
      https://github.com/llvm/llvm-project/commit/e6f60a61cdaae8fcf79d4f001096f2c826628074
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    A clang/test/CIR/CodeGen/builtin_new_delete.cpp

  Log Message:
  -----------
  [CIR] Add builtin operator new/delete (#168578)

This PR adds `__builtin_operator_new` and `__builtin_operator_delete`.

The implementation is taken from clang code gen.


  Commit: e5edb512072bc040face27ed6c9e92f4a5f1e910
      https://github.com/llvm/llvm-project/commit/e5edb512072bc040face27ed6c9e92f4a5f1e910
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 3773bbe9e7916ec89fb3e3cd02e29c54cabac82b


  Commit: 362de2213e54d16449487cf87b4ee33a99e41e3d
      https://github.com/llvm/llvm-project/commit/362de2213e54d16449487cf87b4ee33a99e41e3d
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake

  Log Message:
  -----------
  [lldb] Fix SWIG bug detection in CMake (#169212)

The CMake
[`set()`](https://cmake.org/cmake/help/latest/command/set.html) command
does not accept a conditional expression as a value. As a result,
AFFECTED_BY_SWIG_BUG was being set to a string representation of the
condition rather than a boolean value, causing it to always evaluate as
truthy in subsequent if-checks.


  Commit: d40c8dccff70c0ffd4a6120334e4fcd472d2fd91
      https://github.com/llvm/llvm-project/commit/d40c8dccff70c0ffd4a6120334e4fcd472d2fd91
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/test/OpenMP/parallel_default_variableCategory_codegen.cpp

  Log Message:
  -----------
  [Clang][OpenMP] Make test use clang_cc1 (#169233)

This test does not actually need to use the clang driver. Using the
driver means that the environment plays much more into the tests
results. We ran into a situation where the driver decided not to pass
-fopenmp to the cc1 invocation, causing the test to fail.

This also makes the test more consistent with the other OpenMP tests and
should make it slightly faster (no subprocess invocation).


  Commit: c543615744d61e0967b956c402e310946d741570
      https://github.com/llvm/llvm-project/commit/c543615744d61e0967b956c402e310946d741570
  Author: Owen Anderson <resistor at mac.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM] Add myself to the former maintainers list. (#169201)

I was the SelectionDAG maintainer (then called code owner) from
aebfacb008246b912e2fc5a454939a3de942303b (requested to take it up by
Evan Cheng) and yielded the role to Justin Bogner as of
d8ed65dda0b10b5d9fa6ebd2da46e733fbde5512.


  Commit: bbd99aa1f699071894ca7e5c86fb61ece0a96db5
      https://github.com/llvm/llvm-project/commit/bbd99aa1f699071894ca7e5c86fb61ece0a96db5
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  Fix #168467 (r598213) (#169232)

Co-authored-by: Aiden Grossman <agrossman154 at yahoo.com>


  Commit: 996213c6ea0dc2e47624c6b06c0833a882c1c1f7
      https://github.com/llvm/llvm-project/commit/996213c6ea0dc2e47624c6b06c0833a882c1c1f7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp

  Log Message:
  -----------
  [VPlan] Refine mayRead/WriteFromMemory for VPInst, fix VPlan SLP check.

Fix VPlan SLP check incorrectly bailing out for non-VPInstructions.
Starting from the beginning of the block will include canonical IVs,
which in turn are not VPInstructions. If we hit a non-VPInstruction, we
should conservatively treat is as potentially unvectorizable.

To keep the tests working as expected, refine mayRead/WriteFromMemory
for Load and GEP VPInstructions.


  Commit: f7ed15b9e734e63ab062a1f9a1b50588776a653d
      https://github.com/llvm/llvm-project/commit/f7ed15b9e734e63ab062a1f9a1b50588776a653d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Fully port 3773bbe9e7916ec89fb3e3cd02e29c54cabac82b (#169247)

e5edb512072bc040face27ed6c9e92f4a5f1e910 attempted to port this, but
seemed to miss a couple things that still showed up on CI. This patch
fixes up the missing pieces.


  Commit: 4996645594cf9e2e318c0e693d9ec30d0aac5762
      https://github.com/llvm/llvm-project/commit/4996645594cf9e2e318c0e693d9ec30d0aac5762
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/objc/AssertEqualsCheck.cpp
    M clang/docs/LibASTMatchersReference.html
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp

  Log Message:
  -----------
  Revert "[ASTMatchers] Make isExpandedFromMacro accept llvm::StringRef… (#167060)" (#169238)

This reverts commit a52e1af7f766e26a78d10d31da98af041dd66410.

That commit reverted a change (making isExpandedFromMacro take a
std::string) that was explicitly added to avoid lifetime issues. We ran
into issues with some internal matchers due to this, and it probably is
not an uncommon downstream use case. This patch restroes the original
functionality and adds a test to ensure that the functionality is
preserved.

https://reviews.llvm.org/D90303 contains more discussion.


  Commit: ded1311a28021c86814df34a00c8432bad02cc30
      https://github.com/llvm/llvm-project/commit/ded1311a28021c86814df34a00c8432bad02cc30
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  [ORC] Fix typo in comment.


  Commit: b73a281f026ca31330ee99dfb6e16a62363fe442
      https://github.com/llvm/llvm-project/commit/b73a281f026ca31330ee99dfb6e16a62363fe442
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/LoongArch/BUILD.gn

  Log Message:
  -----------
  [gn] port b5812c0cf789aa4cb (LoongArch SDNodeInfo)


  Commit: 3c3e2a295254603c5fef271135cbe733139e78eb
      https://github.com/llvm/llvm-project/commit/3c3e2a295254603c5fef271135cbe733139e78eb
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/unittests/DirectCaller.h

  Log Message:
  -----------
  [orc-rt] Remove unused Session argument from WrapperFunction::call. (#169255)


  Commit: 28eee722aab153aaa8a257c935170aff3346d110
      https://github.com/llvm/llvm-project/commit/28eee722aab153aaa8a257c935170aff3346d110
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    A llvm/test/Transforms/GlobalOpt/X86/apx.ll

  Log Message:
  -----------
  [GlobalOpt] Add TTI interface useFastCCForInternalCall for FASTCC (#164768)

Background: X86 APX feature adds 16 registers within the same 64-bit
mode. PR #164638 is trying to extend such registers for FASTCC. However,
a blocker issue is calling convention cannot be changeable with or
without a feature.

The solution is to disable FASTCC if APX is not ready. This is an NFC
change to the final code generation, becasue X86 doesn't define an
alternative ABI for FASTCC in 64-bit mode. We can solve the potential
compatibility issue of #164638 with this patch.


  Commit: a6cec3f3e5234d2646bc1a53715cda8324445ed2
      https://github.com/llvm/llvm-project/commit/a6cec3f3e5234d2646bc1a53715cda8324445ed2
  Author: hstk30-hw <hanwei62 at huawei.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-crash.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions.ll
    M llvm/test/CodeGen/AArch64/machine-sink-kill-flags.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op_2.ll
    M llvm/test/CodeGen/Hexagon/swp-stages5.ll
    M llvm/test/CodeGen/NVPTX/atomics-b128.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/PowerPC/ctrloop-fp128.ll
    M llvm/test/CodeGen/PowerPC/licm-xxsplti.ll
    M llvm/test/CodeGen/PowerPC/loop-instr-form-prepare.ll
    M llvm/test/CodeGen/PowerPC/sink-side-effect.ll
    M llvm/test/CodeGen/PowerPC/sms-phi-1.ll
    M llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vcpop-shl-zext-opt.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving-reduct.ll
    M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
    M llvm/test/CodeGen/X86/i128-mul.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce5.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/pr49451.ll
    M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/xor.ll

  Log Message:
  -----------
  Reland "[RegAlloc] Fix the terminal rule check for interfere with DstReg (#168661)" (#169219)

Reland d5f3ab8ec97786476a077b0c8e35c7c337dfddf2, fix testcases.


  Commit: 25c2cc4b98092e8dccc8ff46162bea65e9a63bbc
      https://github.com/llvm/llvm-project/commit/25c2cc4b98092e8dccc8ff46162bea65e9a63bbc
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/Transforms/GlobalOpt/X86/apx.ll

  Log Message:
  -----------
  [GlobalOpt] Use `target triple` to fix Buildbot failures, NFCI (#169260)

This supposes to fix LLVM Buildbot failures after #164768. I don't have
the environment to verify though.


  Commit: fe56f5c3d315bf3282a54a3b323cc462ce755136
      https://github.com/llvm/llvm-project/commit/fe56f5c3d315bf3282a54a3b323cc462ce755136
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Pass/Pass.h
    M mlir/lib/Pass/Pass.cpp
    M mlir/test/Dialect/Transform/test-pass-application.mlir
    A mlir/test/Pass/invalid-unsupported-operation.mlir
    M mlir/test/Pass/pipeline-invalid.mlir

  Log Message:
  -----------
  [mlir][Pass] Fix crash when applying a pass to an optional interface (#169262)

Interfaces can be optional: whether an op implements an interface or not
can depend on the state of the operation.

```
// An optional code block for adding additional "classof" logic. This can
// be used to better enable "optional" interfaces, where an entity only
// implements the interface if some dynamic characteristic holds.
// `$_attr`/`$_op`/`$_type` may be used to refer to an instance of the
// interface instance being checked.
code extraClassOf = "";
```

The current `Pass::canScheduleOn(RegisteredOperationName)` is
insufficient. This commit adds an additional overload to inspect
`Operation *`.

This commit fixes a crash when scheduling an `InterfacePass` for an
optional interface on an operation that does not actually implement the
interface.

This is a re-upload of #168499, which was reverted.


  Commit: c4254cd9bb52fb8ef101dcfbcec048447e6c99bb
      https://github.com/llvm/llvm-project/commit/c4254cd9bb52fb8ef101dcfbcec048447e6c99bb
  Author: Wenju He <wenju.he at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    A clang/test/CodeGenOpenCL/__bf16.cl
    M clang/test/SemaSYCL/bf16.cpp

  Log Message:
  -----------
  [Clang] Support __bf16 type for SPIR/SPIR-V (#169012)

SPIR/SPIR-V are generic targets. Assume they support __bf16.


  Commit: e71f243a8d0ed1a5089a4f56dcb90be972dfa061
      https://github.com/llvm/llvm-project/commit/e71f243a8d0ed1a5089a4f56dcb90be972dfa061
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h

  Log Message:
  -----------
  [TableGen] Simplify MachineValueTypeSet::iterator::find_from_pos. NFC (#169227)

Merge the SkipBits!=0 handling into the first iteration of the word
loop. This is the same code structure used by BitVector::find_first_in.


  Commit: c33e50bdc73522ed07a6d636dad66bbd1677daec
      https://github.com/llvm/llvm-project/commit/c33e50bdc73522ed07a6d636dad66bbd1677daec
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/Transforms/GlobalOpt/X86/apx.ll

  Log Message:
  -----------
  [GlobalOpt] Use `x86-registered-target` to fix Buildbot failures, 2nd try (#169266)


  Commit: acab67baa72c9def53ac8fcd57cbb3b386903405
      https://github.com/llvm/llvm-project/commit/acab67baa72c9def53ac8fcd57cbb3b386903405
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt

  Log Message:
  -----------
  [M68k][compiler-rt] Allow compiler-rt builtins to be built for M68k (#169256)

I've tested this locally, and the builtins build proceeds without a
hitch for m68k-none-none. This is part of a larger effort to establish a
working m68k baremetal toolchain.


  Commit: ee4f6478babbcc746ef610e4bc0cf3859714b1e2
      https://github.com/llvm/llvm-project/commit/ee4f6478babbcc746ef610e4bc0cf3859714b1e2
  Author: Leon Clark <Leon4116 at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/si-split-load-store-alias-info.ll

  Log Message:
  -----------
  [AMDGPU] Propagate AA info in vector load/store splitting. (#168871)

Fixes a bug in `AMDGPUISelLowering` where alias analysis info is not
propagated to split loads and stores.

This is required for #161375

---------

Co-authored-by: Leon Clark <leoclark at amd.com>


  Commit: 7851b8a65c5481bdf4a56f61a2c9603c2880dbc2
      https://github.com/llvm/llvm-project/commit/7851b8a65c5481bdf4a56f61a2c9603c2880dbc2
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vector-splice.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-splice.ll

  Log Message:
  -----------
  [RISCV] Combine vslide{up,down} x, poison -> x (#169013)

The motivation for this is that it would be useful to express a
vslideup/vslidedown in a target independent way e.g. from the loop
vectorizer.

We can do this today with @llvm.vector.splice by setting one operand to
poison:

- A slide down can be achieved with @llvm.vector.splice(%x, poison,
slideamt)
- A slide up can be done by @llvm.vector.splice(poison, %x, -slideamt)

E.g.:

    splice(<a,b,c,d>, poison, 3) = <d,poison,poison,poison>
    splice(poison, <a,b,c,d>, -3) = <poison,poison,poison,a>

These splices get lowered to a vslideup + vslidedown pair with one of
the vs2s being poison. We can optimize this away so that we are just
left with a single slideup/slidedown.


  Commit: 202d7840ff965400804972454e9de39e7d30e0b5
      https://github.com/llvm/llvm-project/commit/202d7840ff965400804972454e9de39e7d30e0b5
  Author: Twice <twice at apache.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
    M mlir/test/Dialect/IRDL/variadics.mlir

  Log Message:
  -----------
  [MLIR][IRDL] Support camelCase segment size attributes in IRDL verifier (#168836)

Two years ago, `operand_segment_sizes` and `result_segment_sizes` were
renamed to `operandSegmentSizes` and `resultSegmentSizes` (check related
commits, e.g.
https://github.com/llvm/llvm-project/commit/363b655920c49a4bcb0869f820ed40aac834eebd).

However, the op verifiers in IRDL loading phase is still using old
attributes like `operand_segment_sizes` and `result_segment_sizes`,
which causes some conflict, e.g. it is not compatible with the OpView
builder in MLIR python bindings (which generates camelCase segment
attributes).

This PR is to support to use camelCase segment size attributes in IRDL
verifier. Note that support of `operand_segment_sizes` and
`result_segment_sizes` is dropped.

I found this issue since I'm working on a new IRDL wrapper in the MLIR
python bindings.


  Commit: 13a39eaa0bcf6c439e8b59571f4afe593d658623
      https://github.com/llvm/llvm-project/commit/13a39eaa0bcf6c439e8b59571f4afe593d658623
  Author: hstk30-hw <hanwei62 at huawei.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

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

  Log Message:
  -----------
  [Sema] Fix Wunused-but-set-variable warning(NFC) (#169220)

Fix warning: 
llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp:1455:23: warning:
variable 'Store' set but not used [-Wunused-but-set-variable]


  Commit: b53e46f71af06e0338ddff8d6d3c87230d4b441d
      https://github.com/llvm/llvm-project/commit/b53e46f71af06e0338ddff8d6d3c87230d4b441d
  Author: Arun Thangamani <arun.thangamani at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.h
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/lib/Dialect/X86Vector/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/TransformOps/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/Transforms/VectorContractToFMA.cpp
    A mlir/lib/Dialect/X86Vector/Transforms/VectorContractToPackedTypeDotProduct.cpp
    M mlir/lib/RegisterAllExtensions.cpp
    A mlir/test/Dialect/X86Vector/vector-contract-to-fma.mlir
    A mlir/test/Dialect/X86Vector/vector-contract-to-packed-type-dotproduct.mlir

  Log Message:
  -----------
  [mlir][x86vector] Lower vector.contract to FMA or packed type dot-product (#168074)

A `transform` pass to lower `vector.contract` to (a) `vector.fma` for
`F32`, (b) `x86vector.avx512.dot` for `BF16`, (c) `x86vector.avx.dot.i8`
for `Int8` packed types.

The lowering works on condition with `m`, `batch`, `k` dims to be `one`
and `vnni` dim should be `2` for `bf16`; `4` for `int8`.

**The lowering pattern**: `batch_reduce.matmul` (input) ->
register-tiling(M, N) -> Vectorization (to `vector.contract`) ->
`unroll` vector.contract (`unit` dims) -> `hoisting` transformation
(move `C` loads/store outside batch/k loop) -> apply `licm`,
`canonicalization`, and `bufferize`.


  Commit: 76e7e9fa109e424c18edc2b89e991dac99979599
      https://github.com/llvm/llvm-project/commit/76e7e9fa109e424c18edc2b89e991dac99979599
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/lasx/and-not-combine.ll
    M llvm/test/CodeGen/LoongArch/lsx/and-not-combine.ll

  Log Message:
  -----------
  [LoongArch][NFC] Add tests for combining vand(vnot) (#160830)


  Commit: d124675e27a6abbce0bfea6a25ab9dfe66e9d657
      https://github.com/llvm/llvm-project/commit/d124675e27a6abbce0bfea6a25ab9dfe66e9d657
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [mlir][x86vector] Add missing Linalg dependency (#169280)

Adds required dependency for `inferContractionDims`.

Fixes #168074


  Commit: 54db657b9ebdbce70f902313e6b303d85d68a4dc
      https://github.com/llvm/llvm-project/commit/54db657b9ebdbce70f902313e6b303d85d68a4dc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp

  Log Message:
  -----------
  [StaticAnalyzer] Use llvm::find_if (NFC) (#169237)

Identified with llvm-use-ranges.


  Commit: 67391fc039b27f4e82624a6de4493cdd0907878b
      https://github.com/llvm/llvm-project/commit/67391fc039b27f4e82624a6de4493cdd0907878b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp

  Log Message:
  -----------
  [mlir] Construct SmallVector with initial values (NFC) (#169239)

Identified with llvm-use-ranges.


  Commit: 2b81e9e8fea0cdb2eac1537c1f882b695615b141
      https://github.com/llvm/llvm-project/commit/2b81e9e8fea0cdb2eac1537c1f882b695615b141
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Core.cpp

  Log Message:
  -----------
  [Orc] Use a range-based for loop (NFC) (#169240)

Identified with modernize-loop-convert.


  Commit: 7dd531f428614a310b6715fe9181432393d9095b
      https://github.com/llvm/llvm-project/commit/7dd531f428614a310b6715fe9181432393d9095b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

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

  Log Message:
  -----------
  [SPIRV] Use range-based for loops (NFC) (#169241)

Identified with modernize-loop-convert.


  Commit: 9ce6fadbcaf60ed88302617b6301f68989d44e3e
      https://github.com/llvm/llvm-project/commit/9ce6fadbcaf60ed88302617b6301f68989d44e3e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-11-23 (Sun, 23 Nov 2025)

  Changed paths:
    M clang/include/clang/AST/OpenMPClause.h

  Log Message:
  -----------
  [AST] Construct iterator_range with the conversion constructor (NFC) (#169245)

This patch simplifies iterator_range construction with the conversion
constructor.


  Commit: 95f0fab7fab48bbf37d3c02c0ea8b01ca73c30dd
      https://github.com/llvm/llvm-project/commit/95f0fab7fab48bbf37d3c02c0ea8b01ca73c30dd
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/cxx23.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix conditional operator scoping wrt. local variables (#169030)

We used to create a scope for the true- and false expression of a
conditional operator. This was done so e.g. in this example:

```c++
  struct A { constexpr A(){}; ~A(); constexpr int get() { return 10; } }; // all-note 2{{declared here}}
  static_assert( (false ? A().get() : 1) == 1);
```

we did _not_ evaluate the true branch at all, meaning we did not
register the local variable for the temporary of type `A`, which means
we also didn't call it destructor.

However, this breaks the case where the temporary needs to outlive the
conditional operator and instead be destroyed via the surrounding
`ExprWithCleanups`:
```
constexpr bool test2(bool b) {
  unsigned long __ms = b ? (const unsigned long &)0 : __ms;
  return true;
}
static_assert(test2(true));
```
Before this patch, we diagnosed this example:
```console
./array.cpp:180:15: error: static assertion expression is not an integral constant expression
  180 | static_assert(test2(true));
      |               ^~~~~~~~~~~
./array.cpp:177:24: note: read of temporary whose lifetime has ended
  177 |   unsigned long __ms = b ? (const unsigned long &)0 : __ms;
      |                        ^
./array.cpp:180:15: note: in call to 'test2(true)'
  180 | static_assert(test2(true));
      |               ^~~~~~~~~~~
./array.cpp:177:51: note: temporary created here
  177 |   unsigned long __ms = b ? (const unsigned long &)0 : __ms;
      |                                                   ^
1 error generated.
```
because the temporary created for the true branch got immediately
destroyed.

The problem in essence is that since the conditional operator doesn't
create a scope at all, we register the local variables for both its
branches, but we later only execute one of them, which means we should
also only destroy the locals of one of the branches.

We fix this similar to clang codgen's `is_active` flag: In the case of a
conditional operator (which is so far the only case where this is
problematic, and this also helps minimize the performance impact of this
change), we make local variables as disabled-by-default and then emit a
`EnableLocal` opcode later, which marks them as enabled. The code
calling their destructors checks whether the local was enabled at all.


  Commit: f5cae7b805946337f30437871ea6e13844507775
      https://github.com/llvm/llvm-project/commit/f5cae7b805946337f30437871ea6e13844507775
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/WaitingOnGraphTest.cpp

  Log Message:
  -----------
  [ORC] Add unit test for simple cycle in WaitingOnGraph::emit. (#169281)

WaitingOnGraphTests.Emit_SingleContainerSimpleCycle tests a pair of emit
operations where the second completes a simple cycle (1: A -> B, 2: B ->
A).

We already had a test of WaitingOnGraph::simplify's behavior in this
case, but did not have one for WaitingOnGraph::emit.


  Commit: 02a997cf365d7cf9759ee732f27241f1242a84b3
      https://github.com/llvm/llvm-project/commit/02a997cf365d7cf9759ee732f27241f1242a84b3
  Author: owenca <owenpiano at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Handle `import` when used as template function name (#169279)

Fixes #149960


  Commit: c15a6cc00b1a0e3a47d99172b839ec45c72168ae
      https://github.com/llvm/llvm-project/commit/c15a6cc00b1a0e3a47d99172b839ec45c72168ae
  Author: ganenkokb-yandex <160136233+ganenkokb-yandex at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/include/clang/AST/ASTImporter.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [Clang][ASTImporter] Fix cycle in importing template specialization on auto type with typename (#162514)

ASTImporter on importing template specialization with auto return type
faces cycle when return type is not nested one, but typename from
template arguments and other template.
There is code, that prevents cycle to auto return types when nested type
declared. Solved case differs somehow from nested types, but have same
solution with UsedDifferentProtoType - with delayed return type
determining.


  Commit: e888cf863d5c0a83933f97cac04ae5dc5010e1a1
      https://github.com/llvm/llvm-project/commit/e888cf863d5c0a83933f97cac04ae5dc5010e1a1
  Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll

  Log Message:
  -----------
  [AMDGPU] Add wave reduce intrinsics for float types - 2 (#168859)

Supported Ops: `fadd`, `fsub`


  Commit: 1abb055c57c977f98267bdb89c856adfaa71e892
      https://github.com/llvm/llvm-project/commit/1abb055c57c977f98267bdb89c856adfaa71e892
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [IVDesc] Make getCastInsts return an ArrayRef (NFC) (#169021)

To make it clear that the return value is immutable.


  Commit: ce70d4b5b5130f2ac8586c3dd2198dc91771f534
      https://github.com/llvm/llvm-project/commit/ce70d4b5b5130f2ac8586c3dd2198dc91771f534
  Author: Gil Rapaport <gil.rapaport at mobileye.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp

  Log Message:
  -----------
  [mlir][emitc] Refactor getEmittedExpression (NFC) (#168361)

This method returns the current expression being emitted, but is only
used testing whether an expression is being emitted or not. This patch
therefore replaces it with a boolean isEmittingExpression() method.


  Commit: f21857313dfab543e66ef43b1aed43b685794a7c
      https://github.com/llvm/llvm-project/commit/f21857313dfab543e66ef43b1aed43b685794a7c
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/CAS/OnDiskGraphDB.cpp

  Log Message:
  -----------
  [llvm][CAS] Remove unused functions (#168856)

Building with GCC I got:
```
<...>/OnDiskGraphDB.cpp:624:18: warning: ‘static {anonymous}::DataRecordHandle {anonymous}::DataRecordHandle::construct(char*, const {anonymous}::DataRecordHandle::Input&)’ defined but not used [-Wunused-function]
  624 | DataRecordHandle DataRecordHandle::construct(char *Mem, const Input &I) {
      |                  ^~~~~~~~~~~~~~~~
<...>/OnDiskGraphDB.cpp:456:1: warning: ‘static {anonymous}::DataRecordHandle {anonymous}::DataRecordHandle::create(llvm::function_ref<char*(long unsigned int)>, const {anonymous}::DataRecordHandle::Input&)’ defined but not used [-Wunused-function]
  456 | DataRecordHandle::create(function_ref<char *(size_t Size)> Alloc,
      | ^~~~~~~~~~~~~~~~
```

These implement parts of a class that is defined in an anonymous
namespace. All llvm tests passed with them removed.


  Commit: c745a512dcfaa550c58b42bedd06464b7f593a26
      https://github.com/llvm/llvm-project/commit/c745a512dcfaa550c58b42bedd06464b7f593a26
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

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

  Log Message:
  -----------
  [mlir:x86vector:transform] Fix bazel build after #168074. (#169294)

This PR fixes the bazel build that went out of sync with the changes
introduced in #168074.

Signed-off-by: Ingo Müller <ingomueller at google.com>


  Commit: 6413e5a2df8ca75c4b54b2577bbec9a9d31911b0
      https://github.com/llvm/llvm-project/commit/6413e5a2df8ca75c4b54b2577bbec9a9d31911b0
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/SemanticSelection.cpp
    M clang-tools-extra/clangd/unittests/SemanticSelectionTests.cpp

  Log Message:
  -----------
  [clangd] Implement fold range for #pragma region (#168177)

The implementation is based on the directive tree.

Fixes https://github.com/clangd/clangd/issues/1623


  Commit: 30b1d1422733c012c274f173a3f4986615f7c1c7
      https://github.com/llvm/llvm-project/commit/30b1d1422733c012c274f173a3f4986615f7c1c7
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/test/Analysis/stackaddrleak.c

  Log Message:
  -----------
  [analyzer] Fix inf recursion in StackAddrEscapeChecker for self referencing blocks (#169208)

Objective-C blocks are like lambdas. They have captures, just like lambdas.
However, they can also implicitly capture themselves unlike lambdas.

This means that when walking the captures of a block, we may end up in
infinite recursion. This is not possible with lambdas, but happened in
practice with blocks downstream.

In this patch, I just use a set to keep track of the visited MemRegions.

Note that theoretically, there is nothing preventing usual lambdas or
functors from falling for the same trap, but probably slightly more
difficult to do so. You would likely need a pointer to itself, etc. I'll
not speculate here.

This inf recursion was likely caused by #126620, released in clang-21.

rdar://162215172


  Commit: 4604762cc336317b0f02f7d8c1576f6205f4ea61
      https://github.com/llvm/llvm-project/commit/4604762cc336317b0f02f7d8c1576f6205f4ea61
  Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl

  Log Message:
  -----------
  [AMDGPU] Add builtins for wave reduction intrinsics (#161816)


  Commit: 4b65cafa182a9b91131bfce986e815c9a4ab6ae5
      https://github.com/llvm/llvm-project/commit/4b65cafa182a9b91131bfce986e815c9a4ab6ae5
  Author: Benjamin Maxwell <macdue at dueutil.tech>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-combines.ll

  Log Message:
  -----------
  [AArch64][SVE] Add custom lowering for bfloat FMUL (with +bf16) (#167502)

This lowers an SVE FMUL of bf16 using the BFMLAL top/bottom instructions
rather than extending to an f32 mul. This does require zeroing the
accumulator, but requires fewer extends/unpacking.


  Commit: 121e2e9e377c1db6b5cb536e7fd0b78244c0ce04
      https://github.com/llvm/llvm-project/commit/121e2e9e377c1db6b5cb536e7fd0b78244c0ce04
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Introduce basic_string::__allocate_long_buffer_for_growing (#162633)

Introducing this utility makes the `__grow_by{,_and_replace}`
significantly easier to understand and allows us to migrate away from
these functions in the future.


  Commit: f3ce5dec690e11645e0b838132d3306b56c0ec97
      https://github.com/llvm/llvm-project/commit/f3ce5dec690e11645e0b838132d3306b56c0ec97
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/__algorithm/all_of.h
    M libcxx/include/__algorithm/none_of.h
    A libcxx/test/std/algorithms/robust_against_nonbool.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Forward std::all_of and std::none_of to std::any_of (#167670)

This allows propagating optimizations to different algorithms by just
optimizing the lowest one. This is especially relevant now that we start
optimizing how we're iterating through ranges (e.g. the segmented
iterator optimizations) and adding assumptions so the compier can better
leverage semantics guaranteed by the standard (e.g.
`__builtin_assume_dereferenceable`).


  Commit: 4b35ff583fbc61074bdf7b1ebf908d31e578f5ac
      https://github.com/llvm/llvm-project/commit/4b35ff583fbc61074bdf7b1ebf908d31e578f5ac
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll

  Log Message:
  -----------
  [RISCV] Enable rematerialization for scalar loads (#166774)

In some workloads we see an argument passed on the stack where it is
loaded, only for it to be immediately spilled to a different slot on the
stack and then reloaded from that spill slot later on.

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.

This gives a 14.8% reduction in spills in 544.nab_r on rva23u64 -O3, and
a few other smaller reductions on llvm-test-suite. I didn't find any
benchmarks where the number of spills/reloads increased.

Related: #165761


  Commit: 9be30e50c2bf878bd15ac8ed1270f1714c32b30f
      https://github.com/llvm/llvm-project/commit/9be30e50c2bf878bd15ac8ed1270f1714c32b30f
  Author: hev <wangrui at loongson.cn>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Headers/lasxintrin.h
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/Preprocessor/init-loongarch.c

  Log Message:
  -----------
  [clang][LoongArch] Introduce LASX and LSX conversion intrinsics (#157819)

This patch introduces the LASX and LSX conversion intrinsics:

- __m256 __lasx_cast_128_s (__m128)
- __m256d __lasx_cast_128_d (__m128d)
- __m256i __lasx_cast_128 (__m128i)
- __m256 __lasx_concat_128_s (__m128, __m128)
- __m256d __lasx_concat_128_d (__m128, __m128d)
- __m256i __lasx_concat_128 (__m128, __m128i)
- __m128 __lasx_extract_128_lo_s (__m256)
- __m128d __lasx_extract_128_lo_d (__m256d)
- __m128i __lasx_extract_128_lo (__m256i)
- __m128 __lasx_extract_128_hi_s (__m256)
- __m128d __lasx_extract_128_hi_d (__m256d)
- __m128i __lasx_extract_128_hi (__m256i)
- __m256 __lasx_insert_128_lo_s (__m256, __m128)
- __m256d __lasx_insert_128_lo_d (__m256d, __m128d)
- __m256i __lasx_insert_128_lo (__m256i, __m128i)
- __m256 __lasx_insert_128_hi_s (__m256, __m128)
- __m256d __lasx_insert_128_hi_d (__m256d, __m128d)
- __m256i __lasx_insert_128_hi (__m256i, __m128i)

Relevant GCC patch:

https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c2013267642fea4a6e89b826940c8aa80a76089d


  Commit: 8c6ec1212720ebbbd7dc10e1fea2602a5d58eef5
      https://github.com/llvm/llvm-project/commit/8c6ec1212720ebbbd7dc10e1fea2602a5d58eef5
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/array
    M libcxx/test/libcxx/diagnostics/array.nodiscard.verify.cpp
    M libcxx/test/std/containers/sequences/array/array.creation/to_array.verify.cpp

  Log Message:
  -----------
  [libc++][array] Applied `[[nodiscard]]` (#168829)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

-
https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 4c4cf71095c4e2e2063793d889db3ca984dd375e
      https://github.com/llvm/llvm-project/commit/4c4cf71095c4e2e2063793d889db3ca984dd375e
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/list
    M libcxx/test/libcxx/diagnostics/list.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][list] Applied `[[nodiscard]]` (#169015)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
-
https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant


  Commit: 74a62b12b0461cf051dbb4c3842fdccad305411b
      https://github.com/llvm/llvm-project/commit/74a62b12b0461cf051dbb4c3842fdccad305411b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/test/CodeGen/X86/avx2-builtins.c

  Log Message:
  -----------
  [X86] avx2-builtins.c - add constexpr test coverage for _mm256_bslli_epi128/_mm256_bsrli_epi128 intrinsics (#169309)


  Commit: d44d329c0b2f13bd1c259c822f5c4fc47d1240d5
      https://github.com/llvm/llvm-project/commit/d44d329c0b2f13bd1c259c822f5c4fc47d1240d5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/test/AST/ByteCode/intap.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix compound assign operators for IntAP(S) (#169303)

We didn't take `IntAP`/`IntAPS` into account when casting to and from
the computation LHS type. This broke the
`std/ranges/range.factories/range.iota.view/end.pass.cpp` test.


  Commit: c73de9777e67df4411020a7909f0eadbbf1de08b
      https://github.com/llvm/llvm-project/commit/c73de9777e67df4411020a7909f0eadbbf1de08b
  Author: Julian Nagele <j.nagele at apple.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll

  Log Message:
  -----------
  [IVDesciptors] Support detecting reductions with vector instructions. (#166353)

In combination with https://github.com/llvm/llvm-project/pull/149470
this will introduce parallel accumulators when unrolling reductions with
vector instructions. See also
https://github.com/llvm/llvm-project/pull/166630, which aims to
introduce parallel accumulators for FP reductions.


  Commit: 840a43bbe3a7361f99e9444dfcfd9eefe60ba487
      https://github.com/llvm/llvm-project/commit/840a43bbe3a7361f99e9444dfcfd9eefe60ba487
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/utils/ci/buildkite-pipeline.yml

  Log Message:
  -----------
  [libcxx][ci] Temporarily disable ARM jobs (#169318)

Linaro is doing network maintenance and I don't have an estimated time
these will be back online.


  Commit: fe9c8e4f10c74990a06f8837e4a45c56f725cb65
      https://github.com/llvm/llvm-project/commit/fe9c8e4f10c74990a06f8837e4a45c56f725cb65
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

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

  Log Message:
  -----------
  [mlir:x86vector:transform] Fix bazel build (again) after #168074. (#169316)

This is a second attempt to fix the bazel build (after the first in
#169294, which was accidentally merged before CI passed). In the first
attempt, not all bazel dependencies had been added; this PR should add
them all and make CI pass.

Signed-off-by: Ingo Müller <ingomueller at google.com>


  Commit: 5d2fc9408e99201a32f090ba263de05a362dfa2b
      https://github.com/llvm/llvm-project/commit/5d2fc9408e99201a32f090ba263de05a362dfa2b
  Author: Meredith Julian <35236176+mjulian31 at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/scalarization.ll

  Log Message:
  -----------
  [InstCombine] Fix phi scalarization with binop (#169120)

InstCombine phi scalarization would always create a new binary op with
the phi as the first operand, which is not correct for non-commutable
binary ops such as sub. This fix preserves the original binary op
ordering in the new binary op and adds a test for this behavior.
Currently, this transformation can produce silently incorrect IR, and in
the case of the added test, would optimize it out entirely.


  Commit: d162c91c01a66e4af0af190044961e60db0eeb3d
      https://github.com/llvm/llvm-project/commit/d162c91c01a66e4af0af190044961e60db0eeb3d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h

  Log Message:
  -----------
  [ORC] Avoid self-dependence in SuperNode dependence graph. (#169286)

Avoid adding any given SuperNode SN to its own SuperNode-deps set. This
saves us from trying to redundantly merge its dependencies back into
itself (a no-op, but a potentially expensive one).


  Commit: 1dc6ad008164353e05bfe857f905028827834dbb
      https://github.com/llvm/llvm-project/commit/1dc6ad008164353e05bfe857f905028827834dbb
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/include/lldb/Target/UnixSignals.h
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Target/UnixSignals.cpp
    M lldb/unittests/Signals/UnixSignalsTest.cpp

  Log Message:
  -----------
  [lldb] Show signal number description (#164176)

show information about the signal when the user presses `process handle
<unix-signal>` i.e

```sh
(lldb) process handle SIGWINCH 
NAME         PASS   STOP   NOTIFY  DESCRIPTION
===========  =====  =====  ======  ===================
SIGWINCH     true   false  false   window size changes
```

Wanted to use the existing `GetSignalDescription` but it is expected
behaviour to return the signal name if no signal code is passed. It is
used in stop info.


https://github.com/llvm/llvm-project/blob/65c895dfe084860847e9e220ff9f1b283ebcb289/lldb/source/Target/StopInfo.cpp#L1192-L1195


  Commit: d41628941743b778432e30d93f25028ffb375fbc
      https://github.com/llvm/llvm-project/commit/d41628941743b778432e30d93f25028ffb375fbc
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h

  Log Message:
  -----------
  [TableGen] Eliminate the dependency on SDNode definition order (#168745)

Fix the dependency of `CodeGenDAGPatterns::ParseDefaultOperands()` on
the particular order of SDNode definitions. Implicit usage of the first
definition as a placeholder makes `llvm-tblgen -gen-dag-isel` fail if
that SDNode is not usable as an output pattern operator and an instance
of `OperandWithDefaultOps` is used in a pattern.

Presently, each `OperandWithDefaultOps` record is processed by
constructing an instance of TreePattern from its `DefaultOps` argument
that has the form `(ops ...)`. Even though the result of processing the
root operator of that DAG is not inspected by `ParseDefaultOperands()`
function itself, that operator has to be supported by the underlying
`TreePattern::ParseTreePattern()` function. For that reason, a temporary
DAG is created by replacing the root operator of `DefaultOps` argument
with the first SDNode defined, which is usually `def imm : ...` defined
in `TargetSelectionDAG.td` file.

This results in misleading errors being reported when implementing new
`SDNode` types, if the new definition happens to be added before the
`def imm : ...` line. The error is reported by several test cases
executed by `check-llvm` target, as well as by the regular build, if one
of the enabled targets inherit one of its operand types from
`OperandWithDefaultOps`:

    OptionalIntOperand: ../llvm/test/TableGen/DAGDefaultOps.td:28:5: error: In OptionalIntOperand: Cannot use 'unexpected_node' in an output pattern!
    def OptionalIntOperand: OperandWithDefaultOps<i32, (ops (i32 0))>;

This commit implements a dedicated constructor of `TreePattern` to be
used if the caller does not care about the particular root operator of
the pattern being processed.


  Commit: d90bc3bc609d3ef2254e85cfcd435a99eb2b019b
      https://github.com/llvm/llvm-project/commit/d90bc3bc609d3ef2254e85cfcd435a99eb2b019b
  Author: Dmitry Chigarev <dmitry.chigarev at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir

  Log Message:
  -----------
  [mlir][XeGPU][VectorToXeGPU] Use 'xegpu.load' to lower 1D 'vector.transfer_read' for PVC & BMG (#168910)

The PR changes the `TransferReadLowering` to always use `xegpu.load`
(and not `xegpu.load_nd`) for 1D cases as it has more developed
interface (e.g. layouts capabilites).

Signed-off-by: dchigarev <dmitry.chigarev at intel.com>


  Commit: 72bfa28c07c810112da0778f504b91e87ab63600
      https://github.com/llvm/llvm-project/commit/72bfa28c07c810112da0778f504b91e87ab63600
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/test/CodeGen/X86/avx2-builtins.c

  Log Message:
  -----------
  [X86] avx2-builtins.c - fix copy+paste typo in _mm256_cmpeq_epi8 constexpr test - still tested _mm_cmpeq_epi8 (#169311)


  Commit: 74f5548bbc916a6c23731561f3808e64633760c7
      https://github.com/llvm/llvm-project/commit/74f5548bbc916a6c23731561f3808e64633760c7
  Author: Nathan Gauër <brioche at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/AST/HLSL/semantic-input-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-input-struct.hlsl
    A clang/test/AST/HLSL/semantic-input.hlsl
    A clang/test/AST/HLSL/semantic-output-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-output-struct.hlsl
    A clang/test/AST/HLSL/semantic-output.hlsl
    M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
    A clang/test/CodeGenHLSL/semantics/SV_Position.vs.hlsl
    M clang/test/SemaHLSL/Semantics/position.ps.hlsl
    R clang/test/SemaHLSL/Semantics/position.vs.hlsl
    A llvm/test/CodeGen/SPIRV/semantics/position.ps.ll
    A llvm/test/CodeGen/SPIRV/semantics/position.vs.ll

  Log Message:
  -----------
  [HLSL][SPIR-V] Implements SV_Position for VS/PS I/O (#168735)

Current implementation for SV_Position was very basic to allow
implementing/testing some semantics. Now that semantic support is more
robust, I can move forward and implement the whole semantic logic.

DX part is still a bit placeholder.


  Commit: e4cff3c687fe909a2ff291576872aa06a55277ce
      https://github.com/llvm/llvm-project/commit/e4cff3c687fe909a2ff291576872aa06a55277ce
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp

  Log Message:
  -----------
  [mlir] Avoid else after return in ScalableValueBounds (NFC) (#169211)


  Commit: 65fd9f1f891bcc4bc1a27a00a45a4c1d9670ae63
      https://github.com/llvm/llvm-project/commit/65fd9f1f891bcc4bc1a27a00a45a4c1d9670ae63
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/dereferenceable-1.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/willreturn.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll

  Log Message:
  -----------
  [Attributor] Support nested conditional branches (#168532)

The attributor can infer the alignment of %p at the call-site in this
example [1]:

```
  define void @f(ptr align 8 %p, i1 %c1, i1 %c2) {
  entry:
    br i1 %c1, label %bb.1, label %exit

  bb.1:
    call void (...) @llvm.fake.use(ptr %p)
    br label %exit

  exit:
    ret void
  }
```

but not when there's an additional conditional branch:

```
  define void @f(ptr align 8 %p, i1 %c1, i1 %c2) {
  entry:
    br i1 %c1, label %bb.1, label %exit

  bb.1:
    br i1 %c2, label %bb.2, label %exit

  bb.2:
    call void (...) @llvm.fake.use(ptr %p)
    br label %exit

  exit:
    ret void
  }
```

unless `-attributor-annotate-decl-cs` is enabled. This patch extends
`followUsesInMBEC` to handle such recursive branches.

n.b. admittedly I wrote this patch before discovering inferring the
alignment in this example is already possible with
`-attributor-annotate-decl-cs`, I came to realise this once writing the
tests, but this seems like a gap regardless looking at existing FIXMEs,
plus the alignment can now be inferred in this particular example
without the flag.

[1] https://godbolt.org/z/aKoc75so5


  Commit: 999deef63df5a057350a1e3bf211e536d5cfbc82
      https://github.com/llvm/llvm-project/commit/999deef63df5a057350a1e3bf211e536d5cfbc82
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CodeGen/promoted-complex-div.c

  Log Message:
  -----------
  Desugar complex element types for promoted complex division (#168943)

This patch fixes a crash in Clang that occurs when the compiler
retrieves the element type of a complex type but receives a sugared
type. See example here: https://godbolt.org/z/cdbdeMcaT
This patch fixes the crash.


  Commit: e5755395417ceaa9cd049e69593cb0dcc7d0e65c
      https://github.com/llvm/llvm-project/commit/e5755395417ceaa9cd049e69593cb0dcc7d0e65c
  Author: Jack Frankland <jack.frankland at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
    M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir

  Log Message:
  -----------
  [milr][memref]: Fold expand_shape + transfer_read (#167679)

Extend the load of a expand shape rewrite pattern to support folding a
`memref.expand_shape` and `vector.transfer_read` when the permutation
map on `vector.transfer_read` is a minor identity.

---------

Signed-off-by: Jack Frankland <jack.frankland at arm.com>


  Commit: a27842ce0698299eed4fbe076560b8d785d50444
      https://github.com/llvm/llvm-project/commit/a27842ce0698299eed4fbe076560b8d785d50444
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/apx/no-rex2-general.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-amx.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-x87.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-special.ll

  Log Message:
  -----------
  [X86][NFC] Add `-show-mc-encoding` to check register misuse (#169264)


  Commit: d14840779bf9e4ba80e8955b0e846d112106f287
      https://github.com/llvm/llvm-project/commit/d14840779bf9e4ba80e8955b0e846d112106f287
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    A llvm/test/CodeGen/X86/avx512-i386-setallones-pseudo.mir
    A llvm/test/CodeGen/X86/avx512-setallones-pseudo.mir
    M llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll

  Log Message:
  -----------
  [X86][AVX512] Add pseudos for `AVX512_*_SETALLONES` (#169009)

Introduce `AVX512_128_SETALLONES`, `AVX512_256_SETALLONES` pseudos to
generate all-ones vectors.

Post-RA expansion:

- Use VEX vpcmpeqd for XMM/YMM0–15 when available (matches current
codegen as `AVX512_128/256_SETALLONES` will be preferred over
`AVX1/2_SETALLONES` for AVX512VL target).
- Use EVEX `vpternlogd imm=0xFF` for high regs.

Includes MIR tests for both VEX and EVEX paths.


  Commit: 83765f435d1ca1ffc29ebe0ad979bfb70a22ff70
      https://github.com/llvm/llvm-project/commit/83765f435d1ca1ffc29ebe0ad979bfb70a22ff70
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu-templates.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu-templates.s.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/amdgpu-templates.test
    M llvm/utils/update_mc_test_checks.py

  Log Message:
  -----------
  [Utils][update_mc_test_checks] Support generating asm tests from templates. (#168946)

Reduces the pain of manual editing tests applying the same
changes over multiple instructions and keeping them consistent.


  Commit: d5927a6172ab9b95f7f533bfdff865c1ce2aad5b
      https://github.com/llvm/llvm-project/commit/d5927a6172ab9b95f7f533bfdff865c1ce2aad5b
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/TypeSystem.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/main.cpp
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILPointerArithmetic.py
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp

  Log Message:
  -----------
  [LLDB] Add unary plus and minus to DIL (#155617)

This patch adds unary nodes plus and minus, introduces unary type
conversions, and adds integral promotion to the type system.


  Commit: cd13d9f9e5af7dad1b389f70bb01854134cb9df5
      https://github.com/llvm/llvm-project/commit/cd13d9f9e5af7dad1b389f70bb01854134cb9df5
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/unittests/UnwindAssembly/ARM64/TestArm64InstEmulation.cpp

  Log Message:
  -----------
  [lldb] Add test showing UnwindAssemblyInstEmulation can't handle backwards branches (#168398)

If we have a conditional branch, followed by an epilogue, followed by
more code, LLDB will incorrectly compute unwind information through
instruction emulation. Consider this:

```
// ...
<+16>: b.ne   ; <+52> DO_SOMETHING_AND_GOTO_AFTER_EPILOGUE

// epilogue start
<+20>: ldp    x29, x30, [sp, #0x20]
<+24>: add    sp, sp, #0x30
<+28>: ret
// epilogue end

AFTER_EPILOGUE:
<+32>: do something
// ...
<+48>: ret

DO_SOMETHING_AND_GOTO_AFTER_EPILOGUE:
<+52>: stp    x22, x23, [sp, #0x10]
<+56>: mov    x22, #0x1
<+64>: b      ; <+32> AFTER_EPILOGUE
```

LLDB will think that the unwind state of +32 is the same as +28. This is
false, as +32 _never_ executes after +28.

The root cause of the problem is the order in which instructions are
visited; they are visited in the order they appear in the text, with
unwind state always being forwarded to positive branch offsets, but
never to negative offsets.

In the example above, `AFTER_EPILOGUE` should inherit the state of the
branch in +64, but it doesn't because `AFTER_EPILOGUE` is visited right
after the `ret` in +28.

Fixing this should be simple: maintain a stack of instructions to visit.
While the stack is not empty, take the next instruction on stack and
visit it.
* After visiting a non-branching instruction, push the next instruction
and forward unwind state to it.
* After visiting a branch with one or more known targets, push the known
branch targets and forward state to them.
* In all other cases (ret, or branch to register), don't push nor
forward anything.

Never push an instruction already on the stack. Like the algorithm
today, this new algorithm also assumes that, if two instructions branch
to the same target, the unwind state in both better be the same.

(Note: yes, branch to register is also handled incorrectly today, and
will still be incorrect).


  Commit: 4a567e3e7c35257e47ee2fb6de61c2c4fb0d4af0
      https://github.com/llvm/llvm-project/commit/4a567e3e7c35257e47ee2fb6de61c2c4fb0d4af0
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/lit/examples/many-tests/ManyTests.py

  Log Message:
  -----------
  [llvm][utils][lit] Fix imports in ManyTests.py example (#169328)

Fixes #169297


  Commit: 24abb0603a5f491943d05ea3a2b6513238d9937e
      https://github.com/llvm/llvm-project/commit/24abb0603a5f491943d05ea3a2b6513238d9937e
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copy.cpp

  Log Message:
  -----------
  [OpenAC][CIR] func-local-declare 'copy' clause lowering (#169115)

This patch implements the lowering for the 'copy' clause for a
function-local declare directive.

This is the first of the clauses that requires a 'cleanup' step, so it
also includes some basic infrastructure for that. Fortunately there are
only 8 clauses (only 6 of which require cleanup), so the if/else chain
won't get too long.

Also fortunately, we don't have to include any of the AST components, as
it is possible to tell all the required details from the entry operation
itself.


  Commit: ceea07daa8a41562fdd884a224afbac1d7346e3e
      https://github.com/llvm/llvm-project/commit/ceea07daa8a41562fdd884a224afbac1d7346e3e
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/forward_list
    M libcxx/test/libcxx/diagnostics/forward_list.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][forward_list] Applied `[[nodiscard]]` (#169019)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant


  Commit: 456b0512c927e37640fbdb9f6627466948f64305
      https://github.com/llvm/llvm-project/commit/456b0512c927e37640fbdb9f6627466948f64305
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll

  Log Message:
  -----------
  [VPlan] Set ZeroIsPoison=false for FirstActiveLane (#169298)

When interleaving a loop with an early exit, the parts before the active
lane will be all zero. Currently we emit @llvm.experimental.cttz.elts
with ZeroIsPoison=true for these parts, which means that they will
produce poison.

We don't see any miscompiles today on AArch64 because it has the same
lowering for cttz.elts regardless of ZeroIsPoison, but this may cause
issues on RISC-V when interleaving. This fixes it by setting
ZeroIsPoison=false.

The codegen is slightly worse on RISC-V when ZeroIsPoison=false and we
could potentially recover it by enabling it again when UF=1, but this is
left to another PR.

This is split off from #168738, where LastActiveLane can get expanded to
a FirstActiveLane with an all-zeroes mask.


  Commit: 1580f4b038c9945bf73d33b25459bece2f67ace7
      https://github.com/llvm/llvm-project/commit/1580f4b038c9945bf73d33b25459bece2f67ace7
  Author: David Green <david.green at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/fshl.ll
    M llvm/test/Analysis/CostModel/AArch64/fshr.ll

  Log Message:
  -----------
  [AArch64] Update costs for fshl/r and add rotr/l variants. NFC


  Commit: ad0acf4af001a3781b41b572788adcd7d652d18a
      https://github.com/llvm/llvm-project/commit/ad0acf4af001a3781b41b572788adcd7d652d18a
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Combine S16 copy-trunc-readanylane-anyext (#168410)


  Commit: 71952df1f52c8d54ea00a9e836184ba0ece7c6c3
      https://github.com/llvm/llvm-project/commit/71952df1f52c8d54ea00a9e836184ba0ece7c6c3
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/OpenMP/spirv_target_codegen_noexceptions.cpp

  Log Message:
  -----------
  [OpenMP][SPIRV] Disable exceptions for OpenMP SPIR-V (#169094)

More missed target checks.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: d542dce0e6e65d8943c31fc99391572c0287128a
      https://github.com/llvm/llvm-project/commit/d542dce0e6e65d8943c31fc99391572c0287128a
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp

  Log Message:
  -----------
  [OpenACC][CIR] copyin lowering for func-local- declare (#169336)

This is exactly like the 'copy', except the exit operation is a 'delete'
instead of a 'copyout'. Also, creating the 'delete' op has one less
argument to it, so we have to do some special handling when creating
that.


  Commit: f4ba8e38ee0a3a2789b50d50e724fb90b1527708
      https://github.com/llvm/llvm-project/commit/f4ba8e38ee0a3a2789b50d50e724fb90b1527708
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: RegBankLegalize rules for G_FABS and G_FNEG (#168411)


  Commit: 29cfef188088cb0101b3ec70b13d68c06a2d49d6
      https://github.com/llvm/llvm-project/commit/29cfef188088cb0101b3ec70b13d68c06a2d49d6
  Author: Mirko <mirkomueller97 at live.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
    M llvm/unittests/DebugInfo/PDB/NativeSessionTest.cpp

  Log Message:
  -----------
  [PDB][NativeSession] Use better error code for invalid format (#167885)

Replaces the default "Success" std::error_code with a more meaningful
one if `Magic != file_magic::pdb`.


  Commit: 2bdd1357c826afe681ab0d6ddfa8fb814b2cef6a
      https://github.com/llvm/llvm-project/commit/2bdd1357c826afe681ab0d6ddfa8fb814b2cef6a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/simd_utils.h
    M libcxx/include/__locale_dir/locale_base_api.h
    M libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
    M libcxx/include/__locale_dir/locale_base_api/ibm.h
    R libcxx/include/__locale_dir/locale_base_api/musl.h
    M libcxx/include/__locale_dir/num.h
    M libcxx/include/__locale_dir/support/bsd_like.h
    M libcxx/include/__locale_dir/support/fuchsia.h
    M libcxx/include/__locale_dir/support/linux.h
    M libcxx/include/__locale_dir/support/no_locale/strtonum.h
    M libcxx/include/__locale_dir/support/windows.h
    M libcxx/include/__support/xlocale/__strtonum_fallback.h
    M libcxx/include/module.modulemap.in
    M libcxx/src/locale.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_int.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_long_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_short.pass.cpp

  Log Message:
  -----------
  [libc++] Optimize num_get integral functions (#121795)

```
---------------------------------------------------
Benchmark                            old        new
---------------------------------------------------
BM_num_get<bool>                 86.5 ns    32.3 ns
BM_num_get<long>                 82.1 ns    30.3 ns
BM_num_get<long long>            85.2 ns    33.4 ns
BM_num_get<unsigned short>       85.3 ns    31.2 ns
BM_num_get<unsigned int>         84.2 ns    31.1 ns
BM_num_get<unsigned long>        83.6 ns    31.9 ns
BM_num_get<unsigned long long>   87.7 ns    31.5 ns
BM_num_get<float>                 116 ns     114 ns
BM_num_get<double>                114 ns     114 ns
BM_num_get<long double>           113 ns     114 ns
BM_num_get<void*>                 151 ns     144 ns
```

This patch applies multiple optimizations:
- Stages two and three of do_get are merged and a custom integer parser
has been implemented
This avoids allocations, removes the need for strto{,u}ll and avoids
__stage2_int_loop (avoiding extra writes to memory)
- std::find has been replaced with __atoms_offset, which uses vector
instructions to look for a character

Fixes #158100
Fixes #158102


  Commit: bb78728826ff57f3df859e79bfd857b5a175bb6d
      https://github.com/llvm/llvm-project/commit/bb78728826ff57f3df859e79bfd857b5a175bb6d
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
    M llvm/test/CodeGen/AArch64/implicit-def-subreg-to-reg-regression.ll
    A llvm/test/CodeGen/AArch64/pr151592.mir
    A llvm/test/CodeGen/AArch64/pr151888.mir
    A llvm/test/CodeGen/AArch64/pr164181-reduced.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/register-coalesce-implicit-def-subreg-to-reg.mir
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/fpowi.ll
    M llvm/test/CodeGen/LoongArch/lasx/scalar-to-vector.ll
    M llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
    M llvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-round.ll
    M llvm/test/CodeGen/PowerPC/frem.ll
    M llvm/test/CodeGen/PowerPC/froundeven-legalization.ll
    M llvm/test/CodeGen/PowerPC/half.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/llvm.modf.ll
    M llvm/test/CodeGen/PowerPC/vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/vector-constrained-fp-intrinsics.ll
    A llvm/test/CodeGen/X86/coalescer-breaks-subreg-to-reg-liveness.ll
    M llvm/test/CodeGen/X86/coalescer-implicit-def-regression-imp-operand-assert.mir
    A llvm/test/CodeGen/X86/coalescing-subreg-to-reg-requires-subrange-update.mir
    A llvm/test/CodeGen/X86/pr76416.ll
    M llvm/test/CodeGen/X86/subreg-fail.mir
    A llvm/test/CodeGen/X86/subreg-to-reg-coalescing.mir

  Log Message:
  -----------
  Reland "RegisterCoalescer: Add implicit-def of super register when coalescing SUBREG_TO_REG"

A SUBREG_TO_REG instruction expresses that the top bits of the result
register are set to a certain value (e.g. 0).

The example below expresses that the result of %1 will have the top 32
bits zeroed and the lower 32bits being equal to the result of INSTR.
```
    %0:gpr32 = INSTR
    %1:gpr64 = SUBREG_TO_REG 0, %0, sub32
```
When the RegisterCoalescer tries to remove SUBREG_TO_REG instructions by
coalescing %0 into %1, it must keep the same semantics. Currently
however, the RegisterCoalescer would emit:
```
    %1.sub32:gpr64 = INSTR
```
which no longer expresses that the top 32-bits of the register are
defined (zeroed) by INSTR.

This may cause issues with e.g. machine copy propagation where the pass
may think it can remove a COPY-like instruction because the MIR says
only the bottom 32-bits are defined/used, even though other uses of the
register rely on the top 32-bits being zeroed by the COPY-like
instruction.

This PR changes the RegisterCoalescer to instead emit:
```
    undef %1.sub32:gpr64 = MOVimm32 42, implicit-def %1
```
to express that the entire contents of %1:gpr64 are defined by the
instruction.

This tries to reland #134408 which had to be reverted due to a few reported
failures.


  Commit: ccd2c3e3202d25f39775a39d1565522481a14565
      https://github.com/llvm/llvm-project/commit/ccd2c3e3202d25f39775a39d1565522481a14565
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/utils/ci/buildkite-pipeline.yml

  Log Message:
  -----------
  Revert "[libcxx][ci] Temporarily disable ARM jobs" (#169352)

Reverts llvm/llvm-project#169318

Our builders are back online. I see them picking up existing jobs.


  Commit: e442c67a2c98a3e1e3bfcf90aaa82ba70fb92760
      https://github.com/llvm/llvm-project/commit/e442c67a2c98a3e1e3bfcf90aaa82ba70fb92760
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/SemanticSelection.cpp

  Log Message:
  -----------
  [clangd] Fix C++20 build failure


  Commit: dc39fa34c3e27650bd111357d77247592b14baef
      https://github.com/llvm/llvm-project/commit/dc39fa34c3e27650bd111357d77247592b14baef
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp

  Log Message:
  -----------
  [OpenACC][CIR] copyout clause lowering on func-local declare (#169350)

This is identical to 'copy' and 'copyin', except it uses 'create' and
'copyout' as its entry/exit op. This patch adds the same tests, and
similar code for all of it.


  Commit: 870f581f702e6bb85c59670492c9998aacc3dacf
      https://github.com/llvm/llvm-project/commit/870f581f702e6bb85c59670492c9998aacc3dacf
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/__config
    M libcxx/test/std/depr/depr.cpp.headers/ccomplex.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ciso646.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdalign.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdbool.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ctgmath.verify.cpp

  Log Message:
  -----------
  [libc++] Disable header deprecations until #168041 is landed (#169305)

The `#warning` causes diagnostics if system headers include deprecated
headers. #168041 will add a way to deprecated headers properly, which
then also interacts nicely with system header suppression.


  Commit: ab7145231b9d6a87d528a344456a77793c75614d
      https://github.com/llvm/llvm-project/commit/ab7145231b9d6a87d528a344456a77793c75614d
  Author: Marco Elver <elver at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Support/AllocToken.cpp

  Log Message:
  -----------
  [Support] Permit "default" string in AllocToken mode parsing (#169351)

Update getAllocTokenModeFromString() to recognize "default" as a valid
mode string, mapping it to `DefaultAllocTokenMode`.


  Commit: f31e1cf012c3029ef7619db25f5074b69b550e59
      https://github.com/llvm/llvm-project/commit/f31e1cf012c3029ef7619db25f5074b69b550e59
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    A libsycl/Maintainers.md
    M llvm/Maintainers.md

  Log Message:
  -----------
  [libsycl] Add Maintainers.md file (#168550)

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 51fef127f29fe2225358396728d95e2d9e6af75e
      https://github.com/llvm/llvm-project/commit/51fef127f29fe2225358396728d95e2d9e6af75e
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp

  Log Message:
  -----------
  [lldb] Add const& to InstructionList parameter (#169342)


  Commit: cc0371f2a4f95614c35601f898dde7745120e8d1
      https://github.com/llvm/llvm-project/commit/cc0371f2a4f95614c35601f898dde7745120e8d1
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp

  Log Message:
  -----------
  [AMDGPU] Use ListSeparator. NFC. (#169347)


  Commit: e3d0ac188665afe96df32bd2841f6b71b05b8790
      https://github.com/llvm/llvm-project/commit/e3d0ac188665afe96df32bd2841f6b71b05b8790
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/string_view
    M libcxx/test/libcxx/diagnostics/string_view.nodiscard.verify.cpp
    M libcxx/test/libcxx/strings/string.view/nonnull.verify.cpp

  Log Message:
  -----------
  [libc++][string_view] Applied `[[nodiscard]]` (#169010)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant


  Commit: 78d829857656e23a7d3bc4510baf4ddcb6fce97b
      https://github.com/llvm/llvm-project/commit/78d829857656e23a7d3bc4510baf4ddcb6fce97b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp

  Log Message:
  -----------
  [OpenACC][CIR] 'create' clause lowering on func-local-declare (#169356)

This one is another that is effectively identical to copy, copyin, and
copyout, except its entry/exit ops pair is create/delete.


  Commit: bab1c2971a31f032a6c353a0076d16e564ab50fa
      https://github.com/llvm/llvm-project/commit/bab1c2971a31f032a6c353a0076d16e564ab50fa
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    A bolt/test/AArch64/inline-armv8.3-returns.s
    A bolt/test/AArch64/inline-armv8.3-tailcall.s
    A bolt/test/AArch64/inline-pauth-lr.s

  Log Message:
  -----------
  [BOLT] Extend Inliner to work on functions with Pointer Authentication (#162458)

The inliner uses DirectSP to check if a function has instructions that
modify the SP. Exceptions are stack Push and Pop instructions.

We can also allow pointer signing and authenticating instructions.

The inliner removes the Return instructions from the inlined functions.
If it is a fused pointer-authentication-and-return (e.g. RETAA), we have
to generate a new authentication instruction.


  Commit: 23907a20a5fa5c6e065b73f4515a2a072675dad5
      https://github.com/llvm/llvm-project/commit/23907a20a5fa5c6e065b73f4515a2a072675dad5
  Author: Lucas Ste <38472950+LucasSte at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/BPF/BPF.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFSubtarget.cpp
    M llvm/lib/Target/BPF/BPFSubtarget.h
    M llvm/test/CodeGen/BPF/atomic-oversize.ll
    A llvm/test/CodeGen/BPF/builtin_calls.ll
    M llvm/test/CodeGen/BPF/struct_ret1.ll
    M llvm/test/CodeGen/BPF/struct_ret2.ll

  Log Message:
  -----------
  [BPF] Allow libcalls behind a feature gate (#168442)

**Problem**

In Rust, checked math functions (like `checked_mul`, `overflowing_mul`,
`saturating_mul`) are part of the primitive implementation of integers
([see u64](https://doc.rust-lang.org/std/primitive.u64.html) for
instance). The Rust compiler builds the Rust
[compiler-builtins](https://github.com/rust-lang/compiler-builtins)
crate as a step in the compilation processes, since it contains the math
builtins to be lowered in the target.

For BPF, however, when using those functions in Rust we hit the
following errors:

```
ERROR llvm: <unknown>:0:0: in function func i64 (i64, i64): A call to built-in function '__multi3' is not supported.

ERROR llvm: <unknown>:0:0: in function func i64 (i64, i64): only small returns supported
```

Those errors come from the following code:

```
pub fn func(a: u64, b: u64) -> u64 {
    a.saturating_mul(b)
}
```

Those functions invoke underneath the llvm instrinc `{ i64, i1 }
@llvm.umul.with.overflow.i64(i64, i64)` or its variants.

It is very useful to use safe math operations when writing BPF code in
Rust, and I would like to add support for those in the target.

**Changes**

1. Create a target feature `allow-builtin-calls` to enable code
generation for builtin functions.
2. Implement `CanLowerReturn` to fix the error `only small returns
supported`.
3. Add code to correctly invoke lib functions.
4. Add a test case together with the corresponding C code.


  Commit: 38a5dd5bc7d7f59a2acfeaff3b6852337bb6704e
      https://github.com/llvm/llvm-project/commit/38a5dd5bc7d7f59a2acfeaff3b6852337bb6704e
  Author: Shota Matsubara <40222661+baramatsubonzo at users.noreply.github.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst

  Log Message:
  -----------
  Fix typo in LLVM Kaleidoscope tutorial (Chapter 2) (#169319)

This patch fixes a minor typo in the **Kaleidoscope tutorial (Chapter
2)**.

The sentence:
“checks to see if **if** is too low”
has been corrected to:
“checks to see if **it** is too low”.

This is a documentation-only change and does not affect any semantic
behavior or code generation.

Thank you for maintaining the tutorial, and please let me know if any
further adjustments are needed.


  Commit: ad1be4a589b3143c2a76d521bcf205d22bb22ffe
      https://github.com/llvm/llvm-project/commit/ad1be4a589b3143c2a76d521bcf205d22bb22ffe
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/static-members.cpp

  Log Message:
  -----------
  [CIR] Add handling for static data members (#169134)

This adds some trivial handling to force emitting of child decls inside
C++ records.


  Commit: 76e9834b2908ec550bb2ca221b7652f6a5c32c46
      https://github.com/llvm/llvm-project/commit/76e9834b2908ec550bb2ca221b7652f6a5c32c46
  Author: PMylon <pmylonas at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/test/Target/LLVMIR/target-ext-type.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Support named barrier as a global variable type in llvm dialect (#169194)

Enables `amdgcn.named.barrier` target extension type as a global
variable type in MLIR.


  Commit: 79c56e8f335b231d00b06c8031d5d4c31ceb7d96
      https://github.com/llvm/llvm-project/commit/79c56e8f335b231d00b06c8031d5d4c31ceb7d96
  Author: Shubham Sandeep Rastogi <Shubham.Rastogi at sony.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    A llvm/test/Transforms/Coroutines/declare-value.ll

  Log Message:
  -----------
  Add support for llvm.dbg.declare_value in the CoroSplitter pass. (#168134)

Make sure the CoroSplitter pass correctly handles `#dbg_declare_value`
intrinsics. Which means, it should identify them, and convert them to
`#dbg_declares` so that any subsequent passes do not need to be amended
to support the `#dbg_declare_value` intrinsic.

More information here:
https://discourse.llvm.org/t/rfc-introduce-new-llvm-dbg-coroframe-entry-intrinsic/88269

This patch is the second and last in a stack of patches, with the one
preceding it being: https://github.com/llvm/llvm-project/pull/168132


  Commit: c1f24a5205364686213a23182dc45df9c2383360
      https://github.com/llvm/llvm-project/commit/c1f24a5205364686213a23182dc45df9c2383360
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/tools/driver/Driver.cpp

  Log Message:
  -----------
  [windows] improve python3.dll load check (#168864)


  Commit: 3843a50c69063a9440ccd65ff9a167be75baf442
      https://github.com/llvm/llvm-project/commit/3843a50c69063a9440ccd65ff9a167be75baf442
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/unittests/AST/TypePrinterTest.cpp

  Log Message:
  -----------
  [Clang][TypePrinter] Make printNestedNameSpecifier look at typedefs (#169364)

This is to resolve a regression caused by #168534.

Now when we have an anonymous object like a struct or union that has a
typedef attached, we print the typedef name instead of listing it as
anonymous.


  Commit: 81f4ab83eb6fbedcede35fb1b5a4d45c3e8d5c16
      https://github.com/llvm/llvm-project/commit/81f4ab83eb6fbedcede35fb1b5a4d45c3e8d5c16
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/test/clang-doc/namespace.cpp

  Log Message:
  -----------
  [clang-doc] Add Mustache HTML output to namespace test (#169107)

This patch adds Mustache HTML tests alongside the legacy HTML backend
for namespace output. This way, we can see exactly where the output
currently differs before replacing the legacy backend.

The same thing will be done for all other tests where the legacy HTML
backend is tested.


  Commit: 37f7b3128d8217e6a99cc6117ea709e8fa7b0704
      https://github.com/llvm/llvm-project/commit/37f7b3128d8217e6a99cc6117ea709e8fa7b0704
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  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/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    A llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll

  Log Message:
  -----------
  Reland [VPlan] Handle WidenGEP in narrowToSingleScalars (#167880)

Changes: Fix a missed update to WidenGEP::usesFirstLaneOnly, and include
reduced-case test that was previously hitting the new assert: the
underlying reason was that VPWidenGEP::usesScalars was too weak, and the
single-scalar WidenGEP was not narrowed by narrowToSingleScalarRecipes.

This allows us to strip a special case in VPWidenGEP::execute.


  Commit: 9688f88e57f369002157758b8399a235bf6763ca
      https://github.com/llvm/llvm-project/commit/9688f88e57f369002157758b8399a235bf6763ca
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/pr128062-interleaved-accesses-narrow-group.ll

  Log Message:
  -----------
  [LV] Pre-commit test for #128062 (#164801)

In preparation to extend the work done by dfa665f ([VPlan] Add
transformation to narrow interleave groups) to make the narrowing more
powerful, pre-commit a test case from #128062.


  Commit: 621cbcde0161341494b546a1fb478cfd57d1a94f
      https://github.com/llvm/llvm-project/commit/621cbcde0161341494b546a1fb478cfd57d1a94f
  Author: Atmn Patel <atmnp at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M flang/test/Transforms/OpenACC/acc-implicit-data.fir
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/test/Dialect/OpenACC/acc-implicit-data.mlir

  Log Message:
  -----------
  [mlir][acc] Adds attr to acc.present to identify default clause origin (#169114)

The `acc.present` Op as generated by ACCImplicitData does not provide a
way to differentiate between `acc.present` ops that are generated
implicitly and the ones that are generated as result of an explicit
`default(present)` clause in the source code. This differentiation would
allow for better communication to the user on the decisions made by the
compiler while managing data automatically between the host and the
device. This commit adds this information as a discardable attribute on
the `acc.present` op.


  Commit: a27bb38ee6f5762e715803d8eb6ffc5a8dd09575
      https://github.com/llvm/llvm-project/commit/a27bb38ee6f5762e715803d8eb6ffc5a8dd09575
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/tools/bugpoint/BugDriver.h
    M llvm/tools/bugpoint/ExecutionDriver.cpp
    M llvm/tools/bugpoint/ExtractFunction.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp
    M llvm/tools/bugpoint/OptimizerDriver.cpp

  Log Message:
  -----------
  Reapply "[NFC][bugpoint] Namespace cleanup in `bugpoint`" (#168961) (#169055)

This reverts commit b83e458fe5330227581e1e65f3866ddfcd597837.

Also undo the use of namespace qualifier for `ReducePassList` as that
seems to cause build failures.


  Commit: 1b65752d16045114ed381c95306517ff99147cda
      https://github.com/llvm/llvm-project/commit/1b65752d16045114ed381c95306517ff99147cda
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-present.cpp

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'present' lowering on local-declare (#169381)

Just like the last handful of patches that did copy, copyin, copyout,
     create, etc, this patch has the exact same behavior, except the
     entry op is a present, and the exit is delete.


  Commit: 740d0bd385967f6ae0171896722143d9a70b66a5
      https://github.com/llvm/llvm-project/commit/740d0bd385967f6ae0171896722143d9a70b66a5
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/lib/Bindings/Python/DialectLLVM.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/test/python/dialects/llvm.py

  Log Message:
  -----------
  [MLIR][Python] add GetTypeID for llvm.struct_type and llvm.ptr and enable downcasting (#169383)


  Commit: d4cd331b7efc8cd5f15faa846697d9d61b0ff246
      https://github.com/llvm/llvm-project/commit/d4cd331b7efc8cd5f15faa846697d9d61b0ff246
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 2bdd1357c826


  Commit: 0e86510c787d68f5f87708b2efdaf92a7501b6c3
      https://github.com/llvm/llvm-project/commit/0e86510c787d68f5f87708b2efdaf92a7501b6c3
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Frontend/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 3773bbe9e791


  Commit: 40fb2ca506a873b031f90dac619ccca1d6ff0de5
      https://github.com/llvm/llvm-project/commit/40fb2ca506a873b031f90dac619ccca1d6ff0de5
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 645e0dcbff33


  Commit: 445956443bdf5dcc7fb8beb7dd9e571f31551519
      https://github.com/llvm/llvm-project/commit/445956443bdf5dcc7fb8beb7dd9e571f31551519
  Author: Henry Baba-Weiss <henry.babaweiss at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CodeGen/attr-target-clones.c
    M clang/test/Sema/attr-target-clones.c

  Log Message:
  -----------
  [clang][Sema] Handle target_clones redeclarations that omit the attribute (#169259)

This patch adds a case to `CheckMultiVersionAdditionalDecl()` that
detects redeclarations of `target_clones` functions which omit the
attribute, and makes sure they are marked as redeclarations. It also
updates the comment at the call site of
`CheckMultiVersionAdditionalDecl()` to reflect this.

Previously, `target_clones` multiversioned functions that omitted the
attribute from subsequent declarations would cause Clang to hit an
`llvm_unreachable` and crash. In the following example, the second
declaration (the function definition) should inherit the `target_clones`
attribute from the first declaration (the forward declaration):

```
__attribute__((target_clones("arch=atom", "default")))
void foo(void);

void foo(void) { /* ... */ }
```

However, `CheckMultiVersionAdditionalDecl()` was not recognizing the
function definition as a redeclaration of the forward declaration, which
prevented `Sema::MergeFunctionDecl()` from automatically inheriting the
attribute.

A side effect of this fix is that Clang now catches redeclarations of
`target_clones` functions that have conflicting types, which previously
caused Clang to crash by hitting that same `llvm_unreachable`. The
`bad_overload1` case in `clang/test/Sema/attr-target-clones.c` has been
updated to reflect this.

Fixes #165517
Fixes #129483


  Commit: f5e228b32ac0a59b5aa834caa80150ba877e82ce
      https://github.com/llvm/llvm-project/commit/f5e228b32ac0a59b5aa834caa80150ba877e82ce
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
    M llvm/test/CodeGen/DirectX/bugfix_150050_data_scalarize_const_gep.ll
    M llvm/test/CodeGen/DirectX/scalarize-alloca.ll
    M llvm/test/CodeGen/DirectX/scalarize-global.ll

  Log Message:
  -----------
  [DirectX] Simplify DXIL data scalarization, and data scalarize whole GEP chains (#168096)

- The DXIL data scalarizer only needs to change vectors into arrays. It
does not need to change the types of GEPs to match the pointer type.
This PR simplifies the `visitGetElementPtrInst` method to do just that
while also accounting for nested GEPs from ConstantExprs. (Before this
PR, there were still vector types lingering in nested GEPs with
ConstantExprs.)
- The `equivalentArrayTypeFromVector` function was awkwardly placed near
the top of the file and away from the other helper functions. The
function is now moved next to the other helper functions.
- Removed an unnecessary `||` condition from `isVectorOrArrayOfVectors`

Related tests have also been cleaned up, and the test CHECKs have been
modified to account for the new simplified behavior.


  Commit: 4a0d4850d77c13b71cd0bdd40b38a5afc46fb62b
      https://github.com/llvm/llvm-project/commit/4a0d4850d77c13b71cd0bdd40b38a5afc46fb62b
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/test/clang-doc/namespace.cpp

  Log Message:
  -----------
  [clang-doc] Add definition information to class templates (#169109)


  Commit: 658675fad794197a2a41207b8e4b422becd78f28
      https://github.com/llvm/llvm-project/commit/658675fad794197a2a41207b8e4b422becd78f28
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp

  Log Message:
  -----------
  [OpenACC][CIR] 'device_resident' clause lowering for local declare (#169389)

Just like the last handful of clauses, this is a pretty simple one,
doing device_resident (Entry op: declare_device_resident, and exit:
    delete).  This should be the last of the 'local' declare patches.


  Commit: 0549aa11c2c1b619c673a0644a25f939bf13746f
      https://github.com/llvm/llvm-project/commit/0549aa11c2c1b619c673a0644a25f939bf13746f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-11-25 (Tue, 25 Nov 2025)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinker.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinkerDeclContext.cpp
    M llvm/test/tools/dsymutil/AArch64/dummy-debug-map-arm64.map
    M llvm/test/tools/dsymutil/AArch64/dwarf5-str-offsets-base-strx.test
    M llvm/test/tools/dsymutil/AArch64/inlined-low_pc.c
    A llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.o
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.o
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp

  Log Message:
  -----------
  [llvm][dsymutil] Use the DW_AT_name of the uniqued DIE for insertion into .debug_names (#168513)

Depends on:
* https://github.com/llvm/llvm-project/pull/168895

Note, the last commit is the one with the actual fix. The others are
drive-by/test changes

We've been seeing dsymutil verification failures like:
```
error: Name Index @ 0x0: Entry @ 0x11949d: mismatched Name of DIE @ 0x9c644c:
index - apply<(lambda at /some/build/dir/lib/LLVMSupport/include/llvm/Support/Error.h:1070:35)>;
debug_info - apply<(lambda at /some/build/dir/lib/LLVMCustom/include/llvm/Support/Error.h:1070:35)>
apply, _ZN11custom_llvm18ErrorHandlerTraitsIRFvRNS_13ErrorInfoBaseEEE5applyIZNS_12consumeErrorENS_5ErrorEEUlRKS1_E_EES7_OT_NSt3__110unique_ptrIS1_NSD_14default_deleteIS1_EEEE.
```
Not how the name of the DIE has a different lambda path than the one
that was used to insert the DIE into debug_names.

The root cause of the issue is that we have a DW_AT_subprogram
definition whose DW_AT_specification DIE got deduplicated. But the
DW_AT_name of the original specification is different than the one it
got uniqued to. That’s technically fine because dsymutil uniques by
linkage name, which uniquely identifies any function with non-internal
linkage.

But we insert the definition DIE into the debug-names table using the
DW_AT_name of the original specification (we call
`getDIENames(InputDIE…)`). But what we really want to do is use the name
of the adjusted `DW_AT_specifcation` (i.e., the `DW_AT_specification` of
the output DIE). That’s not as simple as it sounds because we can’t just
get ahold of the DIE in the output CU. We have to grab the ODR
`DeclContext` of the input DIE’s specification. That is the only link
back to the canonical specification DIE. For that to be of any use, we
have to stash the `DW_AT_name` into `DeclContext` so we can use it in
`getDIENames`.

We have to account for the possibility of multiple levels of
`DW_AT_specification`/`DW_AT_abstract_origin`. So my proposed solution
is to recursively scan the referenced DIE’s, grab the canonical DIE for
those and get the name from the `DeclContext` (if none exists then use
the `DW_AT_name` of the DIE itself).

One remaining question is whether we need to handle the case where a DIE
has a `DW_AT_specification` *and* a `DW_AT_abstract_origin`? That
complicates the way we locate `DW_AT_name`. We'd have to adjust
`getCanonicalDIEName` to handle this. But it's not clear what a
`DW_AT_name` would be for such cases. Worst case at the moment we take
the wrong path up the specifications and don't find any `DW_AT_name`,
and don't end up indexing that DIE. Something to keep an eye out for.

rdar://149239553


  Commit: e92bb83c1810c61a7fa81d55a1690cffa2b14b60
      https://github.com/llvm/llvm-project/commit/e92bb83c1810c61a7fa81d55a1690cffa2b14b60
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp

  Log Message:
  -----------
  [AArch64][PAC] Simplify emission of authenticated pointer check (NFC) (#160899)

The `AArch64AsmPrinter::emitPtrauthCheckAuthenticatedValue` method accepts
two arguments, `bool ShouldTrap` and `const MCSymbol *OnFailure`, that
control the behavior of the emitted instruction sequence when the check
fails:
* `ShouldTrap` requests an error to be generated
* `OnFailure` requests branching to the given label after clearing the
  PAC field

An assertion in `emitPtrauthCheckAuthenticatedValue` ensures that when
`ShouldTrap` is true, `OnFailure` must be null. But the opposite holds
as well: when `ShouldTrap` is false, `OnFailure` is always non-null,
as otherwise the entire sequence following `AUT[ID][AB]` instruction
would turn into a very expensive equivalent of XPAC (unless the CPU
implements FEAT_FPAC):

    authenticate Xn
    inspect PAC field of Xn
    if PAC field was not cleared:
      clear PAC field

In other words, the value of `ShouldTrap` argument can be computed as
`OnFailure == nullptr` at all existing call sites. In fact, at three
of four call sites, constant `true` and `nullptr` are passed as the
values of these function arguments. `emitPtrauthAuthResign` is the
only caller that potentially makes use of checking-but-not-trapping
mode of `emitPtrauthCheckAuthenticatedValue`, and it passes a non-null
pointer as `OnFailure` when `ShouldTrap` is false.

This commit makes the invariant explicit by omitting the `ShouldTrap`
argument and inferring its value from the `OnFailure` argument instead.


  Commit: 48eb697441e20f2e1a66d953436b9d66e0fc466d
      https://github.com/llvm/llvm-project/commit/48eb697441e20f2e1a66d953436b9d66e0fc466d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll

  Log Message:
  -----------
  [LV] Count cost of middle block if TC <= VF. (#168949)

If the expected trip count is less than the VF, the vector loop will
only execute a single iteration. When that's the case, the cost of the
middle block has the same impact as the cost of the vector loop. Include
it in isOutsideLoopWorkProfitable to avoid vectorizing when the extra
work in the middle block makes it unprofitable.

Note that isOutsideLoopWorkProfitable already scales the cost of blocks
outside the vector region, but the patch restricts accounting for the
middle block to cases where VF <= ExpectedTC, to initially catch some
worst cases and avoid regressions.

This initial version should specifically avoid unprofitable tail-folding
for loops with low trip counts after re-applying
https://github.com/llvm/llvm-project/pull/149042.

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


  Commit: 7b186e4bf0f1485657697bc79c66b5792dcd562e
      https://github.com/llvm/llvm-project/commit/7b186e4bf0f1485657697bc79c66b5792dcd562e
  Author: Daan De Meyer <daan.j.demeyer at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix designated initializer detection (#169228)

Currently, in the following snippet, the second designated initializer
is incorrectly detected as an OBJC method expr. Fix that and a test to
make sure we don't regress.

```
Foo foo[] = {[0] = 1, [1] = 2};
```


  Commit: 40334b8632f6d065e6672ada1c4342d07ecce629
      https://github.com/llvm/llvm-project/commit/40334b8632f6d065e6672ada1c4342d07ecce629
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/CommonArgs.h
    R clang/include/clang/Driver/CreateASTUnitFromArgs.h
    R clang/include/clang/Driver/CreateInvocationFromArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/ChainedDiagnosticConsumer.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    R clang/include/clang/Frontend/StandaloneDiagnostic.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Options/OptionUtils.h
    M clang/lib/CrossTU/CMakeLists.txt
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/CMakeLists.txt
    R clang/lib/Driver/CreateASTUnitFromArgs.cpp
    R clang/lib/Driver/CreateInvocationFromArgs.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CMakeLists.txt
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    R clang/lib/Frontend/StandaloneDiagnostic.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Options/OptionUtils.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/c-index-test/CMakeLists.txt
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/diagtool/CMakeLists.txt
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CIndexer.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/Indexing.cpp
    M clang/unittests/Driver/DXCModeTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Sema/CMakeLists.txt
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/Tooling/Syntax/TokensTest.cpp
    M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
    M lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/unittests/Expression/ClangParserTest.cpp

  Log Message:
  -----------
  Revert " [clang] Refactor to remove clangDriver dependency from clangFrontend  and flangFrontend (#165277)"

This reverts commit 3773bbe9e7916ec89fb3e3cd02e29c54cabac82b.


  Commit: 5a9c62ba48ea2fa899e3ff54d6b4779c1902f34b
      https://github.com/llvm/llvm-project/commit/5a9c62ba48ea2fa899e3ff54d6b4779c1902f34b
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGen/X86/avx512bw-builtins.c

  Log Message:
  -----------
  [CIR][X86] Add support for `kshiftl`/`kshiftr` builtins (#168591)

Adds support for the `__builtin_ia32_kshiftli` and
`__builtin_ia32_kshiftri` X86 builtins.

Part of #167765

---------

Signed-off-by: vishruth-thimmaiah <vishruththimmaiah at gmail.com>


  Commit: 5c15f579234f0ac4e40037ebc7e250499525ac48
      https://github.com/llvm/llvm-project/commit/5c15f579234f0ac4e40037ebc7e250499525ac48
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/CommonArgs.h
    A clang/include/clang/Driver/CreateASTUnitFromArgs.h
    A clang/include/clang/Driver/CreateInvocationFromArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/ChainedDiagnosticConsumer.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    A clang/include/clang/Frontend/StandaloneDiagnostic.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Options/OptionUtils.h
    M clang/lib/CrossTU/CMakeLists.txt
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/CMakeLists.txt
    A clang/lib/Driver/CreateASTUnitFromArgs.cpp
    A clang/lib/Driver/CreateInvocationFromArgs.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CMakeLists.txt
    M clang/lib/Frontend/CompilerInvocation.cpp
    R clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    A clang/lib/Frontend/StandaloneDiagnostic.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Options/OptionUtils.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/c-index-test/CMakeLists.txt
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/diagtool/CMakeLists.txt
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CIndexer.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/Indexing.cpp
    M clang/unittests/Driver/DXCModeTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Sema/CMakeLists.txt
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/Tooling/Syntax/TokensTest.cpp
    M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
    M lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/unittests/Expression/ClangParserTest.cpp

  Log Message:
  -----------
  Reapply " [clang] Refactor to remove clangDriver dependency from clangFrontend  and flangFrontend (#165277)"

This reverts commit 40334b8632f6d065e6672ada1c4342d07ecce629.

Unfortunately the revert breaks the build.


  Commit: dea330b38d9c18b68219abdb52baaa72c9f1103d
      https://github.com/llvm/llvm-project/commit/dea330b38d9c18b68219abdb52baaa72c9f1103d
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/CommonArgs.h
    R clang/include/clang/Driver/CreateASTUnitFromArgs.h
    R clang/include/clang/Driver/CreateInvocationFromArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    R clang/include/clang/Frontend/StandaloneDiagnostic.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Options/OptionUtils.h
    M clang/lib/CrossTU/CMakeLists.txt
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/CMakeLists.txt
    R clang/lib/Driver/CreateASTUnitFromArgs.cpp
    R clang/lib/Driver/CreateInvocationFromArgs.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CMakeLists.txt
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    R clang/lib/Frontend/StandaloneDiagnostic.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Options/OptionUtils.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/tools/c-index-test/CMakeLists.txt
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/diagtool/CMakeLists.txt
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CIndexer.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/Indexing.cpp
    M clang/unittests/Driver/DXCModeTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Sema/CMakeLists.txt
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/Tooling/Syntax/TokensTest.cpp
    M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
    M lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/unittests/Expression/ClangParserTest.cpp

  Log Message:
  -----------
  Revert " [clang] Refactor to remove clangDriver dependency from clangFrontend  and flangFrontend (#165277)" (#169397)

This reverts commit 3773bbe and relands the last revert attempt 40334b8.
3773bbe broke the build for the build configuration described in here:
https://github.com/llvm/llvm-project/pull/165277#issuecomment-3572432250


  Commit: 72dd4f75d6c6f7964a6612599ff09895ffd8d7e6
      https://github.com/llvm/llvm-project/commit/72dd4f75d6c6f7964a6612599ff09895ffd8d7e6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Frontend/BUILD.gn

  Log Message:
  -----------
  [gn build] Port dea330b38d9c


  Commit: 20929abb85633e4f17e5df21c9ac2fd80650f9d4
      https://github.com/llvm/llvm-project/commit/20929abb85633e4f17e5df21c9ac2fd80650f9d4
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/omptarget-data-use-dev-ordering.mlir
    A mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-nowait.mlir
    A mlir/test/Target/LLVMIR/omptarget-overlapping-record-member-map.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
    A offload/test/offloading/fortran/dtype-member-overlap-map.f90

  Log Message:
  -----------
  [MLIR][OpenMP] Introduce overlapped record type map support (#119588)

This PR introduces a new additional type of map lowering for record
types that Clang currently supports, in which a user can map a top-level
record type and then individual members with different mapping,
effectively creating a sort of "overlapping" mapping that we attempt to
cut around.

This is currently most predominantly used in Fortran, when mapping
descriptors and there data, we map the descriptor and its data with
separate map modifiers and "cut around" the pointer data, so that wedo
not overwrite it unless the runtime deems it a neccesary action based on
its reference counting mechanism. However, it is a mechanism that will
come in handy/trigger when a user explitily maps a record type (derived
type or structure) and then explicitly maps a member with a different
map type.

These additions were predominantly in the OpenMPToLLVMIRTranslation.cpp
file and phase, however, one Flang test that checks end-to-end IR
compilation (as far as we care for now at least) was altered.

2/3 required PRs to enable declare target to mapping, should look at PR
3/3 to check for full green passes (this one will fail a number due to
some dependencies).

Co-authored-by: Raghu Maddhipatla raghu.maddhipatla at amd.com


  Commit: 173600880b8f469ad9ae8da757bdc94959690ffa
      https://github.com/llvm/llvm-project/commit/173600880b8f469ad9ae8da757bdc94959690ffa
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
    M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
    M flang/test/Lower/OpenMP/allocatable-map.f90
    M flang/test/Lower/OpenMP/array-bounds.f90
    M flang/test/Lower/OpenMP/declare-mapper.f90
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/defaultmap.f90
    M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/map-character.f90
    M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
    M flang/test/Lower/OpenMP/map-neg-alloca-derived-type-array.f90
    M flang/test/Lower/OpenMP/optional-argument-map-2.f90
    M flang/test/Lower/OpenMP/optional-argument-map-3.f90
    M flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/volatile-openmp.f90
    M flang/test/Transforms/omp-map-info-finalization.fir
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-declare-target-to-device.mlir
    A offload/test/offloading/fortran/declare-target-to-allocatable-vars-in-target-with-update.f90
    A offload/test/offloading/fortran/declare-target-to-vars-target-region-and-update.f90
    A offload/test/offloading/fortran/declare-target-to-zero-index-allocatable-target-map.f90

  Log Message:
  -----------
  [Flang][OpenMP][MLIR] Initial declare target to for variables implementation (#119589)

While the infrastructure for declare target to/enter and link for
variables exists in the MLIR dialect and at the Flang level, the current
lowering from MLIR -> LLVM IR isn't in place, it's only in place for
variables that have the link clause applied.

This PR aims to extend that lowering to an initial implementation that
incorporates declare target to as well, which primarily requires changes
in the OpenMPToLLVMIRTranslation phase. However, a minor addition to the
OpenMP dialect was required to extend the declare target enumerator to
include a default None field as well.

This also requires a minor change to the Flang lowering's
MapInfoFinlization.cpp pass to alter the map type for descriptors to
deal with cases where a variable is marked declare to. Currently, when a
descriptor variable is mapped declare target to the descriptor component
can become attatched, and cannot be updated, this results in issues when
an unusual allocation range is specified (effectively an off-by X
error). The current solution is to map the descriptor always, as we
always require an up-to-date version of this data. However, this also
requires an interlinked PR that adds a more intricate type of mapping of
structures/record types that clang currently implements, to circumvent
the overwriting of the pointer in the descriptor.

3/3 required PRs to enable declare target to mapping, this PR should
pass all tests and provide an all green CI.

Co-authored-by: Raghu Maddhipatla raghu.maddhipatla at amd.com


  Commit: ff80de72c4ce5cb5fa2a764e1e1a6097e82fc5f9
      https://github.com/llvm/llvm-project/commit/ff80de72c4ce5cb5fa2a764e1e1a6097e82fc5f9
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c

  Log Message:
  -----------
  Reapply "[UBSan] [compiler-rt] add preservecc variants of handlers" (#168973) (#169091)

This reverts commit 418204d9c108351340fe21194ace0e31157b7189.


  Commit: 51d93e73975e5fc70008c286aaae2216fde097b6
      https://github.com/llvm/llvm-project/commit/51d93e73975e5fc70008c286aaae2216fde097b6
  Author: Danila Malyutin <danilaml at users.noreply.github.com>
  Date:   2025-11-25 (Tue, 25 Nov 2025)

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

  Log Message:
  -----------
  [ADT] Fix implicit reliance on cassert in StringTable.h (#169324)

Adds an explicit include of `<cassert>` in StringTable.h rather than
relying on the one in StringRef.h. Fixes potential compile errors if
assert() was undef'ed between StringRef.h and StringTable.h inclusion.


  Commit: f581d8ad8f0cd08da6465c6843f9c6841d49e522
      https://github.com/llvm/llvm-project/commit/f581d8ad8f0cd08da6465c6843f9c6841d49e522
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp

  Log Message:
  -----------
  AMDGPU: Fix a comment (#169403)

This verifier check will complain if there aren't enough implicit
operands -- so it doesn't *allow* those operands, it *requires* them.


  Commit: 3e86f056217afbe46cd515b3d3c2f1dc7664bebf
      https://github.com/llvm/llvm-project/commit/3e86f056217afbe46cd515b3d3c2f1dc7664bebf
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M flang/include/flang/Lower/Support/ReductionProcessor.h
    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/OpenMP.cpp
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    M flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    A flang/test/Lower/OpenMP/Todo/omp-declare-reduction-advanced-types.f90
    R flang/test/Lower/OpenMP/Todo/omp-declare-reduction-initsub.f90
    R flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
    A flang/test/Lower/OpenMP/declare-target-deferred-marking-reductions.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction-initsub.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A offload/test/offloading/fortran/target-custom-reduction-derivedtype.f90

  Log Message:
  -----------
  [OpenMP][flang] Lowering of OpenMP custom reductions to MLIR (#168417)

This patch add support for lowering of custom reductions to MLIR. It
also enhances the capability of the pass to automatically mark functions
as "declare target" by traversing custom reduction initializers and
combiners.


  Commit: 01a98b383c700c2580e11a166dce1180188cb236
      https://github.com/llvm/llvm-project/commit/01a98b383c700c2580e11a166dce1180188cb236
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/test/std/input.output/file.streams/c.files/gets-removed.verify.cpp

  Log Message:
  -----------
  [libcxx] [test] Fix the gets-removed.verify.cpp test with Clang 21 (#169235)

This fixes test errors like this, at least for a mingw target, if
building with Clang 21 instead of Clang 20, as in the CI environment:

    # .---command stderr------------
    # | error: 'expected-error' diagnostics seen but not expected:
    # | File C:\a\llvm-mingw\llvm-mingw\llvm-project\libcxx\test\std\input.output\file.streams\c.files\gets-removed.verify.cpp Line 16: cannot initialize a parameter of type 'char *' with an lvalue of type 'const char *'
    # | 1 error generated.
    # `-----------------------------
    # error: command failed with exit status: 1

This extra, unexpected diagnostic appears in Clang 21, since commit
9eef4d1c5fa6b1bcbbe675c14ca8301d5d346f7b ("Remove delayed typo
expressions"). Before this, we got the expected diagnostic `error: no
member named 'gets' in namespace 'std'`, with the typo correction hint
`did you mean 'puts'?`. After this change, we get the typo correction
hint `did you mean simply 'gets'?` instead. And with the typo correction
finding `::gets`, it goes on to produce a second diagnostic about
mismatched parameter for that function.

Avoid these unexpected diagnostics by passing the right type of
parameter to the gets function.


  Commit: 89206de09c698f0f2e9ba106ebf3b67953041d2c
      https://github.com/llvm/llvm-project/commit/89206de09c698f0f2e9ba106ebf3b67953041d2c
  Author: David Peixotto <peix at meta.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  [lldb] Add mock dwarf delegate for testing dwarf expressions (#168468)

This commit adds a `MockDwarfDelegate` class that can be used to control
what dwarf version is used when evaluating an expression. We also add a
simple test that shows how dwarf version can change the result of the
expression.


  Commit: 3dcdb4c7658fb955d61fde5bd5232bdeadfc7eeb
      https://github.com/llvm/llvm-project/commit/3dcdb4c7658fb955d61fde5bd5232bdeadfc7eeb
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__config
    R libcxx/include/__memory/aligned_alloc.h
    M libcxx/include/module.modulemap.in
    A libcxx/src/include/aligned_alloc.h
    M libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
    M libcxxabi/src/fallback_malloc.cpp
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++][NFC] Move __memory/aligned_alloc.h into src/ (#166172)

This header is only ever used inside `src/`, so we might as well move it
there. As a drive-by this also removes some dead code.


  Commit: 8a431db0045b33ad9a7e4d4d89f5691ffc897088
      https://github.com/llvm/llvm-project/commit/8a431db0045b33ad9a7e4d4d89f5691ffc897088
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 3dcdb4c7658f


  Commit: e737f67fcf883e90683e1dd46247bd176fe15b5f
      https://github.com/llvm/llvm-project/commit/e737f67fcf883e90683e1dd46247bd176fe15b5f
  Author: Yu Hao <yuhaoyu at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M clang/lib/Tooling/Transformer/RangeSelector.cpp
    M clang/unittests/Tooling/RangeSelectorTest.cpp

  Log Message:
  -----------
  [clang][transformer] Fix `node` range-selector to include type name qualifiers of type locs. (#167619)

Previously, e.g. for TypeLoc "MyNamespace::MyClass", `node()` selects
only "MyClass" without the qualifier. With this change, it now selects
"MyNamespace::MyClass".

---------

Co-authored-by: Florian Mayer <fmayer at google.com>


  Commit: f459f6b2d263e71c06ce2b7644887199df90974b
      https://github.com/llvm/llvm-project/commit/f459f6b2d263e71c06ce2b7644887199df90974b
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-11-24 (Mon, 24 Nov 2025)

  Changed paths:
    M .ci/premerge_advisor_explain.py
    M .github/CODEOWNERS
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    A bolt/test/AArch64/inline-armv8.3-returns.s
    A bolt/test/AArch64/inline-armv8.3-tailcall.s
    A bolt/test/AArch64/inline-pauth-lr.s
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/clang-tidy/.clang-format
    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/altera/KernelNameRestrictionCheck.cpp
    M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.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/SpuriouslyWakeUpFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccessCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
    M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
    M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.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/Matchers.cpp
    M clang-tools-extra/clangd/SemanticSelection.cpp
    M clang-tools-extra/clangd/unittests/SemanticSelectionTests.cpp
    M clang-tools-extra/include-cleaner/test/lit.cfg.py
    M clang-tools-extra/test/clang-doc/mustache-index.cpp
    M clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
    M clang-tools-extra/test/clang-doc/namespace.cpp
    M clang/docs/OpenCLSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/TypeSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Basic/ABI.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/ChainedDiagnosticConsumer.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/EvalEmitter.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/Opcodes.td
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ExprObjC.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGCXXABI.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    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/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.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/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/DependencyGraph.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TestModuleFileExtension.cpp
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/avx512bitalgintrin.h
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512vlbitalgintrin.h
    M clang/lib/Headers/avx512vlintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/lasxintrin.h
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/lib/Tooling/Transformer/RangeSelector.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/intap.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    A clang/test/AST/HLSL/semantic-input-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-input-struct.hlsl
    A clang/test/AST/HLSL/semantic-input.hlsl
    A clang/test/AST/HLSL/semantic-output-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-output-struct.hlsl
    A clang/test/AST/HLSL/semantic-output.hlsl
    M clang/test/AST/ast-dump-expr-json.cpp
    A clang/test/AST/ast-dump-lambda-json.cpp
    M clang/test/ASTMerge/struct/test.c
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/suppression-attr.cpp
    A clang/test/CIR/CodeGen/X86/avx-builtins.c
    A clang/test/CIR/CodeGen/X86/avx10_2_512bf16-builtins.c
    A clang/test/CIR/CodeGen/X86/avx10_2bf16-builtins.c
    A clang/test/CIR/CodeGen/X86/avx512bw-builtins.c
    A clang/test/CIR/CodeGen/X86/avx512f-builtins.c
    A clang/test/CIR/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CIR/CodeGen/X86/sse-builtins.c
    M clang/test/CIR/CodeGen/X86/sse2-builtins.c
    M clang/test/CIR/CodeGen/atomic.c
    A clang/test/CIR/CodeGen/builtin_new_delete.cpp
    A clang/test/CIR/CodeGen/builtins-overflow.cpp
    M clang/test/CIR/CodeGen/global-init.cpp
    A clang/test/CIR/CodeGen/static-members.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-deviceptr.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-link.cpp
    A clang/test/CIR/CodeGenOpenACC/declare-present.cpp
    M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
    M clang/test/CXX/drs/cwg6xx.cpp
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx2-builtins.c
    M clang/test/CodeGen/X86/avx512bitalg-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c
    M clang/test/CodeGen/X86/avx512vlbitalg-builtins.c
    M clang/test/CodeGen/attr-target-clones.c
    M clang/test/CodeGen/promoted-complex-div.c
    A clang/test/CodeGen/sanitize-type-outlined.cpp
    M clang/test/CodeGenCXX/dllexport.cpp
    M clang/test/CodeGenCXX/microsoft-abi-extern-template.cpp
    M clang/test/CodeGenCXX/microsoft-abi-structors.cpp
    M clang/test/CodeGenCXX/microsoft-abi-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance-vdtors.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance-vtordisps.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-no-rtti-data.cpp
    R clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/vtable-consteval.cpp
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
    M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
    A clang/test/CodeGenHLSL/semantics/SV_Position.vs.hlsl
    A clang/test/CodeGenOpenCL/__bf16.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/DebugInfo/CXX/windows-dtor.cpp
    M clang/test/Driver/fsanitize-coverage.c
    M clang/test/Headers/opencl-c-header.cl
    M clang/test/Index/print-type.c
    M clang/test/Layout/ms-x86-alias-avoidance-padding.cpp
    R clang/test/Modules/Inputs/msvc-vector-deleting-dtors/module.modulemap
    R clang/test/Modules/Inputs/msvc-vector-deleting-dtors/msvc-vector-deleting-dtors.h
    M clang/test/Modules/compare-record.c
    R clang/test/Modules/msvc-vector-deleting-destructors.cpp
    A clang/test/Modules/reference-tu-local-var.cppm
    M clang/test/Modules/vtable-windows.cppm
    R clang/test/OpenMP/nvptx_target_exceptions_messages.cpp
    A clang/test/OpenMP/parallel_default_variableCategory_codegen.cpp
    M clang/test/OpenMP/spirv_target_codegen_basic.cpp
    A clang/test/OpenMP/spirv_target_codegen_noexceptions.cpp
    A clang/test/OpenMP/target_exceptions_messages.cpp
    R clang/test/PCH/Inputs/msvc-vector-deleting-dtors.h
    R clang/test/PCH/msvc-vector-deleting-destructors.cpp
    M clang/test/Preprocessor/init-loongarch.c
    M clang/test/Profile/cxx-abc-deleting-dtor.cpp
    M clang/test/Sema/attr-target-clones.c
    M clang/test/Sema/warn-fortify-source.c
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    R clang/test/SemaCXX/gh134265.cpp
    M clang/test/SemaHLSL/Semantics/position.ps.hlsl
    R clang/test/SemaHLSL/Semantics/position.vs.hlsl
    M clang/test/SemaObjCXX/arc-0x.mm
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/features.cl
    M clang/test/SemaSYCL/bf16.cpp
    M clang/tools/clang-repl/ClangRepl.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/AST/TypePrinterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Tooling/RangeSelectorTest.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
    M compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
    M compiler-rt/test/orc/TestCases/Darwin/x86-64/objc-imageinfo.S
    R compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-warnings.c
    A compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-warnings.ll
    M compiler-rt/test/ubsan_minimal/TestCases/misalignment.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/null.cpp
    M compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
    M flang/include/flang/Lower/Support/ReductionProcessor.h
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/openmp-directive-sets.h
    M flang/include/flang/Support/LangOptions.def
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/Bridge.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/OpenMP.cpp
    M flang/lib/Lower/Runtime.cpp
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/type-parsers.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/canonicalize-do.cpp
    M flang/lib/Semantics/canonicalize-omp.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/resolve-directives.cpp
    M flang/lib/Semantics/rewrite-parse-tree.cpp
    M flang/test/Driver/fast-real-mod.f90
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M flang/test/Lower/Intrinsics/fast-real-mod.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
    A flang/test/Lower/OpenMP/Todo/omp-declare-reduction-advanced-types.f90
    R flang/test/Lower/OpenMP/Todo/omp-declare-reduction-initsub.f90
    R flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
    M flang/test/Lower/OpenMP/allocatable-array-bounds.f90
    M flang/test/Lower/OpenMP/allocatable-map.f90
    M flang/test/Lower/OpenMP/array-bounds.f90
    M flang/test/Lower/OpenMP/declare-mapper.f90
    A flang/test/Lower/OpenMP/declare-target-deferred-marking-reductions.f90
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/defaultmap.f90
    M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/map-character.f90
    M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
    M flang/test/Lower/OpenMP/map-neg-alloca-derived-type-array.f90
    M flang/test/Lower/OpenMP/nested-loop-transformation-construct02.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction-initsub.f90
    A flang/test/Lower/OpenMP/omp-declare-reduction.f90
    M flang/test/Lower/OpenMP/optional-argument-map-2.f90
    M flang/test/Lower/OpenMP/optional-argument-map-3.f90
    M flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/select-case-statement.f90
    M flang/test/Lower/volatile-openmp.f90
    A flang/test/Parser/OpenMP/atomic-label-do.f90
    A flang/test/Parser/OpenMP/cross-label-do.f90
    M flang/test/Parser/OpenMP/fail-construct2.f90
    A flang/test/Parser/OpenMP/fail-looprange.f90
    A flang/test/Parser/OpenMP/fuse-looprange.f90
    A flang/test/Parser/OpenMP/fuse01.f90
    A flang/test/Parser/OpenMP/fuse02.f90
    M flang/test/Parser/OpenMP/loop-transformation-construct01.f90
    M flang/test/Parser/OpenMP/loop-transformation-construct02.f90
    A flang/test/Parser/OpenMP/loop-transformation-construct04.f90
    A flang/test/Parser/OpenMP/loop-transformation-construct05.f90
    M flang/test/Parser/OpenMP/tile-fail.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/do21.f90
    M flang/test/Semantics/OpenMP/loop-association.f90
    A flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct01.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct02.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct03.f90
    A flang/test/Semantics/OpenMP/loop-transformation-construct04.f90
    M flang/test/Semantics/OpenMP/tile02.f90
    M flang/test/Transforms/OpenACC/acc-implicit-data.fir
    M flang/test/Transforms/omp-map-info-finalization.fir
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/all_of.h
    M libcxx/include/__algorithm/none_of.h
    M libcxx/include/__algorithm/simd_utils.h
    M libcxx/include/__bit/has_single_bit.h
    M libcxx/include/__config
    M libcxx/include/__locale_dir/locale_base_api.h
    M libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
    M libcxx/include/__locale_dir/locale_base_api/ibm.h
    R libcxx/include/__locale_dir/locale_base_api/musl.h
    M libcxx/include/__locale_dir/num.h
    M libcxx/include/__locale_dir/support/bsd_like.h
    M libcxx/include/__locale_dir/support/fuchsia.h
    M libcxx/include/__locale_dir/support/linux.h
    M libcxx/include/__locale_dir/support/no_locale/strtonum.h
    M libcxx/include/__locale_dir/support/windows.h
    R libcxx/include/__memory/aligned_alloc.h
    M libcxx/include/__support/xlocale/__strtonum_fallback.h
    M libcxx/include/any
    M libcxx/include/array
    M libcxx/include/forward_list
    M libcxx/include/fstream
    M libcxx/include/list
    M libcxx/include/module.modulemap.in
    M libcxx/include/string
    M libcxx/include/string_view
    A libcxx/src/include/aligned_alloc.h
    M libcxx/src/locale.cpp
    M libcxx/src/thread.cpp
    R libcxx/test/benchmarks/streams/fstream.bench.cpp
    A libcxx/test/benchmarks/streams/ofstream.bench.cpp
    M libcxx/test/libcxx/diagnostics/array.nodiscard.verify.cpp
    M libcxx/test/libcxx/diagnostics/forward_list.nodiscard.verify.cpp
    M libcxx/test/libcxx/diagnostics/list.nodiscard.verify.cpp
    M libcxx/test/libcxx/diagnostics/string_view.nodiscard.verify.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
    M libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
    M libcxx/test/libcxx/strings/string.view/nonnull.verify.cpp
    A libcxx/test/libcxx/utilities/any/nodiscard.verify.cpp
    A libcxx/test/std/algorithms/robust_against_nonbool.compile.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.creation/to_array.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ccomplex.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ciso646.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdalign.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdbool.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ctgmath.verify.cpp
    M libcxx/test/std/input.output/file.streams/c.files/gets-removed.verify.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_int.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_long_long.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_unsigned_short.pass.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_reference.pass.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_request_invalid_value_category.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/const_correctness.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/not_copy_constructible.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/reference_types.verify.cpp
    M libcxx/test/std/utilities/any/any.nonmembers/any.cast/void.verify.cpp
    M libcxx/utils/libcxx/test/features/availability.py
    M libcxxabi/src/fallback_malloc.cpp
    M libcxxabi/src/stdlib_new_delete.cpp
    A libsycl/Maintainers.md
    M lld/COFF/DriverUtils.cpp
    M lld/COFF/Options.td
    M lld/ELF/InputFiles.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/MinGW/Driver.cpp
    M lld/test/COFF/driver.test
    M lld/test/ELF/linkerscript/version-script.s
    M lld/test/ELF/version-script-extern-undefined.s
    A lld/test/MachO/weak-alias-override.s
    M lld/test/MinGW/driver.test
    M lldb/bindings/lua/lua-typemaps.swig
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/include/lldb/Core/SourceManager.h
    M lldb/include/lldb/Symbol/CompileUnit.h
    M lldb/include/lldb/Symbol/Function.h
    M lldb/include/lldb/Symbol/LineEntry.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/UnixSignals.h
    M lldb/include/lldb/Utility/FileSpecList.h
    A lldb/include/lldb/Utility/NonNullSharedPtr.h
    M lldb/include/lldb/Utility/SupportFile.h
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Expression/REPL.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Function.cpp
    M lldb/source/Symbol/LineTable.cpp
    M lldb/source/Symbol/TypeSystem.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/ThreadPlanStepRange.cpp
    M lldb/source/Target/UnixSignals.cpp
    M lldb/source/Utility/FileSpecList.cpp
    M lldb/source/Utility/StringExtractorGDBRemote.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
    A lldb/test/API/commands/frame/var-dil/expr/Arithmetic/main.cpp
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILPointerArithmetic.py
    A lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp
    M lldb/test/Shell/helper/toolchain.py
    M lldb/tools/driver/Driver.cpp
    M lldb/unittests/Editline/EditlineTest.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp
    M lldb/unittests/Signals/UnixSignalsTest.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/UnwindAssembly/ARM64/TestArm64InstEmulation.cpp
    M llvm/Maintainers.md
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/MapVector.h
    M llvm/include/llvm/ADT/StringTable.h
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
    M llvm/include/llvm/CodeGen/CallBrPrepare.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinker.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
    M llvm/include/llvm/ExecutionEngine/Orc/WaitingOnGraph.h
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/OpenACC/ACC.td
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/LoopCacheAnalysis.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/lib/CodeGen/CallBrPrepare.cpp
    M llvm/lib/CodeGen/CallingConvLower.cpp
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinkerDeclContext.cpp
    M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/lib/Frontend/OpenMP/OMP.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTOModule.cpp
    M llvm/lib/ProfileData/InstrProfCorrelator.cpp
    M llvm/lib/Support/AllocToken.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
    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/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/BPF/BPF.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFSubtarget.cpp
    M llvm/lib/Target/BPF/BPFSubtarget.h
    M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    A llvm/lib/Target/RISCV/RISCVZilsdOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/TextAPI/InterfaceFile.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    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/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Analysis/CostModel/AArch64/fshl.ll
    M llvm/test/Analysis/CostModel/AArch64/fshr.ll
    M llvm/test/Analysis/CostModel/AMDGPU/shufflevector.ll
    M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
    M llvm/test/Analysis/DependenceAnalysis/SymbolicSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/WeakCrossingSIV.ll
    M llvm/test/Analysis/DependenceAnalysis/run-specific-dependence-test.ll
    M llvm/test/Analysis/LoopCacheAnalysis/interchange-refcost-overflow.ll
    A llvm/test/Assembler/dbg_declare_value.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-crash.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions.ll
    M llvm/test/CodeGen/AArch64/implicit-def-subreg-to-reg-regression.ll
    M llvm/test/CodeGen/AArch64/int-to-fp-no-neon.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/machine-sink-kill-flags.ll
    A llvm/test/CodeGen/AArch64/pr151592.mir
    A llvm/test/CodeGen/AArch64/pr151888.mir
    A llvm/test/CodeGen/AArch64/pr164181-reduced.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    A llvm/test/CodeGen/AArch64/register-coalesce-implicit-def-subreg-to-reg.mir
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    M llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-combines.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-reshuffle.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/add-max.ll
    M llvm/test/CodeGen/AMDGPU/add_u64.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
    M llvm/test/CodeGen/AMDGPU/bf16-math.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/bitop3.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/ds_write2.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-nondeterminism.ll
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-av-classes.ll
    M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/global-address.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/lds-misaligned-bug.ll
    R llvm/test/CodeGen/AMDGPU/limit-coalesce.mir
    M llvm/test/CodeGen/AMDGPU/literal64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
    A llvm/test/CodeGen/AMDGPU/load-global-invariant.ll
    M llvm/test/CodeGen/AMDGPU/load-local-i16.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
    M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
    M llvm/test/CodeGen/AMDGPU/mad_u64_u32.ll
    M llvm/test/CodeGen/AMDGPU/masked-load-vectortypes.ll
    M llvm/test/CodeGen/AMDGPU/max.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-local.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/merge-stores.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll
    M llvm/test/CodeGen/AMDGPU/mul.ll
    M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
    A llvm/test/CodeGen/AMDGPU/no-limit-coalesce.mir
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-scale-to-agpr.mir
    M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-global.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-scratch.ll
    M llvm/test/CodeGen/AMDGPU/scale-offset-smem.ll
    M llvm/test/CodeGen/AMDGPU/scc-clobbered-sgpr-to-vmem-spill.ll
    M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
    M llvm/test/CodeGen/AMDGPU/scratch-simple.ll
    M llvm/test/CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v8f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v8i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v8p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v4p3.ll
    A llvm/test/CodeGen/AMDGPU/si-split-load-store-alias-info.ll
    M llvm/test/CodeGen/AMDGPU/sub_u64.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir
    M llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
    M llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
    M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
    M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/BPF/atomic-oversize.ll
    A llvm/test/CodeGen/BPF/builtin_calls.ll
    M llvm/test/CodeGen/BPF/objdump_cond_op_2.ll
    M llvm/test/CodeGen/BPF/struct_ret1.ll
    M llvm/test/CodeGen/BPF/struct_ret2.ll
    M llvm/test/CodeGen/DirectX/bugfix_150050_data_scalarize_const_gep.ll
    M llvm/test/CodeGen/DirectX/scalarize-alloca.ll
    M llvm/test/CodeGen/DirectX/scalarize-global.ll
    M llvm/test/CodeGen/Hexagon/swp-stages5.ll
    M llvm/test/CodeGen/LoongArch/lasx/and-not-combine.ll
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/fpowi.ll
    M llvm/test/CodeGen/LoongArch/lasx/scalar-to-vector.ll
    M llvm/test/CodeGen/LoongArch/lsx/and-not-combine.ll
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-invalid-register-class-error.mir
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-invalid-register-name-error.mir
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-mfi.ll
    A llvm/test/CodeGen/MIR/AMDGPU/preload-kernarg-stack-type-error.mir
    M llvm/test/CodeGen/NVPTX/atomics-b128.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    A llvm/test/CodeGen/NVPTX/wmma-ptx88-sm120a.py
    M llvm/test/CodeGen/NVPTX/wmma.py
    M llvm/test/CodeGen/PowerPC/addition-vector-all-ones.ll
    M llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
    M llvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/ctrloop-fp128.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-round.ll
    M llvm/test/CodeGen/PowerPC/frem.ll
    M llvm/test/CodeGen/PowerPC/froundeven-legalization.ll
    M llvm/test/CodeGen/PowerPC/half.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/licm-xxsplti.ll
    M llvm/test/CodeGen/PowerPC/llvm.modf.ll
    M llvm/test/CodeGen/PowerPC/loop-instr-form-prepare.ll
    M llvm/test/CodeGen/PowerPC/sink-side-effect.ll
    M llvm/test/CodeGen/PowerPC/sms-phi-1.ll
    M llvm/test/CodeGen/PowerPC/vec_add_sub_doubleword.ll
    M llvm/test/CodeGen/PowerPC/vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vector-splice.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vcpop-shl-zext-opt.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-splice.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    A llvm/test/CodeGen/RISCV/vmadd-reassociate.ll
    A llvm/test/CodeGen/RISCV/zilsd-ldst-opt-postra.mir
    A llvm/test/CodeGen/RISCV/zilsd-ldst-opt-prera.mir
    A llvm/test/CodeGen/RISCV/zilsd-regalloc-hints.mir
    M llvm/test/CodeGen/RISCV/zilsd.ll
    A llvm/test/CodeGen/SPIRV/semantics/position.ps.ll
    A llvm/test/CodeGen/SPIRV/semantics/position.vs.ll
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/pr168209.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-increment.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving-reduct.ll
    M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-general.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-amx.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-pseudo-x87.ll
    M llvm/test/CodeGen/X86/apx/no-rex2-special.ll
    A llvm/test/CodeGen/X86/avx512-i386-setallones-pseudo.mir
    A llvm/test/CodeGen/X86/avx512-setallones-pseudo.mir
    A llvm/test/CodeGen/X86/coalescer-breaks-subreg-to-reg-liveness.ll
    M llvm/test/CodeGen/X86/coalescer-implicit-def-regression-imp-operand-assert.mir
    A llvm/test/CodeGen/X86/coalescing-subreg-to-reg-requires-subrange-update.mir
    M llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll
    M llvm/test/CodeGen/X86/i128-mul.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce5.ll
    M llvm/test/CodeGen/X86/madd.ll
    A llvm/test/CodeGen/X86/pr169205.ll
    M llvm/test/CodeGen/X86/pr49451.ll
    A llvm/test/CodeGen/X86/pr76416.ll
    M llvm/test/CodeGen/X86/subreg-fail.mir
    A llvm/test/CodeGen/X86/subreg-to-reg-coalescing.mir
    M llvm/test/CodeGen/X86/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/xor.ll
    M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
    M llvm/test/Instrumentation/TypeSanitizer/alloca-only.ll
    M llvm/test/Instrumentation/TypeSanitizer/alloca.ll
    M llvm/test/Instrumentation/TypeSanitizer/anon.ll
    M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
    M llvm/test/Instrumentation/TypeSanitizer/basic.ll
    R llvm/test/Instrumentation/TypeSanitizer/basic_outlined.ll
    M llvm/test/Instrumentation/TypeSanitizer/byval.ll
    M llvm/test/Instrumentation/TypeSanitizer/globals.ll
    R llvm/test/Instrumentation/TypeSanitizer/globals_outlined.ll
    M llvm/test/Instrumentation/TypeSanitizer/invalid-metadata.ll
    M llvm/test/Instrumentation/TypeSanitizer/memintrinsics.ll
    M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
    M llvm/test/Instrumentation/TypeSanitizer/sanitize-no-tbaa.ll
    M llvm/test/Instrumentation/TypeSanitizer/swifterror.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/TableGen/directive1.td
    M llvm/test/TableGen/directive2.td
    M llvm/test/Transforms/Attributor/dereferenceable-1.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/willreturn.ll
    A llvm/test/Transforms/Coroutines/declare-value.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
    M llvm/test/Transforms/ExpandVariadics/expand-va-intrinsic-split-linkage.ll
    M llvm/test/Transforms/ExpandVariadics/expand-va-intrinsic-split-simple.ll
    M llvm/test/Transforms/ExpandVariadics/intrinsics.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    A llvm/test/Transforms/GlobalOpt/X86/apx.ll
    M llvm/test/Transforms/InstCombine/icmp-trunc.ll
    M llvm/test/Transforms/InstCombine/scalarization.ll
    M llvm/test/Transforms/LoopInterchange/pr43326.ll
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fmin-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/streaming-compatible-sve-no-maximize-bandwidth.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
    M llvm/test/Transforms/LoopVectorize/fcmp-uno-fold-interleave.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/induction-wrapflags.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-gep-nowrap-flags.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
    A llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    A llvm/test/Transforms/LoopVectorize/pr128062-interleaved-accesses-narrow-group.ll
    M llvm/test/Transforms/LoopVectorize/pr35773.ll
    M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
    M llvm/test/Transforms/VectorCombine/AMDGPU/extract-insert-chain-to-shuffles.ll
    M llvm/test/Transforms/VectorCombine/AMDGPU/extract-insert-i8.ll
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu-templates.s
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu-templates.s.expected
    A llvm/test/tools/UpdateTestChecks/update_mc_test_checks/amdgpu-templates.test
    M llvm/test/tools/dsymutil/AArch64/dummy-debug-map-arm64.map
    M llvm/test/tools/dsymutil/AArch64/dwarf5-str-offsets-base-strx.test
    M llvm/test/tools/dsymutil/AArch64/inlined-low_pc.c
    A llvm/test/tools/dsymutil/AArch64/odr-uniquing-DW_AT_name-conflict.test
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/1.o
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/2.o
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.cpp
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib1.h
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/lib2.cpp
    A llvm/test/tools/dsymutil/Inputs/odr-uniquing-DW_AT_name-conflict/main.cpp
    M llvm/test/tools/llvm-ir2vec/entities.mir
    R llvm/test/tools/llvm-ir2vec/output/reference_triplets.txt
    R llvm/test/tools/llvm-ir2vec/output/reference_x86_entities.txt
    M llvm/test/tools/llvm-ir2vec/triplets.mir
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv-mask.s
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv-permutation.s
    M llvm/tools/bugpoint/BugDriver.h
    M llvm/tools/bugpoint/ExecutionDriver.cpp
    M llvm/tools/bugpoint/ExtractFunction.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp
    M llvm/tools/bugpoint/OptimizerDriver.cpp
    M llvm/tools/dsymutil/MachOUtils.cpp
    M llvm/tools/llc/NewPMDriver.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/MapVectorTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/DebugInfo/PDB/NativeSessionTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/WaitingOnGraphTest.cpp
    M llvm/unittests/Support/SignalsTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
    M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
    M llvm/utils/TableGen/Basic/TargetLibraryInfoEmitter.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/GlobalISel/PatternParser.cpp
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SDNodeInfoEmitter.cpp
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/LoongArch/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
    M llvm/utils/lit/examples/many-tests/ManyTests.py
    M llvm/utils/lit/lit/llvm/config.py
    M llvm/utils/update_mc_test_checks.py
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir-c/IR.h
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/include/mlir/Dialect/X86Vector/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/CMakeLists.txt
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.h
    A mlir/include/mlir/Dialect/X86Vector/TransformOps/X86VectorTransformOps.td
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/TransformOps/XeGPUTransformOps.td
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
    M mlir/include/mlir/Pass/Pass.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Bindings/Python/DialectLLVM.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/lib/Dialect/Shard/IR/ShardOps.cpp
    M mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
    M mlir/lib/Dialect/X86Vector/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/TransformOps/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/TransformOps/X86VectorTransformOps.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/X86Vector/Transforms/VectorContractToFMA.cpp
    A mlir/lib/Dialect/X86Vector/Transforms/VectorContractToPackedTypeDotProduct.cpp
    M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/Pass/Pass.cpp
    M mlir/lib/RegisterAllExtensions.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/python/mlir/dialects/linalg/opdsl/lang/yaml_helper.py
    M mlir/python/mlir/dialects/transform/xegpu.py
    M mlir/python/requirements.txt
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
    M mlir/test/Dialect/IRDL/variadics.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir
    M mlir/test/Dialect/OpenACC/acc-implicit-data.mlir
    M mlir/test/Dialect/Transform/test-pass-application.mlir
    A mlir/test/Dialect/X86Vector/vector-contract-to-fma.mlir
    A mlir/test/Dialect/X86Vector/vector-contract-to-packed-type-dotproduct.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
    M mlir/test/Dialect/XeGPU/transform-ops.mlir
    A mlir/test/Pass/invalid-unsupported-operation.mlir
    M mlir/test/Pass/pipeline-invalid.mlir
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    M mlir/test/Target/LLVMIR/omptarget-data-use-dev-ordering.mlir
    A mlir/test/Target/LLVMIR/omptarget-declare-target-to-device.mlir
    A mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-nowait.mlir
    A mlir/test/Target/LLVMIR/omptarget-overlapping-record-member-map.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
    A mlir/test/Target/LLVMIR/omptarget-runtimecc.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/target-ext-type.mlir
    M mlir/test/Target/SPIRV/mlir-translate.mlir
    M mlir/test/Target/SPIRV/module.mlir
    M mlir/test/python/dialects/llvm.py
    M mlir/test/python/dialects/transform_xegpu_ext.py
    M mlir/test/python/ir/blocks.py
    A offload/test/offloading/fortran/declare-target-to-allocatable-vars-in-target-with-update.f90
    A offload/test/offloading/fortran/declare-target-to-vars-target-region-and-update.f90
    A offload/test/offloading/fortran/declare-target-to-zero-index-allocatable-target-map.f90
    A offload/test/offloading/fortran/dtype-member-overlap-map.f90
    A offload/test/offloading/fortran/target-custom-reduction-derivedtype.f90
    M openmp/runtime/src/kmp.h
    M orc-rt/include/orc-rt-c/WrapperFunction.h
    M orc-rt/include/orc-rt/SPSWrapperFunction.h
    M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
    M orc-rt/unittests/DirectCaller.h
    M orc-rt/unittests/SPSWrapperFunctionTest.cpp
    M utils/bazel/.bazelrc
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  rebase

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/33f6e6ed2fde...f459f6b2d263

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