[all-commits] [llvm/llvm-project] 1a540c: [PowerPC] Deprecate uses of ISD::ADDC/ISD::ADDE/IS...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Wed Apr 9 12:52:39 PDT 2025


  Branch: refs/heads/users/alexey-bataev/spr/slpsupport-vectorization-of-previously-vectorized-scalars-in-split-nodes
  Home:   https://github.com/llvm/llvm-project
  Commit: 1a540c3b8bcefaf6b36f261341ce55a1a24eca21
      https://github.com/llvm/llvm-project/commit/1a540c3b8bcefaf6b36f261341ce55a1a24eca21
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/lib/CodeGen/LivePhysRegs.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/adde_return_type.ll
    M llvm/test/CodeGen/PowerPC/addegluecrash.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-byval-split.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-xcoff-reloc-large32.ll
    M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
    A llvm/test/CodeGen/PowerPC/carry-liveness-after-expand-isel.ll
    M llvm/test/CodeGen/PowerPC/cvt_i64_to_fp.ll
    M llvm/test/CodeGen/PowerPC/inc-of-add.ll
    M llvm/test/CodeGen/PowerPC/pr35688.ll
    M llvm/test/CodeGen/PowerPC/pr36292.ll
    M llvm/test/CodeGen/PowerPC/pr40922.ll
    M llvm/test/CodeGen/PowerPC/pr45448.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/PowerPC/select.ll
    M llvm/test/CodeGen/PowerPC/uaddo-32.ll
    M llvm/test/CodeGen/PowerPC/uaddo-64.ll
    M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll

  Log Message:
  -----------
  [PowerPC] Deprecate uses of ISD::ADDC/ISD::ADDE/ISD::SUBC/ISD::SUBE  (#133155)

ISD::ADDC, ISD::ADDE, ISD::SUBC and ISD::SUBE are being deprecated,
using ISD::UADDO_CARRY,ISD::USUBO_CARRY instead. Lowering the UADDO,
UADDO_CARRY, USUBO, USUBO_CARRY in the patch.


  Commit: 75142250527a97fcf0c721148705ae415a2f2d3a
      https://github.com/llvm/llvm-project/commit/75142250527a97fcf0c721148705ae415a2f2d3a
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.err.ll

  Log Message:
  -----------
  Use a more proper idiom for "the output file doesn't matter". NFC. (#134280)

As in the description. Follow up to PR #134179.


  Commit: 262b9b515330daf7c446cc7983bf5f89185b3666
      https://github.com/llvm/llvm-project/commit/262b9b515330daf7c446cc7983bf5f89185b3666
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/LoweringHelpers.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    A clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.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/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/CMakeLists.txt
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    A clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/Lowering/array.cpp

  Log Message:
  -----------
  [CIR][Upstream] Local initialization for ArrayType (#132974)

This change adds local initialization for ArrayType

Issue #130197


  Commit: cfee056b4e75cd941591d298e0f8dc303460c57e
      https://github.com/llvm/llvm-project/commit/cfee056b4e75cd941591d298e0f8dc303460c57e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/TemplateBase.h
    M clang/include/clang/AST/TemplateName.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    A clang/include/clang/Basic/UnsignedOrNone.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaLambda.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/Serialization/ASTRecordWriter.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/AST/TemplateName.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang] NFC: introduce UnsignedOrNone as a replacement for std::optional<unsigned> (#134142)

This introduces a new class 'UnsignedOrNone', which models a lite
version of `std::optional<unsigned>`, but has the same size as
'unsigned'.

This replaces most uses of `std::optional<unsigned>`, and similar
schemes utilizing 'int' and '-1' as sentinel.

Besides the smaller size advantage, this is simpler to serialize, as its
internal representation is a single unsigned int as well.


  Commit: 3e59ff27e5d4506086dfe02ec600adf0baa9543e
      https://github.com/llvm/llvm-project/commit/3e59ff27e5d4506086dfe02ec600adf0baa9543e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Fix pred type for vote functions (#134166)


  Commit: 3f6ae3f0a81ac32aee7633b7c240ce8eb25192ff
      https://github.com/llvm/llvm-project/commit/3f6ae3f0a81ac32aee7633b7c240ce8eb25192ff
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/ArrayRepacking.md
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    A flang/test/Driver/frepack-arrays-contiguity.f90
    A flang/test/Driver/frepack-arrays.f90
    A flang/test/Driver/fstack-repack-arrays.f90
    M flang/test/Lower/repack-arrays.f90
    M flang/tools/bbc/bbc.cpp

  Log Message:
  -----------
  [flang] Added driver options for arrays repacking. (#134002)

Added options:
  * -f[no-]repack-arrays
  * -f[no-]stack-repack-arrays
  * -frepack-arrays-contiguity=whole/innermost


  Commit: b8b752db2b89a730aff250a83b64c7ed10d95ca0
      https://github.com/llvm/llvm-project/commit/b8b752db2b89a730aff250a83b64c7ed10d95ca0
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/docs/CMakeLists.txt

  Log Message:
  -----------
  [flang][NFC] Create required Source dir for flang-doc. (#134000)


  Commit: 158684a80ff825f0f02863360ac51230f5b7c3b4
      https://github.com/llvm/llvm-project/commit/158684a80ff825f0f02863360ac51230f5b7c3b4
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Add missing dep after 586c5e3083428e7473e880dafd5939e8707bc1c9


  Commit: b393ca6026ffbd5621edb00503dd39e9eec97a1a
      https://github.com/llvm/llvm-project/commit/b393ca6026ffbd5621edb00503dd39e9eec97a1a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVO0PreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPostLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVRedundantCopyElimination.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

  Log Message:
  -----------
  [NFC][LLVM][RISCV] Cleanup pass initialization for RISCV (#134279)

- Move calls to pass initialization functions to RISCV target
initialization and remove them from pass constructors.


  Commit: 7288f1bc32c1964c4de50aa305b696b32d0c0f1a
      https://github.com/llvm/llvm-project/commit/7288f1bc32c1964c4de50aa305b696b32d0c0f1a
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Use nvvm operation for match any (#134283)

The string used for intrinsic was not the correct one
"llvm.nvvm.match.any.sync.i32p". There was an extra `p` at the end.

Use the NVVM operation instead so we don't duplicate it.


  Commit: 229ca7dbcb5a6bcbcdc87fb0feb29362375c2843
      https://github.com/llvm/llvm-project/commit/229ca7dbcb5a6bcbcdc87fb0feb29362375c2843
  Author: zcfh <1412805291 at qq.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/ProfileData/MemProfReader.cpp
    M llvm/test/tools/llvm-profdata/memprof-buildid.test

  Log Message:
  -----------
  [memprof] Report an error when buildid and profile do not match (#132504)

## Problem
When the build ids of the profile and binary do not match, the error
reported by llvm-profdata is `no entries in callstack map after
symbolization`, but the root cause of this problem is the **build id
mismatch**.
## Trigger scenario
For example, when performing `memprof` optimization on `clang`,
`rawprofile` is collected through `ninja clang`. In addition to running
clang, some other programs will also be executed, and these programs
will also generate rawprofile. When `no entries in callstack map after
symbolization` appears during `llvm-profdata merge`, users may
mistakenly think that the **instrumentation failed or other reasons**,
and will **not directly realize that the binary and profile do not
match**.

## Changed
Currently, when the build id does not match, an assert error is
triggered only in debug mode. Change it to directly return an error when
the build id does not match.


  Commit: 7c4013d5912d2163147b46d6f97f4e2b0d976f3a
      https://github.com/llvm/llvm-project/commit/7c4013d5912d2163147b46d6f97f4e2b0d976f3a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/entries-shuffled-diff-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-nodes-with-non-gep-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sin-sqrt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2_unord_geps.ll

  Log Message:
  -----------
  Revert "[SLP]Initial support for (masked)loads + compress and (masked)interleaved"

This reverts commit 0bec0f5c059af5f920fe22ecda469b666b5971b0 to fix
a crash reported in https://lab.llvm.org/buildbot/#/builders/143/builds/6668.


  Commit: 012e574d4dc3f2441fae05e3fa9c35f3fe1e310e
      https://github.com/llvm/llvm-project/commit/012e574d4dc3f2441fae05e3fa9c35f3fe1e310e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [LV] Add FindLastIV test with truncated IV and epilogue vectorization.

This adds missing test coverage for
https://github.com/llvm/llvm-project/pull/132691.


  Commit: daab7d08078bb7cd37c66b78a56f4773e6b12fba
      https://github.com/llvm/llvm-project/commit/daab7d08078bb7cd37c66b78a56f4773e6b12fba
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/entries-shuffled-diff-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-nodes-with-non-gep-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sin-sqrt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2_unord_geps.ll

  Log Message:
  -----------
  [SLP]Initial support for (masked)loads + compress and (masked)interleaved

Added initial support for (masked)loads + compress and
(masked)interleaved loads.

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


  Commit: b93376f899824ad8543b961f2f79de6841034090
      https://github.com/llvm/llvm-project/commit/b93376f899824ad8543b961f2f79de6841034090
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M libcxx/test/libcxx/type_traits/no_specializations.verify.cpp

  Log Message:
  -----------
  [libc++][type_traits] `reference_{constructs|converts}_from_temporary` with `-Winvalid-specialization` tests (#133946)

Addresses comment:
https://github.com/llvm/llvm-project/pull/128649/files#r2022341035

---------

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


  Commit: 61768b35285ef73b88146946dddfef045b353708
      https://github.com/llvm/llvm-project/commit/61768b35285ef73b88146946dddfef045b353708
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/test/ThinLTO/X86/ctxprof-separate-module.ll

  Log Message:
  -----------
  [ctxprof] Don't import roots elsewhere (#134012)

Block a context root from being imported by its callers. 

Suppose that happened. Its caller - usually a message pump - inlines its copy of the root. Then it (the root) and whatever it calls will be the non-contextually optimized callee versions.


  Commit: cdff7f0b6ebe48c7d99079db002855be7716a7a9
      https://github.com/llvm/llvm-project/commit/cdff7f0b6ebe48c7d99079db002855be7716a7a9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [LV] Retrieve middle VPBB via scalar ph to fix epilogue resumephis (NFC)

If ScalarPH has predecessors, we may need to update its reduction resume
values. If there is a middle block, it must be the first predecessor.
Note that the first predecessor may not be the middle block, if the
middle block doesn't branch to the scalar preheader. In that case,
fixReductionScalarResumeWhenVectorizingEpilog will be a no-op.

In preparation for https://github.com/llvm/llvm-project/pull/106748.


  Commit: 5f99e0d4b9ea071e29a9cba75619d26811ff76c2
      https://github.com/llvm/llvm-project/commit/5f99e0d4b9ea071e29a9cba75619d26811ff76c2
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M lldb/source/Core/Statusline.cpp
    M lldb/test/API/functionalities/statusline/TestStatusline.py

  Log Message:
  -----------
  [lldb] Use the "reverse video" effect when colors are disabled. (#134203)

When you run lldb without colors (`-X`), the status line looks weird
because it doesn't have a background. You end up with what appears to be
floating text at the bottom of your terminal.

This patch changes the statusline to use the reverse video effect, even
when colors are off. The effect doesn't introduce any new colors and
just inverts the foreground and background color.

I considered an alternative approach which changes the behavior of the
`-X` option, so that turning off colors doesn't prevent emitting
non-color related control characters such as bold, underline, and
reverse video. I decided to go with this more targeted fix as (1) nobody
is asking for this more general change and (2) it introduces significant
complexity to plumb this through using a setting and driver flag so that
it can be disabled when running the tests.

Fixes #134112.


  Commit: 7d3dfc862d283319d01997c0672c50b4a082aa4e
      https://github.com/llvm/llvm-project/commit/7d3dfc862d283319d01997c0672c50b4a082aa4e
  Author: Henry Jiang <h243jian at uwaterloo.ca>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF.h
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF_ppc64.h
    M llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
    M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFF.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.h
    A llvm/lib/ExecutionEngine/JITLink/XCOFF_ppc64.cpp
    M llvm/lib/ExecutionEngine/Orc/LoadLinkableFile.cpp
    M llvm/lib/ExecutionEngine/Orc/ObjectFileInterface.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp
    A llvm/test/ExecutionEngine/JITLink/ppc64/XCOFF_ppc64.ll

  Log Message:
  -----------
  [JITLink][XCOFF] Setup initial build support for XCOFF (#127266)

This patch starts the initial implementation of JITLink for XCOFF (Object format for AIX).


  Commit: 4f902d2425e59bd182390702de23d5cec3467fc2
      https://github.com/llvm/llvm-project/commit/4f902d2425e59bd182390702de23d5cec3467fc2
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness.s
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp

  Log Message:
  -----------
  [llvm-dwarfdump] Make --verify for .debug_names multithreaded. (#127281)

This PR makes verification of .debug_names acceleration table
multithreaded. In local testing it improves verification of clang
.debug_names from four minutes to under a minute.
This PR relies on a current mechanism of extracting DIEs into a vector. 
Future improvements can include creating API to extract one DIE at a
time, or grouping Entires into buckets by CUs and extracting before
parallel step.

Single Thread
4:12.37 real,   246.88 user,    3.54 sys,       0 amem,10232004 mmem
Multi Thread
0:49.40 real,   612.84 user,    515.73 sys,     0 amem, 11226292 mmem


  Commit: 13aac46332f607a38067b5ddd466071683b8c255
      https://github.com/llvm/llvm-project/commit/13aac46332f607a38067b5ddd466071683b8c255
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Type.h
    M clang/lib/AST/Type.cpp
    M clang/lib/CodeGen/CGExpr.cpp

  Log Message:
  -----------
  [clang][NFC] Refactor CodeGen's hasBooleanRepresentation (#134159)

The ClangIR upstreaming project needs the same logic for
hasBooleanRepresentation() that is currently implemented in the standard
clang codegen. In order to share this code, this change moves the
implementation of this function into the AST Type class.

No functional change is intended by this change. The ClangIR use of this
function will be added separately in a later change.


  Commit: a06ae976dc0d977ca034041a8b91634e32bf6994
      https://github.com/llvm/llvm-project/commit/a06ae976dc0d977ca034041a8b91634e32bf6994
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/unary.cpp

  Log Message:
  -----------
  [CIR] Upstream support for promoted types with unary plus/minus (#133829)

The initial upstreaming of unary operations left promoted types
unhandled for the unary plus and minus operators. This change implements
support for promoted types and performs a bit of related code cleanup.


  Commit: 0f696c2e866d7aa913c7a1eaadde9bd4378e25b1
      https://github.com/llvm/llvm-project/commit/0f696c2e866d7aa913c7a1eaadde9bd4378e25b1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll

  Log Message:
  -----------
  [LV] Add test where epilogue is vectorized and backedge removed.

Adds extra test coverage for
https://github.com/llvm/llvm-project/pull/106748.


  Commit: de40f6101d34dd7964d409366fca663c5515a941
      https://github.com/llvm/llvm-project/commit/de40f6101d34dd7964d409366fca663c5515a941
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda][NFC] Use NVVM op for match all (#134303)


  Commit: fb6f60ddc5f2e386bbeaa2927a6081d15bc159fc
      https://github.com/llvm/llvm-project/commit/fb6f60ddc5f2e386bbeaa2927a6081d15bc159fc
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda][NFC] Use NVVM VoteBallotOp (#134307)

`llvm.nvvm.vote.ballot.sync` has its own operation so use it in
lowering.


  Commit: 85fdab33b09ab2246e69f806a85f1846a9ea1e51
      https://github.com/llvm/llvm-project/commit/85fdab33b09ab2246e69f806a85f1846a9ea1e51
  Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang-rt/lib/runtime/command.cpp
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Command.h
    M flang/include/flang/Runtime/command.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Command.cpp
    A flang/test/Lower/Intrinsics/unlink-func.f90
    A flang/test/Lower/Intrinsics/unlink-sub.f90

  Log Message:
  -----------
  [flang][intrinsic] add nonstandard intrinsic unlink (#134162)

This PR adds the intrinsic `unlink` to flang. 

## Test plan
- Added two codegen unit tests and ensured flang-check continues to
pass.
- Manually compiled and ran the example from the documentation.


  Commit: 506630d6db7c848f8943fff752039b9e1c91cb63
      https://github.com/llvm/llvm-project/commit/506630d6db7c848f8943fff752039b9e1c91cb63
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang][deps] Avoid unchecked error assertion (#134284)


  Commit: 109566a3d0cf20fc13a181a844c159032e7042ee
      https://github.com/llvm/llvm-project/commit/109566a3d0cf20fc13a181a844c159032e7042ee
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Fold "${Target}Analysis" targets into their respective CodeGen targets. (#134312)

After 3801bf6164f570a145e3ebd20cf9114782ae0329, SPIRVAnalysis needs to
include SPIRV.h provided by SPIRVCodegen, but the CodeGen target already
depends on Analysis, so that would cause a circular dependency.

Analysis is a subdirectory of CodeGen so it makes sense as a part of the
main CodeGen target too.


  Commit: 996cf5dc6731d00da6ce5dc7a25b399d0ed29d54
      https://github.com/llvm/llvm-project/commit/996cf5dc6731d00da6ce5dc7a25b399d0ed29d54
  Author: Sumit Agarwal <sumitagarwal330 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/dot2add.hlsl
    A clang/test/SemaHLSL/BuiltIns/dot2add-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/dot2add.ll

  Log Message:
  -----------
  [HLSL] Implement dot2add intrinsic (#131237)

Resolves #99221 
Key points: For SPIRV backend, it decompose into a `dot` followed a
`add`.

- [x] Implement dot2add clang builtin,
- [x] Link dot2add clang builtin with hlsl_intrinsics.h
- [x] Add sema checks for dot2add to CheckHLSLBuiltinFunctionCall in
SemaHLSL.cpp
- [x] Add codegen for dot2add to EmitHLSLBuiltinExpr in CGBuiltin.cpp
- [x] Add codegen tests to clang/test/CodeGenHLSL/builtins/dot2add.hlsl
- [x] Add sema tests to clang/test/SemaHLSL/BuiltIns/dot2add-errors.hlsl
- [x] Create the int_dx_dot2add intrinsic in IntrinsicsDirectX.td
- [x] Create the DXILOpMapping of int_dx_dot2add to 162 in DXIL.td
- [x] Create the dot2add.ll and dot2add_errors.ll tests in
llvm/test/CodeGen/DirectX/


  Commit: b11eece1bb582fa1d06ca61e210f9741e0a357b7
      https://github.com/llvm/llvm-project/commit/b11eece1bb582fa1d06ca61e210f9741e0a357b7
  Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang-rt/lib/runtime/extensions.cpp
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Runtime/extensions.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    A flang/test/Lower/Intrinsics/time.f90

  Log Message:
  -----------
  [flang][intrinsics] Implement the time intrinsic (#133823)

This PR implements the nonstandard intrinsic time.

In addition to running the unit tests, I also double checked that the
example code works by manually compiling and running it.


  Commit: 2cd8edd1fff2a9d82902f70270b4209463a34cba
      https://github.com/llvm/llvm-project/commit/2cd8edd1fff2a9d82902f70270b4209463a34cba
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst

  Log Message:
  -----------
  [libc++] Add missing release note for LLVM 20 about zip_view (#134144)

We should have had a release note in LLVM 20 about implementing P2165R4
since that is technically an ABI and API break for zip_view. We don't
expect anyone to actually hit the ABI issue, but we've come across some
(fairly small) breakage due to the API change, so this should at least
be mentioned in the release notes.


  Commit: f1c6612202d88cbde224387621327a31609f2177
      https://github.com/llvm/llvm-project/commit/f1c6612202d88cbde224387621327a31609f2177
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp

  Log Message:
  -----------
  [lldb][debugserver] Save and restore the SVE/SME register state (#134184)

debugserver isn't saving and restoring the SVE/SME register state around
inferior function calls.

Making arbitrary function calls while in Streaming SVE mode is generally
a poor idea because a NEON instruction can be hit and crash the
expression execution, which is how I missed this, but they should be
handled correctly if the user knows it is safe to do.

Re-landing this change after fixing an incorrect behavior on systems
without SME support.

rdar://146886210


  Commit: 9f2feeb1891a4d58823e6cbbb404847d6e43e65b
      https://github.com/llvm/llvm-project/commit/9f2feeb1891a4d58823e6cbbb404847d6e43e65b
  Author: modiking <modiking213 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/lib/Target/LLVMIR/Dialect/GPU/SelectObjectAttr.cpp
    M mlir/unittests/Target/LLVM/SerializeNVVMTarget.cpp

  Log Message:
  -----------
  [mlir][gpu][nvptx] Remove null terminator when outputting PTX (#133019)

PTX source files are expected to only contain ASCII text
(https://docs.nvidia.com/cuda/parallel-thread-execution/#source-format) and no null terminators.

`ptxas` has so far not enforced this but is moving towards doing so.
This revealed a problem where the null terminator is getting printed out
in the output file in MLIR path when outputting ptx directly. Only add the null on the assembly output path for JIT instead of in output of `moduleToObject `.


  Commit: bd197ca00365cd35002792324bd149f71e864e1a
      https://github.com/llvm/llvm-project/commit/bd197ca00365cd35002792324bd149f71e864e1a
  Author: Ian Anderson <iana at apple.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    M clang/test/Driver/darwin-ld-platform-version-watchos.c
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json

  Log Message:
  -----------
  [clang][modules] Determine if the SDK supports builtin modules independent of the target (#134005)

Whether the SDK supports builtin modules is a property of the SDK
itself, and really has nothing to do with the target. This was already
worked around for Mac Catalyst, but there are some other more esoteric
non-obvious target-to-sdk mappings that aren't handled. Have the SDK
parse its OS out of CanonicalName and use that instead of the target to
determine if builtin modules are supported.


  Commit: d33ae41c621dfbfb1eda5d469e2fb146ef49fbf9
      https://github.com/llvm/llvm-project/commit/d33ae41c621dfbfb1eda5d469e2fb146ef49fbf9
  Author: Aditya Tejpaul <97700214+hoarfrost32 at users.noreply.github.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/sys/time.yaml
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/time/CMakeLists.txt
    A libc/src/sys/time/linux/CMakeLists.txt
    A libc/src/sys/time/linux/utimes.cpp
    A libc/src/sys/time/utimes.h
    M libc/test/src/sys/CMakeLists.txt
    A libc/test/src/sys/time/CMakeLists.txt
    A libc/test/src/sys/time/utimes_test.cpp

  Log Message:
  -----------
  [libc] Implemented utimes (Issue #133953) (#134167)

This pull request implements the `utimes` command in libc ([Issue
#133953](https://github.com/llvm/llvm-project/issues/133953)).

- [x] Add the implementation of `utimes` in `/src/sys/time`.
- [x] Add tests for `utimes` in `/test/src/sys/time`. 
- [x] Add `utimes` to
[entrypoints.txt](https://github.com/llvm/llvm-project/blob/main/libc/config/linux/x86_64/entrypoints.txt)
for at least x86_64 and whatever you're building on
- [x] Add `utimes` to
[include/sys/time.yaml](https://github.com/llvm/llvm-project/blob/main/libc/include/sys/time.yaml)


  Commit: ba0a52a04b140bb7ed75cca4e1c27ec7d747fa40
      https://github.com/llvm/llvm-project/commit/ba0a52a04b140bb7ed75cca4e1c27ec7d747fa40
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    A llvm/test/Transforms/InferAddressSpaces/NVPTX/arguments.ll

  Log Message:
  -----------
  [InferAS] Support getAssumedAddrSpace for Arguments for NVPTX (#133991)


  Commit: ee1ee1144a20c439432a4f6075bdd7aa0afcfb9f
      https://github.com/llvm/llvm-project/commit/ee1ee1144a20c439432a4f6075bdd7aa0afcfb9f
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp

  Log Message:
  -----------
  Fix unused variable warning in non-debug build after 7d3dfc862d283319d01997c0672c50b4a082aa4e (NFC)


  Commit: c0079ba3dd31dd928df0c7f0f0e6106260f0ca19
      https://github.com/llvm/llvm-project/commit/c0079ba3dd31dd928df0c7f0f0e6106260f0ca19
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M libc/test/src/sys/time/utimes_test.cpp

  Log Message:
  -----------
  [libc] Make utimes_test more stable (#134321)

The test for utimes added in #134167 might fail if the file for one test
hasn't been cleaned up by the OS before the second test starts. This
patch makes the tests use different files.


  Commit: 65b85bf8bcb6c88f249de99c6b568f13b9794c1c
      https://github.com/llvm/llvm-project/commit/65b85bf8bcb6c88f249de99c6b568f13b9794c1c
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M flang/test/Driver/linker-flags.f90

  Log Message:
  -----------
  [flang] Fixed driver link LIT test for PPC targets. (#134320)

After #131041, the F128 libraries are not linked for PPC targets even
when the driver is built with FLANG_RUNTIME_F128_MATH_LIB.


  Commit: fcfbef5582f097f3933470755c3f873e9efce03f
      https://github.com/llvm/llvm-project/commit/fcfbef5582f097f3933470755c3f873e9efce03f
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td

  Log Message:
  -----------
  [mlir][tosa] Remove extra declarations of MulOperandsAndResultElementType in TosaOps.td (#134300)

Minor code cleanup

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: 7d05c2326c579ff93b7b2a412cc2fd2b10598b34
      https://github.com/llvm/llvm-project/commit/7d05c2326c579ff93b7b2a412cc2fd2b10598b34
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td

  Log Message:
  -----------
  [mlir][tosa] Remove extra trailing whitespace (#134290)

Trivial change.

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: ae5306f30e17719d7589b7941bd107ce58a04228
      https://github.com/llvm/llvm-project/commit/ae5306f30e17719d7589b7941bd107ce58a04228
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    A llvm/test/MC/RISCV/xqcibi-relocations.s

  Log Message:
  -----------
  [RISCV] Add symbol parsing support for the Xqcibi branch immediate instructions (#134233)

This patch adds support for parsing symbols in the Xqcibi branch
immediate instructions. While the 32 bit branch instructions use the
same instruction format and relocation as the existing branch
instructions in RISCV, the 48 bit ones use the `InstFormatQC_EB`
instruction format and the `R_RISCV_QC_E_BRANCH` relocation that is
defined in `BinaryFormat/ELFRelocs/RISCV_nonstandard.def.`

Vendor relocation support will be added in a later patch.


  Commit: b9891715af7ab055ccb7ad424aefe54c67d77988
      https://github.com/llvm/llvm-project/commit/b9891715af7ab055ccb7ad424aefe54c67d77988
  Author: Rodrigo Rocha <rcor at dcc.ufmg.br>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT] Handle generation of compare and jump sequences (#131949)

This patch fixes the following two issues with the createCmpJE for
AArch64:
1. Avoids overwriting the value of the input register RegNo by use XZR
as the destination register.
   subs xzr, RegNo, #Imm
   which is equivalent to a simple
   cmp RegNo, #Imm
2. The immediate operand to the Bcc instruction must be EQ instead of
#Imm.

This patch also adds a new function for createCmpJNE and unit tests for
the both createCmpJE and createCmpJNE for X86 and AArch64.


  Commit: 21468261695918cd74e0079153eedbccb689fe20
      https://github.com/llvm/llvm-project/commit/21468261695918cd74e0079153eedbccb689fe20
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/test/ThinLTO/X86/ctxprof-separate-module.ll

  Log Message:
  -----------
  [ctxprof] Support for "move" semantics for the contextual root (#134192)

This PR finishes what PR #133992 started.


  Commit: 4532512f6c2558fa7d5ba9f35fbce7bad76c1380
      https://github.com/llvm/llvm-project/commit/4532512f6c2558fa7d5ba9f35fbce7bad76c1380
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp

  Log Message:
  -----------
  [ctxprof] Move `MoveSymbolGUID` to address dependency issues (#134334)

See PR #134192


  Commit: 4088c70f4e7eae0bfc2916cc88c7301ec5e19daf
      https://github.com/llvm/llvm-project/commit/4088c70f4e7eae0bfc2916cc88c7301ec5e19daf
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  CGHLSLBuiltins.cpp: Suppress a warning in #131237 [-Wunused-variable]


  Commit: c9f6d26e049849a8d8d31deaf6c710894a361b0e
      https://github.com/llvm/llvm-project/commit/c9f6d26e049849a8d8d31deaf6c710894a361b0e
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/AsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmLexer.h
    M llvm/lib/MC/MCParser/AsmLexer.cpp
    M llvm/lib/MC/MCParser/CMakeLists.txt
    R llvm/lib/MC/MCParser/MCAsmLexer.cpp
    M llvm/utils/gn/secondary/llvm/lib/MC/MCParser/BUILD.gn

  Log Message:
  -----------
  [MC] Merge MCAsmLexer.{h,cpp} into AsmLexer.{h,cpp} (#134207)

2b11c7de4ae182496438e166cb6758d41b6e1740 introduced
`llvm/include/llvm/MC/MCAsmLexer.h` and made `AsmLexer` inherit from
`MCAsmLexer`, likely to allow target-specific parsers to depend solely
on `MCAsmLexer`. However, this separation now seems unnecessary and
confusing.

`MCAsmLexer` defines virtual functions with `AsmLexer` as its only
implementation, and `AsmLexer` itself has few extra public methods.

To simplify the codebase, this change merges MCAsmLexer.{h,cpp} into
AsmLexer.{h,cpp}. MCAsmLexer.h is temporarily kept as a forwarder.

Note: I doubt that a downstream lexer handling an assembly syntax
significantly different from the standard GNU Assembler syntax would
want to inherit from `MCAsmLexer`. Instead, it's more likely they'd
extend `AsmLexer` by adding new states and modifying its internal logic,
as seen with variables for MASM, M68k, and HLASM.


  Commit: 897f9a51b981c773a63dd94709d9de2442feb008
      https://github.com/llvm/llvm-project/commit/897f9a51b981c773a63dd94709d9de2442feb008
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/Headers/avx10_2_512bf16intrin.h
    M clang/lib/Headers/avx10_2bf16intrin.h

  Log Message:
  -----------
  [X86][AVX10.2] Replace nepbh with bf16 to match with others, NFCI (#134240)


  Commit: 8e7d6baf0e013408be932758b4a5334c14a34086
      https://github.com/llvm/llvm-project/commit/8e7d6baf0e013408be932758b4a5334c14a34086
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M lldb/include/lldb/API/SBModule.h
    M lldb/source/API/SBModule.cpp

  Log Message:
  -----------
  Revert "[LLDB] Expose checking if the symbol file exists/is loaded via SBModule" (#134341)

Reverts llvm/llvm-project#134163

Reverting while @clayborg and I come up with a better API


  Commit: 6333f8457c43f5a2d19d6552689726e86196dea7
      https://github.com/llvm/llvm-project/commit/6333f8457c43f5a2d19d6552689726e86196dea7
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
    M flang/test/Lower/OpenMP/loop-directive.f90

  Log Message:
  -----------
  [flang][OpenMP] Move reductions from `loop` to `teams` when `loop` is mapped to `distribute` (#132920)

Follow-up to #132003, in particular, see
https://github.com/llvm/llvm-project/pull/132003#issuecomment-2739701936.

This PR extends reduction support for `loop` directives. Consider the
following scenario:
```fortran
subroutine bar
  implicit none
  integer :: x, i

  !$omp teams loop reduction(+: x)
  DO i = 1, 5
    call foo()
  END DO
end subroutine
```
Note the following:
* According to the spec, the `reduction` clause will be attached to
`loop` during earlier stages in the compiler.
* Additionally, `loop` cannot be mapped to `distribute parallel for` due
to the call to a foreign function inside the loop's body.
* Therefore, `loop` must be mapped to `distribute`.
* However, `distribute` does not have `reduction` clauses.
* As a result, we have to move the `reduction`s from the `loop` to its
parent `teams` directive, which is what is done by this PR.


  Commit: 46e2c07fa28bd42da8f8ca52e93603297114afa2
      https://github.com/llvm/llvm-project/commit/46e2c07fa28bd42da8f8ca52e93603297114afa2
  Author: cmtice <cmtice at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    A lldb/docs/dil-expr-lang.ebnf
    A lldb/include/lldb/ValueObject/DILAST.h
    A lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    A lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/ValueObject/CMakeLists.txt
    A lldb/source/ValueObject/DILAST.cpp
    A lldb/source/ValueObject/DILEval.cpp
    A lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/TestFrameVarDILGlobalVariableLookup.py
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/TestFrameVarDILInstanceVariables.py
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/main.cpp
    M lldb/unittests/ValueObject/DILLexerTests.cpp

  Log Message:
  -----------
  [LLDB] Add DIL code for handling plain variable names. (#120971)

Add the Data Inspection Language (DIL) implementation pieces for
handling plain local and global variable names.

See https://discourse.llvm.org/t/rfc-data-inspection-language/69893 for
information about DIL.

This change includes the basic AST, Lexer, Parser and Evaluator pieces,
as well as some tests.


  Commit: 92c93f5286b9ff33f27ff694d2dc33da1c07afdd
      https://github.com/llvm/llvm-project/commit/92c93f5286b9ff33f27ff694d2dc33da1c07afdd
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/AsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmParser.h
    M llvm/lib/MC/MCParser/AsmLexer.cpp

  Log Message:
  -----------
  [MC] Merge MCAsmLexer and AsmLexer

Follow-up to #134207

Both classes define `IsAtStartOfStatement` but the semantics are
confusingly different. Rename the base class one.


  Commit: 92923e517c2926eb94b7b6e403433ecf62953186
      https://github.com/llvm/llvm-project/commit/92923e517c2926eb94b7b6e403433ecf62953186
  Author: Iris <0.0 at owo.li>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Target/LLVMIR/Import/metadata-dependent-libraries.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [mlir][llvm] Add `LLVM_DependentLibrariesAttr` (#133385)

https://llvm.org/docs/LangRef.html#dependent-libs-named-metadata

---------

Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>


  Commit: d579622b1e1a6bc59fbe0135ab30fc0fd9849882
      https://github.com/llvm/llvm-project/commit/d579622b1e1a6bc59fbe0135ab30fc0fd9849882
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [clang][CGObjC] Prefer PointerType::get with LLVMContext over Type (NFC) (#133871)

Part of #123569


  Commit: 78a4b9d9b46d59e20cf01d6008ab0080052e9938
      https://github.com/llvm/llvm-project/commit/78a4b9d9b46d59e20cf01d6008ab0080052e9938
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M polly/lib/CodeGen/LoopGeneratorsGOMP.cpp

  Log Message:
  -----------
  [polly] Prefer PointerType::get with LLVMContext over Type (NFC) (#133868)

Part of #123569


  Commit: 22130ca486b2fb43198453a53eb048cd8a97e9a8
      https://github.com/llvm/llvm-project/commit/22130ca486b2fb43198453a53eb048cd8a97e9a8
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp

  Log Message:
  -----------
  [MS][clang] Fix crash on deletion of array of pointers (#134088)

Sometimes a non-array delete is treated as delete[] when input pointer
is pointer to array. With vector deleting destructors support we now
generate a virtual destructor call instead of simple loop over the
elements. This patch adjusts the codepath that generates virtual call to
expect the case of pointer to array.


  Commit: e4f76e3a3335dda608c661d76efacc70e607a5e4
      https://github.com/llvm/llvm-project/commit/e4f76e3a3335dda608c661d76efacc70e607a5e4
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/FuncUnwinders.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Target/RegisterContextUnwind.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Symbol/FuncUnwinders.cpp
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/source/Target/RegisterContextUnwind.cpp

  Log Message:
  -----------
  Reapply "[lldb] Return *const* UnwindPlan pointers from FuncUnwinders " (#134246)

This reverts commit 094904303d50e0ab14bc5f2586a602f79af95953, reapplying
d7afafdbc464e65c56a0a1d77bad426aa7538306 (#133247).

The failure ought to be fixed by
0509932bb6a291ba11253f30c465ab3ad164ae08.


  Commit: f528a80d3ed70181483e3ce10aa3a7a4dd812817
      https://github.com/llvm/llvm-project/commit/f528a80d3ed70181483e3ce10aa3a7a4dd812817
  Author: Vladi Krapp <vladi.krapp at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/test/Driver/arm-thread-pointer.c

  Log Message:
  -----------
  [Arm] Add more -mtp=cp15 tests (#134098)

This patch systematically covers all -mtp=cp15 behaviour options for
better code coverage.


  Commit: aaf398c2e76853e890fa3aae35a7ea3aa4edac97
      https://github.com/llvm/llvm-project/commit/aaf398c2e76853e890fa3aae35a7ea3aa4edac97
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling-multi-exit.ll

  Log Message:
  -----------
  [AArch64] Regenerate apple-unrolling-multi-exit.ll test checks (#134257)


  Commit: 9eb7e64145f66f59f07edffb4f9c8a648174543e
      https://github.com/llvm/llvm-project/commit/9eb7e64145f66f59f07edffb4f9c8a648174543e
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
    M mlir/test/Dialect/SPIRV/IR/image-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add verification for Bias operand (#134231)


  Commit: c154d66339ed6e3c236849e4999cf0dc6ddec777
      https://github.com/llvm/llvm-project/commit/c154d66339ed6e3c236849e4999cf0dc6ddec777
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidyBugProne finding (NFC).

argument name 'outputType' in comment does not match parameter name 'outputTypes'


  Commit: 1302610f03a1f10c2eea4c66445ccba4c52887b6
      https://github.com/llvm/llvm-project/commit/1302610f03a1f10c2eea4c66445ccba4c52887b6
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    A llvm/test/Transforms/MergeFunc/crash-cast-arrays.ll

  Log Message:
  -----------
  [MergeFunc] Fix crash caused by bitcasting ArrayType (#133259)

createCast in MergeFunctions did not consider ArrayTypes, which results
in the creation of a bitcast between ArrayTypes in the thunk function,
leading to an assertion failure in the provided test case.

The version of createCast in GlobalMergeFunctions does handle
ArrayTypes, so this common code has been factored out into the
IRBuilder.


  Commit: a4573ee38d4497749d06aedb422159277cccfd66
      https://github.com/llvm/llvm-project/commit/a4573ee38d4497749d06aedb422159277cccfd66
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling-multi-exit.ll

  Log Message:
  -----------
  [LoopUnroll] UnrollRuntimeMultiExit takes precedence over TTI. (#134259)

Update UnrollRuntimeLoopRemainder to always give priority to the
UnrollRuntimeMultiExit option, if provided.

After ad9da92cf6f7357 (https://github.com/llvm/llvm-project/pull/124462),
we would ignore the option if the backend indicates multi-exit is profitable.
This means it cannot be used to disable runtime unrolling.

To be consistent with canProfitablyRuntimeUnrollMultiExitLoop, always
respect the option.

This surfaced while discussing https://github.com/llvm/llvm-project/pull/131998.

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


  Commit: 4da5e9dd320e9d48be0fa05ba1a8faf50fb53834
      https://github.com/llvm/llvm-project/commit/4da5e9dd320e9d48be0fa05ba1a8faf50fb53834
  Author: gbMattN <matthew.nagy at sony.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp

  Log Message:
  -----------
  [ASan] Fix shadowed-stack-serialization test on targets with different stack layout


  Commit: 5812516ae2e034d70b0cca20b95d627e163b4567
      https://github.com/llvm/llvm-project/commit/5812516ae2e034d70b0cca20b95d627e163b4567
  Author: Alaa Ali <alaa.leithy at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/test/Dialect/Shape/canonicalize.mlir

  Log Message:
  -----------
  [MLIR] Fix canonicalization pattern for 'shape.shape_of' (#134234)

This PR will fix a bug in a canonicalization pattern (operation
shape.shape_of: shape of reshape)

```
// Before
func.func @f(%arg0: tensor<?x1xf32>, %arg1: tensor<3xi32>) -> tensor<3xindex> {
  %reshape = tensor.reshape %arg0(%arg1) : (tensor<?x1xf32>, tensor<3xi32>) -> tensor<?x1x1xf32>
  %0 = shape.shape_of %reshape : tensor<?x1x1xf32> -> tensor<3xindex>
  return %0 : tensor<3xindex>
}
//This is will error out as follows:
error: 'tensor.cast' op operand type 'tensor<3xi32>' and result type 'tensor<3xindex>' are cast incompatible
  %0 = shape.shape_of %reshape : tensor<?x1x1xf32> -> tensor<3xindex>
       ^
note: see current operation: %0 = "tensor.cast"(%arg1) : (tensor<3xi32>) -> tensor<3xindex>
```

```
// After
func.func @f(%arg0: tensor<?x1xf32>, %arg1: tensor<3xi32>) -> tensor<3xindex> {
  %0 = arith.index_cast %arg1 : tensor<3xi32> to tensor<3xindex>
  return %0 : tensor<3xindex>
}
```
See file canonicalize.mlir in the change list for an example.

For the context, this bug was found while running a test on Keras 3, the
canonicalizer errors out due to an invalid tensor.cast operation when
the batch size is dynamic.
The operands of the op are tensor<3xi32> cast to tensor<3xindex>.
This change is related to a previous PR:
https://github.com/llvm/llvm-project/pull/98531

---------

Co-authored-by: Alaa Ali <alaaali at ah-alaaali-l.dhcp.mathworks.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: a03b2250db20db7d6416ca37b41f5041e613f632
      https://github.com/llvm/llvm-project/commit/a03b2250db20db7d6416ca37b41f5041e613f632
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [NVPTX][Docs] [NFC] Update docs on intrinsics (#133136)

Recently, we have added a set of complex intrinsics on
the TMA, tcgen05, and Cvt family of instructions.

This patch captures the key learnings from our experience
so far and documents them as guidelines for future design.

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: d6c076eeaa9d57363c6b64989d17fd094363bf9e
      https://github.com/llvm/llvm-project/commit/d6c076eeaa9d57363c6b64989d17fd094363bf9e
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td

  Log Message:
  -----------
  [mlir][tosa] Reorder Tosa_ExtensionAttrs to match with definition order (#134319)

Simple refactor change.

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: 2bdc1a1337692a5743658ba6b680e5d914e684a4
      https://github.com/llvm/llvm-project/commit/2bdc1a1337692a5743658ba6b680e5d914e684a4
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll

  Log Message:
  -----------
  [LV] Use frozen start value for FindLastIV if needed. (#132691)

FindLastIV introduces multiple uses of the start value, where in the
original source there was only a single use, when the epilogue is
vectorized.

Each use of undef may produce a different result, so introducing
multiple uses can produce incorrect results when the input is
undef/poison.

If the start value may be undef or poison, freeze it and use the frozen
value, which will be the same at all uses.

See the following scenarios in Alive2:
* Both main and epilogue vector loops execute, go to exit block: https://alive2.llvm.org/ce/z/_TSvRr
* Both main and epilogue vector loops execute, go to scalar loop: https://alive2.llvm.org/ce/z/CsPj5v
* Only epilogue vector loop executes, go to exit block: https://alive2.llvm.org/ce/z/5XqkNV
* Only epilogue vector loop executes, go to scalar loop: https://alive2.llvm.org/ce/z/JUpqRN

The latter 2 show requiring freezing the resume phi. That means we cannot freeze 
in the preheader. We could move the freeze to the main iteration count check, but
that would be a bit fragile to find and other transforms can sink the freeze if needed.


Depends on https://github.com/llvm/llvm-project/pull/132689
and https://github.com/llvm/llvm-project/pull/132690.

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

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


  Commit: a9a7b711e46548b2d6e9fef4daf39c455923644a
      https://github.com/llvm/llvm-project/commit/a9a7b711e46548b2d6e9fef4daf39c455923644a
  Author: Vladi Krapp <vladi.krapp at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/test/Driver/arm-thread-pointer.c

  Log Message:
  -----------
  [ARM][NFC] Remove lines unnecessary for test (#134359)


  Commit: a17d49687a2f5bc43fa57376a566c65a7fc97d7b
      https://github.com/llvm/llvm-project/commit/a17d49687a2f5bc43fa57376a566c65a7fc97d7b
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/test/Driver/code-object-version.f90
    A flang/test/Integration/amdgpu-code-object-version.f90

  Log Message:
  -----------
  [Flang][Driver][AMDGPU] Fix -mcode-object-version (#134230)

This patch updates flang to follow clang's behavior when processing the
`-mcode-object-version` option.

It is now used to populate an LLVM module flag called
`amdhsa_code_object_version` expected by the backend and also updates
the driver to add the `--amdhsa-code-object-version` option to the
frontend invocation for device compilation of AMDGPU targets.


  Commit: b0b97e3b0507f44c126dd2e6d3e6575cf1ec598d
      https://github.com/llvm/llvm-project/commit/b0b97e3b0507f44c126dd2e6d3e6575cf1ec598d
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll

  Log Message:
  -----------
  [LLVM][AArch64] Refactor lowering of fixed length integer setcc operations. (#132434)

The original code is essentially performing isel during legalisation
with the AArch64 specific nodes offering no additional value compared to
ISD::SETCC.


  Commit: 0d17547879ffbd50d79907ea23fdac199758d45e
      https://github.com/llvm/llvm-project/commit/0d17547879ffbd50d79907ea23fdac199758d45e
  Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/powi-const.ll
    M llvm/test/CodeGen/X86/powi.ll

  Log Message:
  -----------
  [X86][NFC] Added POWI function testcases (#134276)

- Moved existing llvm/test/CodeGen/X86/powi.ll file to
  llvm/test/CodeGen/X86/powi-const.ll.
- Added new testcases for powi into llvm/test/CodeGen/X86/powi.ll.


  Commit: a2e888f5b49113c66b055290cb7069ae88c9d2e1
      https://github.com/llvm/llvm-project/commit/a2e888f5b49113c66b055290cb7069ae88c9d2e1
  Author: Vy Nguyen <vyng at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/source/Interpreter/CommandInterpreter.cpp

  Log Message:
  -----------
  [LLDB][NFC]Fix stack-use-after free bug. (#134296)

Details: detailed_command_telemetry (bool) and command_id (int) could
already be freed when the dispatcher's dtor runs. So we should just copy
them into the lambda since they are cheap.


  Commit: babbc6f8429ca07cdf2f5b6ff5e9516c383079b7
      https://github.com/llvm/llvm-project/commit/babbc6f8429ca07cdf2f5b6ff5e9516c383079b7
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/Headers.cpp

  Log Message:
  -----------
  [NFC] Fixes proposed by code sanitizer. (#134138)


  Commit: 547d054ef13c2ca5ec42f7061d8ba941c05605d9
      https://github.com/llvm/llvm-project/commit/547d054ef13c2ca5ec42f7061d8ba941c05605d9
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/android/comparison-in-temp-failure-retry.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/concurrency/mt-unsafe.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-malloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-private-member-variables-in-classes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-data-pointer.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/inconsistent-declaration-parameter-name.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-smartptr-get.rst

  Log Message:
  -----------
  [clang-tidy][NFC][doc] improve "options" sections of `misc-`, `cppcore-` and other checks (#133694)

Improved "options" sections of various checks:

1. Added Options keyword to be a delimiter between "body" and "options"
parts of docs
2. Added default values where were absent.
3. Changed double-tick to single-tick in default values.

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: d02786e7785ffa8c0aae4d89e9f6391bb4645500
      https://github.com/llvm/llvm-project/commit/d02786e7785ffa8c0aae4d89e9f6391bb4645500
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    A clang/test/Sema/nullability-and-template-deduction.cpp

  Log Message:
  -----------
  [Sema] Handle AttributedType in template deduction with derived-to-base conversions (#134361)

Fix #134356.

We accidentally skipped checking derived-to-base conversions because
deduction did not strip sugar in the relevant code. This caused
deduction failures when a parameter type had an attribute.


  Commit: da69eb75cbc634a56886e94de3e546c63c17567e
      https://github.com/llvm/llvm-project/commit/da69eb75cbc634a56886e94de3e546c63c17567e
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    A clang/include/clang/ASTMatchers/LowLevelHelpers.h
    M clang/lib/ASTMatchers/CMakeLists.txt
    A clang/lib/ASTMatchers/LowLevelHelpers.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [NFC] [ASTMatchers] Share code of `forEachArgumentWithParamType` with UnsafeBufferUsage (#132387)

This changes exposes a low-level helper that is used to implement
`forEachArgumentWithParamType` but can also be used without matchers,
e.g. if performance is a concern.

Commit f5ee10538b68835112323c241ca7db67ca78bf62 introduced a copy of the
implementation of the `forEachArgumentWithParamType` matcher that was
needed for optimizing performance of `-Wunsafe-buffer-usage`.

This change shares the code between the two so that we do not repeat
ourselves and any bugfixes or changes will be picked up by both
implementations in the future.


  Commit: 16a1d5d51f6bafa19afc140b033db2cfb090743a
      https://github.com/llvm/llvm-project/commit/16a1d5d51f6bafa19afc140b033db2cfb090743a
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    A clang/test/SemaCXX/gh134265.cpp

  Log Message:
  -----------
  [clang] Do not diagnose unused deleted operator delete[] (#134357)

For vector deleting dtors support we now also search and save operator
delete[]. Avoid diagnosing deleted operator delete[] when doing that
because vector deleting dtors are only called when delete[] is present
and whenever delete[] is present in the TU it will be diagnosed
correctly.

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


  Commit: d2bcc11067e682a0753c1068e378d66d59edff73
      https://github.com/llvm/llvm-project/commit/d2bcc11067e682a0753c1068e378d66d59edff73
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Processors.td
    A llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll

  Log Message:
  -----------
  [AArch64][SVE] Use  FeatureUseFixedOverScalableIfEqualCost for A510 and A520 (#132246)

Inefficient SVE codegen occurs on at least two in-order cores,
those being Cortex-A510 and Cortex-A520. For example a simple vector
add

```
void foo(float a, float b, float dst, unsigned n) {
    for (unsigned i = 0; i < n; ++i)
        dst[i] = a[i] + b[i];
}
```

Vectorizes the inner loop into the following interleaved sequence
of instructions.

```
        add     x12, x1, x10
        ld1b    { z0.b }, p0/z, [x1, x10]
        add     x13, x2, x10
        ld1b    { z1.b }, p0/z, [x2, x10]
        ldr     z2, [x12, #1, mul vl]
        ldr     z3, [x13, #1, mul vl]
        dech    x11
        add     x12, x0, x10
        fadd    z0.s, z1.s, z0.s
        fadd    z1.s, z3.s, z2.s
        st1b    { z0.b }, p0, [x0, x10]
        addvl   x10, x10, #2
        str     z1, [x12, #1, mul vl]
```

By adjusting the target features to prefer fixed over scalable if the
cost is equal we get the following vectorized loop.

```
         ldp q0, q3, [x11, #-16]
         subs    x13, x13, #8
         ldp q1, q2, [x10, #-16]
         add x10, x10, #32
         add x11, x11, #32
         fadd    v0.4s, v1.4s, v0.4s
         fadd    v1.4s, v2.4s, v3.4s
         stp q0, q1, [x12, #-16]
         add x12, x12, #32
```

Which is more efficient.


  Commit: 85fd83ed49604d1046e937afa76f3ad802e28822
      https://github.com/llvm/llvm-project/commit/85fd83ed49604d1046e937afa76f3ad802e28822
  Author: Asher Mancinelli <ashermancinelli at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/lib/Optimizer/Builder/Character.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/test/HLFIR/assign-codegen.fir
    M flang/test/HLFIR/associate-codegen.fir
    M flang/test/HLFIR/char_extremum-bufferization.fir
    M flang/test/HLFIR/concat-bufferization.fir
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/optional-value-caller.f90
    M flang/test/Lower/pointer-references.f90
    M flang/test/Lower/statement-function.f90
    M flang/test/Lower/structure-constructors.f90

  Log Message:
  -----------
  [flang][nfc] Use llvm memmove intrinsic over regular call (#134294)

Follow up to #134170.

We should be using the LLVM intrinsics instead of plain fir.calls when
we can. Existing code creates a declaration for the llvm intrinsic and
a regular fir.call, which makes it hard for consumers of the IR to find
all the intrinsic calls.


  Commit: 6966b4f4a57be101150fc714f17e8d534db8e79d
      https://github.com/llvm/llvm-project/commit/6966b4f4a57be101150fc714f17e8d534db8e79d
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp

  Log Message:
  -----------
  [mlir][arith] Remove func patterns from `populateArithWideIntEmulationPatterns` (#134316)

This function should populate only patterns that are related to wide
integer operation emulation.


  Commit: 77cfa38dcbe100ac26b98309bbf7cf346a75c2e5
      https://github.com/llvm/llvm-project/commit/77cfa38dcbe100ac26b98309bbf7cf346a75c2e5
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp

  Log Message:
  -----------
  [DirectX][TTI] Sort switch statements. NFC (#134379)


  Commit: fb9deab74e5dc9a9227732fcd95c1aadacf86d44
      https://github.com/llvm/llvm-project/commit/fb9deab74e5dc9a9227732fcd95c1aadacf86d44
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/test/C/C23/n3042.c

  Log Message:
  -----------
  Add additional test coverage for WG14 N3042

This addresses a post-commit request for some additional tests


  Commit: fd6260f13bfecfb13537e184f4e8365cf35492fd
      https://github.com/llvm/llvm-project/commit/fd6260f13bfecfb13537e184f4e8365cf35492fd
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/unittests/ADT/EquivalenceClassesTest.cpp

  Log Message:
  -----------
  [EquivClasses] Shorten members_{begin,end} idiom (#134373)

Introduce members() iterator-helper to shorten the members_{begin,end}
idiom. A previous attempt of this patch was #130319, which had to be
reverted due to unit-test failures when attempting to call members() on
the end iterator. In this patch, members() accepts either an ECValue or
an ElemTy, which is more intuitive and doesn't suffer from the same
issue.


  Commit: ecd4c0857b69e2c3f592d805bafde8e9f6a19005
      https://github.com/llvm/llvm-project/commit/ecd4c0857b69e2c3f592d805bafde8e9f6a19005
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/CodeGen/AArch64/fast-isel-dbg.ll
    M llvm/test/CodeGen/AArch64/selectiondag-order.ll
    M llvm/test/CodeGen/MIR/X86/diexpr-win32.mir
    M llvm/test/CodeGen/X86/selectiondag-order.ll
    M llvm/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    M llvm/test/Transforms/LoopVectorize/discriminator.ll

  Log Message:
  -----------
  [Verifier] Require that dbg.declare variable is a ptr (#134355)

As far as I understand, the first operand of dbg_declare should be a
pointer (inside a metadata wrapper). However, using a non-pointer is
currently not rejected, and we have some tests that use non-pointer
types. As far as I can tell, these tests either meant to use dbg_value
or are just incorrect hand-crafted tests.

Ran into this while trying to `fix` #134008.


  Commit: 846000c0052000034d424c744739b30b70c8c8fc
      https://github.com/llvm/llvm-project/commit/846000c0052000034d424c744739b30b70c8c8fc
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Processors.td
    R llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll

  Log Message:
  -----------
  Revert "[AArch64][SVE] Use  FeatureUseFixedOverScalableIfEqualCost for A510 and A520" (#134382)

Reverts llvm/llvm-project#132246


  Commit: 7d4ea771c4817bdb042ebc6a2aa35f877785edcf
      https://github.com/llvm/llvm-project/commit/7d4ea771c4817bdb042ebc6a2aa35f877785edcf
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [SDAG] Use index type size for offset accumulation

This is a precondition of the API. Not testable with in-tree
targets.

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


  Commit: d4002b43f517fea0292bf71dccaa3d0f6dd798b9
      https://github.com/llvm/llvm-project/commit/d4002b43f517fea0292bf71dccaa3d0f6dd798b9
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/test/API/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.py

  Log Message:
  -----------
  [lldb] Skip Expression NonZeroFrame test on Windows

It is failing on our Windows on Arm bot:
https://lab.llvm.org/buildbot/#/builders/141/builds/7605

Will investigate later.


  Commit: 5fbd0658a02bd91cf36419f2f425732a06315432
      https://github.com/llvm/llvm-project/commit/5fbd0658a02bd91cf36419f2f425732a06315432
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
    M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
    M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
    M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/as_cast.ll
    M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
    M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/loop-form.ll
    M llvm/test/Transforms/LoopVectorize/memdep-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/optsize.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr51614-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/select-reduction.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-counting-down.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  [VPlan] Add initial CFG simplification, removing BranchOnCond true. (#106748)

Add an initial CFG simplification transform, which removes the dead
edges for blocks terminated with BranchOnCond true.

At the moment, this removes the edge between middle block and scalar
preheader when folding the tail.

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


  Commit: aca270877fc607a5558ff0a0f104fd5b6bb8fc62
      https://github.com/llvm/llvm-project/commit/aca270877fc607a5558ff0a0f104fd5b6bb8fc62
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [SLP] Use named structs in vectorizeStores() (NFC) (#132781)

This is a mostly straightforward replacement of the previous
`std::pair<int, std::set<std::pair<...>>>` data structure used in
`SLPVectorizerPass::vectorizeStores()` with slightly more readable
alternatives.

I had done that change in my local tree to help me better understand the
code. It’s not very invasive, so I thought I’d create a PR for it.


  Commit: c8bde44cfcc75a8389f1a72917e0aadc125f5e22
      https://github.com/llvm/llvm-project/commit/c8bde44cfcc75a8389f1a72917e0aadc125f5e22
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang-rt/lib/runtime/extensions.cpp
    M flang-rt/lib/runtime/unit.cpp
    M flang-rt/lib/runtime/unit.h
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Runtime/extensions.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp

  Log Message:
  -----------
  [flang] Implement FSEEK and FTELL (#133003)

Add function and subroutine forms of FSEEK and FTELL as intrinsic
procedures. Accept common aliases from legacy compilers as well.
    
A separate patch to llvm-test-suite will enable tests for these
procedures once this patch has merged.
    
Depends on https://github.com/llvm/llvm-project/pull/132423; CI builds
will likely fail until that patch is merged and this PR is rebased.


  Commit: 3674a5f18e8d34cc597e0bd81f38fab3731139f5
      https://github.com/llvm/llvm-project/commit/3674a5f18e8d34cc597e0bd81f38fab3731139f5
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Semantics/resolve18.f90

  Log Message:
  -----------
  [flang] Permit unused USE association of subprogram name (#134009)

A function or subroutine can allow an object of the same name to appear
in its scope, so long as the name is not used. This is similar to the
case of a name being imported from multiple distinct modules, and
implemented by the same representation.

It's not clear whether this is conforming behavior or a common
extension.


  Commit: 262b3f7615b9a4dd660eb39afade73c24777e66a
      https://github.com/llvm/llvm-project/commit/262b3f7615b9a4dd660eb39afade73c24777e66a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang-rt/lib/runtime/descriptor.cpp
    M flang/include/flang/Common/Fortran-consts.h
    M flang/include/flang/Common/real.h
    A flang/include/flang/Common/type-kinds.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Evaluate/type.h
    M flang/lib/Evaluate/target.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/type.cpp

  Log Message:
  -----------
  [flang] Remove runtime dependence on C++ support for types (#134164)

Fortran::runtime::Descriptor::BytesFor() only works for Fortran
intrinsic types for which a C++ type counterpart exists, so it crashes
on some types that are legitimate Fortran types like REAL(2). Move some
logic from Evaluate into a new header in flang/Common, then use it to
avoid this needless dependence on C++.


  Commit: ade9d1f8101256398a2b664eba5aac18c6a3bfce
      https://github.com/llvm/llvm-project/commit/ade9d1f8101256398a2b664eba5aac18c6a3bfce
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang-rt/lib/runtime/descriptor-io.h

  Log Message:
  -----------
  [flang][runtime] Remove bad runtime assertion (#134176)

The RUNTIME_CHECK in question doesn't allow for the possibility that an
allocatable or pointer component could be processed by defined I/O.
Remove it in favor of a dynamic allocation check.


  Commit: efd7caac2e60209fd9358a24f038c91afe6a4a0a
      https://github.com/llvm/llvm-project/commit/efd7caac2e60209fd9358a24f038c91afe6a4a0a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/include/flang/Evaluate/characteristics.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/test/Evaluate/errors01.f90

  Log Message:
  -----------
  [flang] IEEE_SUPPORT_FLAG(..., LOCAL) in specification expression (#134270)

The optional second argument to IEEE_SUPPORT_FLAG (and related functions
from the intrinsic IEEE_ARITHMETIC module) is needed only for its type,
not its value. Restrictions on local objects as arguments to function
references in specification expressions shouldn't apply to it.

Define a new attribute for dummy data object characteristics to
distinguish such arguments, set it for the appropriate intrinsic
function references, and test it during specification expression
validation.


  Commit: 507ce46b6fb0271c82df1352e82d592c0cbf9aaf
      https://github.com/llvm/llvm-project/commit/507ce46b6fb0271c82df1352e82d592c0cbf9aaf
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Parser/prescan.cpp
    M flang/test/Preprocessing/directive-contin-with-pp.F90

  Log Message:
  -----------
  [flang][preprocessor] Directive continuation must skip empty macros (#134149)

When a compiler directive continuation line starts with keyword macro
names that have empty expansions, skip them.


  Commit: 1bef59c9db07840609c919fa95127decbfc3f55d
      https://github.com/llvm/llvm-project/commit/1bef59c9db07840609c919fa95127decbfc3f55d
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Parser/prescan.cpp
    A flang/test/Preprocessing/pp047.F
    A flang/test/Preprocessing/pp135.F90

  Log Message:
  -----------
  [flang][preprocessor] Further macro replacement of continued identifiers (#134302)

The preprocessor can perform macro replacement within identifiers when
they are split up with Fortran line continuation, but is failing to do
macro replacement on a continued identifier when none of its parts are
replaced.


  Commit: 4090910a695efcba4b484e9f8ad2b564e9a4e7ed
      https://github.com/llvm/llvm-project/commit/4090910a695efcba4b484e9f8ad2b564e9a4e7ed
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libcxx/include/__configuration/platform.h
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/locale_base_api.h
    M libcxx/include/fstream
    M libcxx/include/regex
    M libcxx/include/strstream
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
    M libcxx/test/libcxx/system_reserved_names.gen.py

  Log Message:
  -----------
  [libc++] Guard additional headers with _LIBCPP_HAS_LOCALIZATION (#131921)

There were some remaining headers that were not guarded with
_LIBCPP_HAS_LOCALIZATION, leading to errors when trying to use modules
on platforms that don't support localization (since all the headers get
pulled in when building the 'std' module). This patch brings these
headers in line with what we do for every other header that depends on
localization.

This patch also requires including <picolibc.h> from
<__configuration/platform.h> in order to define _NEWLIB_VERSION. In the
long term, we should use a better approach for doing that, such as
defining a macro in the __config_site header.


  Commit: 07161a3fb16f07f4001de43e17d0cd487841ef98
      https://github.com/llvm/llvm-project/commit/07161a3fb16f07f4001de43e17d0cd487841ef98
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv32zcmp-invalid.s

  Log Message:
  -----------
  [RISCV] Return NoMatch if register list does not start with a curly brace.

This way we emit the error message that explains the full syntax
for a register list.

parseZcmpStackAdj had to be modified to not assume the previous
operand had been successfully parsed as a register list.


  Commit: 0d3f5ec0da064d2314098644e78d29d3c84e179c
      https://github.com/llvm/llvm-project/commit/0d3f5ec0da064d2314098644e78d29d3c84e179c
  Author: Evan Wilde <ewilde at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt][CMake] Pass all flags to _Float16 try-compile (#133952)

The try-compile mechanism requires that `CMAKE_REQUIRED_FLAGS` is a
space-separated string instead of a list of flags. The original code
expanded `BUILTIN_FLAGS` into `CMAKE_REQUIRED_FLAGS` as a
space-separated string and then would overwrite `CMAKE_REQUIRED_FLAGS`
with `TARGET_${arch}_CFLAGS` prepended to the unexpanded
`BUILTIN_CFLAGS_${arch}`. This resulted in the first two arguments being
passed into the try-compile invocation, but dropping the other arguments
listed in `BUILTIN_CFLAGS_${arch}`.

This patch appends `TARGET_${arch}_CFLAGS` and `BUILTIN_CFLAGS_${arch}` to
`CMAKE_REQUIRED_FLAGS` before expanding CMAKE_REQUIRED_FLAGS as a
space-separated string. This passes any pre-set required flags, in addition to
all of the builtin and target flags to the Float16 detection.


  Commit: e8d50097849081168f0285418ce8a36733eb7154
      https://github.com/llvm/llvm-project/commit/e8d50097849081168f0285418ce8a36733eb7154
  Author: Kevin Gleason <gleasonk at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/test/IR/parser.mlir

  Log Message:
  -----------
  [mlir] Fix parsing of empty complex tensors (#134322)

After https://github.com/llvm/llvm-project/pull/133220 we had some empty
complex literals (`tensor<0xcomplex<f32>>`) failing to parse.

This was largely due to the ambiguity between `shape.empty()` meaning
splat (`dense<1>`) or empty literal (`dense<>`). Used type's numel to
disambiguate during verification.


  Commit: 3d24046b3306cbc682aa1f17426169a942d8931a
      https://github.com/llvm/llvm-project/commit/3d24046b3306cbc682aa1f17426169a942d8931a
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Core/Relocation.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinarySection.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/CMakeLists.txt

  Log Message:
  -----------
  [BOLT] Skip out-of-range pending relocations (#116964)

When a pending relocation is created it is also marked whether it is
optional or not. It can be optional when such relocation is added as
part of an optimization (i.e., `scanExternalRefs`).

When bolt tries to `flushPendingRelocations`, it safely skips any
optional relocations that cannot be encoded due to being out of
range. A pre-requisite to that is the usage of the `-force-patch`
flag. Alternatrively, BOLT will bail out with a relevant message.

Background:
BOLT, as part of scanExternalRefs, identifies external references from
calls and creates some pending relocations for them. Those when
flushed will update references to point to the optimized functions.
This optimization can be disabled using `--no-scan`.

BOLT can assert if any of these pending relocations cannot be encoded.

This patch does not disable this optimization but instead selectively
applies it given that a pending relocation is optional and `-force-patch`
was enabled.


  Commit: 5acab1bd15004e0ab7af60d2c4919c189bd38520
      https://github.com/llvm/llvm-project/commit/5acab1bd15004e0ab7af60d2c4919c189bd38520
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp

  Log Message:
  -----------
  [mlir][SPIRV] `IfOpConversion`: Compute result types earlier (#134380)

Compute the result types and bail out before modifying any IR. That is
more efficient when type conversion failed, because no modifications
must be rolled back.

Note: This is in preparation of the One-Shot Dialect Conversion
refactoring.


  Commit: f9193f3b18f08547e2f92b5e354a44655bfc1b94
      https://github.com/llvm/llvm-project/commit/f9193f3b18f08547e2f92b5e354a44655bfc1b94
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/lib/IR/DebugInfoMetadata.cpp
    A llvm/test/DebugInfo/pick-merged-source-locations.ll

  Log Message:
  -----------
  [DebugInfo] Preserve line and column number when merging debug info. (#129960)

This patch introduces a new option `-preserve-merged-debug-info` to
preserve an arbitrary but deterministic version of debug information
when DILocations are merged. This is intended to be used in production
environments from which sample based profiles are derived such as
AutoFDO and MemProf.

With this patch we have see a 0.2% improvement on an internal workload
at Google when generating AutoFDO profiles. It also significantly
improves the ability for MemProf by preserving debug info for merged
call instructions used in the contextual profile.

---------

Co-authored-by: Krzysztof Pszeniczny <kpszeniczny at google.com>


  Commit: 70a1445e401f6d7b531933ab157fba98ec84f69f
      https://github.com/llvm/llvm-project/commit/70a1445e401f6d7b531933ab157fba98ec84f69f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td

  Log Message:
  -----------
  [RISCV] Prefer RegList over Rlist in assembler. NFC

This makes it more obvious what the R means. I've kept rlist in
place that refer to the encoding.


  Commit: 5942f0269e62021620e871bfe2e671f4f0f2d932
      https://github.com/llvm/llvm-project/commit/5942f0269e62021620e871bfe2e671f4f0f2d932
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Parser/parsing.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/token-sequence.cpp
    M flang/test/Parser/OpenMP/compiler-directive-continuation.f90
    M flang/test/Parser/OpenMP/sentinels.f
    M flang/test/Parser/continuation-in-conditional-compilation.f
    M flang/test/Preprocessing/bug126459.F90
    M flang/test/Preprocessing/line-in-contin.F90
    M flang/test/Preprocessing/pp132.f90
    M flang/test/Preprocessing/preprocessed-dirs.F90

  Log Message:
  -----------
  [flang] Preserve compiler directives in -E output (#133959)

No longer require -fopenmp or -fopenacc with -E, unless specific version
number options are also required for predefined macros. This means that
most source can be preprocessed with -E and then later compiled with
-fopenmp, -fopenacc, or neither.

This means that OpenMP conditional compilation lines (!$) are also
passed through to -E output. The tricky part of this patch was dealing
with the fact that those conditional lines can also contain regular
Fortran line continuation, and that now has to be deferred when !$ lines
are interspersed.


  Commit: 232525f06942adb3b9977632e38dcd5f08c0642d
      https://github.com/llvm/llvm-project/commit/232525f06942adb3b9977632e38dcd5f08c0642d
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/macosx/thread_start_bps/TestBreakpointsThreadInit.py

  Log Message:
  -----------
  [lldb] Clear thread-creation breakpoints in ProcessGDBRemote::Clear (#134397)

Currently, these breakpoints are being accumulated every time a new
process if created (e.g. through a `run`). Depending on the
circumstances, the old breakpoints are even left enabled, interfering
with subsequent processes. This is addressed by removing the breakpoints
in ProcessGDBRemote::Clear

Note that these breakpoints are more of a PlatformDarwin thing, so in
the future we should look into moving them there.


  Commit: 90cf2e31abdee050b5811155c86605935046b07e
      https://github.com/llvm/llvm-project/commit/90cf2e31abdee050b5811155c86605935046b07e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/entries-shuffled-diff-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-nodes-with-non-gep-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sin-sqrt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2_unord_geps.ll

  Log Message:
  -----------
  Revert "[SLP]Initial support for (masked)loads + compress and (masked)interleaved"

This reverts commit daab7d08078bb7cd37c66b78a56f4773e6b12fba to fix
a crash reported in https://github.com/llvm/llvm-project/issues/134411.


  Commit: 1688c3062a56b4fca1f8ad28f2865df0ed8ca940
      https://github.com/llvm/llvm-project/commit/1688c3062a56b4fca1f8ad28f2865df0ed8ca940
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/unittests/Analysis/MacroExpansionContextTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/Lex/LexerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/unittests/Lex/PPCallbacksTest.cpp
    M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
    M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
    M clang/unittests/Lex/PPMemoryAllocationsTest.cpp

  Log Message:
  -----------
  [clang] Do not share ownership of `PreprocessorOptions` (#133467)

This PR makes it so that `CompilerInvocation` is the sole owner of the
`PreprocessorOptions` instance.


  Commit: ea0869ccb9a80e235f6f47eaa47fb1d5888d660a
      https://github.com/llvm/llvm-project/commit/ea0869ccb9a80e235f6f47eaa47fb1d5888d660a
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp

  Log Message:
  -----------
  [clang][parse] Fix build of ParseHLSLRootSignatureTest.cpp

Fallout from PR #133467.


  Commit: cde90e68f8123e7abef3f9e18d79980aa19f460a
      https://github.com/llvm/llvm-project/commit/cde90e68f8123e7abef3f9e18d79980aa19f460a
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/Lex/Lexer.cpp
    A clang/test/ClangScanDeps/modules-relocated-mm-macro.c

  Log Message:
  -----------
  [clang][deps] Respect `Lexer::cutOffLexing()` (#134404)

This is crucial when recovering from fatal loader errors. Without it,
the `Lexer` keeps yielding more tokens and the compiler may access
invalid `ASTReader` state.

rdar://133388373


  Commit: 6ee5e694bffd97e69fe5459fc8f94b79b91c88fb
      https://github.com/llvm/llvm-project/commit/6ee5e694bffd97e69fe5459fc8f94b79b91c88fb
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn

  Log Message:
  -----------
  [gn] port 10c6ebc4271 (-gen-clang-diags-compat-ids)


  Commit: 8f6551935a3896dfab0cc50a085e560d118d4eb3
      https://github.com/llvm/llvm-project/commit/8f6551935a3896dfab0cc50a085e560d118d4eb3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/support/BUILD.gn

  Log Message:
  -----------
  [gn] Add a missing dependency

Needed after 6ee5e694bff


  Commit: d9bf39085213013fe8a6e3199c0eddfb040d8ad3
      https://github.com/llvm/llvm-project/commit/d9bf39085213013fe8a6e3199c0eddfb040d8ad3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/tools/clang-sycl-linker/BUILD.gn

  Log Message:
  -----------
  [gn] port 4a4d41e723a

...and add missing TargetsToBuild dep.


  Commit: b6b025797245a5e5416b522df041252e3c4ff868
      https://github.com/llvm/llvm-project/commit/b6b025797245a5e5416b522df041252e3c4ff868
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    A clang/test/Sema/clear_cache.c

  Log Message:
  -----------
  Fix the signature for __builtin___clear_cache (#134376)

The signature was changed from void(char *, char *) to void(void *, void
*) to match GCC's signature for the same builtin.

Fixes #47833


  Commit: 30f2e92c6968a1348a76e7ba169259bb345b784c
      https://github.com/llvm/llvm-project/commit/30f2e92c6968a1348a76e7ba169259bb345b784c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/bounds-checking-debuginfo.c
    M clang/test/CodeGen/cfi-check-fail.c
    M clang/test/CodeGen/cfi-check-fail2.c
    M clang/test/CodeGen/ubsan-trap-merge.c

  Log Message:
  -----------
  [clang] [sanitizer] predict trap checks succeed (#134310)

Trap checks fail at most once (when the program crashes).


  Commit: d62d15e298ce323cb933f4949b42fe46dcb01b77
      https://github.com/llvm/llvm-project/commit/d62d15e298ce323cb933f4949b42fe46dcb01b77
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/zext-icmp.ll

  Log Message:
  -----------
  [RISCV] Undo unprofitable zext of icmp combine (#134306)

InstCombine will combine this zext of an icmp where the source has a
single bit set to a lshr plus trunc
(`InstCombinerImpl::transformZExtICmp`):

```llvm
define <vscale x 1 x i8> @f(<vscale x 1 x i64> %x) {
  %1 = and <vscale x 1 x i64> %x, splat (i64 8)
  %2 = icmp ne <vscale x 1 x i64> %1, splat (i64 0)
  %3 = zext <vscale x 1 x i1> %2 to <vscale x 1 x i8>
  ret <vscale x 1 x i8> %3
}
```

```llvm
define <vscale x 1 x i8> @reverse_zexticmp_i64(<vscale x 1 x i64> %x) {
  %1 = trunc <vscale x 1 x i64> %x to <vscale x 1 x i8>
  %2 = lshr <vscale x 1 x i8> %1, splat (i8 2)
  %3 = and <vscale x 1 x i8> %2, splat (i8 1)
  ret <vscale x 1 x i8> %3
}
```

In a loop, this ends up being unprofitable for RISC-V because the
codegen now goes from:

```asm
f:                                      # @f
	.cfi_startproc
# %bb.0:
	vsetvli	a0, zero, e64, m1, ta, ma
	vand.vi	v8, v8, 8
	vmsne.vi	v0, v8, 0
	vsetvli	zero, zero, e8, mf8, ta, ma
	vmv.v.i	v8, 0
	vmerge.vim	v8, v8, 1, v0
	ret
```

To a series of narrowing vnsrl.wis:

```asm
f:                                      # @f
	.cfi_startproc
# %bb.0:
	vsetvli	a0, zero, e64, m1, ta, ma
	vand.vi	v8, v8, 8
	vsetvli	zero, zero, e32, mf2, ta, ma
	vnsrl.wi	v8, v8, 3
	vsetvli	zero, zero, e16, mf4, ta, ma
	vnsrl.wi	v8, v8, 0
	vsetvli	zero, zero, e8, mf8, ta, ma
	vnsrl.wi	v8, v8, 0
	ret
```

In the original form, the vmv.v.i is loop invariant and is hoisted out,
and the vmerge.vim usually gets folded away into a masked instruction,
so you usually just end up with a vsetvli + vmsne.vi.

The truncate requires multiple instructions and introduces a vtype
toggle for each one, and is measurably slower on the BPI-F3.

This reverses the transform in RISCVISelLowering for truncations greater
than twice the bitwidth, i.e. it keeps single vnsrl.wis.

Fixes #132245


  Commit: cd2f85a24b55336c96de56276b54d1196fd55fd1
      https://github.com/llvm/llvm-project/commit/cd2f85a24b55336c96de56276b54d1196fd55fd1
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [mlir][NVVM] Add ops for vote all and any sync (#134309)

Add operations for `nvvm.vote.all.sync` and `nvvm.vote.any.sync`
intrinsics similar to `nvvm.vote.ballot.sync`.


  Commit: 19aec007351394b552855120e6840537d8780e9d
      https://github.com/llvm/llvm-project/commit/19aec007351394b552855120e6840537d8780e9d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/entries-shuffled-diff-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-nodes-with-non-gep-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reordered-masked-loads.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sin-sqrt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2_unord_geps.ll

  Log Message:
  -----------
  [SLP]Initial support for (masked)loads + compress and (masked)interleaved

Added initial support for (masked)loads + compress and
(masked)interleaved loads.

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


  Commit: bf1d27889b5831ed3e072a9223bdac098bf71af3
      https://github.com/llvm/llvm-project/commit/bf1d27889b5831ed3e072a9223bdac098bf71af3
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm

  Log Message:
  -----------
  [WebKit checkers] Treat Objective-C message send return value as safe (#133605)

Objective-C selectors are supposed to return autoreleased object. Treat
these return values as safe.


  Commit: 1d88cfcbb881a921f2d7676e108fe420d9f23ad9
      https://github.com/llvm/llvm-project/commit/1d88cfcbb881a921f2d7676e108fe420d9f23ad9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/ValueObject/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 46e2c07fa28b


  Commit: 22921540cd3d46d75f746386cd6ce2cb1217bf95
      https://github.com/llvm/llvm-project/commit/22921540cd3d46d75f746386cd6ce2cb1217bf95
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/JITLink/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7d3dfc862d28


  Commit: e2092a430aadd731c44003d334dd292263336e81
      https://github.com/llvm/llvm-project/commit/e2092a430aadd731c44003d334dd292263336e81
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port da69eb75cbc6


  Commit: e4cbb7780bdef33bdedb1d66488586e07d3764a8
      https://github.com/llvm/llvm-project/commit/e4cbb7780bdef33bdedb1d66488586e07d3764a8
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
    M bolt/test/AArch64/tls.c

  Log Message:
  -----------
  [BOLT][AArch64] Fix symbolization of unoptimized TLS access (#134332)

TLS relocations may not have a valid BOLT symbol associated with them.
While symbolizing the operand, we were checking for the symbol value,
and since there was no symbol the check resulted in a crash.

Handle TLS case while performing operand symbolization on AArch64.


  Commit: 50f0b30cffa72129a3179bd9ac83692114f6b19f
      https://github.com/llvm/llvm-project/commit/50f0b30cffa72129a3179bd9ac83692114f6b19f
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/Parse/ParseStmt.cpp
    M clang/test/C/C11/n1330.c
    M clang/test/Sema/for.c
    A clang/test/SemaCXX/for-static-assert.cpp

  Log Message:
  -----------
  [Clang] [Sema] Allow static assertions in the first part of a `for` loop in C (#134415)

No release note for this one because the one added by #129737 already
mentions ‘non-variable declarations’.

Fixes #56471.


  Commit: a97f73405f8e074263a0ed2dd2b8c87c014f46d9
      https://github.com/llvm/llvm-project/commit/a97f73405f8e074263a0ed2dd2b8c87c014f46d9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libcxx/include/__configuration/availability.h

  Log Message:
  -----------
  [libc++] Fix deployment targets that were incorrectly bumped (#134278)

When I introduced the various `_LIBCPP_INTRODUCED_IN_LLVM_XY_ATTRIBUTE`
macros in 182f5e9b2f03, I tried to correlate them to the right OS
versions, but it seems that I made a few mistakes. This wasn't caught in
the CI because we don't test back-deployment that far.

rdar://148405946


  Commit: a2d983cffba87f9f35ededf7a2d6515d3698216e
      https://github.com/llvm/llvm-project/commit/a2d983cffba87f9f35ededf7a2d6515d3698216e
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Sema/attr-callback-broken.c

  Log Message:
  -----------
  Improve diagnostic wording for invalid callback attribute uses (#134423)

We were previously telling the user how many arguments were passed to
the attribute rather than saying how many arguments were expected to be
passed to the callback function. This rewords the diagnostic to
hopefully be a bit more clear.

Fixes #47451


  Commit: d8fd665960634bd27bf72f06925314312087a3fe
      https://github.com/llvm/llvm-project/commit/d8fd665960634bd27bf72f06925314312087a3fe
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
    M clang/test/Analysis/Checkers/WebKit/mock-system-header.h

  Log Message:
  -----------
  [alpha.webkit.ForwardDeclChecker] Ignore forward declared struct. (#133804)

There are some system libraries such as sqlite3 which forward declare a
struct then use a pointer to that forward declared type in various APIs.
Ignore these types ForwardDeclChecker like other pointer types.


  Commit: c22586a9d18dd0f066e5660102f7de15fd239e2c
      https://github.com/llvm/llvm-project/commit/c22586a9d18dd0f066e5660102f7de15fd239e2c
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/lib/Headers/altivec.h
    M clang/test/Headers/altivec-header.c

  Log Message:
  -----------
  [PowerPC] Update altivec.h to use __inline__ for c89 compatibility (#134430)


  Commit: ebb0e6cb2555186fa0417ecb54925aa659346771
      https://github.com/llvm/llvm-project/commit/ebb0e6cb2555186fa0417ecb54925aa659346771
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp

  Log Message:
  -----------
  [NFC] Remove dead code detected by code sanitizer. (#134385)

The code sanitizer is failing with this error: `Execution cannot reach
this statement.`
The execution code path would early exit at line 928 if `(Lil && Ril) =
true`.


  Commit: 6263de90df7f58c8b98475024d5eef102e10a372
      https://github.com/llvm/llvm-project/commit/6263de90df7f58c8b98475024d5eef102e10a372
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/AST/ast-print-openacc-combined-construct.cpp
    M clang/test/AST/ast-print-openacc-compute-construct.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/AST/ast-print-openacc-declare-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copy-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyin-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyout-clause.c
    M clang/test/SemaOpenACC/combined-construct-create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-copy-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyin-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyout-clause.c
    M clang/test/SemaOpenACC/compute-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-clause.c
    M clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyin-clause.c
    M clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyout-clause.c
    M clang/test/SemaOpenACC/data-construct-create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-create-clause.c
    M clang/test/SemaOpenACC/declare-construct-ast.cpp
    M clang/test/SemaOpenACC/declare-construct.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'modifier-list' sema/AST

OpenACC 3.3-NEXT has changed the way tags for copy, copyin, copyout, and
create clauses are specified, and end up adding a few extras, and
permits them as a list.  This patch encodes these as bitmask enum so
they can be stored succinctly, but still diagnose reasonably.


  Commit: 9069ba183d0ad56a1e7b9710d9198686bc9b888b
      https://github.com/llvm/llvm-project/commit/9069ba183d0ad56a1e7b9710d9198686bc9b888b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td

  Log Message:
  -----------
  [RISCV] Rename Spimm to StackAdj in most places. NFC

Spimm in the spec refers to the 2-bit encoded value. All of the code
uses the 0, 16, 32, or 48 adjustment value.

Also remove the decodeZcmpSpimm as its identical to the default
behavior for no custom DecoderMethod.


  Commit: 03604a784011bec2292f900b118d825f34f8cf89
      https://github.com/llvm/llvm-project/commit/03604a784011bec2292f900b118d825f34f8cf89
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Utility/LLDBAssert.h
    M lldb/source/Utility/LLDBAssert.cpp

  Log Message:
  -----------
  [lldb] Make lldbassert fire only once per instance (#134343)

The `lldbassert` macro in LLDB behaves like a regular `assert` when
assertions are enabled, and otherwise prints a pretty backtrace and
prompts the user to file a bug. By default, this is emitted as a
diagnostic event, but vendors can provide their own behavior, for
example pre-populating a bug report.

Recently, we ran into an issue where an `lldbassert` (in the Swift
language plugin) would fire excessively, to the point that it was
interfering with the usability of the debugger.

Once an `lldbasser` has fired, there's no point in bothering the user
over and over again for the same problem. This PR solves the problem by
introducing a static `std::once_flag` in the macro. This way, every
`lldbasser` will fire at most once per lldb instance.

rdar://148520448


  Commit: 4c182df633bcd7fd7f0634b2cf6bcab91c3674ec
      https://github.com/llvm/llvm-project/commit/4c182df633bcd7fd7f0634b2cf6bcab91c3674ec
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/test/src/sys/time/CMakeLists.txt
    M libc/test/src/sys/time/utimes_test.cpp

  Log Message:
  -----------
  [libc] Fix suseconds_t definition and utimes_test (#134326)

The main issue was that the kernel expected `suseconds_t` to be 64 bits
but ours was 32. This caused inconsistent failures since all valid
`suseconds_t` values are less than 1000000 (1 million), and some
configurations caused `struct timeval` to be padded to 128 bits.

Also: forgot to use TEST_FILE instead of FILE_PATH in some places.


  Commit: b518242156f7c432249b1ca203a915b4f9906959
      https://github.com/llvm/llvm-project/commit/b518242156f7c432249b1ca203a915b4f9906959
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/lib/Target/PowerPC/PPCInstrMMA.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-acc-spill.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/v1024ls.ll
    M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
    M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
    M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s

  Log Message:
  -----------
  [PowerPC] Fix instruction name for dmr insert (#134301)


  Commit: 3a859b11e3ca758043b88693fdf990d361a02ef1
      https://github.com/llvm/llvm-project/commit/3a859b11e3ca758043b88693fdf990d361a02ef1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    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/debugloc.ll

  Log Message:
  -----------
  [VPlan] Set and use debug location for VPScalarIVStepsRecipe.

This adds missing debug location for VPscalarIVStepsRecipe. The location
of the corresponding phi is used.


  Commit: 61af05fe82c6989351c08de8d9eac4dc51f4ef79
      https://github.com/llvm/llvm-project/commit/61af05fe82c6989351c08de8d9eac4dc51f4ef79
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/environment.h
    M flang-rt/lib/runtime/command.cpp
    M flang-rt/lib/runtime/environment.cpp
    M flang/docs/Intrinsics.md
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Command.h
    M flang/include/flang/Runtime/command.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Command.cpp
    A flang/test/Lower/Intrinsics/putenv-func.f90
    A flang/test/Lower/Intrinsics/putenv-sub.f90
    A flang/test/Semantics/putenv.f90

  Log Message:
  -----------
  [flang] Add runtime and lowering implementation for extended intrinsic PUTENV (#134412)

Implement extended intrinsic PUTENV, both function and subroutine forms.
Add PUTENV documentation to flang/docs/Intrinsics.md. Add functional and
semantic unit tests.


  Commit: d341b632a1a07362dfb51f916baeedcbc8945e0f
      https://github.com/llvm/llvm-project/commit/d341b632a1a07362dfb51f916baeedcbc8945e0f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp

  Log Message:
  -----------
  [RISCV] Remove unused function declaration. NFC


  Commit: 12cf6d3b9e0b4983d609576b15dc37ceb7d1d8d7
      https://github.com/llvm/llvm-project/commit/12cf6d3b9e0b4983d609576b15dc37ceb7d1d8d7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [lldb] Fix missing semicolon in lldbassert macro


  Commit: bbaf0877fa61ea5cadc6ded794c3184081790c66
      https://github.com/llvm/llvm-project/commit/bbaf0877fa61ea5cadc6ded794c3184081790c66
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp

  Log Message:
  -----------
  [RISCV] Assert on all invalid inputs to getStackAdjBase and printRegList. NFC


  Commit: 428fc2c8875eca42b4803fe100791270ec971e4d
      https://github.com/llvm/llvm-project/commit/428fc2c8875eca42b4803fe100791270ec971e4d
  Author: Finn Plummer <canadienfinn at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/Lex/LexHLSLRootSignature.h
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp

  Log Message:
  -----------
  [NFC][HLSL][RootSignature] Make the Lexer adhere to naming conventions (#134136)

- when developing the RootSignatureLexer library, we are creating new
files so we should set the standard to adhere to the coding conventions
for function naming
- this was missed in the initial review but caught in the review of the
parser pr
[here](https://github.com/llvm/llvm-project/pull/133302#discussion_r2017632092)

Co-authored-by: Finn Plummer <finnplummer at microsoft.com>


  Commit: 24dfcc0c024f9ab8ba61c0994513f57e882961fc
      https://github.com/llvm/llvm-project/commit/24dfcc0c024f9ab8ba61c0994513f57e882961fc
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Use the nvvm.vote.sync op for all and any (#134433)

NVVM operations are now available for all and any as well. Use the op
and clean up the generation function to handle all the 3 vote sync
kinds.


  Commit: 19e0233eb844e653a3108de411366bd0165cf3ec
      https://github.com/llvm/llvm-project/commit/19e0233eb844e653a3108de411366bd0165cf3ec
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp

  Log Message:
  -----------
  [RISCV] Make decodeXqccmpRlistS0 defer to decodeZcmpRlist after checking for S0 being included. NFC

This reduces code duplication.


  Commit: 18ff8df9583743f4e4ac2a74e55a28e35df958fb
      https://github.com/llvm/llvm-project/commit/18ff8df9583743f4e4ac2a74e55a28e35df958fb
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
    M flang/test/Fir/CUDA/cuda-constructor-2.f90

  Log Message:
  -----------
  [flang][cuda] Register managed variables with double descriptor (#134444)

Allocatable or pointer module variables with the CUDA managed attribute
are defined with a double descriptor. One on the host and one on the
device. Only the data pointed to by the descriptor will be allocated in
managed memory.
Allow the registration of any allocatable or pointer module variables
like device or constant.


  Commit: 412f7fa31607489dc400321968a70e114463b374
      https://github.com/llvm/llvm-project/commit/412f7fa31607489dc400321968a70e114463b374
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h

  Log Message:
  -----------
  [clang] Bump DIAG_SIZE_PARSE as we're hitting the limit downstream as of 6263de90df7f58c8b98475024d5eef102e10a372.


  Commit: ad39049ec48edcb2ad4024c80f1cadfc9f0e4cb0
      https://github.com/llvm/llvm-project/commit/ad39049ec48edcb2ad4024c80f1cadfc9f0e4cb0
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/rotate-add.ll
    M llvm/test/CodeGen/ARM/rotate-add.ll
    M llvm/test/CodeGen/NVPTX/rotate-add.ll
    M llvm/test/CodeGen/X86/rotate-add.ll

  Log Message:
  -----------
  [DAGCombiner] Attempt to fold 'add' nodes to funnel-shift or rotate (#125612)

Almost all of the rotate idioms that are valid for an 'or' are also
valid when the halves are combined with an 'add'. Further, many of these
cases are not handled by common bits tracking meaning that the 'add' is
not converted to a 'disjoint or'.


  Commit: 64b060f129fc580cb3a9dce8b4456d496e6cdcd6
      https://github.com/llvm/llvm-project/commit/64b060f129fc580cb3a9dce8b4456d496e6cdcd6
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M mlir/docs/Dialects/TOSA.md
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp

  Log Message:
  -----------
  [mlir][tosa] Update URLs to TOSA specification (#134449)

- The existing URLs are no longer valid, updated to the current one

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: e3369a8dc9130ef261a092d866e8ba4f8242aa26
      https://github.com/llvm/llvm-project/commit/e3369a8dc9130ef261a092d866e8ba4f8242aa26
  Author: Ashley Coleman <ascoleman at microsoft.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Target/DirectX/UniqueResourceFromUseTests.cpp

  Log Message:
  -----------
  [NFC][HLSL] Rename ResourceBinding Types (#134165)

Non-functional change as first step in
https://github.com/llvm/wg-hlsl/pull/207

Removes `Binding` from "Resource Instance" types


  Commit: bdff739c7e79933aa7b3233da1bdadceeb7e03e6
      https://github.com/llvm/llvm-project/commit/bdff739c7e79933aa7b3233da1bdadceeb7e03e6
  Author: Austin Schuh <AustinSchuh at users.noreply.github.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    A clang/test/CodeGen/include/cuda.h
    M clang/test/CodeGen/nvptx-surface.cu
    M clang/test/Headers/Inputs/include/cuda.h

  Log Message:
  -----------
  cuda clang: Clean up test dependency for CUDA surfaces (#134459)

https://github.com/llvm/llvm-project/pull/132883 added support for cuda
surfaces but reached into clang/test/Headers/ from clang/test/CodeGen/
to grab the minimal cuda.h. Duplicate that file instead based on
comments in the review, to fix remote test runs.

Signed-off-by: Austin Schuh <austin.linux at gmail.com>


  Commit: b0d0636026cdd2d1088d60c169a7a3a3371c0e66
      https://github.com/llvm/llvm-project/commit/b0d0636026cdd2d1088d60c169a7a3a3371c0e66
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/test/CIR/CodeGen/loop.cpp

  Log Message:
  -----------
  [CIR] Upstream support for break and continue statements (#134181)

This adds ClangIR support for break and continue statements in loops.

Because only loops are currently implemented upstream in CIR, only
breaks in loops are supported here, but this same code will work (with
minor changes to the verification and cfg flattening) when switch
statements are upstreamed.


  Commit: 6f34d03b3132a8286630f8496aa7dce9605e677b
      https://github.com/llvm/llvm-project/commit/6f34d03b3132a8286630f8496aa7dce9605e677b
  Author: Un1q32 <joey.t.reinhart at gmail.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/test/CodeGen/ARM/2010-11-29-PrologueBug.ll
    M llvm/test/CodeGen/ARM/ldm.ll
    M llvm/test/CodeGen/ARM/zextload_demandedbits.ll

  Log Message:
  -----------
  Remove iOS 5 check for tailcalls on ARM (#133354)

Fixes #102053

The check was added in 8decdc472f308b13d7fb7fd50c3919db086c0417, and at
the time iOS 5 was the latest iOS version, before that commit tail calls
were disabled for all ARMv7 targets. Testing a build of wasm3 with the
patch on a device running iOS 3.0 shows a noticeable performance
improvement and no issues.


  Commit: 5271dead61dca30f4a6db0f0df8da00f8987449e
      https://github.com/llvm/llvm-project/commit/5271dead61dca30f4a6db0f0df8da00f8987449e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp

  Log Message:
  -----------
  [lldb] Add a {ObjectFile,SymbolFile}::GetObjectName method (#133370)

Add ObjectFile::GetObjectName and SymbolFile::GetObjectName to retrieve
the name of the object file, including the `.a` for static libraries.

We currently do something similar in CommandObjectTarget, but the code
for dumping this is a lot more involved than what's being offered by the
new method. We have options to print he full path, the base name, and
the directoy of the path and trim it to a specific width. 

This is motivated by #133211, where Greg pointed out that the old code
would print the static archive (the .a file) rather than the actual
object file inside of it.


  Commit: 74a78028932f5e26c93dc6fd7efab65b97e6824c
      https://github.com/llvm/llvm-project/commit/74a78028932f5e26c93dc6fd7efab65b97e6824c
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lld/MachO/OutputSegment.cpp
    M lld/test/MachO/arm64-objc-stubs.s

  Log Message:
  -----------
  [lld-macho] Fix code section ordering in output binary (#134010)

In `OutputSegment.cpp`, we need to ensure a specific order for certain
sections. The current sorting logic incorrectly prioritizes code
sections over explicitly defined section orders. This is problematic
because the `__objc_stubs` section is both a code section *and* has a
specific ordering requirement. The current logic would incorrectly
prioritize its code section status, causing it to be sorted *before* the
`__stubs` section. This incorrect ordering breaks the branch extension
algorithm, ultimately leading to linker failures due to relocation
errors.

We also modify the `lld/test/MachO/arm64-objc-stubs.s` test to ensure
correct section ordering.


  Commit: 7001993880066a40783b960aa3f236a57d09e061
      https://github.com/llvm/llvm-project/commit/7001993880066a40783b960aa3f236a57d09e061
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M flang/include/flang/Common/enum-class.h

  Log Message:
  -----------
  [flang] Temporary include variant.h in enum-class.h. (#134460)

I am having problems building Fortran runtime for CUDA
after #134164. I need more time to investigate it,
but in the meantime including variant.h (or any header
that eventually includes a libcudacxx header) resolves
the issue.


  Commit: e8b52acca2376aac90ba8e2927e52ddd5253bcbb
      https://github.com/llvm/llvm-project/commit/e8b52acca2376aac90ba8e2927e52ddd5253bcbb
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libc/src/sys/time/linux/utimes.cpp
    M libc/test/src/time/ctime_test.cpp

  Log Message:
  -----------
  [libc][NFC] replace NULL with nullptr (#134464)

Simple cleanup


  Commit: 78905ce6cbd3fa8f8b467e7cad0e9a093c1b1c44
      https://github.com/llvm/llvm-project/commit/78905ce6cbd3fa8f8b467e7cad0e9a093c1b1c44
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/unary.cpp

  Log Message:
  -----------
  [CIR] Upstream support for logical not operations (#133966)

When unary operation support was initially upstreamed, the cir.cast
operation hadn't been upstreamed yet, so logical not wasn't included.
Since casts have now been added, this change adds support for logical
not.


  Commit: 6272e1f37e0710b51d38cb98b905a3f2ffea7966
      https://github.com/llvm/llvm-project/commit/6272e1f37e0710b51d38cb98b905a3f2ffea7966
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h

  Log Message:
  -----------
  [lldb] Make `RegisterContextThreadMemory` thread safe (#134469)

The UpdateRegisterContext method can be called from multiple threads.


  Commit: 1f72fa29ecb4b283f449c8bf931fcaf0fa1069ee
      https://github.com/llvm/llvm-project/commit/1f72fa29ecb4b283f449c8bf931fcaf0fa1069ee
  Author: weiwei chen <weiwei.chen at modular.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/M68k/M68kMCInstLower.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/X86MCInstLowerTest.cpp

  Log Message:
  -----------
  [X86Backend][M68KBackend] Make Ctx in X86MCInstLower (M68KInstLower) the same as AsmPrinter.OutContext  (#133352)

In `X86MCInstLower::LowerMachineOperand`, a new `MCSymbol` can be
created in `GetSymbolFromOperand(MO)` where `MO.getType()` is
`MachineOperand::MO_ExternalSymbol`
```
  case MachineOperand::MO_ExternalSymbol:
    return LowerSymbolOperand(MO, GetSymbolFromOperand(MO));
```
at
https://github.com/llvm/llvm-project/blob/725a7b664b92cd2e884806de5a08900b43d43cce/llvm/lib/Target/X86/X86MCInstLower.cpp#L196

However, this newly created symbol will not be marked properly with its
`IsExternal` field since `Ctx.getOrCreateSymbol(Name)` doesn't know if
the newly created `MCSymbol` is for `MachineOperand::MO_ExternalSymbol`.



Looking at other backends, for example `Arch64MCInstLower` is doing for
handling `MC_ExternalSymbol`


https://github.com/llvm/llvm-project/blob/14c36db16fc090ef494ff6d8207562c414b40e30/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp#L366-L367


https://github.com/llvm/llvm-project/blob/14c36db16fc090ef494ff6d8207562c414b40e30/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp#L145-L148

It creates/gets the MCSymbol from `AsmPrinter.OutContext` instead of
from `Ctx`. Moreover, `Ctx` for `AArch64MCLower` is the same as
`AsmPrinter.OutContext`.
https://github.com/llvm/llvm-project/blob/8e7d6baf0e013408be932758b4a5334c14a34086/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp#L100.
This applies to almost all the other backends except X86 and M68k.

```
$git grep "MCInstLowering("
lib/Target/AArch64/AArch64AsmPrinter.cpp:100:      : AsmPrinter(TM, std::move(Streamer)), MCInstLowering(OutContext, *this),
lib/Target/AMDGPU/AMDGPUMCInstLower.cpp:223:  AMDGPUMCInstLower MCInstLowering(OutContext, STI, *this);
lib/Target/AMDGPU/AMDGPUMCInstLower.cpp:257:  AMDGPUMCInstLower MCInstLowering(OutContext, STI, *this);
lib/Target/AMDGPU/R600MCInstLower.cpp:52:  R600MCInstLower MCInstLowering(OutContext, STI, *this);
lib/Target/ARC/ARCAsmPrinter.cpp:41:        MCInstLowering(&OutContext, *this) {}
lib/Target/AVR/AVRAsmPrinter.cpp:196:  AVRMCInstLower MCInstLowering(OutContext, *this);
lib/Target/BPF/BPFAsmPrinter.cpp:144:    BPFMCInstLower MCInstLowering(OutContext, *this);
lib/Target/CSKY/CSKYAsmPrinter.cpp:41:    : AsmPrinter(TM, std::move(Streamer)), MCInstLowering(OutContext, *this) {}
lib/Target/Lanai/LanaiAsmPrinter.cpp:147:  LanaiMCInstLower MCInstLowering(OutContext, *this);
lib/Target/Lanai/LanaiAsmPrinter.cpp:184:  LanaiMCInstLower MCInstLowering(OutContext, *this);
lib/Target/MSP430/MSP430AsmPrinter.cpp:149:  MSP430MCInstLower MCInstLowering(OutContext, *this);
lib/Target/Mips/MipsAsmPrinter.h:126:      : AsmPrinter(TM, std::move(Streamer)), MCInstLowering(*this) {}
lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp:695:    WebAssemblyMCInstLower MCInstLowering(OutContext, *this);
lib/Target/X86/X86MCInstLower.cpp:2200:  X86MCInstLower MCInstLowering(*MF, *this);
```

This patch makes `X86MCInstLower` and `M68KInstLower` to have their
`Ctx` from `AsmPrinter.OutContext` instead of getting it from
`MF.getContext()` to be consistent with all the other backends.

I think since normal use case (probably anything other than our
un-conventional case) only handles one llvm module all the way through
in the codegen pipeline till the end of code emission (AsmPrint),
`AsmPrinter.OutContext` is the same as MachineFunction's MCContext, so
this change is an NFC.

----

This fixes an error while running the generated code in ORC JIT for our
use case with
[MCLinker](https://youtu.be/yuSBEXkjfEA?si=HjgjkxJ9hLfnSvBj&t=813) (see
more details below):
https://github.com/llvm/llvm-project/pull/133291#issuecomment-2759200983

We (Mojo) are trying to do a MC level linking so that we break llvm
module into multiple submodules to compile and codegen in parallel
(technically into *.o files with symbol linkage type change), but
instead of archive all of them into one `.a` file, we want to fix the
symbol linkage type and still produce one *.o file. The parallel codegen
pipeline generates the codegen data structures in their own `MCContext`
(which is `Ctx` here). So if function `f` and `g` got split into
different submodules, they will have different `Ctx`. And when we try to
create an external symbol with the same name for each of them with
`Ctx.getOrCreate(SymName)`, we will get two different `MCSymbol*`
because `f` and `g`'s `MCContext` are different and they can't see each
other. This is unfortunately not what we want for external symbols.
Using `AsmPrinter.OutContext` helps, since it is shared, if we try to
get or create the `MCSymbol` there, we'll be able to deduplicate.


  Commit: d59594d697c4b1f0f44a4e9ee296543a88575178
      https://github.com/llvm/llvm-project/commit/d59594d697c4b1f0f44a4e9ee296543a88575178
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    A llvm/test/MC/RISCV/xqcibi-long-conditional-jump.s
    M llvm/test/MC/RISCV/xqcibi-relocations.s

  Log Message:
  -----------
  [RISCV] Relax out of range Xqcibi conditional branches (#134336)

If .L1 is not within +-4KiB range,

convert

qc.(e.)bge a0, 10, .L1

to

qc.(e.)blt a0, 10, 8(10)
j   .L1

This is similar to what is done for the RISCV conditional branches.


  Commit: 71884b63a413c7803fce8ec7bf2857938765f4e2
      https://github.com/llvm/llvm-project/commit/71884b63a413c7803fce8ec7bf2857938765f4e2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/test/MC/AArch64/coff-relocations.s
    M llvm/test/MC/AArch64/data-directive-specifier.s

  Log Message:
  -----------
  [AArch64] Transition from MCSymbolRefExpr::VariantKind constants

Shift ELF `@plt` and `@gotpcrel` references in data directives, as well as
Mach-O `@specifier` notations, to use `AArch64MCExpr::Specifier` constants.
This is a follow-up to #132595. COFF-specific specifiers are not moved
yet.

In addition, partition @-specifiers into COFF, ELF, and Mach-O, so that
mix-and-match is rejected at parse time.

ELF and Mach-O specifiers are distinct, with `None` being the only
shared value. For Mach-O-specific specifiers, we adopt the `M_xxx` naming
convention.

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


  Commit: 1d7bd3bc5c4f085dfa4443ea3fbab46356ab0a8e
      https://github.com/llvm/llvm-project/commit/1d7bd3bc5c4f085dfa4443ea3fbab46356ab0a8e
  Author: jobhdez <lara2993 at proton.me>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libc/src/math/generic/sin.cpp

  Log Message:
  -----------
  [libc] Remove extra parenthesis in sin.cpp comments (#134477)


  Commit: b6a96183015e99ec554f7a6b8c35a0e679b8ba39
      https://github.com/llvm/llvm-project/commit/b6a96183015e99ec554f7a6b8c35a0e679b8ba39
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/AsmLexer.h
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp

  Log Message:
  -----------
  [MCParser] Rename confusing variable names

https://reviews.llvm.org/D24047 added `IsAtStartOfStatement` to
MCAsmLexer, while its subclass AsmLexer had a variable of the same name.
The assignment in `UnLex` is unnecessary, which is now removed.

60b403e75cd25a0c76aaaf4e6b176923acf49443 (2019) named the result
`parseStatement` `Parsed`. `HasError` is a clearer name.


  Commit: a07b37475ccbf6b718fdf64fd6f0756ea1958852
      https://github.com/llvm/llvm-project/commit/a07b37475ccbf6b718fdf64fd6f0756ea1958852
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp

  Log Message:
  -----------
  [LoongArch] Simplify evaluateAsRelocatableImpl

Similar to RISCV


  Commit: f47034cbe5c02b748742c733cf453b3b907687e5
      https://github.com/llvm/llvm-project/commit/f47034cbe5c02b748742c733cf453b3b907687e5
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll

  Log Message:
  -----------
  AMDGPU: Add round-to-odd rounding during f64 to bf16 conversion (#133995)

f64 -> bf16 conversion can be lowered to f64 -> f32 followed by f32 ->
bf16:
   v_cvt_f32_f64_e32 v0, v[0:1]
   v_cvt_pk_bf16_f32 v0, v0, s0
Both conversion instructions will do round-to-even rounding, and thus we
will have double rounding issue which may generate incorrect result in
some data range. We need to add round-to-odd rounding during f64 -> f32
to avoid double rounding,.

NOTE: we are having the same issue with f64 -> f16 conversion. Will add
round-to-odd rounding for it in a separate patch, which fixes
SWDEV-523856

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: a1935fd3809772c06f9a09fa151181642ae92b20
      https://github.com/llvm/llvm-project/commit/a1935fd3809772c06f9a09fa151181642ae92b20
  Author: Reid Kleckner <rnk at google.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [clang] Remove unused SourceManager.cpp includes, NFC (trying out clangd)


  Commit: f3e6473df46fd920e09e06e57a5549eb8e3a8bd3
      https://github.com/llvm/llvm-project/commit/f3e6473df46fd920e09e06e57a5549eb8e3a8bd3
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp

  Log Message:
  -----------
  MCValue: reduce getSymB uses

The MCValue::SymB MCSymbolRefExpr member might be replaced with a
MCSymbol in the future. Reduce direct access.


  Commit: 44923d8631fb28b4de54d4210762f256c3894cef
      https://github.com/llvm/llvm-project/commit/44923d8631fb28b4de54d4210762f256c3894cef
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile

  Log Message:
  -----------
  [Github] Bump Github Runner Version in Agent Containers

The Github runner version got bumped recently and it would be good to keep
this up to date. Also debugging an issue where Github ARC is failing to
create new pods and trying to see if it might be related to outdated
versions.


  Commit: fb96d5171ee4cba7b2cb9cceea755aa4bd51b3c4
      https://github.com/llvm/llvm-project/commit/fb96d5171ee4cba7b2cb9cceea755aa4bd51b3c4
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .ci/monolithic-linux.sh

  Log Message:
  -----------
  Reapply "[CI] Fix Monolithic Linux Build in Ubuntu 24.04 (#133628)"

This reverts commit d72be157823d41e7eaf457cc37ea99c07431a25c.

Now that the container version got bumped, we need to reland this.


  Commit: 70a20757e8fff0a56cd7f95c2854b0fa68e7089c
      https://github.com/llvm/llvm-project/commit/70a20757e8fff0a56cd7f95c2854b0fa68e7089c
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Update C++ DR status page


  Commit: a64191053136078761a72fe800feedb8bcc70d31
      https://github.com/llvm/llvm-project/commit/a64191053136078761a72fe800feedb8bcc70d31
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

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

  Log Message:
  -----------
  [clang][CGObjC] Remove unused ExternalProtocolPtrTy (NFC) (#133870)

This function was previously used to get a type to the protocol that
was used to bitcast the initializer of GenerateProtocol. This bitcast
has later been removed (thanks to opaque pointers), but the member was
left behind.

History:

- 020de3254acc3 used ExternalProtocolPtrTy
- 34ee69b4ce662 removes the bitcast

Also technically part of #123569


  Commit: 75bbf768a4ae3d9f6cd45ab7448acf3792d94d82
      https://github.com/llvm/llvm-project/commit/75bbf768a4ae3d9f6cd45ab7448acf3792d94d82
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] Linux's eventfd interception. (#132836)


  Commit: 6c9e098b397fa8802b701a3a4ac827476b33568e
      https://github.com/llvm/llvm-project/commit/6c9e098b397fa8802b701a3a4ac827476b33568e
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] symlink/symlinkat interception. (#134168)


  Commit: 008e3a0b3d08a863f777d67e067eed75f0c08402
      https://github.com/llvm/llvm-project/commit/008e3a0b3d08a863f777d67e067eed75f0c08402
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [ValueTracking] Test for trunc nuw cond in assume. (NFC)


  Commit: 16573315d986568641e536c37c84fcc5dd161bf6
      https://github.com/llvm/llvm-project/commit/16573315d986568641e536c37c84fcc5dd161bf6
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] Test for fold of and of icmps with operands in the range(0,2)  (NFC)

proof https://alive2.llvm.org/ce/z/xeazCu

this is a regression found in https://github.com/llvm/llvm-project/pull/128861
This fold is done when icmp eq/ne x, 1/0 is folded to trunc nuw x iff x is in the range(0,2)


  Commit: cd54cb062bba9c90a8f3723bf66caa7effbcf259
      https://github.com/llvm/llvm-project/commit/cd54cb062bba9c90a8f3723bf66caa7effbcf259
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/lib/Headers/amxcomplexintrin.h

  Log Message:
  -----------
  [X86][AMX] Add missing __inline__ for AMXCOMPLEX intrinsics, NFCI (#134484)

Found by #64779.


  Commit: 13799998c06984f808ff687e7866441a3135fd18
      https://github.com/llvm/llvm-project/commit/13799998c06984f808ff687e7866441a3135fd18
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/unittests/ADT/EquivalenceClassesTest.cpp
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h

  Log Message:
  -----------
  [EquivalenceClasses] Use DenseMap instead of std::set. (NFC) (#134264)

Replace the std::set with DenseMap, which removes the requirement for an
ordering predicate. This also requires to allocate the ECValue objects
separately. This patch uses a BumpPtrAllocator.

Follow-up to https://github.com/llvm/llvm-project/pull/134075.

Compile-time impact is mostly neutral or slightly positive:

https://llvm-compile-time-tracker.com/compare.php?from=ee4e8197fa67dd1ed6e9470e00708e7feeaacd97&to=242e6a8e42889eebfc0bb5d433a4de7dd9e224a7&stat=instructions:u


  Commit: 475cbf0ad6e72f33e5ba5890a1c6e84e39a19e83
      https://github.com/llvm/llvm-project/commit/475cbf0ad6e72f33e5ba5890a1c6e84e39a19e83
  Author: James E T Smith <jamesETsmith at users.noreply.github.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/out_value_result.h
    A libcxx/include/__numeric/ranges_iota.h
    M libcxx/include/algorithm
    M libcxx/include/module.modulemap
    M libcxx/include/numeric
    M libcxx/include/version
    M libcxx/modules/std/algorithm.inc
    M libcxx/modules/std/numeric.inc
    M libcxx/test/std/algorithms/algorithms.results/no_unique_address.compile.pass.cpp
    A libcxx/test/std/algorithms/algorithms.results/out_value_result.pass.cpp
    M libcxx/test/std/algorithms/ranges_result_alias_declarations.compile.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Implement ranges::iota (#68494)

# Overview

As a disclaimer, this is my first PR to LLVM and while I've tried to
ensure I've followed the LLVM and libc++ contributing guidelines,
there's probably a good chance I missed something. If I have, just let
me know and I'll try to correct it as soon as I can.

This PR implements `std::ranges::iota` and
`std::ranges::out_value_result` outlined in
[P2440r1](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2440r1.html).

As outlined in the paper above, I've:
- Implemented `out_value_result` and added to `<algorithm>`
- Added `out_value_result`, `iota_result`, and two overloads of `iota`
to `std::ranges` in `<numeric>`
- Updated the version macro `__cpp_lib_ranges_iota` in `<version>`

I've also added tests for `ranges::iota` and `ranges::out_value_result`.
Lastly, I added those structs to the appropriate module files.

Partially implements #105184

EDIT: Forgot to mention in the original post, thanks to @hawkinsw for
taking a look at a preliminary version of this PR!

# TODOs
- [x] Updating the range [status
doc](https://github.com/jamesETsmith/llvm-project/blob/main/libcxx/docs/Status/RangesMajorFeatures.csv)
- [x] Ensure all comments from https://reviews.llvm.org/D121436 are
addressed here
- [X] EDIT (I'll do this in a separate PR). ~~I'm open to implementing
the rest of P2440r1 (`ranges::shift_left` and `ranges::shift_right`) if
that's ok, I just wanted to get feedback on `ranges::iota` first~~
- [x] I've been having trouble building the modules locally and want to
make sure that's working properly

Closes: #134060


  Commit: 68ce637872a2e1a1dedbb9caa6eacf15ec5c7b99
      https://github.com/llvm/llvm-project/commit/68ce637872a2e1a1dedbb9caa6eacf15ec5c7b99
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect Conversion: Replace after legalizing constants (#134384)

When folding an op during a conversion, first try to legalize all
generated constants, then replace the original operation. This is
slightly more efficient because fewer rewrites must be rolled back in
case a generated constant could not be legalized.

Note: This is in preparation of the One-Shot Dialect Conversion
refactoring.


  Commit: fcead25550bb727215919ecf2dfad17765223c19
      https://github.com/llvm/llvm-project/commit/fcead25550bb727215919ecf2dfad17765223c19
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

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

  Log Message:
  -----------
  [lldb] Fix building with GCC without asserts

This case was missed in 03604a784011bec2292f900b118d825f34f8cf89.


  Commit: 13faa819168e568404bee320ca7db9bc386f081f
      https://github.com/llvm/llvm-project/commit/13faa819168e568404bee320ca7db9bc386f081f
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/TypePromotion.cpp
    A llvm/test/CodeGen/AArch64/typepromotion-gep.ll
    M llvm/test/CodeGen/AArch64/typepromotion-phisret.ll
    M llvm/test/Transforms/TypePromotion/ARM/phis-ret.ll
    M llvm/test/Transforms/TypePromotion/ARM/pointers.ll

  Log Message:
  -----------
  [TypePromotion] Do not zero-extend getelementptr indexes since signed

A miscompilation issue has been addressed with improved handling.

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

Alive2: https://alive2.llvm.org/ce/z/gcMNvS.


  Commit: c07ab9e2ab0f288c10af172d11a3936b89b952fb
      https://github.com/llvm/llvm-project/commit/c07ab9e2ab0f288c10af172d11a3936b89b952fb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll

  Log Message:
  -----------
  [VPlan] Set debug location for recipes in VPBB::executeRecipes.

Set the debug location for each recipe before executing the recipe,
instead of ad-hoc setting the debug location during individual recipe
execution.

This simplifies the code and ensures that all recipe repsect the
recipe's debug location. There are some minor changes, where previously
we would re-use a previously set debug location.


  Commit: 6ac5cbdd29b630259432fc5b478cd2ddf78a17cd
      https://github.com/llvm/llvm-project/commit/6ac5cbdd29b630259432fc5b478cd2ddf78a17cd
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/PassSupport.h

  Log Message:
  -----------
  [NFC][LLVM] Eliminate duplicate code in INITIALIZE_PASS macros (#134457)

- Refactor INITIALIZE_PASS and INITIALIZE_PASS_WITH_OPTIONS macros to
eliminate some code duplication.


  Commit: 33246f79e87a0e629ae776d1811a1175a3f10065
      https://github.com/llvm/llvm-project/commit/33246f79e87a0e629ae776d1811a1175a3f10065
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCObjectWriter.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AArch64/label-arithmetic-diags-darwin.s
    M llvm/test/MC/ELF/bad-expr.s
    M llvm/test/MC/X86/macho-reloc-errors-x86_64.s

  Log Message:
  -----------
  [MC] Rework evaluateSymbolicAdd to eliminate MCValue::SymB reliance

Reworked evaluateSymbolicAdd and isSymbolRefDifferenceFullyResolved to
remove their reliance on MCValue::SymB, which previously used the
MCSymbolRefExpr member when folding two symbolic expressions. This
dependency prevented replacing MCValue::SymB with a MCSymbol. By
refactoring, we enable this replacement, which is a more significant
improvement.

Note that this change eliminates the rare "unsupported subtraction of
qualified symbol" diagnostic, resulting in a minor loss of information.
However, the benefit of enabling MCValue::SymB replacement with MCSymbol
outweighs this slight regression.


  Commit: cadfaa83ff1f7d9f983b23a756f25884a3d6314c
      https://github.com/llvm/llvm-project/commit/cadfaa83ff1f7d9f983b23a756f25884a3d6314c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp

  Log Message:
  -----------
  [AVR,CSKY] Migrate away from MCValue::getSymB

The MCValue::SymB MCSymbolRefExpr member might be replaced with a
MCSymbol in the future. Reduce direct access.


  Commit: b4f7a2ab578957657336a598220fce6fc00f56b5
      https://github.com/llvm/llvm-project/commit/b4f7a2ab578957657336a598220fce6fc00f56b5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/setbuf.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_double.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_float.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long_double.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Bump OS version for macOS backdeployment CI jobs (#131883)

In 0547e573c555, I introduced backdeployment testing on macOS using
Github-provided builders. This was done by basically building libc++ on
a slightly older macOS (like macOS 13) and then running against the
system library on that machine. However, that created a dependency that
libc++ must keep working on macOS 13, which doesn't support the
latest-released Xcode.

This patch solves that problem by moving the deployment testing to a
newer version of macOS which supports the latest-released version of
Xcode.

Sadly, that also reduces the backdeployment coverage we have since we're
not actually testing on older OSes, but is necessary to satisfy the
documented libc++ support policy. In the future, we could improve the
situation by providing a Lit configuration that allows compiling (but
not running) all the tests, building the tests on a supported macOS, and
then shipping those tests on an older backdeployment target in order to
run them against the system library. Since that requires significant
engineering, this isn't done at this time.


  Commit: 5e8f43811acfd72ac5da4df2a5436b27ad1eeab4
      https://github.com/llvm/llvm-project/commit/5e8f43811acfd72ac5da4df2a5436b27ad1eeab4
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCExpr.cpp

  Log Message:
  -----------
  MCValue: Make getSymB private and improve documentation


  Commit: ed2b82fb8b066f8c269be9e403ee20d86b5ead8a
      https://github.com/llvm/llvm-project/commit/ed2b82fb8b066f8c269be9e403ee20d86b5ead8a
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp

  Log Message:
  -----------
  MCValue: Change getAccessVariant to return uint16_t

Some targets encode the relocation specifier within SymA using
MCSymbolRefExpr::SubclassData. They will cast the specifier
to *MCExpr::Specifier.

Migrate away from the confusing MCSymbolRefExpr::VariantKind.

Note: getAccessVariant is a deprecated method to get the relocation
specifier.


  Commit: 582b1b2ac9de696debe6041aa500141c2fef5aa3
      https://github.com/llvm/llvm-project/commit/582b1b2ac9de696debe6041aa500141c2fef5aa3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .ci/monolithic-linux.sh

  Log Message:
  -----------
  [CI] Use env variable to enable pip breaking system packages

This patch uses an env variable instead of the --break-system-packages
flag. This enables the heterogenous configuration between the old and
new premerge systems as the old premerge container does not recognize
the --break-system-packages flag. An env variable will work on new
premerge and have no impact on old premerge.


  Commit: 52eb11f925ddeba4e1b3840fd636ee87387f3ada
      https://github.com/llvm/llvm-project/commit/52eb11f925ddeba4e1b3840fd636ee87387f3ada
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSpecifier(Target.getSymA()) with Target.getSymSpecifier()

Add MCValue::getSymSpecifier as a workaround for targets that encode the
relocation specifier on SymA. This function asserts that SymA is not
null.


  Commit: 2fd6f8fb5e3a52e901276d97c285b8de66742985
      https://github.com/llvm/llvm-project/commit/2fd6f8fb5e3a52e901276d97c285b8de66742985
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

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

  Log Message:
  -----------
  [LV] Don't add blocks to loop in GeneratedRTChecks (NFC).

Blocks will get added to parent loops as needed during VPlan execution.


  Commit: 7ccdc3d5ca648c09bbeb86f5063f7b0ee3e9b5e2
      https://github.com/llvm/llvm-project/commit/7ccdc3d5ca648c09bbeb86f5063f7b0ee3e9b5e2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 086af836889436baffc71c743c7c8259bad8ed60
      https://github.com/llvm/llvm-project/commit/086af836889436baffc71c743c7c8259bad8ed60
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: b1cd3cb3f42881a84ebc3da1dfae59637281d73c
      https://github.com/llvm/llvm-project/commit/b1cd3cb3f42881a84ebc3da1dfae59637281d73c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: d71ee7d23048ca64d14a7536927a006867cea39a
      https://github.com/llvm/llvm-project/commit/d71ee7d23048ca64d14a7536927a006867cea39a
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Set C11 instead of C17 for LK_C (#134472)

Fix #134453


  Commit: 0c84d71eda538b5ac73811f241d4a0555ff49099
      https://github.com/llvm/llvm-project/commit/0c84d71eda538b5ac73811f241d4a0555ff49099
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 46a2f4174a051f29a09dbc3844df763571c67309
      https://github.com/llvm/llvm-project/commit/46a2f4174a051f29a09dbc3844df763571c67309
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

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

  Log Message:
  -----------
  Revert "[LV] Don't add blocks to loop in GeneratedRTChecks (NFC)."

This reverts commit 2fd6f8fb5e3a52e901276d97c285b8de66742985.

This missed a possible case, causing buildbot failures.


  Commit: 7cf8a6201a6eb549b8d41214afa2694e0c1e344c
      https://github.com/llvm/llvm-project/commit/7cf8a6201a6eb549b8d41214afa2694e0c1e344c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp

  Log Message:
  -----------
  [AArch64,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 70f5632cadb82b1be813d7ba688b80e22df634e2
      https://github.com/llvm/llvm-project/commit/70f5632cadb82b1be813d7ba688b80e22df634e2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp

  Log Message:
  -----------
  [PowerPC,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: aeec94500a5dbd576e5d2d16895fe00fa0b1e154
      https://github.com/llvm/llvm-project/commit/aeec94500a5dbd576e5d2d16895fe00fa0b1e154
  Author: junfengd-nv <junfengd at nvidia.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/InliningUtils.h
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/lib/Transforms/Utils/InliningUtils.cpp
    A mlir/test/Transforms/test-inlining-callback.mlir
    M mlir/test/lib/Transforms/CMakeLists.txt
    M mlir/test/lib/Transforms/TestInlining.cpp
    A mlir/test/lib/Transforms/TestInliningCallback.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [mlir][inliner] Add doClone and canHandleMultipleBlocks callbacks to Inliner Config (#131226)

Current inliner disables inlining when the caller is in a region with
single block trait, while the callee function contains multiple blocks.
the SingleBlock trait is used in operations such as do/while loop, for
example fir.do_loop, fir.iterate_while and fir.if. Typically, calls within
loops are good candidates for inlining. However, functions with multiple
blocks are also common. for example, any function with "if () then
return" will result in multiple blocks in MLIR.

This change gives the flexibility of a customized inliner to handle such
cases.
doClone: clones instructions and other information from the callee
function into the caller function. .
canHandleMultipleBlocks: checks if functions with multiple blocks can be
inlined into a region with the SingleBlock trait.

The default behavior of the inliner remains unchanged.

---------

Co-authored-by: jeanPerier <jean.perier.polytechnique at gmail.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: 7e62715e0cd433ed97749549c6582c4e1aa689a3
      https://github.com/llvm/llvm-project/commit/7e62715e0cd433ed97749549c6582c4e1aa689a3
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp

  Log Message:
  -----------
  [RISCV,LoongArch,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.

Creating a MCSymbolRefExpr in *AsmBackend::handleAddSubRelocations is
not efficient, but it is temporary and will be replaced when MCValue no
longer uses MCSymbolRefExpr.


  Commit: acca419685b0a288e0b06786e6e7bc27bb087578
      https://github.com/llvm/llvm-project/commit/acca419685b0a288e0b06786e6e7bc27bb087578
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp

  Log Message:
  -----------
  [WebAssembly,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 0431fea88ac9a057d1c8751da7f9506cf51f54c5
      https://github.com/llvm/llvm-project/commit/0431fea88ac9a057d1c8751da7f9506cf51f54c5
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp

  Log Message:
  -----------
  [AMDGPU,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: d9a767cfc802aca491f5f25fb386679ab1100621
      https://github.com/llvm/llvm-project/commit/d9a767cfc802aca491f5f25fb386679ab1100621
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h

  Log Message:
  -----------
  [Mips,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.

Create a MipsMCExpr::create overload that takes MCSymbol as an argument.
We use the order preferred by other targets.


  Commit: 590d2a3ca5fde93aff1ef1611f1361180adb1813
      https://github.com/llvm/llvm-project/commit/590d2a3ca5fde93aff1ef1611f1361180adb1813
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp

  Log Message:
  -----------
  [Mips,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: f8f9be32411d63fa65832306cbc9207ef91446af
      https://github.com/llvm/llvm-project/commit/f8f9be32411d63fa65832306cbc9207ef91446af
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp

  Log Message:
  -----------
  [ARM,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 7833107993e7df63301c655e0b4c49b2f625fa5e
      https://github.com/llvm/llvm-project/commit/7833107993e7df63301c655e0b4c49b2f625fa5e
  Author: Alan <ahulambda at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/test/CMakeLists.txt

  Log Message:
  -----------
  [OCaml] Make OCaml MetadataKind type consistent with C API (#134507)

Fixes breakage of OCaml API introduced by commit 6894734.


  Commit: 55ff96abfa08ec94b0f8f4ebe187a3232e9d92b7
      https://github.com/llvm/llvm-project/commit/55ff96abfa08ec94b0f8f4ebe187a3232e9d92b7
  Author: weiwei chen <weiwei.chen at modular.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/unittests/CodeGen/X86MCInstLowerTest.cpp

  Log Message:
  -----------
  [X86][Test] Reorder PassMgrF and OS. (#134481)

Reordering `OS` and `PassMgrF` should fix the asan failure that's caused
by OS being destroyed before `PassMgrF` deletes the AsmPrinter.

As shown in[ this asan run
](https://lab.llvm.org/buildbot/#/builders/52/builds/7340/steps/12/logs/stdio)

```
  This frame has 15 object(s):
    [32, 48) 'PassMgrF' (line 154)
    [64, 1112) 'Buf' (line 155)
    [1248, 1304) 'OS' (line 156) <== Memory access at offset 1280 is inside this variable
```
which indicates an ordering problem. 

This should help to fix all the sanitizer failures caused by the test
`X86MCInstLowerTest.cpp` that's introduced by [this
PR](https://github.com/llvm/llvm-project/pull/133352#issuecomment-2780173791).


  Commit: aaaeb86acea77c5bcdb60011ce6aaaf4ebca4081
      https://github.com/llvm/llvm-project/commit/aaaeb86acea77c5bcdb60011ce6aaaf4ebca4081
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Merge inline short functions for BS_Whitesmiths (#134473)

Fix #126747


  Commit: 94821ce45fe93aa78cc5ea03cd9deac91b7af127
      https://github.com/llvm/llvm-project/commit/94821ce45fe93aa78cc5ea03cd9deac91b7af127
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/CSKY/relocation-specifier.s

  Log Message:
  -----------
  MCValue: Store SymA specifier at Specifier

The relocation specifier should be accessed via MCValue::Specifier.
However, some targets encode the relocation specifier within SymA using
MCSymbolRefExpr::SubclassData and access it via getAccessVariant(), though
this method is now deprecated.

This change stores the SymA specifier at Specifier as well, unifying the
two code paths.

* CSKY: GOT- and PLT- relocations now suppress the STT_SECTION
  conversion.
* AArch64: https://reviews.llvm.org/D156505 added `getRefkind` check to
  prevent folding. This is a hack and is now removed.

MCValue: Unify relocation specifier storage by storing SymA specifier at Specifier

The relocation specifier is accessed via MCValue::Specifier, but some
targets encoded it within SymA using MCSymbolRefExpr::SubclassData and
retrieved it through the now-deprecated getAccessVariant() method. This
commit unifies the two approaches by storing the SymA specifier at
`Specifier` as well.

Additional changes:

- CSKY: GOT- and PLT- relocations now suppress STT_SECTION conversion.
- AArch64: Removed the `getRefkind` check hack (introduced in https://reviews.llvm.org/D156505) that prevented folding.
  Removed the assertion from `getRelocType`.
- RISCV: Removed the assertion from `getRelocType`.

Future plans:

- Replace MCSymbolRefExpr members with MCSymbol within MCValue.
- Remove `getSymSpecifier` (added for migration).


  Commit: 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc
      https://github.com/llvm/llvm-project/commit/38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/MC/MCAsmBackend.cpp

  Log Message:
  -----------
  Define MCAsmBackend::shouldForceRelocation

Return true if the MCValue has a specifier. When a relocation specifier
is specified, GNU Assembler will generate a relocation unless the
specifier can be optimized due to target-specific reasons (e.g. PPC `@l`
`@ha`).

This reduces targets' reliance on a MCAssembler::evaluateFixup hack
`if (Target.SymSpecifier || SA.isUndefined()) {`, previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`

llvm/test/MC/SystemZ/fixups.s is known to rely on this hack.


  Commit: 4182d2dcb5ecbfc34d41a6cd11810cd36844eddb
      https://github.com/llvm/llvm-project/commit/4182d2dcb5ecbfc34d41a6cd11810cd36844eddb
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp

  Log Message:
  -----------
  [ARM,PowerPC] shouldForceRelocation: check MCValue::Specifier

Follow-up to 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc

Removes reliance on a MCAssembler::evaluateFixup hack
`if (Target.SymSpecifier || SA.isUndefined()) {` (previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`)

Target.SymSpecifier will soon go away when MCValue replaces
MCSymbolRefExpr members with MCSymbol and removes the temporary
`SymSpecifier` workaround.


  Commit: d5893fc2a7e1191afdb4940469ec9371a319b114
      https://github.com/llvm/llvm-project/commit/d5893fc2a7e1191afdb4940469ec9371a319b114
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s

  Log Message:
  -----------
  MCValue: Replace MCSymbolRefExpr members with MCSymbol

Commit 0999cbd0b9ed8aa893cce10d681dec6d54b200ad (2014) introduced
`MCValue::RefKind` for AArch64 ELF as a clean approach to encode the
relocation specifier.

Following numerous migration commits, direct references to getSymA and
getSymB have been eliminated. This allows us to seamlessly update SymA
and SymB, replacing MCSymbolRefExpr with MCSymbol.

Removeing reliance on a MCAssembler::evaluateFixup hack
(`if (Target.SymSpecifier || SA.isUndefined()) {` (previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`))
requires 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc and 4182d2dcb5ecbfc34d41a6cd11810cd36844eddb

Revert the temporary RISCV/LoongArch workaround
(7e62715e0cd433ed97749549c6582c4e1aa689a3) during migration.

MCAssembler::evaluateFixup needs an extra `!Add->isAbsolute()` case
to support `movq abs at GOTPCREL(%rip), %rax; abs = 42` in llvm/test/MC/ELF/relocation-alias.s
(ELFObjectWriter::isSymbolRefDifferenceFullyResolvedImpl asserts if
called on an absolute symbol).


  Commit: 803fbdd1faa813303cda3d93b3364eca2344ab6a
      https://github.com/llvm/llvm-project/commit/803fbdd1faa813303cda3d93b3364eca2344ab6a
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    R llvm/test/MC/PowerPC/ppc64-errors-emit-obj.s
    A llvm/test/MC/PowerPC/relocation-specifier-err.s

  Log Message:
  -----------
  [PowerPC] Report proper error for invalid relocation specifier

Generalize the test from https://reviews.llvm.org/D83255

Replace getAccessVariant with MCValue::getSpecifier
Simplify code after MCValue improvement 94821ce45fe93aa78cc5ea03cd9deac91b7af127


  Commit: e5923936109ce4ce7be2c8fb3372b14d33c385d9
      https://github.com/llvm/llvm-project/commit/e5923936109ce4ce7be2c8fb3372b14d33c385d9
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp

  Log Message:
  -----------
  MCValue: Replace getSymSpecifier with getSpecifier

Commit 52eb11f925ddeba4e1b3840fd636ee87387f3ada temporarily introduced
getSymSpecifier to prepare for "MCValue: Replace MCSymbolRefExpr members
with MCSymbol" (d5893fc2a7e1191afdb4940469ec9371a319b114). The
refactoring is now complete.


  Commit: 8fa5b6cc0293d806e36b90d4116e5925fa5d7f2e
      https://github.com/llvm/llvm-project/commit/8fa5b6cc0293d806e36b90d4116e5925fa5d7f2e
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp

  Log Message:
  -----------
  MCValue: Replace getAccessVariant with getSpecifier

Commit 52eb11f925ddeba4e1b3840fd636ee87387f3ada temporarily introduced
getSymSpecifier to prepare for "MCValue: Replace MCSymbolRefExpr members
with MCSymbol" (d5893fc2a7e1191afdb4940469ec9371a319b114). The
refactoring is now complete.


  Commit: 7cb66ff4648a15741a1908658dfef5cb3d4a9199
      https://github.com/llvm/llvm-project/commit/7cb66ff4648a15741a1908658dfef5cb3d4a9199
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    R llvm/test/MC/PowerPC/pr24686.s
    M llvm/test/MC/PowerPC/relocation-specifier-err.s

  Log Message:
  -----------
  [PowerPC] Use reportError

Report a proper error and fix de1dc9c98f9ce74d38aceb44e00d258370d1bb34


  Commit: e7dc05ebcf50a620bc2307207bfd27620c6ca648
      https://github.com/llvm/llvm-project/commit/e7dc05ebcf50a620bc2307207bfd27620c6ca648
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCValue.cpp

  Log Message:
  -----------
  MCValue: Make print private

This is a debug-only feature (the relocation specifier is
target-specific and cannot be printed without backend support) and not
supposed to be used externally. PowerPC imappropriated used it
(removed by 7cb66ff4648a15741a1908658dfef5cb3d4a9199).


  Commit: c0b4a8edfe2349b912890951a49a32b6a27747af
      https://github.com/llvm/llvm-project/commit/c0b4a8edfe2349b912890951a49a32b6a27747af
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp

  Log Message:
  -----------
  MCValue: Replace getRefKind with getSpecifier


  Commit: 53e1c8b118792b0177bff69d806c9e00034ceb1c
      https://github.com/llvm/llvm-project/commit/53e1c8b118792b0177bff69d806c9e00034ceb1c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h

  Log Message:
  -----------
  AArch64MCExpr: Remove unused getSpecifier


  Commit: 8d71a2a905508f32ed201920ef7ac15a3ad8e4e6
      https://github.com/llvm/llvm-project/commit/8d71a2a905508f32ed201920ef7ac15a3ad8e4e6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

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

  Log Message:
  -----------
  [VPlan] Use ExitBocks to check in VPlan::isExitBlock (NFC).

Exit blocks of the VPlan are now hold in ExitBlocks. Use it to check if
a block is an exit block. Otherwise we currently mis-classify the scalar
loop header also as exit block, as it is not explicitly connected to the
exit blocks.

NFC at the moment, as the helper currently is never queried with the
scalar header, but that will change in the future.


  Commit: 7013b51548c0bd2c7e5564735c44506909a2f8dc
      https://github.com/llvm/llvm-project/commit/7013b51548c0bd2c7e5564735c44506909a2f8dc
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/21.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__flat_set/flat_multiset.h
    M libcxx/include/__flat_set/flat_set.h
    A libcxx/include/__flat_set/utils.h
    M libcxx/include/flat_set
    M libcxx/include/module.modulemap
    M libcxx/include/version
    M libcxx/modules/std/flat_set.inc
    A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/assert.sorted_unique.pass.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/iterator.compile.pass.cpp
    A libcxx/test/libcxx/diagnostics/flat_multiset.nodiscard.verify.cpp
    M libcxx/test/std/containers/container.adaptors/flat.map/helpers.h
    M libcxx/test/std/containers/container.adaptors/flat.multimap/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/empty.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/size.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/assign_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/compare.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/containers.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy_alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy_assign.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct_pmr.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/default.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/dtor_noexcept.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move_alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move_assign.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/pmr.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_container.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.erasure/erase_if.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.erasure/erase_if_exceptions.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_comparison.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_concept_conformance.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/range_concept_conformance.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/reverse_iterator.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/clear.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/emplace.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/emplace_hint.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_cv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_cv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_rv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_rv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_sorted_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_sorted_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/replace.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_exception.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_free.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_member.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat.multiset/incomplete_type.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/op_compare.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/types.compile.pass.cpp
    M libcxx/test/std/containers/container.adaptors/flat.set/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat_helpers.h
    M libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/modules.py

  Log Message:
  -----------
  [libc++] Implement `std::flat_multiset` (#128363)

fixes https://github.com/llvm/llvm-project/issues/105193


  Commit: 0a1742708ddc3a2b31d65479aaad143b5f7562b2
      https://github.com/llvm/llvm-project/commit/0a1742708ddc3a2b31d65479aaad143b5f7562b2
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    A llvm/include/llvm/CodeGen/SDNodeInfo.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/CMakeLists.txt
    A llvm/lib/CodeGen/SelectionDAG/SDNodeInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGTargetInfo.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.h

  Log Message:
  -----------
  [SelectionDAG] Wire up -gen-sdnode-info TableGen backend (#125358)

This patch introduces SelectionDAGGenTargetInfo and SDNodeInfo classes,
which provide methods for accessing the generated SDNode descriptions.

Pull Request: https://github.com/llvm/llvm-project/pull/125358
Draft PR: https://github.com/llvm/llvm-project/pull/119709
RFC: https://discourse.llvm.org/t/rfc-tablegen-erating-sdnode-descriptions


  Commit: 3e08dcd767a217fa91580704a378b37167e20f74
      https://github.com/llvm/llvm-project/commit/3e08dcd767a217fa91580704a378b37167e20f74
  Author: Benjamin Kramer <kramerb at google.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/InliningUtils.h
    M mlir/lib/Transforms/Utils/InliningUtils.cpp
    M mlir/test/lib/Transforms/TestInliningCallback.cpp

  Log Message:
  -----------
  [mlir][inliner] Move callback types from InlinerConfig -> InlinerInterface. NFC.

The proper layering here is that Inliner depends on InlinerUtils, and
not the other way round. Maybe it's time to give InliningUtils a less
terrible file name.


  Commit: 283a78a088bc669f31d8a3567265b1a3ab129487
      https://github.com/llvm/llvm-project/commit/283a78a088bc669f31d8a3567265b1a3ab129487
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

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

  Log Message:
  -----------
  Reapply "[LV] Don't add blocks to loop in GeneratedRTChecks (NFC)."

This reverts commit 46a2f4174a051f29a09dbc3844df763571c67309.

Recommits 2fd6f8fb5e3a with corresponding VPlan change to ensure
LoopInfo is updated for all blocks during VPlan execution if needed.


  Commit: ba3fa39b63d7185f7d067f35a39c2fea40ee8861
      https://github.com/llvm/llvm-project/commit/ba3fa39b63d7185f7d067f35a39c2fea40ee8861
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/EarlyCSE/AArch64/intrinsics.ll

  Log Message:
  -----------
  [EarlyCSE] Re-generate checks for intrinsics.ll.


  Commit: 0defd832eb7c0618a67556e6fcbd32dd19e88b97
      https://github.com/llvm/llvm-project/commit/0defd832eb7c0618a67556e6fcbd32dd19e88b97
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

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

  Log Message:
  -----------
  [AArch64] Avoid unused variable warnings in release builds

This used to be under !NDEBUG before
0a1742708ddc3a2b31d65479aaad143b5f7562b2, so just put that back. The
code only consists of assertions.


  Commit: 449e2f5d66d9d99f58611a8778d688e14d051ca0
      https://github.com/llvm/llvm-project/commit/449e2f5d66d9d99f58611a8778d688e14d051ca0
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

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

  Log Message:
  -----------
  [LV] Remove more DT updates from legacy code path (NFCI).

Remove some legacy DT updates. Those should already be handled when
updating the DT during VPlan execution.


  Commit: 48441cb8a2fa3b3f9502ba4ba1242746615841cb
      https://github.com/llvm/llvm-project/commit/48441cb8a2fa3b3f9502ba4ba1242746615841cb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    A llvm/test/Transforms/LowerMatrixIntrinsics/analysis-invalidation.ll

  Log Message:
  -----------
  [Matrix] Properly set Changed status when optimizing transposes.

Currently Changed is not updated properly when transposes are optimized,
causing missing analysis invalidation. Update optimizeTransposes to
indicate if changes have been made.


  Commit: eb70253fcbe57c7cb3c309c06b94b05f2eab314d
      https://github.com/llvm/llvm-project/commit/eb70253fcbe57c7cb3c309c06b94b05f2eab314d
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef/DataLayout] Spell out requirements for alignment values (#104705)

For 'p' the added wording matches the implementation.

For 'i', 'f', 'v' the implementation also allows 0 for `<pref>`
component, making 'i16:16:0' valid, for example. 'Fi0', 'Fn0' and 'S0'
are also currently accepted. This is likely unintentional. There are no
tests in the codebase that rely on this behavior, so the added wording
prohibits zero alignments for these specifications.

For 'a', the implementation currently allows 0 for both `<abi>` and
`<pref>` components. The added wording prohibits specifying zero for
`<pref>` with the same justification as above. Zero `<abi>` is used in
tests, and the example at the end of the section suggests that this is
valid, so that's left unchanged.

This effectively prohibits zero alignments everywhere except for the
`<abi>` component of aggregate specification.


  Commit: 976de53f1008a9e06c94a99fdd59d0f523feaef7
      https://github.com/llvm/llvm-project/commit/976de53f1008a9e06c94a99fdd59d0f523feaef7
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp

  Log Message:
  -----------
  [MC,MachO] Replace SectionAddrMap workaround with cleaner variable handling

Mach-O's ARM and X86 writers use MCExpr's `SectionAddrMap *Addrs`
argument to compute label differences, which was a bit of a hack. The
AArch64MachObjectWriter does this better by using `getSymbolAddress` in
its `recordRelocation` function.

This commit:
1. Moves the `SectionAddrMap` logic into the Mach-O code, removing the
   workaround.
2. Fixes a bug in `MachObjectWriter::getSymbolAddress` where it failed
   to subtract the `SymB` value. This bug has been present since commit
   b200f93125eb019d69c220fa447faea4f5d4eb8a (2011).


  Commit: b90a92687f399df5afe3e1a2493b0d9c6295ac8c
      https://github.com/llvm/llvm-project/commit/b90a92687f399df5afe3e1a2493b0d9c6295ac8c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCExpr.cpp

  Log Message:
  -----------
  MCExpr: Remove unused SectionAddrMap workaround

Mach-O's ARM and X86 writers use MCExpr's `SectionAddrMap *Addrs`
argument to compute label differences, which was a bit of a hack.
The hack has been cleaned up by commit
1b7759de8e6979dda2d949b1ba1c742922e5c366.


  Commit: 12a377ed71ca1116c3f8f848ec8c7a24b116c180
      https://github.com/llvm/llvm-project/commit/12a377ed71ca1116c3f8f848ec8c7a24b116c180
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll

  Log Message:
  -----------
  [LV] Add test for mis-compile when narrowing interleave groups.

Add test case showing mis-compile due to unrolling vector-pointer
recipes after 6b98134.


  Commit: 768ccf69f3febe962e0d63dc87fbee31e59547a7
      https://github.com/llvm/llvm-project/commit/768ccf69f3febe962e0d63dc87fbee31e59547a7
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/lib/MC/MCExpr.cpp

  Log Message:
  -----------
  MCSymbolRefExpr: Remove HasSubsectionsViaSymbolsBit

This information is only needed assembly time and we
can get it with Asm->getContext().getAsmInfo()->hasSubsectionsViaSymbols().


  Commit: 464286ba633b30bf0bfa9971ec0d61778ccc7561
      https://github.com/llvm/llvm-project/commit/464286ba633b30bf0bfa9971ec0d61778ccc7561
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll

  Log Message:
  -----------
  [VPlan] Don't narrow interleave groups if there are vector pointers.

Do not narrow interleave groups if there are VectorPointer recipes and
the plan was unrolled. The recipe implicitly uses VF from VPTransformState.


  Commit: 146ad71bc71a9cbecccea307bbd157ec910ae82a
      https://github.com/llvm/llvm-project/commit/146ad71bc71a9cbecccea307bbd157ec910ae82a
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/DerivedTypes.h

  Log Message:
  -----------
  [IR] Deprecate PointerType::get/getUnqual pointee type overload (#134517)

Deprecates the methods and schedules them for removal in the future as
the overloads taking LLVMContext are preferred, as the pointee type
has no meaning in opaque pointers.

>From what my clangd can tell, there are no usages left in the monorepo

Part of #123569


  Commit: f2987f255ae99cc43cd0da61ac42150af71b0ad6
      https://github.com/llvm/llvm-project/commit/f2987f255ae99cc43cd0da61ac42150af71b0ad6
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/test/Driver/x86-target-features.c

  Log Message:
  -----------
  [X86][AVX10] Make warning message more informative, NFCI (#134528)


  Commit: aef000dd43b8ee2397e71f877217a9ecbd23c608
      https://github.com/llvm/llvm-project/commit/aef000dd43b8ee2397e71f877217a9ecbd23c608
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp

  Log Message:
  -----------
  [clang] fix serialization of SubstNonTypeTemplateParmExpr (#134560)

This fixes a couple of mistakes introduced when merging
https://github.com/llvm/llvm-project/pull/132748

Fixes msan failure reported here:
https://github.com/llvm/llvm-project/pull/132748#issuecomment-2781105225


  Commit: c9497a22ef9f9802401cf0cf3352dcbd4f14bcbd
      https://github.com/llvm/llvm-project/commit/c9497a22ef9f9802401cf0cf3352dcbd4f14bcbd
  Author: Alan <ahulambda at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M llvm/test/Bindings/OCaml/debuginfo.ml

  Log Message:
  -----------
  [OCaml] Fix test with invalid usage of #dbg_declare (#134508)

Even though #dbg_declare can only describe pointers, one of the OCaml
tests tried to add a #dbg_declare to an i32 argument. The change
introduced in ecd4c08 caught this incorrect usage.


  Commit: da6e2454fff3fbc86861e31b60f18d3467354375
      https://github.com/llvm/llvm-project/commit/da6e2454fff3fbc86861e31b60f18d3467354375
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/capturing-this-in-member-variable.cpp

  Log Message:
  -----------
  [clang-tidy] Improve `bugprone-capturing-this-in-member-variable` check: add support of `bind` functions. (#132635)

Improve `bugprone-capturing-this-in-member-variable` check:
Added support of `bind`-like functions that capture and store `this`
pointer in class member.

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


  Commit: 8f0d8d28ccd8a1ced82a744679c5152f90e80c77
      https://github.com/llvm/llvm-project/commit/8f0d8d28ccd8a1ced82a744679c5152f90e80c77
  Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/test/Lower/CUDA/cuda-doconc.cuf

  Log Message:
  -----------
  Delete duplicated hlfir.declare op of induction variables of do concurrent when inside cuf kernel directive. (#134467)

Delete duplicated creation of hlfir.declare op of do concurrent
induction variables when inside cuf kernel directive.
Obtain the correct hlfir.declare op generated from bindSymbol, and add
it to ivValues.


  Commit: 6ce0fd7f74502a75120bef43f12f56e3a5d80dfd
      https://github.com/llvm/llvm-project/commit/6ce0fd7f74502a75120bef43f12f56e3a5d80dfd
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-06 (Sun, 06 Apr 2025)

  Changed paths:
    M clang/test/CXX/drs/cwg15xx.cpp

  Log Message:
  -----------
  [clang] NFC: clean trailing whitespaces in clang/test/CXX/drs/cwg15xx.cpp


  Commit: 0d68bad78a68874c31cdb337f97a0c4336b1125b
      https://github.com/llvm/llvm-project/commit/0d68bad78a68874c31cdb337f97a0c4336b1125b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Value.cpp

  Log Message:
  -----------
  IR: Fix typo in unreachable message


  Commit: e90d40afaff3124408d79ae8ef96ae021ff4f8cf
      https://github.com/llvm/llvm-project/commit/e90d40afaff3124408d79ae8ef96ae021ff4f8cf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/NaryReassociate/nary-add.ll
    M llvm/test/Transforms/NaryReassociate/nary-mul.ll
    M llvm/test/Transforms/NaryReassociate/nary-req.ll
    M llvm/test/Transforms/NaryReassociate/nary-smax.ll
    M llvm/test/Transforms/NaryReassociate/nary-smin.ll
    M llvm/test/Transforms/NaryReassociate/nary-umax.ll
    M llvm/test/Transforms/NaryReassociate/nary-umin.ll
    M llvm/test/Transforms/NaryReassociate/pr24301.ll

  Log Message:
  -----------
  NaryReassociate: Remove redundant run lines

These only differed in quoting the passes argument or not. There
is further redundancy in some of these tests, but they split the
invocation across multiple opt runs


  Commit: d9ccfd7568337c4e38211eabd87818fb39573004
      https://github.com/llvm/llvm-project/commit/d9ccfd7568337c4e38211eabd87818fb39573004
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining.mlir

  Log Message:
  -----------
  [mlir][llvm] Respect call noinline attr in inliner (#134493)

This commit extends the LLVM dialect inliner interface to respect the
call op's noinline attribute. This is a follow-up to
https://github.com/llvm/llvm-project/pull/133726
which added the noinline attribute to the LLVM dialect call op.


  Commit: f280d60c9839120618da353ab71004be33c4fa53
      https://github.com/llvm/llvm-project/commit/f280d60c9839120618da353ab71004be33c4fa53
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp

  Log Message:
  -----------
  [CSKY] Simplify shouldForceRelocation with MCValue::Specifier


  Commit: 87a4215ed154e867683b10c8d7fe1dbc79d81abb
      https://github.com/llvm/llvm-project/commit/87a4215ed154e867683b10c8d7fe1dbc79d81abb
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/CodeGenAction.cpp
    A clang/test/CodeGen/invalid_llvm_ir.ll

  Log Message:
  -----------
  [Clang] Always verify LLVM IR inputs (#134396)

We get a lot of issues that basically boil down to "I passed malformed
LLVM IR to clang and it crashed". Clang does not perform IR verification
by default in (non-assertion-enabled) release builds, and that's
sensible for IR that Clang itself produces, which is expected to always
be valid. However, if people pass in their own handwritten IR, we should
report if it is malformed, instead of crashing. We should also report it
in a way that does not produce a crash trace and ask for a bug report,
as currently happens in assertions-enabled builds. This aligns the
behavior with how opt/llc work.


  Commit: 31ef7acf12e7f5011a813dcfd08b821ec44865f0
      https://github.com/llvm/llvm-project/commit/31ef7acf12e7f5011a813dcfd08b821ec44865f0
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
    A clang/test/Analysis/castsize.c

  Log Message:
  -----------
  [clang][analyzer] Fix a possible crash in CastSizeChecker (#134387)


  Commit: 7b3b4a5b1b5f8c3ae6855c92cdbe783c804408ea
      https://github.com/llvm/llvm-project/commit/7b3b4a5b1b5f8c3ae6855c92cdbe783c804408ea
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Value.cpp
    M llvm/test/Transforms/Mem2Reg/ignore-droppable.ll
    M llvm/test/Transforms/SROA/assume.ll
    M llvm/test/Transforms/SROA/ignore-droppable.ll

  Log Message:
  -----------
  IR: Use poison in dropDroppableUse (#134576)


  Commit: 4a5ff3ec21d0c6476d0da93b8550ba93560a5cbe
      https://github.com/llvm/llvm-project/commit/4a5ff3ec21d0c6476d0da93b8550ba93560a5cbe
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Value.cpp

  Log Message:
  -----------
  Value: Remove redundant removeFromList in dropDroppableUse (#134580)


  Commit: 2f8b486f979f4b89929a447f516fd1da9a659834
      https://github.com/llvm/llvm-project/commit/2f8b486f979f4b89929a447f516fd1da9a659834
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/test/Transforms/JumpThreading/unreachable-loops.ll

  Log Message:
  -----------
  [IR][JumpThreading] Fix infinite recursion on compare self-reference (#129501)

In unreachable code, constant PHI nodes may appear and be replaced by their
single value. As a result, instructions may become self-referencing. This
commit adds checks to avoid going into infinite recursion when handling
self-referencing compare instructions in `evaluateOnPredecessorEdge()`.

This LLVM defect was identified via the AMD Fuzzing project.


  Commit: 04bb8ecb05ae4dc2a0407503678e0cef79c1d46c
      https://github.com/llvm/llvm-project/commit/04bb8ecb05ae4dc2a0407503678e0cef79c1d46c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll

  Log Message:
  -----------
  AMDGPU: Disable sincos fold for constant inputs (#134579)


  Commit: 4a425a4966d6421674d4300e32b0eb57ebade65a
      https://github.com/llvm/llvm-project/commit/4a425a4966d6421674d4300e32b0eb57ebade65a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp

  Log Message:
  -----------
  NaryReassociate: Check pattern before user scan (#134587)


  Commit: 44e32fb80272b77186b42c7583dd0ed8ad668af4
      https://github.com/llvm/llvm-project/commit/44e32fb80272b77186b42c7583dd0ed8ad668af4
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/test/CodeGenOpenCL/fdeclare-opencl-builtins.cl

  Log Message:
  -----------
  [Clang][OpenCL] Fix wait_for_event argument address space with -fdeclare-opencl-builtins (#134598)

The pointer argument for `wait_for_event(int, event_t*)` should take the
default address space: generic if available, otherwise private.

Before this patch it would always be generic with
`-fdeclare-opencl-builtins`. This was inconsistent with the behavior
when opencl-c.h is included.


  Commit: f20cb3f8d2d4e97760a1a589290224a33ec60473
      https://github.com/llvm/llvm-project/commit/f20cb3f8d2d4e97760a1a589290224a33ec60473
  Author: Mike <FruitClover at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/OptimizeAllocationLiveness.cpp
    M mlir/test/Dialect/Bufferization/Transforms/optimize-allocation-liveness.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][bufferization] Drop the assumption for alloc result index (#134503)

Relax the assumption that alloc op always has allocation at
`getResult(0)`, allow to use `optimize-allocation-liveness` pass for
custom ops with >1 results. Ops with multiple allocations are not
handled here yet.


  Commit: be6ccc98f38227db02164f17bfaf0ac86d800e4a
      https://github.com/llvm/llvm-project/commit/be6ccc98f38227db02164f17bfaf0ac86d800e4a
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [VPlan] Split out VPBlendRecipe simplifications from simplifyRecipes. NFC (#134073)

This is split off from #133977

VPBlendRecipe normalisation is sensitive to the number of users a mask
has, so should probably be run after the masks are simplified as much as
possible.

Note this could be run after removeDeadRecipes but this causes test
diffs, some regressions, so this is left to a later patch.


  Commit: 387a8859cfea9e6f8282f14f21064d9ec562e66a
      https://github.com/llvm/llvm-project/commit/387a8859cfea9e6f8282f14f21064d9ec562e66a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  Fix MSVC "32-bit shift implicitly converted to 64 bits" warning. NFCI.


  Commit: 679b2f714a3a3cbf487480127a4cc6ed296c7fab
      https://github.com/llvm/llvm-project/commit/679b2f714a3a3cbf487480127a4cc6ed296c7fab
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFCI.


  Commit: ec400277c6810915a501fa901e9ba58ab6ade831
      https://github.com/llvm/llvm-project/commit/ec400277c6810915a501fa901e9ba58ab6ade831
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFCI.


  Commit: 65c7ea713e0b411a707b0ccac374bda9f30234ea
      https://github.com/llvm/llvm-project/commit/65c7ea713e0b411a707b0ccac374bda9f30234ea
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  SLPVectorizer: Avoid looking at uselists of constants (#134578)


  Commit: 431c8dd0736c61176831750783d1195b9aa1a308
      https://github.com/llvm/llvm-project/commit/431c8dd0736c61176831750783d1195b9aa1a308
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/include/mlir/IR/Diagnostics.h
    M mlir/lib/IR/Diagnostics.cpp
    R mlir/test/Conversion/MemRefToLLVM/invalid-uint.mlir
    M mlir/test/Conversion/MemRefToLLVM/invalid.mlir
    R mlir/test/Conversion/MemRefToLLVM/issue-70160.mlir

  Log Message:
  -----------
  [mlir][IR] Add support for UnknownLoc to `verify-diagnostics` (#134421)

Diagnostics at unknown locations can now be verified with
`-verify-diagnostics`.

Example:
```
// expected-error at unknown {{something went wrong}}
```

Also clean up some MemRefToLLVM conversion tests that had to redirect
all errors to stdout in order to FileCheck them. All of those tests can
now be stored in a single `invalid.mlir`. That was not possible before.


  Commit: 5748ddbab4883420ea23d2319006d814c4bfbda4
      https://github.com/llvm/llvm-project/commit/5748ddbab4883420ea23d2319006d814c4bfbda4
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [SLP] NFC. Add a comment to introduce the alternate instruction. (#134572)


  Commit: 3654621e8796508cc00b6f08241ab951af416fa1
      https://github.com/llvm/llvm-project/commit/3654621e8796508cc00b6f08241ab951af416fa1
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp

  Log Message:
  -----------
  [X86][NFC] Use `Triple &` to avoid copy (#134532)


  Commit: 0fc7aec349394d4713bd88fb5f0319e39b96f187
      https://github.com/llvm/llvm-project/commit/0fc7aec349394d4713bd88fb5f0319e39b96f187
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
    A bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s

  Log Message:
  -----------
  [BOLT] Gadget scanner: detect address materialization and arithmetic (#132540)

In addition to authenticated pointers, consider the contents of a
register safe if it was
* written by PC-relative address computation
* updated by an arithmetic instruction whose input address is safe


  Commit: c9157d4692bb47b1fa6f053fd780ff47415590d5
      https://github.com/llvm/llvm-project/commit/c9157d4692bb47b1fa6f053fd780ff47415590d5
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [llvm][docs] Reorder sections in GitHub.rst (#134212)

Reorder sections in GitHub.rst so that "Branches" and "Stacked Pull
Requests" appear after the more general section on pull requests. This
improves the conceptual flow for readers new to the process:

New order:
  * Introduction
  * Before your first PR
  * Pull Requests
  * Approvals
  * Landing your change
  * Branches
  * Stacked Pull Requests
  * ...

Previous order:
  * Introduction
  * Before your first PR
  * Branches
  * Stacked Pull Requests
  * Pull Requests
  * Approvals
  * Landing your change
  * ...

This change only reorders existing text - no content edits.


  Commit: 7b007c092d665bcb3f00ff937e04b20e6ec32c55
      https://github.com/llvm/llvm-project/commit/7b007c092d665bcb3f00ff937e04b20e6ec32c55
  Author: Jack Frankland <jack.frankland at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir

  Log Message:
  -----------
  [mlir][tosa-to-linalg] Add acc_type lowering Support (#134267)

Add support for lowering of convolution operations where the `acc_type`
attribute differs from the result type of the operation. The only case
of this in for convolutions in the TOSA-v1.0 specification is an fp16
convolution which internally uses an fp32 accumulator; all other
operations have accumulator types that match their output/result types.

Add lit tests for the fp16 convolution with fp32 accumulator operators
described above.

Signed-off-by: Jack Frankland <jack.frankland at arm.com>


  Commit: 2c107238d54dde577de96455e6d29c0ff1b2b953
      https://github.com/llvm/llvm-project/commit/2c107238d54dde577de96455e6d29c0ff1b2b953
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Passes/DataflowAnalysis.h
    M bolt/lib/Passes/PAuthGadgetScanner.cpp

  Log Message:
  -----------
  [BOLT] Make DataflowAnalysis::getStateBefore() const (NFC) (#133308)


  Commit: 409df9f74c04710c1b5ca9a4d33521a590ab3bf0
      https://github.com/llvm/llvm-project/commit/409df9f74c04710c1b5ca9a4d33521a590ab3bf0
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [TTI][LV] Change the prototype of preferInLoopReduction. nfc (#132698)

This patch changes the preferInLoopReduction function to take a
RecurKind instead of an unsigned Opcode.
This makes it possible to distinguish non-arithmetic reductions such as
min/max, AnyOf, and FindLastIV, and also helps unify IAnyOf with FAnyOf
and IFindLastIV with FFindLastIV.

Related patch #118393 #131830


  Commit: b9c876dd9a3334a26f1cc975b23a91821895aa16
      https://github.com/llvm/llvm-project/commit/b9c876dd9a3334a26f1cc975b23a91821895aa16
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/test/Transforms/DoConcurrent/loop_nest_test.f90

  Log Message:
  -----------
  [flang][test] fix sporadically failing test (#134608)

The test is checking output from MLIR debug prints. MLIR passes can be
executed in parallel, for example a pass on func.func might schedule
different func.func operations in different threads. This led to
intermittent test failures where debug output from different threads
became mixed up.

Fix by disabling mlir multithreading for this test.


  Commit: b9ec68431b45a9859517aacac684e7290f1679f2
      https://github.com/llvm/llvm-project/commit/b9ec68431b45a9859517aacac684e7290f1679f2
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/C/drs/dr0xx.c
    M clang/test/Sema/incomplete-decl.c
    M clang/test/Sema/tentative-decls.c

  Log Message:
  -----------
  Correctly diagnose incomplete arrays with static storage in C (#134374)

A file scope declaration without an initializer which is neither extern
nor thread_local is a tentative definition. If the declaration of an
identifier for an object is a tentative definition and has internal
linkage, the declared type shall not be an incomplete type.

Clang was previously failing to diagnose this in -pedantic mode.

Fixes #50661

---------

Co-authored-by: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>


  Commit: 96de8435b90e5164da2d38ee34594e86069360e7
      https://github.com/llvm/llvm-project/commit/96de8435b90e5164da2d38ee34594e86069360e7
  Author: Jorn Tuyls <jtuyls at users.noreply.github.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [mlir][NVVM] Fix default label unreachable warning in `getVoteSyncIntrinsicId` (#134600)

Fixes the following warning after the changes in
https://github.com/llvm/llvm-project/pull/134309:

```
llvm-project/mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp:134:3: warning: default label in switch which covers all enumeration values [-Wcovered-switch-default]
  default:
  ^
1 warning generated.
```


  Commit: 6c7c8b4776f51dc66138f71333e6ada0c33ca5e2
      https://github.com/llvm/llvm-project/commit/6c7c8b4776f51dc66138f71333e6ada0c33ca5e2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [X86] LowerINTRINSIC_WO_CHAIN - cleanup and clang-format VP2INTERSECT handling. NFC.


  Commit: c9280ba25aef6cd47e973a439da23c7b52bddb56
      https://github.com/llvm/llvm-project/commit/c9280ba25aef6cd47e973a439da23c7b52bddb56
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Simplify emitAtomicRMWLegalRemark. NFC. (#134614)


  Commit: bd84d66700b23132eecea71fb81d6d7378473937
      https://github.com/llvm/llvm-project/commit/bd84d66700b23132eecea71fb81d6d7378473937
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Relocations.cpp
    A lld/test/ELF/loongarch-relax-tls-ie.s
    M lld/test/ELF/loongarch-tls-ie.s

  Log Message:
  -----------
  [lld][LoongArch] Convert TLS IE to LE in the normal or medium code model (#123680)

Original code sequence:
* pcalau12i $a0, %ie_pc_hi20(sym)
* ld.d           $a0, $a0, %ie_pc_lo12(sym)

The code sequence converted is as follows:
* lu12i.w   $a0, %le_hi20(sym)         # le_hi20 != 0, otherwise NOP
* ori          $a0, src, %le_lo12(sym)  # le_hi20 != 0, src = $a0,
                                                         # otherwise,    src = $zero

TODO: When relaxation is enabled, redundant NOP can be removed. This
will be implemented in a future patch.
    
Note: In the normal or medium code model, original code sequence with
relocations allow interleaving, because converted code sequence
calculates the absolute offset. However, in extreme code model, to
identify the current code model, the first four instructions with
relocations must appear consecutively.


  Commit: 37deb0959311bba0d1d51ee9b9d24d1ea400f6d4
      https://github.com/llvm/llvm-project/commit/37deb0959311bba0d1d51ee9b9d24d1ea400f6d4
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Utils.h
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/MemRef/Transforms/NormalizeMemRefs.cpp

  Log Message:
  -----------
  [MLIR][Affine] Fix signatures of normalize memref utilities (#134466)

These methods were passing derived op types by pointers, which deviates
from the style. While on this, fix obsolete comments on those methods.


  Commit: 4d1e4eff5f6c6c62781926b0d31ad155364ffe62
      https://github.com/llvm/llvm-project/commit/4d1e4eff5f6c6c62781926b0d31ad155364ffe62
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/DerivedTypes.h

  Log Message:
  -----------
  [IR] Avoid call to deprecated PointerType::get (NFC) (#134609)

Should keep MSVC quiet as noticed by @rksimon in #134517.

Assertions have been copied over from PointerType::get in order to not
silently change invariants with this call.


  Commit: 9fe6f6a0d430b872750354c20f3e4a651bd1f135
      https://github.com/llvm/llvm-project/commit/9fe6f6a0d430b872750354c20f3e4a651bd1f135
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 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
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch2/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch3/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch4/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel

  Log Message:
  -----------
  [bazel] Change `gentbl_cc_library(tbl_outs)` to dicts (#134349)

Follow up from https://github.com/llvm/llvm-project/pull/134271


  Commit: e2fe78797fa39e22ebb3c65383d1bd30490535e5
      https://github.com/llvm/llvm-project/commit/e2fe78797fa39e22ebb3c65383d1bd30490535e5
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/SyncScope.h
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaOpenCL/atomic-ops.cl

  Log Message:
  -----------
  [Clang] Use "syncscope" instead of "synchscope". NFC. (#134616)

This matches the spelling of the keyword in LLVM IR.


  Commit: 4509bc12994ade02eda03642fa5bf5f68691f768
      https://github.com/llvm/llvm-project/commit/4509bc12994ade02eda03642fa5bf5f68691f768
  Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/test/CodeGen/X86/powi.ll

  Log Message:
  -----------
  [X86][GlobalISel] Enable POWI function with libcall mapping (#134369)


  Commit: bafa2f4442bcee26f05c22369d41646d5c8befb9
      https://github.com/llvm/llvm-project/commit/bafa2f4442bcee26f05c22369d41646d5c8befb9
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/lib/Conversion/MemRefToLLVM/AllocLikeConversion.cpp
    M mlir/test/Conversion/MemRefToLLVM/invalid.mlir

  Log Message:
  -----------
  [mlir][memref] Check memory space before lowering alloc ops (#134427)

Check the memory space before lowering allocation ops, instead of
starting the lowering and then rolling back the pattern when the memory
space was found to be incompatible with LLVM.

Note: This is in preparation of the One-Shot Dialect Conversion
refactoring.

Note: `isConvertibleAndHasIdentityMaps` now also checks the memory
space.


  Commit: 2f6bc47a18d9a97635b76520f0e33391aa72ba68
      https://github.com/llvm/llvm-project/commit/2f6bc47a18d9a97635b76520f0e33391aa72ba68
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/Interfaces/VectorInterfaces.td
    M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/SubsetOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Standardise `valueToStore` Naming Across Vector Ops (NFC) (#134206)

This change standardises the naming convention for the argument
representing the value to store in various vector operations.
Specifically, it ensures that all vector ops storing a value—whether
into memory, a tensor, or another vector — use `valueToStore` for the
corresponding argument name.

Updated operations:
* `vector.transfer_write`, `vector.insert`, `vector.scalable_insert`,
  `vector.insert_strided_slice`.

For reference, here are operations that currently use `valueToStore`:
* `vector.store` `vector.scatter`, `vector.compressstore`,
  `vector.maskedstore`.

This change is non-functional (NFC) and does not affect the
functionality of these operations.

Implements #131602


  Commit: 382962b4a848f66cddbd7d04f6d613fe93a3f125
      https://github.com/llvm/llvm-project/commit/382962b4a848f66cddbd7d04f6d613fe93a3f125
  Author: Krisztian Rugasi <Krisztian.Rugasi at hightec-rt.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [GlobalISel] Fix dangling reference in CombinerHelper::matchCombineExtractedVectorLoad


  Commit: 67dd2019aca117798bbb0eb9e0dc5560c06864fc
      https://github.com/llvm/llvm-project/commit/67dd2019aca117798bbb0eb9e0dc5560c06864fc
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Processors.td
    A llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll

  Log Message:
  -----------
  Recommit [AArch64][SVE]Use  FeatureUseFixedOverScalableIfEqualCost for A510/A520 (#134606)

Recommit. This work was done by #132246 but failed buildbots due to the
test introduced needing updates

Inefficient SVE codegen occurs on at least two in-order cores, those
being Cortex-A510 and Cortex-A520. For example a simple vector add

```
void foo(float a, float b, float dst, unsigned n) {
    for (unsigned i = 0; i < n; ++i)
        dst[i] = a[i] + b[i];
}
```

Vectorizes the inner loop into the following interleaved sequence of
instructions.

```
        add     x12, x1, x10
        ld1b    { z0.b }, p0/z, [x1, x10]
        add     x13, x2, x10
        ld1b    { z1.b }, p0/z, [x2, x10]
        ldr     z2, [x12, #1, mul vl]
        ldr     z3, [x13, #1, mul vl]
        dech    x11
        add     x12, x0, x10
        fadd    z0.s, z1.s, z0.s
        fadd    z1.s, z3.s, z2.s
        st1b    { z0.b }, p0, [x0, x10]
        addvl   x10, x10, #2
        str     z1, [x12, #1, mul vl]
```

By adjusting the target features to prefer fixed over scalable if the
cost is equal we get the following vectorized loop.

```
         ldp q0, q3, [x11, #-16]
         subs    x13, x13, #8
         ldp q1, q2, [x10, #-16]
         add x10, x10, #32
         add x11, x11, #32
         fadd    v0.4s, v1.4s, v0.4s
         fadd    v1.4s, v2.4s, v3.4s
         stp q0, q1, [x12, #-16]
         add x12, x12, #32
```

Which is more efficient.


  Commit: 771b94fa834b71cfcb0c16b875f656c7facdcb2f
      https://github.com/llvm/llvm-project/commit/771b94fa834b71cfcb0c16b875f656c7facdcb2f
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [NFC][SPIRV] remove unimplemented function define for `selectCross` (#134478)

- `selectCross` looks to be a function that had its implementation and
usage removed but this define some how stuck around.
- this change removes the definition.


  Commit: 0ab2061c4fd0feac8b142ff76ed823534bebc634
      https://github.com/llvm/llvm-project/commit/0ab2061c4fd0feac8b142ff76ed823534bebc634
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp

  Log Message:
  -----------
  [WebAssembly] Represent trap instructions as `poison` (#134553)

The WebAssemblyLowerRefTypesIntPtrConv pass currently uses `undef` to
represent trap instructions. These can instead be represented by the
`poison` value.


  Commit: b2711e1526f9384be4905f516a5503427e0bafd7
      https://github.com/llvm/llvm-project/commit/b2711e1526f9384be4905f516a5503427e0bafd7
  Author: Asher Mancinelli <ashermancinelli at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/test/Fir/invalid-types.fir
    M flang/unittests/Optimizer/FIRTypesTest.cpp

  Log Message:
  -----------
  [flang][nfc] Support volatile on ref, box, and class types (#134386)

Part one of merging #132486. Add support for representing volatility in
the type system for reference, box, and class types. Don't do anything
with volatile just yet, only support and test their representation and
utility functions.

The naming convention is a little goofy - `fir::isa_volatile_type` and
`fir::updateTypeWithVolatility` use different capitalization, but I put
them near similar functions and tried to match the surrounding
conventions and [the
docs](https://github.com/llvm/llvm-project/blob/main/flang/docs/C%2B%2Bstyle.md#naming)
best I could.


  Commit: 0d71d9ab28d626e85a0085a50ff634f76a950ce0
      https://github.com/llvm/llvm-project/commit/0d71d9ab28d626e85a0085a50ff634f76a950ce0
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CMakeLists.txt
    R clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    A clang/lib/CodeGen/TargetBuiltins/CMakeLists.txt
    A clang/lib/CodeGen/Targets/CMakeLists.txt
    A clang/lib/CodeGen/Targets/HLSLBufferLayoutBuilder.cpp

  Log Message:
  -----------
  Reland [Clang][Cmake] fix libtool duplicate member name warnings (#133850)

fixes https://github.com/llvm/llvm-project/issues/133199

As of the third commit the fix to the linker missing references in
`Targets/DirectX.cpp` found in
https://github.com/llvm/llvm-project/pull/133776 was fixed by moving
`HLSLBufferLayoutBuilder.cpp` to `clang/lib/CodeGen/Targets/`.

It fixes the circular reference issue found in
https://github.com/llvm/llvm-project/pull/133619 for all
`-DBUILD_SHARED_LIBS=ON` builds by removing `target_link_libraries` from
the sub directory cmake files.

testing for amdgpu offload was done via
`cmake -B ../llvm_amdgpu -S llvm -GNinja -C
offload/cmake/caches/Offload.cmake -DCMAKE_BUILD_TYPE=Release`

PR https://github.com/llvm/llvm-project/pull/132252 Created a second
file that shared <TargetName>.cpp in clang/lib/CodeGen/CMakeLists.txt

For example There were two AMDGPU.cpp's one in TargetBuiltins and the
other in Targets. Even though these were in different directories
libtool warns that it might not distinguish them because they share the
same base name.

There are two potential fixes. The easy fix is to rename one of them and
keep one cmake file. That solution though doesn't future proof this
problem in the event of a third <TargetName>.cpp and it seems teams want
to just use the target name

https://github.com/llvm/llvm-project/pull/132252#issuecomment-2758178483.

The alternative fix that this PR went with is to seperate the cmake
files into their own sub directories as static libs.


  Commit: cff65657d9896cc04ca96907dd8e789403432a28
      https://github.com/llvm/llvm-project/commit/cff65657d9896cc04ca96907dd8e789403432a28
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [mlir][spirv] Fix incorrect argument erasure in deserializer (#134610)

The current implementation iterates and modifies the list of arguments
at the same time. Depending on the number of arguments this will trigger
an assert: `assert(index < arguments.size())`. This change replaces loop
with a range based erasure.


  Commit: 82103dfae9b9ee03f8935f1c8987c7eaecbe9359
      https://github.com/llvm/llvm-project/commit/82103dfae9b9ee03f8935f1c8987c7eaecbe9359
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CMakeLists.txt
    A clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    R clang/lib/CodeGen/TargetBuiltins/CMakeLists.txt
    R clang/lib/CodeGen/Targets/CMakeLists.txt
    R clang/lib/CodeGen/Targets/HLSLBufferLayoutBuilder.cpp

  Log Message:
  -----------
  Revert "Reland [Clang][Cmake] fix libtool duplicate member name warnings" (#134656)

Reverts llvm/llvm-project#133850


  Commit: 8fddef8483dc9eb569580ffd13695b8f54d3c058
      https://github.com/llvm/llvm-project/commit/8fddef8483dc9eb569580ffd13695b8f54d3c058
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/CodeGen/AArch64/vector-insert-dag-combines.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/pr119158.ll

  Log Message:
  -----------
  [SelectionDAG] Introducing a new ISD::POISON SDNode to represent the poison value in the IR. (#125883)

A new ISD::POISON SDNode is introduced to represent the `poison value`
in the IR, replacing the previous use of ISD::UNDEF.


  Commit: 28a391848cc58400a3103730138d46c75871c867
      https://github.com/llvm/llvm-project/commit/28a391848cc58400a3103730138d46c75871c867
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/test/Bitcode/thinlto-unused-type-tests.ll

  Log Message:
  -----------
  Bitcode: Convert test to opaque pointers


  Commit: 48bad5bbcdd2afa140e1fca075d46feebcf1bb18
      https://github.com/llvm/llvm-project/commit/48bad5bbcdd2afa140e1fca075d46feebcf1bb18
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/cmake/caches/HLSL.cmake

  Log Message:
  -----------
  [HLSL] Include SPIRV in LLVM_TARGETS_TO_BUILD in the HLSL cmake cache (#133287)

Since SPIRV is no longer an experimental target this wasn't actually
enabling it any more.


  Commit: 7fa388d77b61685a1e7d359ceb6f73c60f1ade83
      https://github.com/llvm/llvm-project/commit/7fa388d77b61685a1e7d359ceb6f73c60f1ade83
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/threadprivate-host-association-3.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix bug with default(none) and host-assoc threadprivate variable (#134122)

When a host associated `threadprivate` variable was used in a parallel
region with `default(none)` in an internal subroutine was failing,
because the compiler did not properly determine that the variable was
pre-determined `threadprivate` and thus should not have been reported as
missing a DSA.


  Commit: 954ccee5d53032f1cdea23368e11922edc20615d
      https://github.com/llvm/llvm-project/commit/954ccee5d53032f1cdea23368e11922edc20615d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/Import/pack-expansion-expr/test.cpp
    M clang/test/SemaTemplate/attributes.cpp
    M clang/test/SemaTemplate/partial-order.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp

  Log Message:
  -----------
  [clang] fix partial ordering of NTTP packs (#134461)

This fixes partial ordering of pack expansions of NTTPs, by procedding
with the check using the pattern of the NTTP through the rules of the
non-pack case.

This also unifies almost all of the different versions of
FinishTemplateArgumentDeduction (except the function template case).
This makes sure they all follow the rules consistently, instantiating
the parameters and comparing those with the argument.

Fixes #132562


  Commit: e2885772f05ddf9d81c54c5489801108838ca053
      https://github.com/llvm/llvm-project/commit/e2885772f05ddf9d81c54c5489801108838ca053
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/Headers/llvm_libc_wrappers/stdlib.h

  Log Message:
  -----------
  [libc] Fix function that wasn't updated in wrapper headers


  Commit: 4b90f24db81fb4378d9f4816f31e16195d8adb0f
      https://github.com/llvm/llvm-project/commit/4b90f24db81fb4378d9f4816f31e16195d8adb0f
  Author: Julian Lettner <yln at users.noreply.github.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M lldb/test/API/functionalities/asan/Makefile
    M lldb/test/API/functionalities/asan/TestMemoryHistory.py
    M lldb/test/API/functionalities/asan/TestReportData.py

  Log Message:
  -----------
  [LLDB] Add integration test for libsanitizers trace collection (#134323)

Add integration test for libsanitizers trace collection
(`SanitizersAllocationTraces=all`).
    
rdar://144244084


  Commit: c75eac7c0347b2df88773983bef1e72cb53ad35d
      https://github.com/llvm/llvm-project/commit/c75eac7c0347b2df88773983bef1e72cb53ad35d
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    A lld/test/COFF/imports-static-lib-indirect.test
    A lld/test/COFF/imports-static-lib.test
    R lld/test/COFF/undefined_lazy.test

  Log Message:
  -----------
  [LLD][COFF] Don't dllimport from static libraries (#134443)

This reverts commit 6a1bdd9 and re-instate behavior that matches what
MSVC link.exe does, that is, error out when trying to dllimport a symbol
from a static library.

A hint is now displayed in stdout, mentioning that we should rather dllimport the symbol
from a import library.

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


  Commit: b09daa4b2314342ed9084d7d85ccd3294fd68021
      https://github.com/llvm/llvm-project/commit/b09daa4b2314342ed9084d7d85ccd3294fd68021
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [llvm][docs] 2 small fixes to GitHub guide (#134620)

1. `arc` is long gone, no need to mention it.
2. Say exactly where user branches can be made.


  Commit: 268c065eab06b81a0d7256ac62c0865b3781e236
      https://github.com/llvm/llvm-project/commit/268c065eab06b81a0d7256ac62c0865b3781e236
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    A clang/test/CodeGenCoroutines/pr134409.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp

  Log Message:
  -----------
  [fatlto] Add coroutine passes when using FatLTO with ThinLTO (#134434)

When coroutines are used w/ both -ffat-lto-objects and -flto=thin,
the coroutine passes are not added to the optimization pipelines.
Ensure they are added before ModuleOptimization to generate a
working ELF object.

Fixes #134409.


  Commit: 7fe6e70e7c19a0f5309f1eb1b84f9094189ebff7
      https://github.com/llvm/llvm-project/commit/7fe6e70e7c19a0f5309f1eb1b84f9094189ebff7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.h
    M llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.cpp
    M llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.h
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp
    M llvm/lib/Target/NVPTX/NVPTXAtomicLower.cpp
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.h
    M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp
    M llvm/lib/Target/NVPTX/NVPTXPeephole.cpp
    M llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
    M llvm/lib/Target/NVPTX/NVVMReflect.cpp

  Log Message:
  -----------
  [NFC][LLVM][NVPTX] Cleanup pass initialization for NVPTX (#134311)

- Move all pass initialization function calls to NVPTX target
initialization and out of individual pass constructors.
- Move all pass initialization function declaration to NVPTX.h.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: 16c84c4475b909d2de455a44139643c03fe3fe25
      https://github.com/llvm/llvm-project/commit/16c84c4475b909d2de455a44139643c03fe3fe25
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M .github/new-prs-labeler.yml
    M clang/include/clang/Basic/Builtins.td
    A clang/include/clang/Basic/BuiltinsDirectX.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Sema/Sema.h
    A clang/include/clang/Sema/SemaDirectX.h
    M clang/lib/Basic/Targets/DirectX.cpp
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenFunction.h
    A clang/lib/CodeGen/TargetBuiltins/DirectX.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    A clang/lib/Sema/SemaDirectX.cpp
    A clang/test/CodeGenDirectX/Builtins/dot2add.c

  Log Message:
  -----------
  [DirectX] Add target builtins (#134439)

- fixes #132303
- Moves dot2add from a language builtin to a target builtin.
-  Sets the scaffolding for Sema checks for DX builtins
-  Setup DirectX backend as able to have target builtins
- Adds a DX TargetBuiltins emitter in
`clang/lib/CodeGen/TargetBuiltins/DirectX.cpp`


  Commit: efce8f1ce680b86af48c49edda2c3cbb370a6ba0
      https://github.com/llvm/llvm-project/commit/efce8f1ce680b86af48c49edda2c3cbb370a6ba0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [X86] combineX86ShufflesRecursively - use enumerate to iterate over shuffle operands. NFC.


  Commit: 0a35dd7e99596b1a0316bb81bee3c698adaf0a05
      https://github.com/llvm/llvm-project/commit/0a35dd7e99596b1a0316bb81bee3c698adaf0a05
  Author: Linux User <linuxusergd at outlook.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/tools/llvm-ar/llvm-ar.cpp

  Log Message:
  -----------
  [llvm-ar] --help: fix unquoted angle bracket (#101364)

Changes the argument in llvm-ar help message from `-M [<mri-script]` to
`-M [< mri-script]`


  Commit: 1847b00330649aa22a03ac30832bf447f5b0dd7a
      https://github.com/llvm/llvm-project/commit/1847b00330649aa22a03ac30832bf447f5b0dd7a
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M libcxx/utils/libcxx/test/params.py

  Log Message:
  -----------
  [libc++][ci] Removes C++2b selection option. (#88557)

Since Clang 16 is no longer supported all compilers support C++23.


  Commit: 01ec74dfd0db307a3b67cc67448269231cd2e83c
      https://github.com/llvm/llvm-project/commit/01ec74dfd0db307a3b67cc67448269231cd2e83c
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    A flang/test/Lower/OpenMP/copyprivate3.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix copyprivate of procedure pointers (#134292)

Just modify the assert to consider fir::BoxProcType as valid. No
other changes are needed.

Fixes #131549


  Commit: a406fb8f5a6a65144e5c2564c17ac9ee29da43ed
      https://github.com/llvm/llvm-project/commit/a406fb8f5a6a65144e5c2564c17ac9ee29da43ed
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M libcxx/test/libcxx/clang_tidy.gen.py
    M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
    M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
    A libcxx/test/tools/clang_tidy_checks/robust_against_operator_ampersand.cpp
    A libcxx/test/tools/clang_tidy_checks/robust_against_operator_ampersand.hpp

  Log Message:
  -----------
  [libc++] Clang-tidy operator& hijacker. (#128366)

Guards against introducing new places where operator& depends on a
template type.


  Commit: f7cc213d58df01fc630500c5c5ebe48b5577653d
      https://github.com/llvm/llvm-project/commit/f7cc213d58df01fc630500c5c5ebe48b5577653d
  Author: Lee Wei <lee10202013 at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp

  Log Message:
  -----------
  [ConstraintSystem] Update comments (#127351)

It took me some time to fully understand the implementation of
Fourier–Motzkin elimination in the Constraint System, so I added an
example in the comments. Hopefully future developers can understand the
algorithm more easily with the example.


  Commit: f413772b318c2da4dfc488df81cb3c458606301f
      https://github.com/llvm/llvm-project/commit/f413772b318c2da4dfc488df81cb3c458606301f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-last-inst-vectorized.ll

  Log Message:
  -----------
  [SLP]Fix last instruction selection for vectorized last instruction in SplitVectorize nodes

If the last instruction in the SplitVectorize node is vectorized and
scheduled as part of some bundles, the SplitVectorize node might be
placed in the wrong order, leading to a compiler crash. Need to check if
the vectorized node has vector value and place the SplitVectorize node after the vector instruction to prevent a compile crash.

Fixes issue reported in https://github.com/llvm/llvm-project/pull/133091#issuecomment-2782826805


  Commit: 600eeed51f538adc5f43c8223a57608e73aba31f
      https://github.com/llvm/llvm-project/commit/600eeed51f538adc5f43c8223a57608e73aba31f
  Author: Henry Jiang <h243jian at uwaterloo.ca>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp

  Log Message:
  -----------
  [JITLink][NFC] Guard functions used only for debug for `XCOFFLinkGraphBuilder` (#134413)


  Commit: 112af8796451e19b43d7a0788039a27b08802974
      https://github.com/llvm/llvm-project/commit/112af8796451e19b43d7a0788039a27b08802974
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp

  Log Message:
  -----------
  [mlir][tosa] Add parenthesis for the weight padding calculation (#134420)

Minor change.

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: 1c8291ffc4d08ca6be915b880d163bfcf91b0c48
      https://github.com/llvm/llvm-project/commit/1c8291ffc4d08ca6be915b880d163bfcf91b0c48
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/xcvmem.ll

  Log Message:
  -----------
  RISCV: Convert test to opaque pointers


  Commit: cb9afe53bf6c7ceb0bdf3b579c185cbff15a3b38
      https://github.com/llvm/llvm-project/commit/cb9afe53bf6c7ceb0bdf3b579c185cbff15a3b38
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix validation pass assert (#134445)

This fixes a validation pass assert when processing ops with quantized
element types.
The failure case is added to invalid.mlir
The fix is to re-order the validation checking so that only ops with
int/float operands and results pass the first stage of validation pass,
so that the remaining checks do not need to handle quantized data types.

Signed-off-by: Tai Ly <tai.ly at arm.com>


  Commit: fbc8335311b27d73fb685d5ebfb702f7acf134d2
      https://github.com/llvm/llvm-project/commit/fbc8335311b27d73fb685d5ebfb702f7acf134d2
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
    A mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-distribute-reduction.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-reduction.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    A offload/test/offloading/fortran/basic-target-parallel-reduction.f90
    A offload/test/offloading/fortran/basic-target-teams-parallel-reduction.f90

  Log Message:
  -----------
  [MLIR][OpenMP] Add codegen for teams reductions (#133310)

This patch adds the lowering of teams reductions from the omp dialect to
LLVM-IR. Some minor cleanup was done in clang to remove an unused
parameter.


  Commit: 4701afaeaf2aba604a6160cde04634be88e21022
      https://github.com/llvm/llvm-project/commit/4701afaeaf2aba604a6160cde04634be88e21022
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [X86] combineX86ShufflesRecursively - merge loops peeking through shuffle operands. NFC.

Merge loops to peek through free insert_subvector / bitcasts / extract_subvector.

To keep this NFC I haven't reordered the peek throughs - this will done in a future patch to help with #133947 regressions


  Commit: 783201b184572a07efe2dc6b6b9110873421cf11
      https://github.com/llvm/llvm-project/commit/783201b184572a07efe2dc6b6b9110873421cf11
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/IPConstantProp/pthreads.ll
    M llvm/test/Transforms/Attributor/allocator.ll
    M llvm/test/Transforms/Attributor/callbacks.ll
    M llvm/test/Transforms/Attributor/issue87856.ll
    M llvm/test/Transforms/Attributor/memory_locations.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/noundef.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll

  Log Message:
  -----------
  Attributor: Don't follow uses of ConstantData (#134573)

These should not really have uselists, and it's not worth the compile
time of looking at all uses of trivial constants. The main observable
change of this is it no longer adds align attributes on constant null
uses, but those are not useful. Some of these cases should potentially
be more aggressive and not look at any Constant users.


  Commit: 23c27f3efcdda730b365698ade5fd0c1c283f2e7
      https://github.com/llvm/llvm-project/commit/23c27f3efcdda730b365698ade5fd0c1c283f2e7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
    M llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp
    M llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp
    M llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64LowerHomogeneousPrologEpilog.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64PostCoalescerPass.cpp
    M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
    M llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp
    M llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp
    M llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
    M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp

  Log Message:
  -----------
  [NFC][LLVM][AArch64] Cleanup pass initialization for AArch64 (#134315)

- Remove calls to pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: c1c0d551bae4e4f4ed13fcd9264834a2713fe44b
      https://github.com/llvm/llvm-project/commit/c1c0d551bae4e4f4ed13fcd9264834a2713fe44b
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/lib/Lower/IO.cpp
    M flang/test/Lower/io-derived-type.f90

  Log Message:
  -----------
  [flang] Non-type-bound defined IO lowering for an array of derived type (#134667)

Update Non-type-bound IO lowering to call OutputDerivedType for an array
of derived type (rather than OutputDescriptor).


  Commit: 1043f5cb0b117bd63369debe80a2d446126cc079
      https://github.com/llvm/llvm-project/commit/1043f5cb0b117bd63369debe80a2d446126cc079
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn

  Log Message:
  -----------
  [gn] port 16c84c4475b9


  Commit: 4607d39c7eded3ff6d425cbc502e30349078365c
      https://github.com/llvm/llvm-project/commit/4607d39c7eded3ff6d425cbc502e30349078365c
  Author: Pranav Kant <prka at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Fix build (#134697)

Fixes fallback from #134439


  Commit: 21d912121c9f41385b165a736be787527f5bd7c2
      https://github.com/llvm/llvm-project/commit/21d912121c9f41385b165a736be787527f5bd7c2
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/Makefile
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/TestConsecutiveWatchpoints.py
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/main.c
    M lldb/tools/debugserver/source/DNBBreakpoint.cpp

  Log Message:
  -----------
  [lldb][debugserver] Fix an off-by-one error in watchpoint identification (#134314)

debugserver takes the address of a watchpoint exception and calculates
which watchpoint was responsible for it. There was an off-by-one error
in the range calculation which causes two watchpoints on consecutive
ranges to not correctly identify hits to the second watchpoint. The
result is that lldb wouldn't show the second watchpoint as ever being
hit.

rdar://145107575


  Commit: 369c7739d0853b7931410037843d5a63f50bc0a1
      https://github.com/llvm/llvm-project/commit/369c7739d0853b7931410037843d5a63f50bc0a1
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    R lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/Makefile
    R lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/TestConsecutiveWatchpoints.py
    R lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/main.c
    M lldb/tools/debugserver/source/DNBBreakpoint.cpp

  Log Message:
  -----------
  Revert "[lldb][debugserver] Fix an off-by-one error in watchpoint identification (#134314)"

This reverts commit 21d912121c9f41385b165a736be787527f5bd7c2.

Failure on the aarch64 ubuntu bot when setting the 4th watchpoint;
may be a hardware limitation on that bot.  I thought creating four
watchpoints would be generally safe, but I don't need to do that
for my test, will re-land without it.


  Commit: 529e9127f0d61f177f2c62ade531d876cf89bf59
      https://github.com/llvm/llvm-project/commit/529e9127f0d61f177f2c62ade531d876cf89bf59
  Author: YLChenZ <chentongyongcz at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [clang][doc]: Merge entries with duplicate content. (#134089)

Before the patch:

![docb4](https://github.com/user-attachments/assets/6db1000f-d555-48b8-8a19-85c41b043fd8)
after the patch:

![doc-after](https://github.com/user-attachments/assets/1cff64b6-db2e-48d8-b0a9-a403fd61f8af)

Fixes #133706


  Commit: 10bef367a5643bc41d0172b02e080645c68f821a
      https://github.com/llvm/llvm-project/commit/10bef367a5643bc41d0172b02e080645c68f821a
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/zbb-cmp-combine.ll

  Log Message:
  -----------
  [RISCV][test] Fix a comment typo (#134242)


  Commit: 8f5a3ec649a3b46093c8a8140bbd91f21236fde6
      https://github.com/llvm/llvm-project/commit/8f5a3ec649a3b46093c8a8140bbd91f21236fde6
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common] Use HW_NCPUONLINE sysctl on NetBSD in GetNumberOfCPUs() (#134704)


  Commit: 76fee8f4edf10fb39f0323171c060e97ec0005b0
      https://github.com/llvm/llvm-project/commit/76fee8f4edf10fb39f0323171c060e97ec0005b0
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/interop-construct.f90

  Log Message:
  -----------
  [flang][OpenMP][NFC] Don't use special chars in error messages (#134686)

Some error messages were using a special char for `fi`, in the
word `specified`, probably due to a typo.

This caused an error on Windows: #134625


  Commit: 27c099bc84d1432752b3828f1ba95de24db76c5e
      https://github.com/llvm/llvm-project/commit/27c099bc84d1432752b3828f1ba95de24db76c5e
  Author: Drew Lewis <drew90 at vt.edu>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    A clang/test/CodeGen/Inputs/cuda.h
    R clang/test/CodeGen/include/cuda.h
    M clang/test/CodeGen/nvptx-surface.cu

  Log Message:
  -----------
  Move CodeGen cuda.h to Inputs from include (#134706)

Mirrors the behavior of CodeGenCUDA directory and the location of other
.h files in CodeGen.


  Commit: 9965f3d337bba09fbf2497a78123957fdaee0ffa
      https://github.com/llvm/llvm-project/commit/9965f3d337bba09fbf2497a78123957fdaee0ffa
  Author: Damien L-G <dalg24 at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/support.h
    M libcxx/test/std/atomics/atomics.types.generic/trivially_copyable.verify.cpp

  Log Message:
  -----------
  [libc++] Improve diagnostic when violating `std::atomic` trivially copyable mandates (#131754)

When attempting to instantiate `std::atomic` with a non trivially
copyable type, one gets errors from instantiating internals before the
actual static assertion that check the template parameter type
requirements.

The `verify` test for it had a `// ADDITIONAL_COMPILE_FLAGS: -Xclang
-verify-ignore-unexpected=error` directive to work around this issue.
The changes I propose enable us to drop that directive.
As I understand it, the `verify` test was misplaced so I moved it to
`test/{std -> libcxx}/atomics`.

(I ran into this while working on #121414 in which we would add another
static assertion in `__check_atomic_mandates`)


  Commit: 3479c574667eec375cc4ed91e0d63aa2d408b62c
      https://github.com/llvm/llvm-project/commit/3479c574667eec375cc4ed91e0d63aa2d408b62c
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/test/CodeGen/PowerPC/mcm-5.ll
    A llvm/test/CodeGen/PowerPC/ppc32-pic-bcl.ll
    M llvm/test/CodeGen/PowerPC/ppc32-pic-large.ll
    M llvm/test/CodeGen/PowerPC/ppc32-pic.ll

  Log Message:
  -----------
  PowerPC32:PIC: Update to bcl to fix branch prediction mis-predict issue (#134140)

Update `bl` to `bcl 20, 31, .+4` for 32bit PIC code gen so the link
stack is 
not corrupted and cause mis-predict for the branch predictor.

fixes: https://github.com/llvm/llvm-project/issues/128644


  Commit: 19dbde0e81e98758ae9d37ef027bc8d9bbd673df
      https://github.com/llvm/llvm-project/commit/19dbde0e81e98758ae9d37ef027bc8d9bbd673df
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
    M llvm/lib/Target/Lanai/Lanai.h
    M llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp
    M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
    M llvm/lib/Target/XCore/XCoreTargetMachine.cpp

  Log Message:
  -----------
  [NFC][LLVM] Cleanup pass initialization for ARM/ARV/Lanai/X86/XCore (#134400)

- Remove pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: 9fdac840ec4901a6e3c71249a136cbecc4a9921a
      https://github.com/llvm/llvm-project/commit/9fdac840ec4901a6e3c71249a136cbecc4a9921a
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common] Fix building with NetBSD 10.99.12 or newer (#134708)

https://github.com/NetBSD/src/commit/16543c49052c820334cffc5c69b2afde18f02458

__lwp_getprivate_fast() was moved to a new arch-specific header file.

Closes: #125566

Co-authored-by: Thomas Klausner <wiz at gatalith.at>


  Commit: 7d4cddadf2e9e59cde65592a1ea80576a1c1b0fc
      https://github.com/llvm/llvm-project/commit/7d4cddadf2e9e59cde65592a1ea80576a1c1b0fc
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/SelectionDAG/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0a1742708ddc


  Commit: 06bf7a99fd21c1c450d81d2dc8d3e529042181be
      https://github.com/llvm/llvm-project/commit/06bf7a99fd21c1c450d81d2dc8d3e529042181be
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 1f72fa29ecb4


  Commit: e1f6e40b282aef17e35de62f14e7b57b487fe2bc
      https://github.com/llvm/llvm-project/commit/e1f6e40b282aef17e35de62f14e7b57b487fe2bc
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 475cbf0ad6e7


  Commit: 78f624a0d41e9a304ab6f4ac713417b88c667173
      https://github.com/llvm/llvm-project/commit/78f624a0d41e9a304ab6f4ac713417b88c667173
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7013b51548c0


  Commit: 7aedebac8cb473555aa8a2928ac3851b0142921e
      https://github.com/llvm/llvm-project/commit/7aedebac8cb473555aa8a2928ac3851b0142921e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [VPlan] Populate ExitBlocks when cloning VPlan (NFC).

Update VPlan::duplicate to add cloned exit blocks to ExitBlocks.

Currently there are no uses of the exit blocks after cloning so this is
NFC at the moment.


  Commit: d4c16424cf295e7edb7ecd5f8831ff195f7a8fa7
      https://github.com/llvm/llvm-project/commit/d4c16424cf295e7edb7ecd5f8831ff195f7a8fa7
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Demangle/MicrosoftDemangle.cpp
    M llvm/test/Demangle/invalid-manglings.test

  Log Message:
  -----------
  [LLVM][Demangle] Fix MS Demangler to be stricter about wide string literals (#134483)

Static analysis detected that Demangler::demangleStringLiteral had a
potential overflow if not checking StringByteSize properly.

Added check to ensure that for wide string it is always even and that
there were the byte count did not mismatch the actual size of the
literal.

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


  Commit: 922260722795471870ef793f3187e9a37b145661
      https://github.com/llvm/llvm-project/commit/922260722795471870ef793f3187e9a37b145661
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/build/sync_source_lists_from_cmake.py
    M llvm/utils/gn/secondary/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    A llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni
    A llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn

  Log Message:
  -----------
  gn build: Add check-builtins target.

Tested on aarch64 Linux and x86_64 Linux.

Reviewers: aeubanks, nico

Reviewed By: aeubanks

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


  Commit: 15750a0ab2356bea9544b70a72edce421060086e
      https://github.com/llvm/llvm-project/commit/15750a0ab2356bea9544b70a72edce421060086e
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/standalone-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
    M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned2.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned3.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values-before-cxx23.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-camelback.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-lowercase.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-rewritten-binop.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-uppercase.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/for-range-copy.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp

  Log Message:
  -----------
  [clang-tidy] Use --match-full-lines instead of --strict-whitespace in check_clang_tidy (#133756)

See Discourse post here:
https://discourse.llvm.org/t/rfc-using-match-full-lines-in-clang-tidy-tests/85553

I've added `--match-partial-fixes` to all tests that were failing,
unless I noticed the fix was quick and trivial.


  Commit: d1a05721172272f7aab685b56d99e86814a15bff
      https://github.com/llvm/llvm-project/commit/d1a05721172272f7aab685b56d99e86814a15bff
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll

  Log Message:
  -----------
  [AMDGPU] Add buffer.fat.ptr.load.lds intrinsic wrapping raw rsrc version (#133015)

Add a buffer_fat_ptr_load_lds intrinsic, by analogy with
global_load_lds, which enables using `ptr addrspace(7)` to set the rsrc
and offset arguments to raw_ptr_buffer_load_lds.


  Commit: 3756ba3c87f78a2746f26434209e29ac288a5fc6
      https://github.com/llvm/llvm-project/commit/3756ba3c87f78a2746f26434209e29ac288a5fc6
  Author: vporpo <vporpodas at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Constant.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/include/llvm/SandboxIR/Values.def
    M llvm/lib/SandboxIR/Context.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement ConstantDataSequential and subclasses (#133547)

This patch implements sandboxir::ConstantDataSequential mirroring LLVM
IR.


  Commit: df28c81f5a2b61a3b5ad1e6274dd27697a9367ac
      https://github.com/llvm/llvm-project/commit/df28c81f5a2b61a3b5ad1e6274dd27697a9367ac
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/Makefile
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/TestConsecutiveWatchpoints.py
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/main.c
    M lldb/tools/debugserver/source/DNBBreakpoint.cpp

  Log Message:
  -----------
  [lldb][debugserver] Fix an off-by-one error in watchpoint identification (#134314)

debugserver takes the address of a watchpoint exception and calculates
which watchpoint was responsible for it. There was an off-by-one error
in the range calculation which causes two watchpoints on consecutive
ranges to not correctly identify hits to the second watchpoint. The
result is that lldb wouldn't show the second watchpoint as ever being
hit.

Re-landing this test with a modification to only require two
watchpoints in the test, instead of four.  If four watchpoints can
be set, it will test them.

rdar://145107575


  Commit: 2ac11daf92531c5de65dd645f4466c709f865a7e
      https://github.com/llvm/llvm-project/commit/2ac11daf92531c5de65dd645f4466c709f865a7e
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  [SCEV] Improve code around constant TC (NFC) (#133261)


  Commit: 6a94bd136db9393b50bcd99f183e61c2e6e873a9
      https://github.com/llvm/llvm-project/commit/6a94bd136db9393b50bcd99f183e61c2e6e873a9
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [PPC] Change placeholder from `undef` to `poison` (#134552)

Call `insertelement` on a `poison` value instead of `undef`.


  Commit: 3382aef944ef7a497248ef85df75ec04f6c21642
      https://github.com/llvm/llvm-project/commit/3382aef944ef7a497248ef85df75ec04f6c21642
  Author: amansharma612 <amansharma6122002 at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M libc/docs/porting.rst

  Log Message:
  -----------
  [libc] Fixed typo in porting.rst (#134488)

Co-authored-by: Aman Sharma <210100011 at iitb.ac.in>


  Commit: eeebdb9711a1c47b1639d1ebeac8b134f86c0634
      https://github.com/llvm/llvm-project/commit/eeebdb9711a1c47b1639d1ebeac8b134f86c0634
  Author: Steven Hedges <steven.hedges34 at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/toy.cpp

  Log Message:
  -----------
  [llvm] Fix Typo in Kaleidoscope BuildingAJIT Example (#134391)

Changed "precedecnce" to precedence.


  Commit: ad9f15ab5335ed3c3c40d3c148658b8f2c4223d6
      https://github.com/llvm/llvm-project/commit/ad9f15ab5335ed3c3c40d3c148658b8f2c4223d6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [VPlan] Introduce and use VPValue::replaceUsesOfWith (NFC).

Adds an API matching LLVM's IR Value, which simplifies some code a
bit.


  Commit: 01bc672b8a41774feff445b07e749262597501e4
      https://github.com/llvm/llvm-project/commit/01bc672b8a41774feff445b07e749262597501e4
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/test/CodeGenHLSL/cbuffer.hlsl

  Log Message:
  -----------
  [HLSL] Desugar ConstantArrayType when calculating cbuffer field layout (#134683)

When calculating the layout for a cbuffer field, if that field is a
ConstantArrayType, desguar it before casting it to a ConstantArrayType.
Closes #134668

---------

Co-authored-by: Eli Friedman <efriedma at quicinc.com>


  Commit: 9ce45579781317aade2004e970b352c0e06af291
      https://github.com/llvm/llvm-project/commit/9ce45579781317aade2004e970b352c0e06af291
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll

  Log Message:
  -----------
  [RISCV] Add coverage for reported miscompile in shuffle lowering

Derived from the example in https://github.com/llvm/llvm-project/issues/134126


  Commit: 9b63a92ca723293dfe8570d1b2881ce949f1f6cc
      https://github.com/llvm/llvm-project/commit/9b63a92ca723293dfe8570d1b2881ce949f1f6cc
  Author: Andres Chavarria <84650073+chavandres at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    A llvm/test/Transforms/Inline/SystemZ/inline-target-attr.ll
    A llvm/test/Transforms/Inline/SystemZ/lit.local.cfg

  Log Message:
  -----------
  Implement areInlineCompatible for SystemZ using feature bitset (#132976)

## What?
Implement `areInlineCompatible` for the SystemZ target using
FeatureBitset comparison.

## Why?
The default implementation in `TargetTransformInfoImpl.h` makes a string
comparison and only inlines when the target-cpu and the target-features
for caller and callee are the same. We are missing out on optimizations
when the callee has a subset of features of the caller.

## How?
Get the FeatureBitset of the caller and callee and check when callee is
a subset or equal to the caller's features. It's a similar
implementation to ARM, PowerPC...

## Testing?
Test cases check for when the callee is a subset of the caller, when
it's not a subset and when both are equals.


  Commit: ddb32a67c2e76bc0f69470a8d02a220e8083fa68
      https://github.com/llvm/llvm-project/commit/ddb32a67c2e76bc0f69470a8d02a220e8083fa68
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/AArch64/jump-table-partition.ll

  Log Message:
  -----------
  [NFC] Add a precommit test for aarch64 jump table partitioning (#125987)


  Commit: a38ad6e2a24b46eaea481c04de566dd2a45d667b
      https://github.com/llvm/llvm-project/commit/a38ad6e2a24b46eaea481c04de566dd2a45d667b
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp

  Log Message:
  -----------
  [mlir][tosa] Check empty Concat input for inferReturnTypeComponents (#134728)

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: 65813e0e94c0403dad61e8365b39d76d7b3bfc14
      https://github.com/llvm/llvm-project/commit/65813e0e94c0403dad61e8365b39d76d7b3bfc14
  Author: Tom Yang <zhenyutyang at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/CMakeLists.txt
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.cpp
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.h
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.td
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h

  Log Message:
  -----------
  Control Darwin parallel image loading with target.parallel-module-load (#134437)

A requested follow-up from
https://github.com/llvm/llvm-project/pull/130912 by @JDevlieghere to
control Darwin parallel image loading with the same
`target.parallel-module-load` that controls the POSIX dyld parallel
image loading. Darwin parallel image loading was introduced by
https://github.com/llvm/llvm-project/pull/110646.

This small change:
* removes
`plugin.dynamic-loader.darwin.experimental.enable-parallel-image-load`
and associated code.
* changes setting call site in
`DynamicLoaderDarwin::PreloadModulesFromImageInfos` to use the new
setting.

Tested by running `ninja check-lldb` and loading some targets.

Co-authored-by: Tom Yang <toyang at fb.com>


  Commit: 0afa872a0db41cba313df473aa3fea52a35c8e70
      https://github.com/llvm/llvm-project/commit/0afa872a0db41cba313df473aa3fea52a35c8e70
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/test/CodeGen/DirectX/saturate.ll

  Log Message:
  -----------
  [DirectX] Scalarize the dx.saturate intrinsic (#134381)

The DXIL Saturate op only takes scalars.

Fixes #134378.


  Commit: 99d12ac172f34e4963cf3a36536719149d30d788
      https://github.com/llvm/llvm-project/commit/99d12ac172f34e4963cf3a36536719149d30d788
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Fix build after 65813e0e94c0403dad61e8365b39d76d7b3bfc14


  Commit: d7354e337a4602da1e5913b3e6fceda2e8c5ecc0
      https://github.com/llvm/llvm-project/commit/d7354e337a4602da1e5913b3e6fceda2e8c5ecc0
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll

  Log Message:
  -----------
  [SLP][REVEC] Fix ShuffleVector does not consider alternate instruction. (#134599)


  Commit: 1f359610b048ae31e5ea3a0416f55405ff398753
      https://github.com/llvm/llvm-project/commit/1f359610b048ae31e5ea3a0416f55405ff398753
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp

  Log Message:
  -----------
  ObjCARC: Drop pointer bitcast handling (#134274)

There is more in the file to drop, but this looks like the easier
part.


  Commit: 735f5b1cb45c4245f1c068dda8271142457925ec
      https://github.com/llvm/llvm-project/commit/735f5b1cb45c4245f1c068dda8271142457925ec
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaTemplate/dependent-names.cpp

  Log Message:
  -----------
  [clang] fix DependentTemplateSpecializationType transform (#134748)

This changes the transform for DTST so it rebuilds the node if any of
the template arguments changed.

This fixes a regression reported here:
https://github.com/llvm/llvm-project/pull/133610#issuecomment-2784576267
which was introduced by https://github.com/llvm/llvm-project/pull/133610

There are no release notes since the regression was never released.


  Commit: 1356e202b2b2747220e12c2a8cbd28846bb61548
      https://github.com/llvm/llvm-project/commit/1356e202b2b2747220e12c2a8cbd28846bb61548
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/BPF/BPFMIChecking.cpp
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp

  Log Message:
  -----------
  [NFC][LLVM][BPF] Cleanup pass initialization for BPF (#134414)

- Remove calls to pass initialization from pass constructors and move
them to target initialization.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: a3754ade637f71d36495eb95ea2d8cab9885c9d9
      https://github.com/llvm/llvm-project/commit/a3754ade637f71d36495eb95ea2d8cab9885c9d9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUExportClustering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMarkLastScratchLoad.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUReserveWWMRegs.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURewriteUndefForPHI.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/lib/Target/AMDGPU/R600.h
    M llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp

  Log Message:
  -----------
  [NFC][LLVM][AMDGPU] Cleanup pass initialization for AMDGPU (#134410)

- Remove calls to pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: 707367621679742eae0e903470a5fe043424c698
      https://github.com/llvm/llvm-project/commit/707367621679742eae0e903470a5fe043424c698
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp

  Log Message:
  -----------
  [NFC][LLVM][DirectX] Cleanup pass initialization for DirectX (#134419)

- Remove calls to pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: 87afe4de22f24c81d6eca8c2ecdec5e57d6a961a
      https://github.com/llvm/llvm-project/commit/87afe4de22f24c81d6eca8c2ecdec5e57d6a961a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  OMPIRBuilder: Cleanup checking for GlobalValue (#134583)

GlobalValue already subsumes GlobalObject and GlobalVariable,
plus make use of the std::get<0> already copied to a variable
above.


  Commit: 8286b804d519d045fa1ee3a1a2e7fae66e5e30ef
      https://github.com/llvm/llvm-project/commit/8286b804d519d045fa1ee3a1a2e7fae66e5e30ef
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/ReplaceConstant.cpp

  Log Message:
  -----------
  OMPIRBuilder: Do not try to expand uses of ConstantData (#134584)


  Commit: 76e219d9c3b46e0cc1813e1e8452da0f4f54ab92
      https://github.com/llvm/llvm-project/commit/76e219d9c3b46e0cc1813e1e8452da0f4f54ab92
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll

  Log Message:
  -----------
  SeparateConstOffsetFromGEP: Add more tests with lower-gep (#134684)

I didn't see any failures while trying to break hasMoreThanOneUseInLoop
or other paths here.


  Commit: 1a9928442b7dbcd596d6b577809c22330706ccb5
      https://github.com/llvm/llvm-project/commit/1a9928442b7dbcd596d6b577809c22330706ccb5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll

  Log Message:
  -----------
  SeparateConstOffsetFromGEP: Avoid looking at constant uses (#134685)

We could be more aggressive and inspect uses of global variables,
if the use context instruction is in the same function.


  Commit: a168ddc470825091ad52da12042fb38491ed81d6
      https://github.com/llvm/llvm-project/commit/a168ddc470825091ad52da12042fb38491ed81d6
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Dialect/LLVMIR/blockaddress-canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/constant-folding.mlir
    M mlir/test/Dialect/LLVMIR/inlining.mlir
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    A mlir/test/Target/LLVMIR/Import/blockaddress.ll
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    A mlir/test/Target/LLVMIR/blockaddress.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Block address support (#134335)

Add support for import and translate.

MLIR does not support using basic block references outside a function
(like LLVM does), This PR does not consider changes to MLIR to that
respect. It instead introduces two new ops: `llvm.blockaddress` and
`llvm.blocktag`. Here's an example:

```
llvm.func @ba() -> !llvm.ptr {
  %0 = llvm.blockaddress <function = @ba, tag = <id = 1>> : !llvm.ptr
  llvm.br ^bb1
^bb1:  // pred: ^bb0
  llvm.blocktag <id = 1>
  llvm.return %0 : !llvm.ptr
}
```

Value `%0` hold the address of block tagged as `id = 1` in function
`@ba`. Block tags need to be unique within a function and use of
`llvm.blockaddress` requires a matching tag in a `llvm.blocktag`.


  Commit: 80fde75dc6c50a7d32f6dbfda9a6f2c24890b5cc
      https://github.com/llvm/llvm-project/commit/80fde75dc6c50a7d32f6dbfda9a6f2c24890b5cc
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZCopyPhysRegs.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp
    M llvm/lib/Target/SystemZ/SystemZLongBranch.cpp
    M llvm/lib/Target/SystemZ/SystemZPostRewrite.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/SystemZ/SystemZTDC.cpp

  Log Message:
  -----------
  [NFC][LLVM][SystemZ] Cleanup pass initialization for SystemZ (#134450)

- Remove calls to pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: 20eb60d3f2d416976b1b31384e97db21ee0f28c9
      https://github.com/llvm/llvm-project/commit/20eb60d3f2d416976b1b31384e97db21ee0f28c9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h

  Log Message:
  -----------
  [NFC][LLVM] Cleanup pass initialization for wasm/LoongArch (#134452)

- Remove calls to pass initialization from pass constructors.
- https://github.com/llvm/llvm-project/issues/111767


  Commit: bb1f32ded0b7bec3b69c30b1c21eb1210372cd7f
      https://github.com/llvm/llvm-project/commit/bb1f32ded0b7bec3b69c30b1c21eb1210372cd7f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/PassSupport.h

  Log Message:
  -----------
  [NFC][LLVM] Change `initialize<PassName>PassOnce` to return void (#134500)

- The return value of these functions (called using `llvm::call_once`)
is never used, so make these functions return void.


  Commit: 3f4e4e0a12c523f3d794f015ca7f40bcfc0ed8f5
      https://github.com/llvm/llvm-project/commit/3f4e4e0a12c523f3d794f015ca7f40bcfc0ed8f5
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M flang/module/cudadevice.f90

  Log Message:
  -----------
  [flang][cuda] Add on_device interface to cudadevice (#134747)


  Commit: 3a0c95fb506301fdd083b6e5dff0a0c88da4a665
      https://github.com/llvm/llvm-project/commit/3a0c95fb506301fdd083b6e5dff0a0c88da4a665
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/test/tools/llvm-reduce/reduce-conditionals.ll
    M llvm/tools/llvm-reduce/deltas/ReduceUsingSimplifyCFG.cpp
    M llvm/tools/llvm-reduce/deltas/Utils.cpp
    M llvm/tools/llvm-reduce/deltas/Utils.h

  Log Message:
  -----------
  llvm-reduce: Fix introducing unreachable code in simplify conditionals (#133842)

After replacing the branch condition, this was calling simplifyCFG to
perform the cleanups of the branch. This is far too heavy of a hammer.
We do not want all of the extra optimizations in simplifyCFG, and
this could also leave behind dead code. Instead, minimally fold the
terminator and try to delete the newly dead code.

This is pretty much a direct copy of what bugpoint does.


  Commit: d057811655d8de3900748bba03d0c7ebcb6fafe3
      https://github.com/llvm/llvm-project/commit/d057811655d8de3900748bba03d0c7ebcb6fafe3
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/TemplateBase.h
    M clang/include/clang/Basic/Diagnostic.h
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
    M clang/test/SemaTemplate/instantiate-expanded-type-constraint.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/trailing-return-short-circuit.cpp
    M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp

  Log Message:
  -----------
  [clang] fix diagnostic printing of expressions ignoring LangOpts (#134693)

Currently when printing a template argument of expression type, the
expression is converted immediately into a string to be sent to the
diagnostic engine, unsing a fake LangOpts.

This makes the expression printing look incorrect for the current
language, besides being inneficient, as we don't actually need to print
the expression if the diagnostic would be ignored.

This fixes a nastiness with the TemplateArgument constructor for
expressions being implicit, and all current users just passing an
expression to a diagnostic were implicitly going through the template
argument path.

The expressions are also being printed unquoted. This will be fixed in a
subsequent patch, as the test churn is much larger.


  Commit: 499930e38a814d4fb8227d9ab48a946658650e12
      https://github.com/llvm/llvm-project/commit/499930e38a814d4fb8227d9ab48a946658650e12
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni

  Log Message:
  -----------
  gn build: Spell arm64 correctly.


  Commit: 5aae0ee660ffdae057d7c5c0e851b5620586d042
      https://github.com/llvm/llvm-project/commit/5aae0ee660ffdae057d7c5c0e851b5620586d042
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang-tidy] give dummy path when create ClangTidyContext (#134670)

#121323 changed the way the absolute path is computed. Empty file name
will cause absolute path ignore current folder.
This patch add "dummy" file name to avoid this issue
Fixed: #134502


  Commit: 6a3e5f89bb89548fb39ca241c8ed7c2005a190f1
      https://github.com/llvm/llvm-project/commit/6a3e5f89bb89548fb39ca241c8ed7c2005a190f1
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Transforms/IPO/ElimAvailExtern.cpp
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    A llvm/test/Analysis/CtxProfAnalysis/pruning.ll
    M llvm/test/Transforms/EliminateAvailableExternally/transform-to-local.ll

  Log Message:
  -----------
  [ctxprof] Only prune the profile in modules containing only context trees (#134340)

We will subsequently treat the whole profile as "flat" in the frontend, (i.e flatten and combine with the flat profile section), so we can have a profile for ThinLTO for parts of the application that don't come under the contextual profile. After ThinLTO, we will treat the module(s) containing contextual trees differently: they'll have only the contextual profile pertinent to them. The rest of the modules (non-contextual) will proceed "as usual", off the flattened profile.

This patch implements pruning of the contextual profile to enable the above.


  Commit: f1bb2fe3562d2fe9a43c79ec8af908fdff23a33a
      https://github.com/llvm/llvm-project/commit/f1bb2fe3562d2fe9a43c79ec8af908fdff23a33a
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/ModuleInliner.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/Analysis/CtxProfAnalysis/handle-select.ll
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll

  Log Message:
  -----------
  [ctxprof] Use `isInSpecializedModule` as criteria for using contextual profile (#134468)

After #134340, the availability of contextual profile isn't in itself an indication of compiling the module containing all the functions covered by that profile.


  Commit: ac42b083f104442e12393ff09929a1add881010d
      https://github.com/llvm/llvm-project/commit/ac42b083f104442e12393ff09929a1add881010d
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/Modules/fmodule-file-mismatch.cppm

  Log Message:
  -----------
  [clang][modules] Guard against bad -fmodule-file mappings (#132059) (#133462)

Fix https://github.com/llvm/llvm-project/issues/132059.

Providing incorrect mappings via `-fmodule-file=<name>=<path/to/bmi>`
can crash the compiler when loading a module that imports an
incorrectly mapped module.

The crash occurs during AST body deserialization, when the compiler
attempts to resolve remappings using the `ModuleFile` from the
incorrectly mapped module's BMI file.
The cause is an invalid access into an incorrectly loaded
`ModuleFile`.

This commit fixes the issue by verifying the identity of the imported
module.


  Commit: 49d6e39eba88fdf7975c6f4dcb38595538331e6a
      https://github.com/llvm/llvm-project/commit/49d6e39eba88fdf7975c6f4dcb38595538331e6a
  Author: Shoreshen <372660931 at qq.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    R llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll

  Log Message:
  -----------
  [AMDGPU] add tests for loop definition of bitconvert (#133052)

This PR add test cases for all types of bit conversation, it prepares
for PR: https://github.com/llvm/llvm-project/pull/132899



All tests passed due to:
1. For DAG, pattern will not separate SReg and VReg. One of the sample
is:
    ```
define <2 x double> @v_bitcast_v4f32_to_v2f64(<4 x float> inreg %a, i32
%b) {
     %cmp = icmp eq i32 %b, 0
     br i1 %cmp, label %cmp.true, label %cmp.false
   
   cmp.true:
     %a1 = fadd <4 x float> %a, splat (float 1.000000e+00)
     %a2 = bitcast <4 x float> %a1 to <2 x double>
     br label %end
   
   cmp.false:
     %a3 = bitcast <4 x float> %a to <2 x double>
     br label %end
   
   end:
     %phi = phi <2 x double> [ %a2, %cmp.true ], [ %a3, %cmp.false ]
     ret <2 x double> %phi
   }
   ```
It suppose to select from scalar register patterns. But the Vreg pattern
is matched is as follow:
    ```
   Debug log:
   ISEL: Starting selection on root node: t3: v2f64 = bitcast t2
   ISEL: Starting pattern match
     Initial Opcode index to 440336
Skipped scope entry (due to false predicate) at index 440339, continuing
at 440367
Skipped scope entry (due to false predicate) at index 440368, continuing
at 440396
Skipped scope entry (due to false predicate) at index 440397, continuing
at 440435
Skipped scope entry (due to false predicate) at index 440436, continuing
at 440467
Skipped scope entry (due to false predicate) at index 440468, continuing
at 440499
Skipped scope entry (due to false predicate) at index 440500, continuing
at 440552
Skipped scope entry (due to false predicate) at index 440553, continuing
at 440587
Skipped scope entry (due to false predicate) at index 440588, continuing
at 440622
Skipped scope entry (due to false predicate) at index 440623, continuing
at 440657
Skipped scope entry (due to false predicate) at index 440658, continuing
at 440692
Skipped scope entry (due to false predicate) at index 440693, continuing
at 440727
Skipped scope entry (due to false predicate) at index 440728, continuing
at 440769
Skipped scope entry (due to false predicate) at index 440770, continuing
at 440798
Skipped scope entry (due to false predicate) at index 440799, continuing
at 440836
Skipped scope entry (due to false predicate) at index 440837, continuing
at 440870
     TypeSwitch[v2f64] from 440873 to 440892
   
   Patterns:
   /*440892*/    OPC_CompleteMatch, 1, 0, 
// Src: (bitconvert:{ *:[v2f64] } VReg_128:{ *:[v4f32] }:$src0) -
Complexity = 3
                  // Dst: VReg_128:{ *:[v2f64] }:$src0
    ```
2. Global isel will use `Select_COPY` to select bitcast


  Commit: bdd087023f02fb377302595bf7f61e9cae8adb71
      https://github.com/llvm/llvm-project/commit/bdd087023f02fb377302595bf7f61e9cae8adb71
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/arrays.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix various issues with multidimensional arrays (#134628)

This issue is very convoluted, but in essence, in the new version:

For a Pointer P that points to the root of a multidimensional, primitive
array:

`P.narrow()` does nothing.
`P.atIndex(0)` points `P[0]`
`P.atIndex(0).atIndex(0)` is the same as `P.atIndex(0)` (as before)
`P.atIndex(0).narrow().atIndex(0)` points to `P[0][0]`
`P.atIndex(0).narrow().narrow()` is the same as `P.atIndex(0).narrow()`.


  Commit: fb9915a3918e3a9659a7f2825ee35bada3a2baf1
      https://github.com/llvm/llvm-project/commit/fb9915a3918e3a9659a7f2825ee35bada3a2baf1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang][bytecode] Fix emitDestruction() for dummy descriptors (#134665)

This might happen if the referenced declaration is invalid and thus gets
a dummy descriptor. We ran into an assertion later on.


  Commit: 65cede26a6b06ba02c08284fada06c46c0289704
      https://github.com/llvm/llvm-project/commit/65cede26a6b06ba02c08284fada06c46c0289704
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang][bytecode] Fix emitting dtors of zero-sized arrays (#134672)

Desc->getNumElems() returning 0 made us underflow here.


  Commit: 642481a4286c9006958274531ee173b347866c50
      https://github.com/llvm/llvm-project/commit/642481a4286c9006958274531ee173b347866c50
  Author: Aniket Lal <lalaniket8 at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue.cl
    M clang/test/CodeGenOpenCL/enqueue-kernel-non-entry-block.cl
    M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
    M clang/test/CodeGenOpenCL/kernel-arg-info.cl
    A clang/test/CodeGenOpenCL/opencl-kernel-call.cl
    M clang/test/CodeGenOpenCL/reflect.cl
    M clang/test/CodeGenOpenCL/sampler.cl
    M clang/test/CodeGenOpenCL/spir-calling-conv.cl
    M clang/test/CodeGenOpenCL/visibility.cl
    M clang/test/CodeGenOpenCLCXX/addrspace-of-this.clcpp
    M clang/test/Frontend/amdgcn-machine-analysis-remarks.cl

  Log Message:
  -----------
  [Clang][OpenCL][AMDGPU] Allow a kernel to call another kernel (#115821)

This feature is currently not supported in the compiler.
To facilitate this we emit a stub version of each kernel
function body with different name mangling scheme, and
replaces the respective kernel call-sites appropriately.
    
Fixes https://github.com/llvm/llvm-project/issues/60313
    
D120566 was an earlier attempt made to upstream a solution
for this issue.

---------

Co-authored-by: anikelal <anikelal at amd.com>


  Commit: 0d19efa9d5d872962a0a83c865b4636d58f46519
      https://github.com/llvm/llvm-project/commit/0d19efa9d5d872962a0a83c865b4636d58f46519
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-04-07 (Mon, 07 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/test/CodeGen/AArch64/constant-pool-partition.ll
    M llvm/test/CodeGen/X86/constant-pool-partition.ll
    M llvm/test/CodeGen/X86/global-variable-partition.ll
    M llvm/test/CodeGen/X86/jump-table-partition.ll

  Log Message:
  -----------
  [NFC]In codegen pipeline, turn static-data-splitter pass on/off with its own option (#134752)

Per discussion in
https://github.com/llvm/llvm-project/pull/129781#discussion_r2017489088,
we'd like to refactor out the requirement of MFS.


  Commit: 2c1bdd4a0811af89eb9631935fbd90f13a04eacb
      https://github.com/llvm/llvm-project/commit/2c1bdd4a0811af89eb9631935fbd90f13a04eacb
  Author: Csanád Hajdú <csanad.hajdu at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/ELF/Writer.cpp
    M lld/docs/ReleaseNotes.rst
    A lld/test/ELF/aarch64-execute-only-mixed.s
    M lld/test/ELF/aarch64-execute-only.s
    A lld/test/ELF/arm-execute-only-mixed.s
    M lld/test/ELF/arm-execute-only.s

  Log Message:
  -----------
  [LLD][ELF] Allow merging XO and RX sections, and add `--[no-]xosegment` flag (#132412)

Following from the discussion in #132224, this seems like the best
approach to deal with a mix of XO and RX output sections in the same
binary. This change will also simplify the implementation of the
PURECODE section flag for AArch64.

To control this behaviour, the `--[no-]xosegment` flag is added to LLD
(similarly to `--[no-]rosegment`), which determines whether to allow
merging XO and RX sections in the same segment. The default value is
`--no-xosegment`, which is a breaking change compared to the previous
behaviour.

Release notes are also added, since this will be a breaking change.


  Commit: 03f21e2ba3be6cec4cfe2441142cca16a6d1d528
      https://github.com/llvm/llvm-project/commit/03f21e2ba3be6cec4cfe2441142cca16a6d1d528
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Update initializes definition (#134370)

Specify the initializes attribute in terms of an "initialized" shadow
state, such that:

* Loads prior to initialization return poison.
* Bytes that are not explicitly initialized are written with undef on
function return.

This is intended to preserve the core semantics of the attribute, but
adjusts the wording in a way that is compatible with existing
optimizations, such as insertion of spurious loads and removal of
uninitialized writes.

Fixes https://github.com/llvm/llvm-project/issues/133038.
Fixes https://github.com/llvm/llvm-project/issues/133059.


  Commit: 8a53cc8ce5e9ac602d4726c0a24e53499d3522fb
      https://github.com/llvm/llvm-project/commit/8a53cc8ce5e9ac602d4726c0a24e53499d3522fb
  Author: Shoreshen <372660931 at qq.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    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.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll

  Log Message:
  -----------
  remove failed test (#134793)

function `bitcast_v64i16_to_v128i8` in newly added test file
`llvm-project/llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll` from
PR:https://github.com/llvm/llvm-project/pull/133052 failed in expansive
check. (passes normal lit check)

remove it for now


  Commit: 308654608cb8bc5bbd5d4b3779cb7d92920dd6b7
      https://github.com/llvm/llvm-project/commit/308654608cb8bc5bbd5d4b3779cb7d92920dd6b7
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [Clang][NFC] Move some static functions into CodeGenFunction (#134634)

Patches in the Key Instructions (KeyInstr) stack need to access CGF in these
functions. 2 CGF fields are passed to these functions already; at this point it
felt natural to promote them to CGF methods.


  Commit: 87a187cedf09be0d7d1fa6eae1a8b644ee15db12
      https://github.com/llvm/llvm-project/commit/87a187cedf09be0d7d1fa6eae1a8b644ee15db12
  Author: lorenzo chelini <l.chelini at icloud.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaLayerwiseConstantFoldPass.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp

  Log Message:
  -----------
  [MLIR][NFC] Retire let constructor for Tosa (#134784)

`let constructor` is legacy (do not use in tree!) since the tableGen
backend emits most of the glue logic to build a pass.


  Commit: e7365d3143d762c290c426b172f588756b6f1ef8
      https://github.com/llvm/llvm-project/commit/e7365d3143d762c290c426b172f588756b6f1ef8
  Author: lorenzo chelini <l.chelini at icloud.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Reducer/Passes.h
    M mlir/include/mlir/Reducer/Passes.td
    M mlir/lib/Reducer/OptReductionPass.cpp
    M mlir/lib/Reducer/ReductionTreePass.cpp

  Log Message:
  -----------
  [MLIR][NFC] Retire let constructor for Reducer (#134786)

let constructor is legacy (do not use in tree!) since the tableGen
backend emits most of the glue logic to build a pass.


  Commit: 0df0906af67fe81c0cc3ed6230518f4314884389
      https://github.com/llvm/llvm-project/commit/0df0906af67fe81c0cc3ed6230518f4314884389
  Author: tianleliu <tianle.l.liu at intel.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    A llvm/test/Transforms/JumpThreading/thread-prob-8.ll

  Log Message:
  -----------
  [JumpThreading] Use [BB->SuccIndx] to get probability when updating BB info. (#134585)

In case the same src BB targets to the same dest BB in different
conditions/edges, such as switch-cases, we should use
prob[SrcBB->SuccIndx] instead of prob[SrcBB->DstBB] to get probability.


  Commit: ccdc44f643e5158391e618593950927dd1a02e5b
      https://github.com/llvm/llvm-project/commit/ccdc44f643e5158391e618593950927dd1a02e5b
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [mlir][tosa] Remove perms input for tosa.transpose tests (#134740)

Perms is now an attribute, not input.

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: f4328d0d3aee682e77ce070e1835158193dd8dcd
      https://github.com/llvm/llvm-project/commit/f4328d0d3aee682e77ce070e1835158193dd8dcd
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir

  Log Message:
  -----------
  [mlir][tosa] Remove out_shape attribute from transpose_2d attributes (#134743)

out_shape is no longer an attribute

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: f0bdeb4b6aa1ee0653aed8323a5a7485fb930a05
      https://github.com/llvm/llvm-project/commit/f0bdeb4b6aa1ee0653aed8323a5a7485fb930a05
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [mlir][tosa] Cleanup ops.mlir (#134751)

* add missing CHECK-LABEL
* removed whitespace for consistency

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: bb5006169f9f72a87b4358356976e0fa33353728
      https://github.com/llvm/llvm-project/commit/bb5006169f9f72a87b4358356976e0fa33353728
  Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [CodeGen] Change placeholder from `undef` to `poison` (#134731)

Fill default values of a map with `poison` instead of `undef`. There
should be no functional difference as the default values are overridden
later.


  Commit: e1fc118f3a2f3fb91a3045ce37a5259430594afc
      https://github.com/llvm/llvm-project/commit/e1fc118f3a2f3fb91a3045ce37a5259430594afc
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/git/code-format-helper.py

  Log Message:
  -----------
  [CI] Reduce false positives in undef checker (#134687)

Only check for diffs containing "undef" in .ll files, this prevents
comments like `// We should not have undef values...` triggering the
undef checker bot.


  Commit: 93505f8e0e702f470fdc37ea9a9ca5f04d011c19
      https://github.com/llvm/llvm-project/commit/93505f8e0e702f470fdc37ea9a9ca5f04d011c19
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/debuginfo-invoke.ll

  Log Message:
  -----------
  [DebugInfo][InstCombine] Propagate DILocation when noop-ing invoke (#134678)

In InstCombine we may decide that an alloc is removable, and the alloc
fn is called by an InvokeInst, we replace that InvokeInst with a invoke
of a noop intrinsic; this patch has us also copy the original invoke's
DILocation to the new noop invoke.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: 9d82ab8a8222f22048074488d5036ae5228088c5
      https://github.com/llvm/llvm-project/commit/9d82ab8a8222f22048074488d5036ae5228088c5
  Author: David Green <david.green at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/test/Analysis/BasicAA/noalias-inttoptr.ll

  Log Message:
  -----------
  [BasicAA] Add some test cases for coerced function args


  Commit: c23e1cb9362067d3565a78590db8c5e68b74cf17
      https://github.com/llvm/llvm-project/commit/c23e1cb9362067d3565a78590db8c5e68b74cf17
  Author: David Green <david.green at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/test/Analysis/BasicAA/noalias-inttoptr.ll

  Log Message:
  -----------
  [BasicAA] Treat ExtractValue(Argument) similar to Argument in relation to function-local objects. (#134716)

This is a much smaller, technically orthogonal patch similar to #134505. It
states that a extractvalue(Argument) can be treated like an Argument for alias
analysis, where the extractelement acts like a phi / copy. No inttoptr here.


  Commit: fe4f66636300e908e29f6caa69e0bda6d0d6422c
      https://github.com/llvm/llvm-project/commit/fe4f66636300e908e29f6caa69e0bda6d0d6422c
  Author: Nathan Gauër <brioche at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M .ci/metrics/metrics.py

  Log Message:
  -----------
  [CI] Always upload queue/running count (#134814)

Before this commit, we only pushed a queue/running count when the value
was not zero. This makes building Grafana alerting a bit harder.
Changing this to always upload a value for watched workflows.


  Commit: 446d4f51eb1a172776e69ffb51b5972a0225c0a1
      https://github.com/llvm/llvm-project/commit/446d4f51eb1a172776e69ffb51b5972a0225c0a1
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/clause-cleanup.f90

  Log Message:
  -----------
  [flang][OpenMP][Lower] fix statement context cleanup insertion point (#133891)

The statement context is used for lowering clauses for openmp operations
using generalised helpers from flang lowering. The statement context
stores closures which generate code for cleaning up temporary values
generated by the lowering helper. These closures are run when the
statement construct is destroyed. Keeping the statement context local to
the clause or operation being lowered without any special handling was
not correct because any cleanup code would be generated at the insertion
point when that statement context went out of scope (which would in
general be inside of the newly created container operation). It would be
better to generate the cleanup code after the newly created operation
(clause processing is synchronous even for deferred tasks).

Currently supported clauses are mostly populated with simple scalar
values that require no cleanup. Even the simple array sections added by
#132994 needed no cleanup because indexing the right values of the array
did not create any temporaries. Supporting array sections with vector
indexing will generate hlfir.destroy operations for cleanup. This patch
fixes where those will be created. Those hlfir.destroy operations don't
generate any FIR (or LLVM) code, but the issue still exists
theoretically.

I wasn't able to find any clauses which have any cleanup to use to test
this PR. It is probably NFC for the current lowering. This will be
tested in [the PR adding vector subscripting of array
sections](https://github.com/llvm/llvm-project/pull/133892).


  Commit: 4c09ae0b2ed6a99e4e69ec9e0507c26cdcc301a9
      https://github.com/llvm/llvm-project/commit/4c09ae0b2ed6a99e4e69ec9e0507c26cdcc301a9
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    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/Clauses.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/cancel.f90
    A flang/test/Lower/OpenMP/cancellationpoint.f90

  Log Message:
  -----------
  [flang][OpenMP] Lowering for CANCEL and CANCELLATIONPOINT (#134248)

These will still hit TODOs in OpenMPToLLVMIRConversion.cpp


  Commit: a5509d62a71995ad3346dac4ef226b5a670d995f
      https://github.com/llvm/llvm-project/commit/a5509d62a71995ad3346dac4ef226b5a670d995f
  Author: Jakub Ficek <jakub.ficek at intel.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGen/pragma-fenv_access.c

  Log Message:
  -----------
  [clang] fp options fix for __builtin_convertvector (#134102)

Add missing CGFPOptionsRAII for fptoi and itofp cases


  Commit: 6f93c0676f80919c5f96e8c25dad95c159a0b336
      https://github.com/llvm/llvm-project/commit/6f93c0676f80919c5f96e8c25dad95c159a0b336
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Make a few WaitcntBrackets methods const. NFC. (#134824)


  Commit: 6a42fb8fbfc075f28fa7d1d70bb51aef7f18e2f9
      https://github.com/llvm/llvm-project/commit/6a42fb8fbfc075f28fa7d1d70bb51aef7f18e2f9
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [LV] Clarify code in isPredicatedInst (NFC) (#134251)


  Commit: ff5b649a843a0c1be9dc59612411a1693c95d651
      https://github.com/llvm/llvm-project/commit/ff5b649a843a0c1be9dc59612411a1693c95d651
  Author: MisakaVan <102937903+MisakaVan at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/include/__tree

  Log Message:
  -----------
  [libc++] Fix a comment typo in __tree (#134831)

"Returns true **is** __root is a proper red black tree"
->
"Returns true **if** __root is a proper red black tree"


  Commit: 8521bd2424bf144ce1d176a3c93d414c4c138104
      https://github.com/llvm/llvm-project/commit/8521bd2424bf144ce1d176a3c93d414c4c138104
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h

  Log Message:
  -----------
  [BOLT][AArch64] Handle PAuth call instructions in isIndirectCall (#133227)

Handle `BLRA*` opcodes in AArch64MCPlusBuilder::isIndirectCall, update
getRegUsedAsCallDest accordingly.


  Commit: 83fbe6798605c7b1ebec1287f90a41949cb1d235
      https://github.com/llvm/llvm-project/commit/83fbe6798605c7b1ebec1287f90a41949cb1d235
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] combineX86ShufflesRecursively - iteratively peek through bitcasts to free subvector widening/narrowing sources. (#134701)

Generalizes the existing code to repeatedly peek though mixed bitcast/insert_subvector/extract_subvector chains to find the source of the shuffle operand.


  Commit: 1997073a547528f94b11a111a2eae3676a216127
      https://github.com/llvm/llvm-project/commit/1997073a547528f94b11a111a2eae3676a216127
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul_u-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul_u-idempotency.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll

  Log Message:
  -----------
  [LLVM][InstCombine][SVE] Refactor sve.mul/fmul combines. (#134116)

After https://github.com/llvm/llvm-project/issues/126928 it's now
possible to rewrite the existing combines, which mostly only handle
cases where a operand is an identity value, to use existing simplify
code to unlock general constant folding.


  Commit: 7af2b51e761f49974a64c3009882239cea618f2a
      https://github.com/llvm/llvm-project/commit/7af2b51e761f49974a64c3009882239cea618f2a
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
    M llvm/test/CodeGen/AArch64/patchable-function-entry-bti.ll

  Log Message:
  -----------
  [AArch64][v8.5A] Omit BTI for non-addr-taken static fns on Linux (#134669)

This is a conditional revert of cca40aa8d8aa732, which made LLVM's
branch-target-enforcement mode generate BTI at the start of _every_
function, even in the case where the function has internal linkage and
its address is never taken for use in an indirect call.

The rationale was that it might turn out at link time that a direct call
to the function spanned a larger distance than the range of a BL
instruction (say, if the translation unit generated multiple code
sections and the linker put them a very long way apart). Then the linker
might insert a long-branch thunk using an indirect call instruction.

SYSVABI64 has now clarified that in this situation the static linker may
not assume that the target function is safe to call directly. If it
needs to use this strategy, it's responsible for also generating a
'landing pad' near the target function, with a BTI followed by a direct
branch, and using that as the target of the long-distance indirect call.

https://github.com/ARM-software/abi-aa/commit/606ce44fe4d3419c15cd9ed598f18fb5d520fcfc

LLD complies with this spec as of commit 098b0d18add97de.

So if we're compiling in a mode that respects SYSVABI64, such as
targeting Linux, it's safe to leave out the BTI at the start of a
function with internal linkage if we can prove that its address isn't
either used in an indirect call in _this_ translation unit or passed out
of the object.

Therefore, this patch goes back to the behavior before cca40aa8d8aa732,
leaving out BTIs in functions that can't be called indirectly, but only
if the target triple is Linux. (I wasn't able to find a more precise
query for "is this a SYSVABI64-compliant platform?", but Linux certainly
is, and this check at least fails in the safe direction - if in doubt,
we put in all the BTIs that might be necessary.)


  Commit: 204d8c0d588b647e63d925705a7fe12c47242fc9
      https://github.com/llvm/llvm-project/commit/204d8c0d588b647e63d925705a7fe12c47242fc9
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x1.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x1.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x2.c

  Log Message:
  -----------
  [clang][llvm] Fix AArch64 MOP4{A/S} intrinsic tests (NFC) (#134746)

Fix some of the recently-added tests (PRs #127797, #128854, #129226 and
#129230) which were incorrectly defined.


  Commit: 739062d2c3b6c21264c415575da47bf59f1dafe3
      https://github.com/llvm/llvm-project/commit/739062d2c3b6c21264c415575da47bf59f1dafe3
  Author: Nathan Gauër <brioche at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    A llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll

  Log Message:
  -----------
  [SPIR-V] Add spv.gep support for ptrcast legal (#134388)

Adds support the the spv.gep intrinsic to the spv ptrcast legalization
step. Those intrinsics are generated by the backend thus not directly
visible in the tests.
This is a pre-requisite to implement addrspacecast legalization for
logical SPIR-V.


  Commit: 483edfeeb55420d509671406b889eadcce24114c
      https://github.com/llvm/llvm-project/commit/483edfeeb55420d509671406b889eadcce24114c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++] Use __add_pointer and __remove_pointer builtins when they are fixed (#134147)


  Commit: e06a9ca2cb596c19c23c32a248e1b3b69d7e4c4f
      https://github.com/llvm/llvm-project/commit/e06a9ca2cb596c19c23c32a248e1b3b69d7e4c4f
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll

  Log Message:
  -----------
  [LLVM][CodeGen][SVE] Improve lowering of fixed length masked mem ops. (#134402)

Converting fixed length masks, as used by MLOAD, to scalable vectors is
done by comparing the mask to zero. When the mask is the result of a
compare we can instead promote the operands and regenerate the original
compare. At worst this reduces the dependecy chain and in most cases
removes the need for multiple compares.


  Commit: e8dc8add3c04517e673d9dff342a60001c85dc1a
      https://github.com/llvm/llvm-project/commit/e8dc8add3c04517e673d9dff342a60001c85dc1a
  Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/CMakeLists.txt
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Fix using precompiled headers with ccache (#131397)

Using precompiled headers with ccache requires special accommodations.
Add the required ccache options, clang and gcc compiler flags to CMake.
Refactor ccache configuration to pass options directly on the command line for versions of ccache that support it.

---------

Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>


  Commit: c2c1031e90adfd8f64c5cd1b5e3b8af663715caf
      https://github.com/llvm/llvm-project/commit/c2c1031e90adfd8f64c5cd1b5e3b8af663715caf
  Author: Omair Javaid <omair.javaid at linaro.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/test/Semantics/test_errors.py

  Log Message:
  -----------
  [Flang][Windows] Fix test_errors.py by enforcing UTF-8 encoding (#134625)

This patch fixes UnicodeDecodeError on Windows in test_errors.py. This
issue was observed on the flang-arm64-windows-msvc buildbot.
Semantics/OpenMP/interop-construct.f90 was crashing due to Python
defaulting to the cp1252 codec on Windows.

I have fixed this by explicitly setting encoding="utf-8" when reading
source files and invoking subprocess.run() in test_errors.py

flang-arm64-windows-msvc was running on stagging master which resulted
in this issue not being fixed earlier.
https://lab.llvm.org/staging/#/builders/206


  Commit: 69c4e172d9838254f4e8ce4c78de9ecfbbabcae2
      https://github.com/llvm/llvm-project/commit/69c4e172d9838254f4e8ce4c78de9ecfbbabcae2
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/test/Semantics/OpenMP/default-none.f90
    A flang/test/Semantics/OpenMP/threadprivate09.f90

  Log Message:
  -----------
  [Flang][OpenMP] Add semantic tests for threadprivate variables with host assoc (#134680)


  Commit: a51e2827845fa3dfc1ef34f325792b35227311b4
      https://github.com/llvm/llvm-project/commit/a51e2827845fa3dfc1ef34f325792b35227311b4
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [LV] Check if plan has an early exit via plan's exit blocks. (NFC) (#134720)

Add a dedicated function to check if a plan is for a loop with an early
exit. This can easily be determined by checking the exit blocks.

This allows removing a use of Legal->hasUncountableEarlyExit() from
InnerLoopVectorizer.

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


  Commit: 25e08c0b9cafaab09af35ce6a03317ffd503df08
      https://github.com/llvm/llvm-project/commit/25e08c0b9cafaab09af35ce6a03317ffd503df08
  Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/CMakeLists.txt
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  Revert "[CMake] Fix using precompiled headers with ccache" (#134848)

Reverts llvm/llvm-project#131397

Reverting for now on account of build bot failures on certain platforms.


  Commit: db7fb704f6d5337399172331b4ee46e846171061
      https://github.com/llvm/llvm-project/commit/db7fb704f6d5337399172331b4ee46e846171061
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/test/API/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.py

  Log Message:
  -----------
  [lldb][test] Explain why TestExprFromNonZeroFrame is disabled on Windows

It's not scientific but I think the PDB we produce on the Windows on Arm
bot simply doesn't have the information needed. Could also be that clang
is producing some DWARF, but link.exe is dropping it from the final executable,
the effect is the same.


  Commit: 79cb6f05da37520949c006e26c5cef1826090d9d
      https://github.com/llvm/llvm-project/commit/79cb6f05da37520949c006e26c5cef1826090d9d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/tools/CMakeLists.txt
    R clang/tools/amdgpu-arch/AMDGPUArch.cpp
    R clang/tools/amdgpu-arch/AMDGPUArchByHIP.cpp
    R clang/tools/amdgpu-arch/AMDGPUArchByKFD.cpp
    R clang/tools/amdgpu-arch/CMakeLists.txt
    R clang/tools/nvptx-arch/CMakeLists.txt
    R clang/tools/nvptx-arch/NVPTXArch.cpp
    A clang/tools/offload-arch/AMDGPUArchByHIP.cpp
    A clang/tools/offload-arch/AMDGPUArchByKFD.cpp
    A clang/tools/offload-arch/CMakeLists.txt
    A clang/tools/offload-arch/NVPTXArch.cpp
    A clang/tools/offload-arch/OffloadArch.cpp

  Log Message:
  -----------
  [Clang] Unify 'nvptx-arch' and 'amdgpu-arch' into 'offload-arch' (#134713)

Summary:
These two tools do the same thing, we should unify them into a single
tool. We create symlinks for backward compatiblity and provide a way to
get the old vendor specific behavior with `--amdgpu-only` and
`--nvptx-only`.


  Commit: fcaefc2c19ebe037df7115f02abf23f94c07e8cc
      https://github.com/llvm/llvm-project/commit/fcaefc2c19ebe037df7115f02abf23f94c07e8cc
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/test/CodeGen/AMDGPU/insert-handle-flat-vmem-ds.mir
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-special-instructions.mir
    M llvm/test/CodeGen/AMDGPU/set-gpr-idx-peephole.mir

  Log Message:
  -----------
  [AMDGPU][NPM] Port SIPreEmitPeephole to NPM (#130065)


  Commit: 728320f9468ae8f6318f8f36ce675705d5805149
      https://github.com/llvm/llvm-project/commit/728320f9468ae8f6318f8f36ce675705d5805149
  Author: TatWai Chong <tatwai.chong at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir

  Log Message:
  -----------
  [mlir][tosa] Increase test coverage for profile-based validation (#134754)

Add more tests to increase test coverage.


  Commit: 7e1b76c2d7e272541ed40df6ce7a15e5cb51d407
      https://github.com/llvm/llvm-project/commit/7e1b76c2d7e272541ed40df6ce7a15e5cb51d407
  Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/lib/Frontend/CMakeLists.txt

  Log Message:
  -----------
  Revert "[flang] Use precompiled parsing headers" (#134851)

Reverts llvm/llvm-project#130600

Reverting on account of Windows issues with ccache, will bring it back
along with #131137 once those are resolved.


  Commit: 008c875be85732f72c4df4671167f5be79f449eb
      https://github.com/llvm/llvm-project/commit/008c875be85732f72c4df4671167f5be79f449eb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Fix excessive stack usage in SIInsertWaitcnts::run (#134835)

Noticed on Windows when running LLVM as part of a graphics driver, with
total stack usage limited to about 128 KB. In some cases this function
would overflow the stack.

On Linux this reduces stack usage in this function from about 32 KB to
about 0.5 KB.


  Commit: 94b9d75c6d77438008dcfc32812afaaff6e4ec3b
      https://github.com/llvm/llvm-project/commit/94b9d75c6d77438008dcfc32812afaaff6e4ec3b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/BUILD.gn

  Log Message:
  -----------
  [gn] port 65813e0e94c04


  Commit: dae0ef53a0b99c6c2b74143baee5896e8bc5c8e7
      https://github.com/llvm/llvm-project/commit/dae0ef53a0b99c6c2b74143baee5896e8bc5c8e7
  Author: Alan Li <me at alanli.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [MLIR][AMDGPU] Add a wrapper for global LDS load intrinsics in AMDGPU (#133498)

Defining a new `amdgpu.global_load` op, which is a thin wrap around
ROCDL `global_load_lds` intrinsic, along with its lowering logics to
`rocdl.global.load.lds`.


  Commit: fdf20941a8f95b26578fbeb579019f74efe45545
      https://github.com/llvm/llvm-project/commit/fdf20941a8f95b26578fbeb579019f74efe45545
  Author: wldfngrs <wldfngrs at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/asinhf.cpp
    M libc/src/math/generic/atan2.cpp
    M libc/src/math/generic/atan2f.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/cosf16.cpp
    M libc/src/math/generic/cospif.cpp
    M libc/src/math/generic/cospif16.cpp
    M libc/src/math/generic/erff.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sin.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinf16.cpp
    M libc/src/math/generic/sinpif.cpp
    M libc/src/math/generic/sinpif16.cpp
    M libc/src/math/generic/tan.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/src/math/generic/tanf16.cpp
    M libc/src/math/generic/tanpif16.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/acosf_test.cpp
    M libc/test/src/math/smoke/acoshf_test.cpp
    M libc/test/src/math/smoke/asinf_test.cpp
    M libc/test/src/math/smoke/asinhf_test.cpp
    M libc/test/src/math/smoke/atan2_test.cpp
    M libc/test/src/math/smoke/atan2f_test.cpp
    M libc/test/src/math/smoke/atan_test.cpp
    M libc/test/src/math/smoke/atanf_test.cpp
    M libc/test/src/math/smoke/atanhf_test.cpp
    M libc/test/src/math/smoke/cbrt_test.cpp
    M libc/test/src/math/smoke/cbrtf_test.cpp
    M libc/test/src/math/smoke/cos_test.cpp
    M libc/test/src/math/smoke/cosf16_test.cpp
    M libc/test/src/math/smoke/cosf_test.cpp
    M libc/test/src/math/smoke/coshf_test.cpp
    M libc/test/src/math/smoke/cospif16_test.cpp
    M libc/test/src/math/smoke/cospif_test.cpp
    M libc/test/src/math/smoke/erff_test.cpp
    M libc/test/src/math/smoke/exp10_test.cpp
    M libc/test/src/math/smoke/exp10f_test.cpp
    M libc/test/src/math/smoke/exp10m1f_test.cpp
    M libc/test/src/math/smoke/exp2_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M libc/test/src/math/smoke/exp2m1f_test.cpp
    M libc/test/src/math/smoke/exp_test.cpp
    M libc/test/src/math/smoke/expf_test.cpp
    M libc/test/src/math/smoke/expm1_test.cpp
    M libc/test/src/math/smoke/expm1f_test.cpp
    M libc/test/src/math/smoke/log10_test.cpp
    M libc/test/src/math/smoke/log10f_test.cpp
    M libc/test/src/math/smoke/log1p_test.cpp
    M libc/test/src/math/smoke/log1pf_test.cpp
    M libc/test/src/math/smoke/log2_test.cpp
    M libc/test/src/math/smoke/log2f_test.cpp
    M libc/test/src/math/smoke/log_test.cpp
    M libc/test/src/math/smoke/logf_test.cpp
    M libc/test/src/math/smoke/pow_test.cpp
    M libc/test/src/math/smoke/powf_test.cpp
    M libc/test/src/math/smoke/sin_test.cpp
    M libc/test/src/math/smoke/sincos_test.cpp
    M libc/test/src/math/smoke/sincosf_test.cpp
    M libc/test/src/math/smoke/sinf16_test.cpp
    M libc/test/src/math/smoke/sinf_test.cpp
    M libc/test/src/math/smoke/sinhf_test.cpp
    M libc/test/src/math/smoke/sinpif16_test.cpp
    M libc/test/src/math/smoke/sinpif_test.cpp
    M libc/test/src/math/smoke/tan_test.cpp
    M libc/test/src/math/smoke/tanf16_test.cpp
    M libc/test/src/math/smoke/tanf_test.cpp
    M libc/test/src/math/smoke/tanhf_test.cpp
    M libc/test/src/math/smoke/tanpif16_test.cpp

  Log Message:
  -----------
  [libc][math] Fix signaling NaN handling for math functions. (#133347)

Add tests for signaling NaNs, and fix function behavior for handling
signaling NaN input.

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


  Commit: 35b3886382f0172aa76bfbfc8e731e46c9c11cc3
      https://github.com/llvm/llvm-project/commit/35b3886382f0172aa76bfbfc8e731e46c9c11cc3
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-windows-tailcall.ll

  Log Message:
  -----------
  [win/arm64] Enable tail call with inreg arguments when possible (#134671)

Tail calls were disabled from callers with inreg parameters in 5dc8aeb
with a fixme to check if the callee also takes an inreg parameter.

The issue is that inreg parameters (which are passed in x0 or x1 for
free and member functions respectively) are supposed to be returned (in
x0) at the end of the function. In case of a tail call, that means the
callee needs to return the same value as the caller would.

We can check for that case, and it's not as niche as it sounds, as
that's how Clang will lower one function with an sret return value
calling another, such as:

```
struct T { int x; };
struct S {
    T foo();
    T bar();
};
T S::foo() { return bar(); } // foo's sret argument will get passed directly to bar
```

Fixes #133098


  Commit: 3a6b9b3a87387289cb913d40b09f77c842bfd694
      https://github.com/llvm/llvm-project/commit/3a6b9b3a87387289cb913d40b09f77c842bfd694
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][bazel] Fix after dae0ef53a0b99c6c2b74143baee5896e8bc5c8e7

Remove unnecessary include.


  Commit: 0e9881745834863a6f5a3a05588886bb3eb75cdf
      https://github.com/llvm/llvm-project/commit/0e9881745834863a6f5a3a05588886bb3eb75cdf
  Author: Romaric Jodin <rjodin at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libclc/clc/lib/generic/math/clc_frexp.inc

  Log Message:
  -----------
  libclc: frexp: fix implementation regarding denormals (#134823)

Devices not supporting denormals can compare them true against zero. It
leads to result not matching the CTS expectation when either supporting
or not denormals.

For example for 0x1.008p-140 we get {0x1.008p-140, 0} while the CTS
expects {0x1.008p-1, -139} when supporting denormals, or {0, 0} when not
supporting denormals (flushed to zero).

Ref #129871


  Commit: f19c6f23abefac56fde9f2b393c9ffa7595c86c6
      https://github.com/llvm/llvm-project/commit/f19c6f23abefac56fde9f2b393c9ffa7595c86c6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/ROCm.h
    M clang/test/Driver/hip-device-libs.hip

  Log Message:
  -----------
  [Clang][AMDGPU] Improve error message when device libraries for COV6 are missing (#134745)

#130963 switches the default to COV6, which requires ROCm 6.3.
Currently, if the
device libraries for COV6 are not found, the error message is not very
helpful.
This PR provides a more informative error message in such cases.


  Commit: b2dea4fd22b79fa27ef1ebd737401616095a7de6
      https://github.com/llvm/llvm-project/commit/b2dea4fd22b79fa27ef1ebd737401616095a7de6
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/lib/ctx_profile/CMakeLists.txt
    M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
    M compiler-rt/lib/ctx_profile/RootAutoDetector.cpp
    M compiler-rt/lib/ctx_profile/RootAutoDetector.h
    A compiler-rt/test/ctx_profile/TestCases/autodetect-roots.cpp
    M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
    M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll

  Log Message:
  -----------
  [ctxprof] root autodetection mechanism (#133147)

This is an optional mechanism that automatically detects roots. It's a best-effort mechanism, and its main goal is to *avoid* pointing at the message pump function as a root. This is the function that polls message queue(s) in an infinite loop, and is thus a bad root (it never exits).

High-level, when collection is requested - which should happen when a server has already been set up and handing requests - we spend a bit of time sampling all the server's threads. Each sample is a stack which we insert in a `PerThreadCallsiteTrie`. After a while, we run for each `PerThreadCallsiteTrie` the root detection logic. We then traverse all the `FunctionData`, find the ones matching the detected roots, and allocate a `ContextRoot` for them. From here, we special case `FunctionData` objects, in `__llvm_ctx_profile_get_context, that have a `CtxRoot` and route them to `__llvm_ctx_profile_start_context`.

For this to work, on the llvm side, we need to have all functions call `__llvm_ctx_profile_release_context` because they _might_ be roots. This comes at a slight (percentages) penalty during collection - which we can afford since the overall technique is ~5x faster than normal instrumentation. We can later explore conditionally enabling autoroot detection and avoiding this penalty, if desired. 

Note that functions that `musttail call` can't have their return instrumented this way, and a subsequent patch will harden the mechanism against this case.

The mechanism could be used in combination with explicit root specification, too.


  Commit: 8b11c39a0fad7f6ec48c323a0deeb3c103005200
      https://github.com/llvm/llvm-project/commit/8b11c39a0fad7f6ec48c323a0deeb3c103005200
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/docs/CMake.rst
    M llvm/test/CMakeLists.txt
    M llvm/test/tools/llvm-mt/help.test
    M llvm/tools/llvm-mt/CMakeLists.txt

  Log Message:
  -----------
  [llvm-mt] Do not build llvm-mt if not functional (#134631)

llvm-mt requires libxml2 to work, so do not even build it without
libxml2.

CMake 3.31 and later prefer llvm-mt.exe over Microsoft's mt.exe if
available and using clang-cl.exe as CMAKE_CXX_COMPILER. When CMake picks
up llvm-mt.exe without libxml2, any build will fail with the message
```
llvm-mt: error: no libxml2
```

Any test except `--help` already uses `REQUIRES: libxml2`. There is no
point in having a non-functional executable. Not building llvm-mt.exe
will force CMake to use Microsoft's `mt.exe` instead.

Fixes: #134237


  Commit: c1e95b2e5e61616eca20f6bc1bbd71470180e349
      https://github.com/llvm/llvm-project/commit/c1e95b2e5e61616eca20f6bc1bbd71470180e349
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll

  Log Message:
  -----------
  [RISCV] Fix matching bug in VLA shuffle lowering (#134750)

Fix https://github.com/llvm/llvm-project/issues/134126.

The matching code was previous written as if we were mutating the
indices to replace undef elements with preferred values, but the actual
lowering code just took a prefix of the index vector. This resulted in
us using undef indices for lanes which should have been defined,
resulting in incorrect codegen.

Longer term, we probably should rewrite the mask, but this seemed like
an easier tactical fix.


  Commit: 97c4cb4d13b2049cdfe884f4816aeaf6770d0c32
      https://github.com/llvm/llvm-project/commit/97c4cb4d13b2049cdfe884f4816aeaf6770d0c32
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/revec.ll

  Log Message:
  -----------
  [SLP][REVEC] getNumElements should not be used as VF when REVEC is enabled. (#134763)


  Commit: 2347aa1fccdb1347450fc2a5af310f320f30c734
      https://github.com/llvm/llvm-project/commit/2347aa1fccdb1347450fc2a5af310f320f30c734
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/revec-getAltInstrMask.ll

  Log Message:
  -----------
  [SLP][REVEC] Fix the mismatch between the result of getAltInstrMask and the VecTy argument of TargetTransformInfo::isLegalAltInstr. (#134795)

We cannot determine ScalarTy from VL because some ScalarTy is determined
from VL[0]->getType(), while others are determined from
getValueType(VL[0]).

Fix "Mask and VecTy are incompatible".


  Commit: 4f77e50042f8299b25442a263875cfb4564a506d
      https://github.com/llvm/llvm-project/commit/4f77e50042f8299b25442a263875cfb4564a506d
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/IR/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][AMDGPU] Fix shared build. NFC


  Commit: b5045ae9bc84508473e1dac6db8ca5976ea4e069
      https://github.com/llvm/llvm-project/commit/b5045ae9bc84508473e1dac6db8ca5976ea4e069
  Author: Alan Li <me at alanli.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:

  Log Message:
  -----------
  [MLIR][Fix] Fix missing dep in AMDGPUDialect. (#134862)

Issue introduced in https://github.com/llvm/llvm-project/pull/133498


  Commit: ae3faea1f28f840bddd819d1c45e7f7d3e75703c
      https://github.com/llvm/llvm-project/commit/ae3faea1f28f840bddd819d1c45e7f7d3e75703c
  Author: Christopher McGirr <7071833+chrsmcgrr at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
    M mlir/lib/Debug/CLOptionsSetup.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    A mlir/test/mlir-opt/debuggerhook.mlir

  Log Message:
  -----------
  [MLIR][mlir-opt] move action debugger hook flag (#134842)

Currently if a developer uses the flag `--mlir-enable-debugger-hook` the
debugger hook is not actually enabled. It seems the DebugConfig and the
MainMLIROptConfig are not connected.

To fix this we can move the `enableDebuggerHook` CL Option to the
DebugConfigCLOptions struct so that it can get registered and enabled
along with the other debugger flags. AFAICS there are no other uses of
the flag so this should be safe.

This also adds a small LIT test to check that the hook is enabled by
checking the std::cerr output for the log message.


  Commit: dfe4d9187c60c9888de3410ed3c2a98136a9cd8f
      https://github.com/llvm/llvm-project/commit/dfe4d9187c60c9888de3410ed3c2a98136a9cd8f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/IR/GCStrategy.cpp
    A llvm/test/Transforms/RewriteStatepointsForGC/unsupported-gc-error.ll

  Log Message:
  -----------
  GCStrategy: Use Twine properly for error message (#132760)


  Commit: 561506144531cf0a760bb437fd74c683931c60ae
      https://github.com/llvm/llvm-project/commit/561506144531cf0a760bb437fd74c683931c60ae
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/source/Core/Statusline.cpp
    A llvm/test/tools/dsymutil/Inputs/Binary.swiftmodule
    A llvm/test/tools/dsymutil/Inputs/FromInterface.swiftmodule
    A llvm/test/tools/dsymutil/swiftmodule.test
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    M llvm/tools/dsymutil/CMakeLists.txt
    M llvm/tools/dsymutil/DebugMap.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/RelocationMap.h
    A llvm/tools/dsymutil/SwiftModule.cpp
    A llvm/tools/dsymutil/SwiftModule.h

  Log Message:
  -----------
  [dsymutil] Avoid copying binary swiftmodules built from textual (#134719)

.swiftinterface files into the dSYM bundle. These typically come only
from the SDK (since textual interfaces require library evolution) and
thus are a waste of space to copy into the bundle.

The information about this is being parsed out of the control block,
which means duplicating 5 constants from the Swift frontend. If a file
cannot be parsed, dsymutil errs on the side of copying the file anyway.

rdar://138186524


  Commit: 2cf4254466252f3c8685b03b3de34b06563051e8
      https://github.com/llvm/llvm-project/commit/2cf4254466252f3c8685b03b3de34b06563051e8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    A llvm/test/Transforms/Attributor/align-atomic.ll

  Log Message:
  -----------
  Attributor: Add baseline tests for propagating align to atomics (#134836)


  Commit: 66f03436092df4e87434269eedf9f7c9e6fdbcba
      https://github.com/llvm/llvm-project/commit/66f03436092df4e87434269eedf9f7c9e6fdbcba
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/align-atomic.ll

  Log Message:
  -----------
  Attributor: Propagate align to atomicrmw instructions (#134837)

Partially fixes #134480


  Commit: 34e8f00066ee82cba63808e381eaaae89c1b1c79
      https://github.com/llvm/llvm-project/commit/34e8f00066ee82cba63808e381eaaae89c1b1c79
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/align-atomic.ll

  Log Message:
  -----------
  Attributor: Propagate align to cmpxchg instructions (#134838)

Fixes #134480


  Commit: 6c74fe9087fd85059158719ad1ab67e0f5098300
      https://github.com/llvm/llvm-project/commit/6c74fe9087fd85059158719ad1ab67e0f5098300
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/DiagnosticAST.h
    M clang/include/clang/Basic/DiagnosticAnalysis.h
    M clang/include/clang/Basic/DiagnosticComment.h
    M clang/include/clang/Basic/DiagnosticCrossTU.h
    M clang/include/clang/Basic/DiagnosticDriver.h
    M clang/include/clang/Basic/DiagnosticFrontend.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticInstallAPI.h
    M clang/include/clang/Basic/DiagnosticLex.h
    M clang/include/clang/Basic/DiagnosticParse.h
    M clang/include/clang/Basic/DiagnosticRefactoring.h
    M clang/include/clang/Basic/DiagnosticSema.h
    M clang/include/clang/Basic/DiagnosticSerialization.h
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [Clang] [NFC] Tablegen component diags headers (#134777)

The component diagnostic headers (i.e. `DiagnosticAST.h` and friends)
all follow the same format, and there’s enough of them (and in them) to
where updating all of them has become rather tedious (at least it was
for me while working on #132348), so this patch instead generates all of
them (or rather their contents) via Tablegen.

Also, it seems that `%enum_select` currently wouldn’t work in
`DiagnosticCommonKinds.td` because the infrastructure for that was
missing from `DiagnosticIDs.h`; this patch should fix that as well.


  Commit: 4e9cfcf6afa340b3ffae5996f6a511951f528ce1
      https://github.com/llvm/llvm-project/commit/4e9cfcf6afa340b3ffae5996f6a511951f528ce1
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [llvm][bazel] Fix BUILD after 561506144531cf0a760bb437fd74c683931c60ae.


  Commit: 76d2e0881e19359e262043a149474049f94ea348
      https://github.com/llvm/llvm-project/commit/76d2e0881e19359e262043a149474049f94ea348
  Author: tdanyluk <tdanyluk at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/utils/generate-test-checks.py

  Log Message:
  -----------
  [mlir] fix references of attributes which are not defined earlier (#134364)

If an attribute is not defined earlier in the same file, but just
referenced from its dialect directly, then currently not the correct
check is being emited.

What would it emit for #toy.shape<[1, 2, 3]>:
Earlier:
// CHECK: #[['?']]<[1, 2, 3]>
Now:
// CHECK: #toy.shape<[1, 2, 3]>


  Commit: bd49d278c6aa9ac5cc8e5917003d4f710887548d
      https://github.com/llvm/llvm-project/commit/bd49d278c6aa9ac5cc8e5917003d4f710887548d
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-cast-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] update test name and config for bugprone-unintended-char-ostream-output (#134868)


  Commit: b0cb672b9968eeee6eb022e98476957dbdf8e6e2
      https://github.com/llvm/llvm-project/commit/b0cb672b9968eeee6eb022e98476957dbdf8e6e2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/distance.hlsl
    M clang/test/CodeGenHLSL/builtins/length.hlsl
    M clang/test/CodeGenHLSL/builtins/reflect.hlsl
    M clang/test/CodeGenHLSL/builtins/smoothstep.hlsl
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/Transforms/Inline/access-attributes-prop.ll

  Log Message:
  -----------
  Inline: Propagate callsite nofpclass attribute
 (#134800)

Fixes #134070


  Commit: b416e7f5920ff2f80f60e52eeb363269d130adba
      https://github.com/llvm/llvm-project/commit/b416e7f5920ff2f80f60e52eeb363269d130adba
  Author: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/git/code-format-helper.py

  Log Message:
  -----------
  [CI] adjust the undef warning regex so it doesn't catch %undef in .ll files


  Commit: 4a7b34d03c3cfd316ee64a63dfad519e0fee64fb
      https://github.com/llvm/llvm-project/commit/4a7b34d03c3cfd316ee64a63dfad519e0fee64fb
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Add buffer.fat.ptr.load.lds intrinsic wrapping raw rsrc version (#133015)" (#134871)

This reverts commit d1a05721172272f7aab685b56d99e86814a15bff.

There was further discussion on the PR about whether the intinsics
should exist in this form.


  Commit: 84fde791a1f285dec7ef0ec4803c5174f182df57
      https://github.com/llvm/llvm-project/commit/84fde791a1f285dec7ef0ec4803c5174f182df57
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    A llvm/test/Transforms/Reassociate/debugloc-reass-add.ll

  Log Message:
  -----------
  [Reassociate] Apply Debugloc to instrs produced when optimizing add (#134676)

Currently in Reassociate we may create a set of new instructions when
optimizing an `add`, but we do not set DebugLocs on the new
instructions; this patch propagates the add's DebugLoc to the new
instructions.

Found using #107279.


  Commit: bb7ff134dc9eb72707400f00fb874a6a9e47597d
      https://github.com/llvm/llvm-project/commit/bb7ff134dc9eb72707400f00fb874a6a9e47597d
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn

  Log Message:
  -----------
  [gn] port 6c74fe9087


  Commit: 26475f5bdd2f4a042b63fdf1ee62d6634872dee5
      https://github.com/llvm/llvm-project/commit/26475f5bdd2f4a042b63fdf1ee62d6634872dee5
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCAsmParser.h
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/test/MC/AArch64/data-directive-specifier.s
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AArch64/label-arithmetic-diags-darwin.s

  Log Message:
  -----------
  [AArch64] Refactor @plt, @gotpcrel, and @AUTH to use parseDataExpr

Following PR #132569 (RISC-V), which added `parseDataExpr` for parsing
expressions in data directives (e.g., `.word`), this PR migrates AArch64
`@plt`, `@gotpcrel`, and `@AUTH` from the `parsePrimaryExpr` workaround
to `parseDataExpr`. The goal is to align with the GNU assembler model,
where relocation specifiers apply to the entire operand rather than
individual terms, reducing complexity-especially evident in `@AUTH`
parsing.

Note: AArch64 ELF lacks an official syntax for data directives
(#132570). A prefix notation might be a preferable future direction.
I recommend `%specifier(expr)`.

AsmParser's `@specifier` parsing is suboptimal, necessitating lexer
workarounds. `@` might appear multiple times in an operand.
We should not use `@` beyond the existing AArch64 Mach-O instruction
operands.

In the test elf-reloc-ptrauth.s, many errors are now reported at parse
time.

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


  Commit: 3f38cd07d820248fd2043efb1341fabaac2d84a6
      https://github.com/llvm/llvm-project/commit/3f38cd07d820248fd2043efb1341fabaac2d84a6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/distance.hlsl
    M clang/test/CodeGenHLSL/builtins/length.hlsl
    M clang/test/CodeGenHLSL/builtins/reflect.hlsl
    M clang/test/CodeGenHLSL/builtins/smoothstep.hlsl
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/Transforms/Inline/access-attributes-prop.ll

  Log Message:
  -----------
  Revert "Inline: Propagate callsite nofpclass attribute"

This reverts commit b0cb672b9968eeee6eb022e98476957dbdf8e6e2.

Breaks bot


  Commit: 16d10546d29355f796cbdb307f0f89d6679d14a0
      https://github.com/llvm/llvm-project/commit/16d10546d29355f796cbdb307f0f89d6679d14a0
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/docs/DesignDocs/VisibilityMacros.rst
    M libcxx/include/__condition_variable/condition_variable.h
    M libcxx/include/__config
    M libcxx/include/__locale
    M libcxx/include/__thread/thread.h
    M libcxx/include/condition_variable
    M libcxx/include/future
    M libcxx/include/locale
    M libcxx/include/mutex
    M libcxx/include/shared_mutex
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS (#111964)

This macro isn't required if we define all the functions inline. In
fact, quite a few of the marked functions have already been inlined.

This patch basically only moves code around and adds
`_LIBCPP_HIDE_FROM_ABI` to the places where it's been missing so far.

This also removes inlining hints, since it dropps `inline` in some
places, but that shouldn't make much of a difference. The functions tend
to be either really small, so should be inlined anyways, or are big
enough that they shouldn't be inlined even with an inlinehint.


  Commit: df0ccf6df09b5a067c80519b9adfa2c7dc46a350
      https://github.com/llvm/llvm-project/commit/df0ccf6df09b5a067c80519b9adfa2c7dc46a350
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Linux/asan_rt_confict_test-2.cpp

  Log Message:
  -----------
  [asan] Disable TestCases/Linux/asan_rt_confict_test-2.cpp to fix build

TestCases/Linux/asan_rt_confict_test-2.cpp started failing in https://lab.llvm.org/buildbot/#/builders/66/builds/12265/steps/9/logs/stdio
The only change is "[LLD][ELF] Allow merging XO and RX sections, and add --[no-]xosegment flag (#132412)" (https://github.com/llvm/llvm-project/commit/2c1bdd4a0811af89eb9631935fbd90f13a04eacb). Based on the test case (which deliberately tries to mix static and dynamically linked ASan), I suspect it's actually the test case that needs to be fixed (probably with a different error message check).

This patch disables TestCases/Linux/asan_rt_confict_test-2.cpp to make the buildbots green while I investigate.


  Commit: d6c8e8908d421979a428ede9f9a630dac8576c5b
      https://github.com/llvm/llvm-project/commit/d6c8e8908d421979a428ede9f9a630dac8576c5b
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Writer.cpp
    M llvm/include/llvm/Support/FileOutputBuffer.h
    M llvm/lib/Support/FileOutputBuffer.cpp
    M llvm/unittests/Support/FileOutputBufferTest.cpp

  Log Message:
  -----------
  Rename `F_no_mmap` to `F_mmap` (#134787)

The `F_no_mmap` flag was introduced by
https://github.com/llvm/llvm-project/commit/68142324290f2932df0e271747cdccc371d6dded


  Commit: 46d4c3b1f64dfbca2a029ff30434aaa5248fc190
      https://github.com/llvm/llvm-project/commit/46d4c3b1f64dfbca2a029ff30434aaa5248fc190
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/matrix-multiply.ll

  Log Message:
  -----------
  [X86] combineX86ShuffleChain - always prefer VPERMQ/PD for unary subvector shuffles on AVX2+ targets (#134849)

When combining 2 x 128-bit subvectors, don't assume that if the node is
already a X86ISD::VPERM2X128 node then there's nothing to do.

Fix issue where if we'd somehow combined to X86ISD::VPERM2X128
(typically if the 2 operands had then simplified to a common operand),
we can't canonicalise back to X86ISD::VPERMI on AVX2+ targets.

This matches the v4f64/v4i64 shuffle lowering preference for VPERMQ/PD
over VPERM2F128/I128.


  Commit: e3d114ceb86782553e8f244975441e5934b35b82
      https://github.com/llvm/llvm-project/commit/e3d114ceb86782553e8f244975441e5934b35b82
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/Reassociate.h
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    A llvm/test/Transforms/Reassociate/debugloc-factoring-neg.ll

  Log Message:
  -----------
  [DebugInfo][Reassociate] Propagate source loc when negating mul factor (#134679)

As part of RemoveFactorFromExpression, we attempt to remove a factor
from a mul/fmul expression; this may involve generating new
instructions, e.g. to negate the result if the factor was negative in
the original expression. When this happens, the new instructions should
have a DebugLoc set from the instruction that the factored expression is
being used to compute.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: f869d6efeec825c384dd9410fd29f90078e40c30
      https://github.com/llvm/llvm-project/commit/f869d6efeec825c384dd9410fd29f90078e40c30
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  [LLDB][Minidump]Update MinidumpFileBuilder to read and write in chunks (#129307)

I recently received an internal error report that LLDB was OOM'ing when
creating a Minidump. In my 64b refactor we made a decision to acquire
buffers the size of the largest memory region so we could read all of
the contents in one call. This made error handling very simple (and
simpler coding for me!) but had the trade off of large allocations if
huge pages were enabled.

This patch is one I've had on the back burner for awhile, but we can
read and write the Minidump memory sections in discrete chunks which we
already do for writing to disk.

I had to refactor the error handling a bit, but it remains the same. We
make a best effort attempt to read as much of the memory region as
possible, but fail immediately if we receive an error writing to disk. I
did not add new tests for this because our existing test suite is quite
good, but I did manually verify a few Minidumps couldn't read beyond the
red_zone.

```
(lldb) reg read $sp
     rsp = 0x00007fffffffc3b0
(lldb) p/x 0x00007fffffffc3b0 - 128
(long) 0x00007fffffffc330
(lldb) memory read 0x00007fffffffc330
0x7fffffffc330: 60 c3 ff ff ff 7f 00 00 60 cd ff ff ff 7f 00 00  `.......`.......
0x7fffffffc340: 60 c3 ff ff ff 7f 00 00 65 e6 26 00 00 00 00 00  `.......e.&.....
(lldb) memory read 0x00007fffffffc329
error: could not parse memory info (Success!)
```

I'm not sure how to quantify the memory improvement other than we would
allocate the largest size regardless of the size. So a 2gb unreadable
region would cause a 2gb allocation even if we were reading 4096 kb. Now
we will take the range size or the max chunk size of 128 mb.


  Commit: 2721d50d8785603987358afb4d82b986879ca41e
      https://github.com/llvm/llvm-project/commit/2721d50d8785603987358afb4d82b986879ca41e
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/source/Core/Statusline.cpp
    R llvm/test/tools/dsymutil/Inputs/Binary.swiftmodule
    R llvm/test/tools/dsymutil/Inputs/FromInterface.swiftmodule
    R llvm/test/tools/dsymutil/swiftmodule.test
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    M llvm/tools/dsymutil/CMakeLists.txt
    M llvm/tools/dsymutil/DebugMap.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/RelocationMap.h
    R llvm/tools/dsymutil/SwiftModule.cpp
    R llvm/tools/dsymutil/SwiftModule.h

  Log Message:
  -----------
  Revert "[dsymutil] Avoid copying binary swiftmodules built from textual"

This reverts commit 39ace8a63012af7d6ad7bf065c233fd3d5df44a3.

while investigating Linux bot failures.


  Commit: 271399831b780d25dce85715727c841843e10d4b
      https://github.com/llvm/llvm-project/commit/271399831b780d25dce85715727c841843e10d4b
  Author: k-kashapov <52855633+k-kashapov at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/lib/msan/msan.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/i386/vararg.ll

  Log Message:
  -----------
  [MSan] Change overflow_size_tls type to IntPtrTy (#117689)

As discussed in
https://github.com/llvm/llvm-project/pull/109284#discussion_r1838819987:
Changed `__msan_va_arg_overflow_size_tls` type from `Int64Ty` to
`IntPtrTy`.


  Commit: 441f87968df5dfb74d710fa32147789be98c20a6
      https://github.com/llvm/llvm-project/commit/441f87968df5dfb74d710fa32147789be98c20a6
  Author: Morris Hafner <mmha at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/test/CIR/CodeGen/cast.cpp
    A clang/test/CIR/CodeGen/cmp.cpp
    A clang/test/CIR/IR/cmp.cir

  Log Message:
  -----------
  [CIR] Upstream CmpOp (#133159)

This patch adds support for comparison operators with ClangIR, both
integral and floating point.

---------

Co-authored-by: Morris Hafner <mhafner at nvidia.com>
Co-authored-by: Henrich Lauko <xlauko at mail.muni.cz>
Co-authored-by: Andy Kaylor <akaylor at nvidia.com>


  Commit: 02a708b93b9ebe5e4fbc2b266da94677e6f793d3
      https://github.com/llvm/llvm-project/commit/02a708b93b9ebe5e4fbc2b266da94677e6f793d3
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Extract TryToFindDuplicates lambda into a separate function, NFC



Reviewers: RKSimon, hiraditya

Reviewed By: hiraditya, RKSimon

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


  Commit: edcbd4a21179ca5e0fa9095d28a38fe10de66322
      https://github.com/llvm/llvm-project/commit/edcbd4a21179ca5e0fa9095d28a38fe10de66322
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Extract a check for strided loads into separate function, NFC



Reviewers: hiraditya, RKSimon

Reviewed By: RKSimon

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


  Commit: 231aa3070dcd91e10e9972d20f7557c0068c41e3
      https://github.com/llvm/llvm-project/commit/231aa3070dcd91e10e9972d20f7557c0068c41e3
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/DeclOpenACC.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/AST/DeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    A clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    A clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/CIR/CodeGenOpenACC/openacc-not-implemented-global.cpp
    A clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
    A clang/test/Driver/openacc-no-cir.c

  Log Message:
  -----------
  [OpenACC][CIR] Basic infrastructure for OpenACC lowering (#134717)

This is the first of a few patches that will do infrastructure work to
enable the OpenACC lowering via the OpenACC dialect.

At the moment this just gets the various function calls that will end up
generating OpenACC, plus some tests to validate that we're doing the
diagnostics in OpenACC specific locations.

Additionally, this adds Stmt and Decl files for CIRGen.


  Commit: 6d2b767678caac108eeac752b0b90c98a44107ee
      https://github.com/llvm/llvm-project/commit/6d2b767678caac108eeac752b0b90c98a44107ee
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/include/queue
    M libcxx/include/stack

  Log Message:
  -----------
  [NFC][libc++] Removes Clang 16 work-arounds. (#91636)

This was noticed while reviewing the implementation status of
  P1614R2 The Mothership has Landed

Drive-by: Add some missing _LIBCPP_HIDE_FROM_ABIs.


  Commit: 7117dea043d39912dc41aaeba9c3186486b9b867
      https://github.com/llvm/llvm-project/commit/7117dea043d39912dc41aaeba9c3186486b9b867
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    R llvm/test/CodeGen/ARM/plt-relative-reloc.ll
    A llvm/test/CodeGen/ARM/relative-reloc.ll
    M llvm/test/CodeGen/RISCV/dso_local_equivalent.ll
    R llvm/test/CodeGen/RISCV/plt-relative-reloc.ll
    A llvm/test/CodeGen/RISCV/relative-reloc.ll
    M llvm/test/CodeGen/X86/dso_local_equivalent.ll
    A llvm/test/CodeGen/X86/relative-reloc-32.ll
    A llvm/test/CodeGen/X86/relative-reloc-64.ll
    M llvm/test/CodeGen/X86/relptr-rodata.ll
    R llvm/test/CodeGen/X86/x86-64-plt-relative-reloc.ll
    R llvm/test/CodeGen/X86/x86-plt-relative-reloc.ll

  Log Message:
  -----------
  AsmPrinter: Remove ELF's special lowerRelativeReference for unnamed_addr function; use lowerDSOLocalEquivalent in more cases

https://reviews.llvm.org/D17938 introduced lowerRelativeReference to
give ConstantExpr sub (A-B) special semantics in ELF: when `A` is an
`unnamed_addr` function, create a PLT-generating relocation. This was
intended for C++ relative vtables, but C++ relative vtable ended up
using DSOLocalEquivalent (lowerDSOLocalEquivalent).

This special treatment of `unnamed_addr` seems unusual.
Let's remove it. Only COFF needs an overload to generate a @IMGREL32
relocation specifier (llvm/test/MC/COFF/cross-section-relative.ll).

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


  Commit: 5ebe22a35d27d69a9ba878010072588ace489035
      https://github.com/llvm/llvm-project/commit/5ebe22a35d27d69a9ba878010072588ace489035
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/allocator-registry.h
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/descriptor.cpp
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/pointer.cpp
    M flang/include/flang/Runtime/CUDA/allocator.h

  Log Message:
  -----------
  [flang][cuda] Add async id to allocators (#134724)

Add async id to allocators in preparation for stream allocation.


  Commit: b7b3758e88f15a7ec27f212cd46e3dcf4e2f39f5
      https://github.com/llvm/llvm-project/commit/b7b3758e88f15a7ec27f212cd46e3dcf4e2f39f5
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
    M mlir/include/mlir/Dialect/Ptr/IR/PtrDialect.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir
    M mlir/test/Dialect/LLVMIR/opaque-ptr.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/IR/invalid-builtin-types.mlir
    M mlir/test/IR/test-verifiers-type.mlir
    M mlir/test/Target/LLVMIR/Import/constant.ll
    M mlir/test/Target/LLVMIR/Import/incorrect-scalable-vector-check.ll
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
    M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir-types.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/opaque-ptr.mlir
    M mlir/test/python/ir/builtin_types.py

  Log Message:
  -----------
  [mlir][IR] Add `VectorTypeElementInterface` with `!llvm.ptr` (#133455)

This commit extends the MLIR vector type to support pointer-like types
such as `!llvm.ptr` and `!ptr.ptr`, as indicated by the newly added
`VectorTypeElementInterface`. This makes the LLVM dialect closer to LLVM
IR. LLVM IR already supports pointers as vector element type.

Only integers, floats, pointers and index are valid vector element types
for now. Additional vector element types may be added in the future
after further discussions. The interface is still evolving and may
eventually turn into one of the alternatives that were discussed on the
RFC.

This commit also disallows `!llvm.ptr` as an element type of
`!llvm.vec`. This type exists due to limitations of the MLIR vector
type.

RFC:
https://discourse.llvm.org/t/rfc-allow-pointers-as-element-type-of-vector/85360


  Commit: 9bfb4b8fb194c1df5b082888abc03d095e39b6e9
      https://github.com/llvm/llvm-project/commit/9bfb4b8fb194c1df5b082888abc03d095e39b6e9
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-02.mir

  Log Message:
  -----------
  [MachineScheduler] Add more debug prints w.r.t hazards and pending SUnits (#134328)

While we already have some detailed debug messages on the candidate
selection process -- which selects a SUnit from the Available queue, we
didn't say much about why a SUnit was _not_ moved from Pending queue to
Available queue in the first place, which is just as important as why we
scheduled a node IMHO. Therefore, I added some debug prints for this
very purpose.

I decide to print these extra messages by default (instead of being
guarded by command line like `-misched-detail-resource-booking`) because
we have been printing some of the hazard remarks, so I thought we might
as well print these new messages -- which are mostly about hazard -- by
default.


  Commit: 4928093a21cea9bd76d1e47455e990874ad352df
      https://github.com/llvm/llvm-project/commit/4928093a21cea9bd76d1e47455e990874ad352df
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/test/CIR/CodeGen/basic.cpp
    A clang/test/CIR/CodeGen/nullptr-init.cpp

  Log Message:
  -----------
  [CIR] Upstream support for address of and dereference (#134317)

This adds support for handling the address of and dereference unary
operations in ClangIR code generation. This also adds handling for
nullptr and proper initialization via the NullToPointer cast.


  Commit: 658f848fed06f7629b52523a26b54faf72251158
      https://github.com/llvm/llvm-project/commit/658f848fed06f7629b52523a26b54faf72251158
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/test/libcxx/feature_test_macro/ftm_metadata.sh.py
    M libcxx/test/libcxx/feature_test_macro/implemented_ftms.sh.py
    M libcxx/test/libcxx/feature_test_macro/standard_ftms.sh.py
    M libcxx/test/libcxx/feature_test_macro/std_dialects.sh.py
    M libcxx/test/libcxx/feature_test_macro/version_header.sh.py
    M libcxx/test/libcxx/feature_test_macro/version_header_implementation.sh.py

  Log Message:
  -----------
  [NFC][libc++][test] Refactor new ftm generator tests. (#134490)

This uses the python unit test framework instead of just asserts. This
improves the diagnostics when a test fails.


  Commit: 4ab86edb560a2e1152e22700b0cb386759286c37
      https://github.com/llvm/llvm-project/commit/4ab86edb560a2e1152e22700b0cb386759286c37
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libcxx/include/istream

  Log Message:
  -----------
  [libc++] Fix misplaced _LIBCPP_POP_MACROS (#134874)

Fixes #134681


  Commit: 6010d5ba2b8e4b6e88460559ad5624a63a4a1505
      https://github.com/llvm/llvm-project/commit/6010d5ba2b8e4b6e88460559ad5624a63a4a1505
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  gn build: Port 2f1416bbcde8 more


  Commit: 19ee7ffdacd54267aa18793b31d23c9c4fb94ee6
      https://github.com/llvm/llvm-project/commit/19ee7ffdacd54267aa18793b31d23c9c4fb94ee6
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    A llvm/test/Transforms/AggressiveInstCombine/dbgloc-memchr.ll

  Log Message:
  -----------
  [AggrInstCombine][DebugInfo] Propagate DILocation for inlined memchr (#134808)

When AggressiveInstCombine replaces a memchr with a switch instruction,
it currently drops the DILocation for that memchr. This patch changes
this, propagating the memchr DILocation to all the generated
instructions that replace it.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: e84a80408523a48d6eaacd795f1615e821ffb233
      https://github.com/llvm/llvm-project/commit/e84a80408523a48d6eaacd795f1615e821ffb233
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/source/Core/Statusline.cpp

  Log Message:
  -----------
  [lldb] Make sure the process is stopped when computing the symbol context (#134757)

Make sure the process is stopped when computing the symbol context. Both
Adrian and Felipe reported a handful of crashes in GetSymbolContext
called from Statusline::Redraw on the default event thread.

Given that we're handling a StackFrameSP, it's not clear to me how that
could have gotten invalidated, but Jim points out that it doesn't make
sense to compute the symbol context for the frame when the process isn't
stopped.


  Commit: a557550fa40551d23762d4903535a022275b6caa
      https://github.com/llvm/llvm-project/commit/a557550fa40551d23762d4903535a022275b6caa
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang][bazel] add missing target


  Commit: 11fdea984dc6777ba4f4b7e516c2938083b34ddb
      https://github.com/llvm/llvm-project/commit/11fdea984dc6777ba4f4b7e516c2938083b34ddb
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/test/CXX/temp/temp.decls/temp.class.spec/p6.cpp

  Log Message:
  -----------
  [clang] NFC: remove trailing whitespaces from clang/test/CXX/temp/temp.decls/temp.class.spec/p6.cpp


  Commit: 3b84b1e1635cc6af9ff745d0542ebee151394c42
      https://github.com/llvm/llvm-project/commit/3b84b1e1635cc6af9ff745d0542ebee151394c42
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang][bazel] fix typo


  Commit: 7e70d708a39470397a8df9aa5842d0875b471def
      https://github.com/llvm/llvm-project/commit/7e70d708a39470397a8df9aa5842d0875b471def
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/Initialization/SystemLifetimeManager.h
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Initialization/SystemLifetimeManager.cpp
    M lldb/tools/lldb-server/lldb-server.cpp
    M lldb/tools/lldb-test/SystemInitializerTest.cpp
    M lldb/tools/lldb-test/lldb-test.cpp

  Log Message:
  -----------
  [LLDB][NFC] Remove Debugger dependency in SystemLifetimeManager (#134383)

It reduces the memory usage in lldb-server.


  Commit: 9ba1a3fcb53936f20533585df283b3734ae8c4ef
      https://github.com/llvm/llvm-project/commit/9ba1a3fcb53936f20533585df283b3734ae8c4ef
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Lex/PPExpressions.cpp
    A clang/test/Preprocessor/constants.c

  Log Message:
  -----------
  Reject invalid integer constants in unevaluated preprocessor operands (#134884)

Clang was previously accepting invalid code like:
```
  #if 1 ? 1 : 999999999999999999999
  #endif
```
because the integer constant (which is too large to fit into any
standard or extended integer type) was in an unevaluated branch of the
conditional operator. Similar invalid code involving || or && was also
accepted and is now rejected.

Fixes #134658


  Commit: 234d30e36b1bba0fae4149ba90348f804be7ad4c
      https://github.com/llvm/llvm-project/commit/234d30e36b1bba0fae4149ba90348f804be7ad4c
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/docs/Dialects/LLVM.md
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Target/LLVMIR/TypeFromLLVM.cpp
    M mlir/lib/Target/LLVMIR/TypeToLLVM.cpp
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir
    M mlir/test/Dialect/LLVMIR/types-invalid.mlir
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-types.mlir

  Log Message:
  -----------
  [mlir][LLVM] Delete `LLVMFixedVectorType` and `LLVMScalableVectorType` (#133286)

Since #125690, the MLIR vector type supports `!llvm.ptr` as an element
type. The only remaining element type for `LLVMFixedVectorType` is now
`LLVMPPCFP128Type`.

This commit turns `LLVMPPCFP128Type` into a proper FP type (by
implementing `FloatTypeInterface`), so that the MLIR vector type accepts
it as an element type. This makes `LLVMFixedVectorType` obsolete.
`LLVMScalableVectorType` is also obsolete. This commit deletes
`LLVMFixedVectorType` and `LLVMScalableVectorType`.

Note for LLVM integration: Use `VectorType` instead of
`LLVMFixedVectorType` and `LLVMScalableVectorType`.


  Commit: 836476660e5c068a8b3034c2bc21dbb70683f0fe
      https://github.com/llvm/llvm-project/commit/836476660e5c068a8b3034c2bc21dbb70683f0fe
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] add missing deps for LLVMOpsTdFiles


  Commit: c4c0ff686563999176f16a40274586ee0d32c66f
      https://github.com/llvm/llvm-project/commit/c4c0ff686563999176f16a40274586ee0d32c66f
  Author: cmtice <cmtice at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/ValueObject/DILParser.cpp

  Log Message:
  -----------
  [LLDB] Fix warnings in DIL. (#134778)

This fixes 3 warnings from compiling the DILParser:

DILParser.h:53:12: warning: returning address of local temporary object
[-Wreturn-stack-address]

DILParser.h:119:8: warning: private field 'm_fragile_ivar' is not used
[-Wunused-private-field]

DILParser.h:120:8: warning: private field 'm_check_ptr_vs_member' is not
used [-Wunused-private-field]


  Commit: 550d148561002a9984ca57a5ba0ed39367052a52
      https://github.com/llvm/llvm-project/commit/550d148561002a9984ca57a5ba0ed39367052a52
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/SandboxIR/Constant.cpp

  Log Message:
  -----------
  [SandboxIR] Fix warning when building on Windows with clang-cl. NFC.

This fixes several of these:
```
[1151/3381] Building CXX object lib\SandboxIR\CMakeFiles\LLVMSandboxIR.dir\Constant.cpp.obj
C:\git\llvm-project\llvm\lib\SandboxIR\Constant.cpp(331,52): warning: duplicate explicit instantiation of 'operator()' ignored as a Microsoft extension [-Wmicrosoft-template]
  331 |                   llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalIFunc
      |                                                    ^
C:\git\llvm-project\llvm\include\llvm/SandboxIR/Constant.h(816,52): note: previous explicit instantiation is here
  816 |                   llvm::GlobalObject>::LLVMGVToGV::operator()(llvm::GlobalIFunc
      |                                                    ^
```


  Commit: 446e793d77286ea477c90778f28c168883526e56
      https://github.com/llvm/llvm-project/commit/446e793d77286ea477c90778f28c168883526e56
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Type.h

  Log Message:
  -----------
  [SandboxIR] Fix warning when building on Windows with clang-cl. NFC.

This fixes:
```
[1230/3381] Building CXX object lib\Transforms\Vectorize\CMakeFiles\LLVMVectorize.dir\SandboxVectorizer\VecUtils.cpp.obj
In file included from C:\git\llvm-project\llvm\lib\Transforms\Vectorize\SandboxVectorizer\VecUtils.cpp:9:
In file included from C:\git\llvm-project\llvm\include\llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h:17:
C:\git\llvm-project\llvm\include\llvm/SandboxIR/Type.h(55,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
   55 |   friend class CallBase;           // For LLVMTy.
      |                ^
      |                ::llvm::
C:\git\llvm-project\llvm\include\llvm/SandboxIR/Type.h(60,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
   60 |   friend class CmpInst;            // For LLVMTy. TODO: Cleanup after
      |                ^
      |                ::llvm::
2 warnings generated.
```


  Commit: 661f90ad088fe9fad004ae6690bab061fb9a5f1d
      https://github.com/llvm/llvm-project/commit/661f90ad088fe9fad004ae6690bab061fb9a5f1d
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Context.h

  Log Message:
  -----------
  [SandboxIR] Fix warning when building on Windows with clang-cl. NFC.

This fixes:
```
[2295/3381] Building CXX object lib\Passes\CMakeFiles\LLVMPasses.dir\PassBuilder.cpp.obj
In file included from C:\git\llvm-project\llvm\lib\Passes\PassBuilder.cpp:368:
In file included from C:\git\llvm-project\llvm\include\llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h:16:
C:\git\llvm-project\llvm\include\llvm/SandboxIR/Context.h(73,16): warning: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Wmicrosoft-unqualified-friend]
   73 |   friend class Region;            // For LLVMCtx.
      |                ^
      |                ::llvm::
1 warning generated.
```


  Commit: 4cb320eb8124f6d47e5796fa8becbe22e9e8f841
      https://github.com/llvm/llvm-project/commit/4cb320eb8124f6d47e5796fa8becbe22e9e8f841
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll

  Log Message:
  -----------
  [RISCV] Add coverage for shuffles which if widened could be zipeven/zipodd


  Commit: 96f95c9d89d8a1784d3865fa941fb1c510f4e2d7
      https://github.com/llvm/llvm-project/commit/96f95c9d89d8a1784d3865fa941fb1c510f4e2d7
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    A llvm/test/tools/dsymutil/ARM/swiftmodule.test
    A llvm/test/tools/dsymutil/Inputs/Binary.swiftmodule
    A llvm/test/tools/dsymutil/Inputs/FromInterface.swiftmodule
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    M llvm/tools/dsymutil/CMakeLists.txt
    M llvm/tools/dsymutil/DebugMap.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/RelocationMap.h
    A llvm/tools/dsymutil/SwiftModule.cpp
    A llvm/tools/dsymutil/SwiftModule.h

  Log Message:
  -----------
  [dsymutil] Avoid copying binary swiftmodules built from textual

.swiftinterface files into the dSYM bundle. These typically come only
from the SDK (since textual interfaces require library evolution) and
thus are a waste of space to copy into the bundle.

The information about this is being parsed out of the control block,
which means duplicating 5 constants from the Swift frontend. If a file
cannot be parsed, dsymutil errs on the side of copying the file
anyway.

rdar://138186524

Relanding with additional linker dependency and moving the test into
the right target subdirectory.


  Commit: 556fb4c9afb1e90415239fe3fb9c6e39af8ddc03
      https://github.com/llvm/llvm-project/commit/556fb4c9afb1e90415239fe3fb9c6e39af8ddc03
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt

  Log Message:
  -----------
  [libc] Disable sin/cospif16 on aarch64 (#134918)

The tests are failing and it's unclear why. Disabling for now until a
fix can be implemented. See
https://github.com/llvm/llvm-project/issues/134917 for details.


  Commit: 6f92339d9e764d8a8452f82eff690d8ef9070ac6
      https://github.com/llvm/llvm-project/commit/6f92339d9e764d8a8452f82eff690d8ef9070ac6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/i1-reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-bf16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-f16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/X86/i1-reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
    M llvm/test/Transforms/LoopVectorize/X86/reg-usage.ll

  Log Message:
  -----------
  [LV] Compute register usage for interleaving on VPlan. (#126437)

Add a version of calculateRegisterUsage that works estimates register
usage for a VPlan. This mostly just ports the existing code, with some
updates to figure out what recipes will generate vectors vs scalars.

There are number of changes in the computed register usages, but they
should be more accurate w.r.t. to the generated vector code.

There are the following changes:

 * Scalar usage increases in most cases by 1, as we always create a
   scalar canonical IV, which is alive across the loop and is not
   considered by the legacy implementation

 * Output is ordered by insertion, now scalar registers are added first
   due the canonical IV phi.

 * Using the VPlan, we now also more precisely know if an induction will
   be vectorized or scalarized.

Depends on https://github.com/llvm/llvm-project/pull/126415

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


  Commit: c4b343aeebe28462d13a773e05a5a667420abe7e
      https://github.com/llvm/llvm-project/commit/c4b343aeebe28462d13a773e05a5a667420abe7e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/cuf-device-procedures02.cuf

  Log Message:
  -----------
  [flang][cuda] Implicitly load cudadevice in host,device and grid_global procedures (#134905)


  Commit: fed0f58547f801d775d8f763cca5fe4eddd325cb
      https://github.com/llvm/llvm-project/commit/fed0f58547f801d775d8f763cca5fe4eddd325cb
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/check-cuda.cpp
    M flang/test/Semantics/cuf09.cuf

  Log Message:
  -----------
  [flang][cuda] Avoid triggering host array error in host device proc (#134909)

we cannot enforce the detection of host arrays in device code when the
procedure is host, device. Relax the check for those.


  Commit: 189baedb71b661851530644585b79fd5ff6efecb
      https://github.com/llvm/llvm-project/commit/189baedb71b661851530644585b79fd5ff6efecb
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Add missing divider in tosa-infer-shapes.mlir (#134883)

Minor format fix.

Signed-off-by: Jerry Ge <jerry.ge at arm.com>


  Commit: 320c13e09aea3234a171eaebfc2b263bd88a9869
      https://github.com/llvm/llvm-project/commit/320c13e09aea3234a171eaebfc2b263bd88a9869
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/tools/dsymutil/CMakeLists.txt

  Log Message:
  -----------
  [dsymutil] Add missing dependency


  Commit: 8d90a541537fbed7d8c2a759b4ff46192a2c436e
      https://github.com/llvm/llvm-project/commit/8d90a541537fbed7d8c2a759b4ff46192a2c436e
  Author: Jann <jannh at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [clang] Add comment about misleading alloc_size argument names (#134899)

Attr.td names the first alloc_size argument "ElemSizeParam" and the
second optional argument "NumElemsParam"; but the semantics of how the
two-argument version is used in practice is the opposite of that.

glibc declares calloc() like this, so the second alloc_size argument is
the element size:
```
extern void *calloc (size_t __nmemb, size_t __size)
__THROW __attribute_malloc__ __attribute_alloc_size__ ((1, 2)) __wur;
```

The Linux kernel declares array allocation functions like
`kmalloc_array_noprof()` the same way.

Add a comment explaining that the names used inside clang are
misleading.


  Commit: dbcde15abac2670c17a7522bd957ab535f13c5cd
      https://github.com/llvm/llvm-project/commit/dbcde15abac2670c17a7522bd957ab535f13c5cd
  Author: lntue <lntue at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt

  Log Message:
  -----------
  [libc] Add remaining math function entrypoints to darwin/arm. (#134920)

To match with what are currently available on linux/x86_64.


  Commit: 156e2532edeaea9a60c37c041e8059fc5693122f
      https://github.com/llvm/llvm-project/commit/156e2532edeaea9a60c37c041e8059fc5693122f
  Author: Douglas <Douglas.Gliner at sony.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Writer.cpp
    M llvm/include/llvm/Support/FileOutputBuffer.h
    M llvm/lib/Support/FileOutputBuffer.cpp
    M llvm/unittests/Support/FileOutputBufferTest.cpp

  Log Message:
  -----------
  Revert "Rename `F_no_mmap` to `F_mmap`" (#134924)

Reverts llvm/llvm-project#134787

Causes the LIT test `lld\test\ELF\link-open-file.test` to fail on the
`llvm-clang-x86_64-sie-win` Build Bot. First instance of the failure
observed in: https://lab.llvm.org/buildbot/#/builders/46/builds/14847


  Commit: 9f463056e6dd5ff94d35f8cc1f4aa4ecc87fa61d
      https://github.com/llvm/llvm-project/commit/9f463056e6dd5ff94d35f8cc1f4aa4ecc87fa61d
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/Sema/main-no-return-c89-1.c
    A clang/test/Sema/main-no-return-c89-2.c
    A clang/test/Sema/main-no-return-c89-3.c

  Log Message:
  -----------
  [Clang] add ext warning for missing return in 'main' for C89 mode (#134617)

Fixes #21650 

--- 

Clang currently inserts an implicit `return 0;` in `main()` when
compiling in `C89` mode, even though the `C89` standard doesn't require
this behavior. This patch changes that behavior by emitting a warning
instead of silently inserting the implicit return under `-pedantic`.


  Commit: 8b34986072d744009a4a2be9692b5cc43cbe4cd3
      https://github.com/llvm/llvm-project/commit/8b34986072d744009a4a2be9692b5cc43cbe4cd3
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads-simple.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with potential segmented loads, recognized as strided


  Commit: c13436e516ed51bcc6f39b7b5c93d987e5fd7884
      https://github.com/llvm/llvm-project/commit/c13436e516ed51bcc6f39b7b5c93d987e5fd7884
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    A llvm/test/CodeGen/NVPTX/convert-fp-i8.ll

  Log Message:
  -----------
  [SDAG][NVPTX] Add TLI hook to get preferred FP->INT opcode (#132470)

Extract the logic for choosing FP_TO_UINT vs FP_TO_SINT opcodes into a
TLI hook. This hook can be overridden by targets that prefer not to use
the default behavior of replacing FP_TO_UINT with FP_TO_SINT when both
are custom.
Implement an override for NVPTX to only change opcode when
FP_TO_UINT is not legal and FP_TO_SINT is legal.


  Commit: a6853cd9af40eb330b9aec9762093be077e02f6c
      https://github.com/llvm/llvm-project/commit/a6853cd9af40eb330b9aec9762093be077e02f6c
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll

  Log Message:
  -----------
  [NVPTX] Auto-Upgrade llvm.nvvm.atomic.load.{inc,dec}.32 (#134111)

These intrinsics can be upgrade to an atomicrmw instruction.


  Commit: 1a1698b5dde28debc8331ca933a226e79164949a
      https://github.com/llvm/llvm-project/commit/1a1698b5dde28debc8331ca933a226e79164949a
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/test/CIR/CodeGen/basic.c

  Log Message:
  -----------
  [CIR] Handle NullStmt (#134889)

The handling for NullStmt was going to an error saying the statement
handling wasn't implemented. It doesn't need any implementation. It is
sufficient for emitSimpleStmt to just return success for that statement
class. This change does that.


  Commit: 76d722732d7b417438f7aee8c36d79bf4feb2e97
      https://github.com/llvm/llvm-project/commit/76d722732d7b417438f7aee8c36d79bf4feb2e97
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h

  Log Message:
  -----------
  [lldb][Minidump] Fix MAX_WRITE_CHUNK_SIZE type

MinidumpFileBuilder calls std::min(MAX_WRITE_CHUNK_SIZE,
func_returning_uint64_t) and on Darwin this errors out with
unsigned long long & unsigned long not being the same type.


  Commit: cfa6a5940e2dd29e88885028d77f8f357f3e773c
      https://github.com/llvm/llvm-project/commit/cfa6a5940e2dd29e88885028d77f8f357f3e773c
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll

  Log Message:
  -----------
  [ctxprof] Don't lower instrumentation for `noreturn` functions (#134932)

`noreturn` functions are doubtfully interesting for performance optimization / profiling.


  Commit: 1d0f8355b1cb31c150c5b338562894dca1389863
      https://github.com/llvm/llvm-project/commit/1d0f8355b1cb31c150c5b338562894dca1389863
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Support/Fortran.cpp
    M flang/test/Semantics/cuf10.cuf

  Log Message:
  -----------
  [flang][cuda] Relax compatibility rules when host,device procedure is involved (#134926)

Relax too restrictive rule for host, device procedure.


  Commit: b712068af26643d5fcbfd148b2084554b4e61650
      https://github.com/llvm/llvm-project/commit/b712068af26643d5fcbfd148b2084554b4e61650
  Author: k-kashapov <52855633+k-kashapov at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

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

  Log Message:
  -----------
  [nfc][Msan] Split PPC VarArg Helper into PPC32 and PPC64 (#134860)

As discussed in https://github.com/llvm/llvm-project/pull/131827, copied
ppc32 helper from ppc64. No functional changes have been made.


  Commit: 1365b5b1ad5d09a738dbe97b5a72902186e24d80
      https://github.com/llvm/llvm-project/commit/1365b5b1ad5d09a738dbe97b5a72902186e24d80
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    M clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c

  Log Message:
  -----------
   [clang][DependencyScanning] Track dependencies from prebuilt modules to determine IsInStableDir (#132237)

When a module is being scanned, it can depend on modules that have
already been built from a pch dependency. When this happens, the pcm
files are reused for the module dependencies. When this is the case,
check if input files recorded from the PCMs come from the provided
stable directories transitively since the scanner will not have access
to the full set of file dependencies from prebuilt modules.


  Commit: 9c38b2e5133bf4ffc3a349436e8884f91ff03b11
      https://github.com/llvm/llvm-project/commit/9c38b2e5133bf4ffc3a349436e8884f91ff03b11
  Author: Georgios Pinitas <georgios.pinitas at arm.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/canonicalize.mlir

  Log Message:
  -----------
  [mlir][tosa] Fold PadOp to tensor operations (#132700)


  Commit: 0428252db3841ddb96be1996cd2f3119d91b7b98
      https://github.com/llvm/llvm-project/commit/0428252db3841ddb96be1996cd2f3119d91b7b98
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/test/hwasan/TestCases/Linux/release-shadow.c
    M compiler-rt/test/hwasan/TestCases/heap-buffer-overflow.c
    M compiler-rt/test/hwasan/TestCases/tag-mismatch-border-address.c

  Log Message:
  -----------
  Fix some page size assumptions in the HWASan tests.



Reviewers: fmayer, vitalybuka

Reviewed By: fmayer, vitalybuka

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


  Commit: 93096bf830e58a5a5fcb5cc12f08e8277b2725ab
      https://github.com/llvm/llvm-project/commit/93096bf830e58a5a5fcb5cc12f08e8277b2725ab
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/hwasan/BUILD.gn

  Log Message:
  -----------
  gn build: Add hwasan_preinit.cpp to hwasan static library to match CMake.



Reviewers: aeubanks

Reviewed By: aeubanks

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


  Commit: d3a9d471f75f0b9b58e89d0662dae05c18660bba
      https://github.com/llvm/llvm-project/commit/d3a9d471f75f0b9b58e89d0662dae05c18660bba
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/hwasan/BUILD.gn

  Log Message:
  -----------
  gn build: Replace ${hwasan_name}-preinit with hwasan-preinit.

The driver only ever looks for the latter.

Reviewers: aeubanks

Reviewed By: aeubanks

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


  Commit: bd2df7b0763e07d09f3a2bcb7096871101c14454
      https://github.com/llvm/llvm-project/commit/bd2df7b0763e07d09f3a2bcb7096871101c14454
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/hwasan/BUILD.gn

  Log Message:
  -----------
  gn build: Enable check-hwasan on aarch64 Linux.



Reviewers: aeubanks, vitalybuka

Reviewed By: vitalybuka

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


  Commit: 36cb81cced6cb9ab8a68a4313963d4ccf7669e76
      https://github.com/llvm/llvm-project/commit/36cb81cced6cb9ab8a68a4313963d4ccf7669e76
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/test/sanitizer_common/android_commands/android_compile.py
    M compiler-rt/test/sanitizer_common/android_commands/android_run.py

  Log Message:
  -----------
  Change python to python3 in some shebangs.



Reviewers: vitalybuka

Reviewed By: vitalybuka

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


  Commit: ab95005a05232030a16c2da7a8de867c2ded5f88
      https://github.com/llvm/llvm-project/commit/ab95005a05232030a16c2da7a8de867c2ded5f88
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M libcxx/docs/ReleaseNotes/21.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/__config
    M libcxx/include/__iterator/aliasing_iterator.h
    M libcxx/include/__type_traits/is_char_like_type.h
    M libcxx/include/__type_traits/is_trivial.h
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/type_traits
    M libcxx/test/libcxx/memory/allocator_void.trivial.compile.pass.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
    M libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/stddef_h.compile.pass.cpp
    M libcxx/test/std/language.support/support.types/byte.pass.cpp
    M libcxx/test/std/language.support/support.types/max_align_t.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp
    M libcxx/test/std/ranges/range.req/range.view/view_base.compile.pass.cpp
    M libcxx/test/std/strings/basic.string/char.bad.verify.cpp
    M libcxx/test/std/strings/string.view/char.bad.verify.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/types.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/aligned_union.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_trivial.deprecated.verify.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.general/ignore.pass.cpp
    M libcxx/test/support/nasty_string.h
    M libcxxabi/src/demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [libc++] P3247R2: Deprecate `is_trivial(_v)` (#130573)

Requirements on character-like types are updated unconditionally,
because `basic_string` does requires the default-constructibility. It
might be possible to make `basic_string_view` support classes with
non-public trivial default constructor, but this doesn't seem sensible.

libcxxabi's `ItaniumDemangle.h` is also updated to avoid deprecated
features.


  Commit: ad01e0ac66441b28f9dc8acebd0dea5ea94a0f20
      https://github.com/llvm/llvm-project/commit/ad01e0ac66441b28f9dc8acebd0dea5ea94a0f20
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    A llvm/test/MC/RISCV/xqcilo-pseudos-invalid.s
    A llvm/test/MC/RISCV/xqcilo-pseudos-valid.s

  Log Message:
  -----------
  [RISCV][Xqcilo] Load/Store Pseudos (#134931)

This adds `qc.e.l<type> <reg>, <symbol>` and `qc.e.s<type> <reg>,
<symbol>, <reg>` pseudos for the corresponding Xqcilo instructions.

These emit as an AUIPC + (Standard) Load/Store pair, because this
sequence is shorter and can be relaxed back into the equivalent Xqcilo
load/store instruction in the right circumstances.


  Commit: 4c90d977dbdcfed3c25e85472b61cc17eef915c0
      https://github.com/llvm/llvm-project/commit/4c90d977dbdcfed3c25e85472b61cc17eef915c0
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/ProfileSummaryInfo.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    M llvm/test/Analysis/CtxProfAnalysis/flatten-and-annotate.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-check-path.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-zero-path.ll
    R llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll

  Log Message:
  -----------
  [ctxprof] Use the flattened contextual profile pre-thinlink (#134723)

Flatten the profile pre-thinlink so that ThinLTO has something to work with for the parts of the binary that aren't covered by contextual profiles. Post-thinlink, the flattener is re-run and will actually change profile info, but just for the modules containing contextual trees ("specialized modules"). For the rest, the flattener just yanks out the instrumentation.


  Commit: 442050ce8f10abaef8d7ff1e7dd28aa321d97e86
      https://github.com/llvm/llvm-project/commit/442050ce8f10abaef8d7ff1e7dd28aa321d97e86
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    A llvm/test/Analysis/CtxProfAnalysis/flatten-insert-icp-mdprof.ll

  Log Message:
  -----------
  [ctxprof] Flatten indirect call info in pre-thinlink compilation (#134766)

Same idea as in #134723 - flatten indirect call info in `"VP"` `MD_prof` metadata for the thinlinker, for cases that aren't covered by a contextual profile. If we don't ICP an indirect call target in the specialized module, the call will fall to the copy of that target outside the specialized module. If the graph under that target also has some indirect calls, in the absence of this pass, we'd have a steeper performance regression - because none of those would have a chance to be ICPed.


  Commit: 34d586fdd548a34911caa068b557c4c0442f4d1d
      https://github.com/llvm/llvm-project/commit/34d586fdd548a34911caa068b557c4c0442f4d1d
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Extend SGMapAttr and Add ConvertLayoutOp (#132425)

This PR improves the SGMapAttr to enable workgroup-level programming, representing the first step in expanding the XeGPU dialect from subgroup to workgroup level, and renames it to LayoutAttr


  Commit: ccf22848da9f050e00f23c5d4bc412ab19e81645
      https://github.com/llvm/llvm-project/commit/ccf22848da9f050e00f23c5d4bc412ab19e81645
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/test/CIR/CodeGen/if-consteval.cpp
    A clang/test/CIR/CodeGen/if.cpp
    A clang/test/CIR/Lowering/if.cir
    A clang/test/CIR/Transforms/if.cir

  Log Message:
  -----------
  [CIR] Add if statement support (#134333)

This patch adds support for if statements in the CIR dialect
Additionally, multiple RUN lines were introduced to improve codegen test
coverage


  Commit: 9a762bb4e17969e69e4d1ce383fd0ccd41fb8e2e
      https://github.com/llvm/llvm-project/commit/9a762bb4e17969e69e4d1ce383fd0ccd41fb8e2e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td

  Log Message:
  -----------
  [RISCV] Reuse existing tablegen classes for Zilsd/Zclsd. NFC (#134946)

We don't need pair specific classes. We just need to pass the pair
RegisterOperand to the existing classes we use for the base ISA and Zca.
For Zclsd, we need to changes the classes to take DAGOperand instead of
RegisterClass so we can pass a RegisterOperand.


  Commit: 8ebc98c3b0905a8587d81350782f67576cc3737c
      https://github.com/llvm/llvm-project/commit/8ebc98c3b0905a8587d81350782f67576cc3737c
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/ieee_flag.f90

  Log Message:
  -----------
  [flang] Update IEEE_SUPPORT_FLAG implementation (#134937)

Optional argument X in an IEEE_SUPPORT_FLAG(FLAG, X) call may be an
array.


  Commit: deef64904f4afe612c900f6674c3480e121a7487
      https://github.com/llvm/llvm-project/commit/deef64904f4afe612c900f6674c3480e121a7487
  Author: brandb97 <77328395+brandb97 at users.noreply.github.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M compiler-rt/lib/asan/asan_fake_stack.cpp
    A compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  Poison unused tail of FakeFrame (#133689)

Fix [issue#133640](https://github.com/llvm/llvm-project/issues/133640)


  Commit: cf7d34a54dbfa32f0fd8fa569654e8ea012abd72
      https://github.com/llvm/llvm-project/commit/cf7d34a54dbfa32f0fd8fa569654e8ea012abd72
  Author: lntue <lntue at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    R libc/src/__support/FPUtil/aarch64/sqrt.h
    A libc/src/__support/FPUtil/arm/sqrt.h
    M libc/src/__support/FPUtil/riscv/sqrt.h
    M libc/src/__support/FPUtil/sqrt.h
    M libc/src/__support/FPUtil/x86_64/sqrt.h
    M libc/src/__support/macros/properties/cpu_features.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Extend fputil::sqrt to use floating point instructions for arm32. (#134499)


  Commit: 333f2c334174ee2c3b70f6db01970b339459bfa6
      https://github.com/llvm/llvm-project/commit/333f2c334174ee2c3b70f6db01970b339459bfa6
  Author: Dirk Pranke <dpranke at gmail.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/utils/gn/.gn
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/secondary/BUILD.gn

  Log Message:
  -----------
  [gn] Use exec_script_allowlist in //llvm/utils/gn/.gn (#134172)

This requires gn_version >= 2207. Run llvm/utils/gn/get.py to
update your GN binary if you hit the assert added in this commit.


  Commit: 02b377d8f7252b1acf6ea4fad55a101b6bc3fcf7
      https://github.com/llvm/llvm-project/commit/02b377d8f7252b1acf6ea4fad55a101b6bc3fcf7
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/docs/CommandGuide/llc.rst
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
    M llvm/test/CodeGen/RISCV/compress-opt-select.ll
    M llvm/test/CodeGen/RISCV/hwasan-check-memaccess.ll
    A llvm/test/tools/llc/instprinter-options.ll
    M llvm/test/tools/llvm-mc/disassembler-options.test
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [llc] Add -M for InstPrinter options

For many targets, llvm-objdump and llvm-mc
(https://reviews.llvm.org/D103004) support -M no-aliases (e.g.
`RISCVInstPrinter::applyTargetSpecificCLOption`).

This patch implements -M for llc.

While here, rename "DisassemblerOptions" in llvm-mc to the more
appropriate "InstPrinterOptions". For llvm-mc --assemble, there is no
disassembler involved.

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


  Commit: 438ade1dfc61a12e8187096f82ced493d8e5c8fa
      https://github.com/llvm/llvm-project/commit/438ade1dfc61a12e8187096f82ced493d8e5c8fa
  Author: lntue <lntue at google.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M libc/src/__support/FPUtil/riscv/sqrt.h

  Log Message:
  -----------
  [libc] Fix wrong #ifdef for riscv's sqrt. (#134964)


  Commit: a1f1bbf0534f57990c13a0bf0e6645da011f1d9d
      https://github.com/llvm/llvm-project/commit/a1f1bbf0534f57990c13a0bf0e6645da011f1d9d
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/kcfi.ll
    M llvm/test/CodeGen/RISCV/patchable-function-entry.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-struct.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-vector-tuple.ll
    M llvm/test/MC/RISCV/rv32p-valid.s
    M llvm/test/MC/RISCV/rv64p-valid.s
    M llvm/test/MC/RISCV/xqciac-valid.s
    M llvm/test/MC/RISCV/xqcibi-valid.s
    M llvm/test/MC/RISCV/xqcibm-valid.s
    M llvm/test/MC/RISCV/xqcicli-valid.s
    M llvm/test/MC/RISCV/xqcicm-valid.s
    M llvm/test/MC/RISCV/xqciint-csrs-valid.s
    M llvm/test/MC/RISCV/xqciint-valid.s
    M llvm/test/MC/RISCV/xqciio-aliases-valid.s
    M llvm/test/MC/RISCV/xqciio-valid.s
    M llvm/test/MC/RISCV/xqcilb-valid.s
    M llvm/test/MC/RISCV/xqcili-li.s
    M llvm/test/MC/RISCV/xqcili-valid.s
    M llvm/test/MC/RISCV/xqcilia-valid.s
    M llvm/test/MC/RISCV/xqcilo-aliases-valid.s
    M llvm/test/MC/RISCV/xqcilo-valid.s
    M llvm/test/MC/RISCV/xqcisim-valid.s
    M llvm/test/MC/RISCV/xqcisync-valid.s
    M llvm/test/MC/RISCV/xrivosvisni-valid.s
    M llvm/test/MC/RISCV/xrivosvizip-valid.s

  Log Message:
  -----------
  [RISCV,test] Replace -riscv-no-aliases with -M no-aliases

now that llc supports `-M no-aliases` (along with llvm-mc and llvm-objdump)
(#121078).

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


  Commit: 50428fb5e90b8318148abdf67eefe99bf8fd310b
      https://github.com/llvm/llvm-project/commit/50428fb5e90b8318148abdf67eefe99bf8fd310b
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCWasmStreamer.h
    M llvm/lib/MC/MCWasmStreamer.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.cpp
    A llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCExpr.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp

  Log Message:
  -----------
  [WebAssembly] Add WebAssembly::Specifier

Move wasm-specific members outside of MCSymbolRefExpr::VariantKind (a
legacy interface I am eliminating). Most changes are mechanic and
similar to what I've done for many ELF targets (e.g. X86 #132149)

Notes:

* `fixSymbolsInTLSFixups` is replaced with `setTLS` in
  `WebAssemblyWasmObjectWriter::getRelocType`, similar to what I've done
  for many ELF targets.
* `SymA->setUsedInGOT()` in `recordRelocation` is moved to
  `getRelocType`.

While here, rename "Modifier' to "Specifier":

> "Relocation modifier", though concise, suggests adjustments happen during the linker's relocation step rather than the assembler's expression evaluation. I landed on "relocation specifier" as the winner. It's clear, aligns with Arm and IBM’s usage, and fits the assembler's role seamlessly.

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


  Commit: 1c09dd54d9be9470729130008bf82ee61a8bee63
      https://github.com/llvm/llvm-project/commit/1c09dd54d9be9470729130008bf82ee61a8bee63
  Author: tangaac <tangyan01 at loongson.cn>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-bit-shift.ll
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-rotate.ll
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-shift.ll
    A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-byte-rotate.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit test for vector byte rotate & vector shift (lasx only) (#134839)


  Commit: e6b55cd73bdbc36d4ce1b122b0e46dc2e6968950
      https://github.com/llvm/llvm-project/commit/e6b55cd73bdbc36d4ce1b122b0e46dc2e6968950
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h

  Log Message:
  -----------
  MCExpr: Remove unused VK_GOT/VK_GOTPCREL


  Commit: 43bb6bac2fde3a1847f39174ece5b848eced7dcf
      https://github.com/llvm/llvm-project/commit/43bb6bac2fde3a1847f39174ece5b848eced7dcf
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp

  Log Message:
  -----------
  [clang] Fix GCC -Wparentheses warning. NFC.

Without this gcc warned like:
clang/lib/Sema/SemaExprCXX.cpp:4656:74: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
 4655 |              From->isNullPointerConstant(Context,
      |              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 4656 |                                          Expr::NPC_ValueDependentIsNull) &&
      |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
 4657 |                  "Expr must be null pointer constant!");
      |                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


  Commit: bada5eb00940954eb6852de4098a80f3faf585a0
      https://github.com/llvm/llvm-project/commit/bada5eb00940954eb6852de4098a80f3faf585a0
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Object/TapiUniversal.h
    M llvm/lib/Object/TapiUniversal.cpp
    M llvm/test/tools/llvm-nm/tapi-files.test

  Log Message:
  -----------
  [llvm-nm] Fix how inlined dylibs are reported from tbd files (#134498)

An Inlined library is a dylib that is reexported from an umbrella or
top-level library. When this is encoded in tbd files, ensure we are
reading the symbol table from the inlined library when
`--add-inlinedinfo` is used as opposed to the top-level lib.

resolves: rdar://147767733


  Commit: c5e07fb86122669794808d6e857c88048f3a4926
      https://github.com/llvm/llvm-project/commit/c5e07fb86122669794808d6e857c88048f3a4926
  Author: lntue <lntue at google.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    A libc/src/__support/FPUtil/aarch64/sqrt.h
    M libc/src/__support/FPUtil/arm/sqrt.h
    M libc/src/__support/FPUtil/sqrt.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Use correct instruction for arm32 sqrt inline asm. (#134968)

https://godbolt.org/z/3jT7jdrs9


  Commit: 50e218ad9cef3e59f8d8ba8c9c7b57ce9c213c52
      https://github.com/llvm/llvm-project/commit/50e218ad9cef3e59f8d8ba8c9c7b57ce9c213c52
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/macosx/thread_start_bps/TestBreakpointsThreadInit.py

  Log Message:
  -----------
  Revert "[lldb] Clear thread-creation breakpoints in ProcessGDBRemote::Clear (#134397)"

This reverts commit 232525f06942adb3b9977632e38dcd5f08c0642d.

This change is causing test crashes while running
TestCompletion.py on Darwin systems, most of the CI runs
have failed since it has been merged in.


  Commit: 559540dc2738af0ab3f0b48eb4993095b8a8c627
      https://github.com/llvm/llvm-project/commit/559540dc2738af0ab3f0b48eb4993095b8a8c627
  Author: Lakshay Kumar <lakshayk at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    A llvm/test/tools/llvm-exegesis/AArch64/skip_unsupported_instructions.s
    M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp

  Log Message:
  -----------
  [llvm-exegesis][AArch64] Disable pauth and ldgm as unsupported instructions (#132346)

[llvm-exegesis][AArch64] Disable pauth and ldgm as unsupported
instructions.
Skipping AUT and LDGM opcode variants which currently throws "illegal
instruction".
- Checking opcodes specifically for LDGM and AUT opcode instruction
variants.
- Gracefully exiting with " : Unsupported opcode:
isPointerAuth/isUncheckedAccess"
- Added corresponding test cases to check exit message.


  Commit: 5c27511cb6ece1798e4503bcf8169359472871be
      https://github.com/llvm/llvm-project/commit/5c27511cb6ece1798e4503bcf8169359472871be
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    A llvm/test/MC/RISCV/rv32zilsd-pseudos.s

  Log Message:
  -----------
  [RISCV] Support Load/Store Global assembler pseudos for Zilsd. (#134950)

This adds support for 'ld \<rd\> \<symbol\>' and 'sd \<rd\>, \<symbol\>,
\<rt\>' to match what we do for RV32.

I've changed the interface to emitAuipcInstPair to use MCRegister
instead of MCOperand since we need to convert a GPRPair to GPR for
TmpReg for the load case.


  Commit: fbc6241d3af45d74ac8e8d3728a57435aab1d5ec
      https://github.com/llvm/llvm-project/commit/fbc6241d3af45d74ac8e8d3728a57435aab1d5ec
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Mangled.h
    M lldb/include/lldb/Core/RichManglingContext.h
    M lldb/include/lldb/Target/Language.h
    M lldb/source/Core/CMakeLists.txt
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/RichManglingContext.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/Language/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
    M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
    M lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
    M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
    M lldb/unittests/Core/CMakeLists.txt
    M lldb/unittests/Core/RichManglingContextTest.cpp
    M lldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp

  Log Message:
  -----------
  [LLDB] Refactored CPlusPlusLanguage::MethodName to break lldb-server dependencies (#132274)

This patch addresses the issue #129543.
After this patch the size of lldb-server is reduced by 9MB.

Co-authored-by: @bulbazord Alex Langford


  Commit: d28b4d89166fb705577a2d3a329006f0c0e0aacc
      https://github.com/llvm/llvm-project/commit/d28b4d89166fb705577a2d3a329006f0c0e0aacc
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-stepvector.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll

  Log Message:
  -----------
  [RISCV] Lower BUILD_VECTOR with i64 type to VID on RV32 if possible (#132339)

The element type i64 of the BUILD_VECTOR is not legal on RV32. It
doesn't catch the VID pattern after being legalized for i64.
So try to customized lower it to VID during type legalization.


  Commit: 154d360bf9ae87e9ec8af411bded022d1595ff4e
      https://github.com/llvm/llvm-project/commit/154d360bf9ae87e9ec8af411bded022d1595ff4e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp

  Log Message:
  -----------
  [RISCV] Avoid unnecessary MCOperand copies. NFC


  Commit: 9b8f5340ddbae0587a46d3b5882fe40c135c6fd4
      https://github.com/llvm/llvm-project/commit/9b8f5340ddbae0587a46d3b5882fe40c135c6fd4
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  Improve readability of <Target>GenCompressionInstEmitter. NFC (#134834)

Use indent() instead of manually indenting the code in the
CompressInstEmitter.cpp. Also modify the current indentation in a few
places.


  Commit: 1d2f5ead05e85057b8d0c6198203b392e9f855f8
      https://github.com/llvm/llvm-project/commit/1d2f5ead05e85057b8d0c6198203b392e9f855f8
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/test/MC/RISCV/xqcili-invalid.s
    A llvm/test/MC/RISCV/xqcili-relocations.s

  Log Message:
  -----------
  [RISCV] Add symbol parsing support for Xqcili load large immediate instructions (#134581)

This patch adds support for parsing symbols in the Xqcili load large
immediate instructions. The 32 bit `qc.li` instructions uses the
`R_RISCV_QC_ABS20_U` relocation while the 48 bit `qc.e.li` instruction
uses the `R_RISCV_QC_E_32` relocation and the `InstFormatQC_EAI`
instruction format.

Vendor relocation support will be added in a later patch.


  Commit: e6e0f5f17aa3c995709fc7623a0abbb5a32e4af5
      https://github.com/llvm/llvm-project/commit/e6e0f5f17aa3c995709fc7623a0abbb5a32e4af5
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll

  Log Message:
  -----------
  [RISCV][test] Add tests for subtraction if above threshold


  Commit: e348173bef7182c7cc609d0f000452d3acf4b65c
      https://github.com/llvm/llvm-project/commit/e348173bef7182c7cc609d0f000452d3acf4b65c
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
    M lldb/source/Symbol/UnwindPlan.cpp

  Log Message:
  -----------
  Reapply "[lldb] Remove UnwindPlan::Row shared_ptrs" (#134821)

This reverts commit
https://github.com/llvm/llvm-project/commit/48864a52ef547ac0477271127b510dd9e9798219,
reapplying https://github.com/llvm/llvm-project/commit/d7cea2b18717f0cc31b7da4a03f772d89ee201db.
It also fixes the dangling
pointers caused by the previous version by creating copies of the Rows
in x86AssemblyInspectionEngine.


  Commit: 523e249a6aed29fd2c36000c87838eface7324b4
      https://github.com/llvm/llvm-project/commit/523e249a6aed29fd2c36000c87838eface7324b4
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-lower-all.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-lower-none.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-indirect-access-lower-all.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-indirect-access-lower-none.ll

  Log Message:
  -----------
  [AMDGPU] Lower LDS in functions without sanitize_address in amdgpu-sw-lower-lds. (#131147)

Background:
"amdgpu-sw-lower-lds" pass lowers LDS accesses based on
"sanitize_address" attribute being tagged to kernel or non-kernels.
"amdgpu-sw-lower-lds" pass ideally should either lower all LDS accesses
or should not lower any based on if asan is enabled.

Issue:
But there has been cases when instrumented and non instrumented bitcodes
are linked and this is leading to few LDS being lowered correctly while
others are not. This typically leads to below error in the subsequent
pass.
"Module cannot mix absolute and non-absolute LDS GVs"

Fix:
This patch fixes this issue, by checking if any kernels in module are
tagged with "sanitize_address" attribute and then lowers all the LDS
accesses in all other kernels and non-kernels even though they do not
have "sanitize_address" attribute.


  Commit: a54ad591135c07c3399a79c88ac14f5a4a2b0d12
      https://github.com/llvm/llvm-project/commit/a54ad591135c07c3399a79c88ac14f5a4a2b0d12
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    R llvm/test/tools/llvm-exegesis/AArch64/skip_unsupported_instructions.s
    M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp

  Log Message:
  -----------
  Revert "[llvm-exegesis][AArch64] Disable pauth and ldgm as unsupporte… (#134971)

…d instructions (#132346)"

This reverts commit 559540dc2738af0ab3f0b48eb4993095b8a8c627 as it has
cause build failures in llvm-clang-x86_64-gcc-ubuntu


  Commit: c46be969f0b5f79788945da83dd4305617cff427
      https://github.com/llvm/llvm-project/commit/c46be969f0b5f79788945da83dd4305617cff427
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-08 (Tue, 08 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCSymbol.h

  Log Message:
  -----------
  [MC] Optimize isInSection

Remove one call of getFragment. The `SetUsed` bit isn't need here.


  Commit: f46d6412eb4ffa338df8d7b560a8e9f144d1d2a3
      https://github.com/llvm/llvm-project/commit/f46d6412eb4ffa338df8d7b560a8e9f144d1d2a3
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/dsymutil/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 96f95c9d89d8


  Commit: f04bfbc4162247c0074fdd87068053e4264dbefa
      https://github.com/llvm/llvm-project/commit/f04bfbc4162247c0074fdd87068053e4264dbefa
  Author: Steffen Larsen <steffen.larsen at intel.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_ternary_bitwise_function/bitwise-function.ll

  Log Message:
  -----------
  [SPIRV] Support for SPV_INTEL_ternary_bitwise_function (#134866)

Adds support for the SPV_INTEL_ternary_bitwise_function extension,
adding;
* the OpBitwiseFunctionINTEL SPIR-V instruction, a ternary bitwise
function where the operation performed is determined by a look-up table
index,
 * and the corresponding TernaryBitwiseFunctionINTEL capability.

See
https://github.khronos.org/SPIRV-Registry/extensions/INTEL/SPV_INTEL_ternary_bitwise_function.html.

Signed-off-by: Larsen, Steffen <steffen.larsen at intel.com>


  Commit: 8877b913ae88c6ae43e859316489fe0469293131
      https://github.com/llvm/llvm-project/commit/8877b913ae88c6ae43e859316489fe0469293131
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp

  Log Message:
  -----------
  [LLDB][MIPS] Fix signal SIGBUS number mismatch error on mips target (#132688)

Now, because we do not support mips debugging, if we compile LLVM on
mips target, would report error `static assertion failed:Value mismatch
for signal number SIGBUS`, so add this condition to avoid error.


  Commit: 20d1888cbe2908ddb3ca0640cc2a3d199ffff499
      https://github.com/llvm/llvm-project/commit/20d1888cbe2908ddb3ca0640cc2a3d199ffff499
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaUtilOps.td

  Log Message:
  -----------
  [mlir][tosa] Update the description of `rescale` and `variable` ops (#134815)

Updates the description to align with the specification. Also includes
some small cleanup to `sigmoid`, to avoid confusion.

Signed-off-by: Luke Hutton <luke.hutton at arm.com>


  Commit: ea7dd70b5326706141be2a768f2fd47ae71ee6a8
      https://github.com/llvm/llvm-project/commit/ea7dd70b5326706141be2a768f2fd47ae71ee6a8
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/FuncUnwinders.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/source/Symbol/CompactUnwindInfo.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/source/Symbol/FuncUnwinders.cpp
    M lldb/source/Symbol/UnwindPlan.cpp

  Log Message:
  -----------
  [lldb] Remove unused UnwindPlan functions (#134630)

`GetLSDAAddress` and `GetPersonalityRoutinePtrAddress` are unused and
they create a bit of a problem for discontinuous functions, because the
unwind plan for these consists of multiple eh_frame descriptors and (at
least in theory) each of them could have a different value for these
entities.

We could say we only support functions for which these are always the
same, or create some sort of a Address2LSDA lookup map, but I think it's
better to leave this question to someone who actually needs this.


  Commit: 08e080ee98832c2aec6f379b04f486bea18730cc
      https://github.com/llvm/llvm-project/commit/08e080ee98832c2aec6f379b04f486bea18730cc
  Author: Stefan Schmidt <thrimbor at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    A llvm/test/CodeGen/X86/pr134607.ll

  Log Message:
  -----------
  [X86][SSE] Don't emit SSE2 load instructions in SSE1-only mode (#134547)

This fixes a regression I traced back to
https://github.com/llvm/llvm-project/commit/8b43c1be23119c1024bed0a8ce392bc73727e2e2
/ https://github.com/llvm/llvm-project/pull/79000

The regression caused an SSE2 instruction, `movsd`, to be emitted as a
replacement for an SSE instruction, `movaps` despite the target
potentially not supporting this instruction, such as when building with
clang using `-march=pentium3`.

Fixes #134607


  Commit: 712c21336fa891f5b32254dd51b024178d61befb
      https://github.com/llvm/llvm-project/commit/712c21336fa891f5b32254dd51b024178d61befb
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling-multi-exit.ll
    A llvm/test/Transforms/LoopUnroll/AArch64/unrolling-multi-exit.ll

  Log Message:
  -----------
  [AArch64] Enable unrolling for small multi-exit loops (#131998)

It can be highly beneficial to unroll small, two-block search loops
that look for a value in an array. An example of this would be
something that uses std::find to find a value in libc++. Older
versions of std::find in the libstdc++ headers are manually unrolled
in the source code, but this might change in newer releases where
the compiler is expected to either vectorise or unroll itself.


  Commit: 53fa92dcad49466412a139eef223710bf5891213
      https://github.com/llvm/llvm-project/commit/53fa92dcad49466412a139eef223710bf5891213
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M flang/test/Integration/OpenMP/atomic-capture-complex.f90
    M llvm/include/llvm/Frontend/Atomic/Atomic.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/Atomic/Atomic.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [mlir][llvm][OpenMP] Hoist __atomic_load alloca (#132888)

Current implementation of `__atomic_compare_exchange` uses an alloca for
`__atomic_load`, leading to issues like
https://github.com/llvm/llvm-project/issues/120724. This PR hoists this
alloca to `AllocaIP`.


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


  Commit: 74f69c49fed894ba26b6174783e4c650d50344c5
      https://github.com/llvm/llvm-project/commit/74f69c49fed894ba26b6174783e4c650d50344c5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce the size of VPERMV v16f32/v16i32 nodes if the upper elements are not demanded (#134890)

Missed in #133923 - even without AVX512VL, we can replace VPERMV v16f32/v16i32 nodes with the AVX2 v8f32/v8i32 equivalents.


  Commit: 949bf518fcc04285f40aa96a1c123bf0141fafd4
      https://github.com/llvm/llvm-project/commit/949bf518fcc04285f40aa96a1c123bf0141fafd4
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M libclc/clc/lib/clspv/integer/clc_mul_hi.cl
    M libclc/generic/include/clc/misc/shuffle.h
    M libclc/generic/include/clc/misc/shuffle2.h
    M libclc/generic/lib/misc/shuffle.cl
    M libclc/generic/lib/misc/shuffle2.cl

  Log Message:
  -----------
  [libclc][NFC] Fix up inconsistent copyright headers

Some files were accidentally given two copyright headers. Another was
missing one. This commit also converts that file's dos line endings to
unix ones and reformats a comment.


  Commit: 2f6b06b2645810d72110cbfc1869c2d3b029dd2c
      https://github.com/llvm/llvm-project/commit/2f6b06b2645810d72110cbfc1869c2d3b029dd2c
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    A llvm/include/llvm/CodeGen/PostRAHazardRecognizer.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/PostRAHazardRecognizer.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/break-smem-soft-clauses.mir
    M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
    M llvm/test/CodeGen/AMDGPU/hazard-flat-instruction-valu-check.mir

  Log Message:
  -----------
  [CodeGen][NPM] Port PostRAHazardRecognizer to NPM (#130066)


  Commit: c80080ff7e105eb42d486ed473fa9c82fb518b0a
      https://github.com/llvm/llvm-project/commit/c80080ff7e105eb42d486ed473fa9c82fb518b0a
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AArch64/aarch64-sve-fill-spill-pair.ll

  Log Message:
  -----------
  [AArch64][SVE] Pair SVE fill/spill into LDP/STP with -msve-vector-bits=128. (#134068)

When compiling with -msve-vector-bits=128 or vscale_range(1, 1) and when
the offsets allow it, we can pair SVE LDR/STR instructions into Neon
LDP/STP.

For example, given:
```cpp
#include <arm_sve.h>

void foo(double const *ldp, double *stp) {
  svbool_t pg = svptrue_b64();
  svfloat64_t ld1 = svld1_f64(pg, ldp);
  svfloat64_t ld2 = svld1_f64(pg, ldp+svcntd());
  svst1_f64(pg, stp, ld1);
  svst1_f64(pg, stp+svcntd(), ld2);
}
```

When compiled with `-msve-vector-bits=128`, we currently generate:
```gas
foo:
        ldr     z0, [x0]
        ldr     z1, [x0, #1, mul vl]
        str     z0, [x1]
        str     z1, [x1, #1, mul vl]
        ret
```

With this patch, we instead generate:
```gas
foo:
        ldp     q0, q1, [x0]
        stp     q0, q1, [x1]
        ret
```

This is an alternative, more targetted approach to #127500.


  Commit: 0de48de36ee3583f1b7da3d388307266839f2347
      https://github.com/llvm/llvm-project/commit/0de48de36ee3583f1b7da3d388307266839f2347
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Improve loop wrapper op verifiers (#134833)

This patch revisits op verifiers for `LoopWrapperInterface` operations
to improve consistency across operations and to properly cover some
previously misreported cases.

Checks that should be done for these kinds of operations are documented
in the interface description.


  Commit: 78c86b38b04bdabc76f631263ab0f4faf8698af6
      https://github.com/llvm/llvm-project/commit/78c86b38b04bdabc76f631263ab0f4faf8698af6
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Avoid implicit integer conversion (#134983)

See discussion in https://github.com/llvm/llvm-project/pull/134672


  Commit: a6edaeb824f138a364f4818c4261eb27153a12ac
      https://github.com/llvm/llvm-project/commit/a6edaeb824f138a364f4818c4261eb27153a12ac
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/test/Transforms/TailCallElim/debugloc.ll

  Log Message:
  -----------
  [DebugInfo][TailCallElim] Use ret DILocation for return value selects (#134825)

In TailRecursionElimination we may insert a select before the return to
choose the return value if necessary; this select is effectively part of
the return statement, and so should use its DILocation.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: 2896bbe1488b628a27cdf893fc8bcc5febe128db
      https://github.com/llvm/llvm-project/commit/2896bbe1488b628a27cdf893fc8bcc5febe128db
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  [X86] getFauxShuffleMask - use std::iota for insert_subvector shuffle mask population. NFC.


  Commit: 747214e59be67ec1088de2f9db5d46607bb59565
      https://github.com/llvm/llvm-project/commit/747214e59be67ec1088de2f9db5d46607bb59565
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  [X86] getFauxShuffleMask - OR(BITCAST(SHUFFLE()),BITCAST(SHUFFLE())) patterns should return bitcasted source values (#134993)

Noticed while investigating #133947 regressions - if we peek through
bitcasts we can lose track of oneuse/combined nodes in shuffle combining

Currently the same codegen as combineX86ShufflesRecursively still peeks
through the bitcasts itself, but we will soon handle this consistently
as another part of #133947


  Commit: bc09c7405547fe56a896386b152b667878d2d8c2
      https://github.com/llvm/llvm-project/commit/bc09c7405547fe56a896386b152b667878d2d8c2
  Author: alex-t <alex-t at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/ControlFlowUtils.cpp
    M llvm/test/Transforms/FixIrreducible/basic.ll

  Log Message:
  -----------
  [AMDGPU] Fix for ControlFlowUtils reconnectPHIs. (#132954)

Description: reconnectPHIs must consider self-loops to avoid PHI income
pair that does not exists anymore.


  Commit: 258aa65197126fda5b3566734cd7d980343e332d
      https://github.com/llvm/llvm-project/commit/258aa65197126fda5b3566734cd7d980343e332d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  ValueTracking: Do not look at users of constants for ephemeral values (#134618)


  Commit: a29be9f28e8e0d4ca7a8a3cfdffe616ac780c754
      https://github.com/llvm/llvm-project/commit/a29be9f28e8e0d4ca7a8a3cfdffe616ac780c754
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Mangled.h
    M lldb/include/lldb/Core/RichManglingContext.h
    M lldb/include/lldb/Target/Language.h
    M lldb/source/Core/CMakeLists.txt
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/RichManglingContext.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/Language/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
    M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
    M lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
    M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
    M lldb/unittests/Core/CMakeLists.txt
    M lldb/unittests/Core/RichManglingContextTest.cpp
    M lldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp

  Log Message:
  -----------
  Revert "[LLDB] Refactored CPlusPlusLanguage::MethodName to break lldb-server dependencies" (#134995)

Reverts llvm/llvm-project#132274

Broke a test on LLDB Widows on Arm:
https://lab.llvm.org/buildbot/#/builders/141/builds/7726
```
FAIL: test_dwarf (lldbsuite.test.lldbtest.TestExternCSymbols.test_dwarf)
<...>
    self.assertTrue(self.res.Succeeded(), msg + output)

AssertionError: False is not true : Command 'expression -- foo()' did not return successfully

Error output:

error: Couldn't look up symbols:

  int foo(void)

Hint: The expression tried to call a function that is not present in the target, perhaps because it was optimized out by the compiler.
```


  Commit: aff139777ed315ea4d06c8543b2110c3dd989907
      https://github.com/llvm/llvm-project/commit/aff139777ed315ea4d06c8543b2110c3dd989907
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    R llvm/test/CodeGen/AArch64/aarch64-sve-fill-spill-pair.ll

  Log Message:
  -----------
  Revert "[AArch64][SVE] Pair SVE fill/spill into LDP/STP with -msve-vector-bits=128." (#134997)

Reverts llvm/llvm-project#134068

Caused a stage 2 build failure:
https://lab.llvm.org/buildbot/#/builders/41/builds/6016

```
FAILED: lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o 
/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage2/lib/Support -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/lib/Support -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage2/include -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/include -mcpu=neoverse-512tvb -mllvm -scalable-vectorization=preferred -mllvm -treat-scalable-fixed-error-as-warning=false -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -UNDEBUG  -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o -c /home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/lib/Support/Caching.cpp
Opcode has unknown scale!
UNREACHABLE executed at ../llvm/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp:4530!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage2/lib/Support -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/lib/Support -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage2/include -I/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/include -mcpu=neoverse-512tvb -mllvm -scalable-vectorization=preferred -mllvm -treat-scalable-fixed-error-as-warning=false -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o -MF lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o.d -o lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o -c /home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/lib/Support/Caching.cpp
1.	<eof> parser at end of file
2.	Code generation
3.	Running pass 'Function Pass Manager' on module '/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/llvm/llvm/lib/Support/Caching.cpp'.
4.	Running pass 'AArch64 load / store optimization pass' on function '@"_ZNSt17_Function_handlerIFN4llvm8ExpectedISt8functionIFNS1_ISt10unique_ptrINS0_16CachedFileStreamESt14default_deleteIS4_EEEEjRKNS0_5TwineEEEEEjNS0_9StringRefESB_EZNS0_10localCacheESB_SB_SB_S2_IFvjSB_S3_INS0_12MemoryBufferES5_ISH_EEEEE3$_0E9_M_invokeERKSt9_Any_dataOjOSF_SB_"'
 #0 0x0000b6eae9b67bf0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang+++0x81c7bf0)
 #1 0x0000b6eae9b65aec llvm::sys::RunSignalHandlers() (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang+++0x81c5aec)
 #2 0x0000b6eae9acd5f4 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x0000f16c1aff28f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000f16c1aacf1f0 __pthread_kill_implementation ./nptl/pthread_kill.c:44:76
 #5 0x0000f16c1aa8a67c gsignal ./signal/../sysdeps/posix/raise.c:27:6
 #6 0x0000f16c1aa77130 abort ./stdlib/abort.c:81:7
 #7 0x0000b6eae9ad6628 (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang+++0x8136628)
 #8 0x0000b6eae72e95a8 (/home/tcwg-buildbot/worker/clang-aarch64-sve-vla-2stage/stage1.install/bin/clang+++0x59495a8)
 #9 0x0000b6eae74ca9a8 (anonymous namespace)::AArch64LoadStoreOpt::findMatchingInsn(llvm::MachineInstrBundleIterator<llvm::MachineInstr, false>, (anonymous namespace)::LdStPairFlags&, unsigned int, bool) AArch64LoadStoreOptimizer.cpp:0:0
#10 0x0000b6eae74c85a8 (anonymous namespace)::AArch64LoadStoreOpt::tryToPairLdStInst(llvm::MachineInstrBundleIterator<llvm::MachineInstr, false>&) AArch64LoadStoreOptimizer.cpp:0:0
#11 0x0000b6eae74c624c (anonymous namespace)::AArch64LoadStoreOpt::optimizeBlock(llvm::MachineBasicBlock&, bool) AArch64LoadStoreOptimizer.cpp:0:0
#12 0x0000b6eae74c429c (anonymous namespace)::AArch64LoadStoreOpt::runOnMachineFunction(llvm::MachineFunction&) AArch64LoadStoreOptimizer.cpp:0:0
```


  Commit: e42f8609858f3e6ba004032a4750f0bcd5d466be
      https://github.com/llvm/llvm-project/commit/e42f8609858f3e6ba004032a4750f0bcd5d466be
  Author: Asher Mancinelli <ashermancinelli at gmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIROps.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/cse.fir
    M flang/test/Fir/invalid.fir

  Log Message:
  -----------
  [flang][nfc] Support volatility in Fir ops (#134858)

Part two of merging #132486. Support volatility in fir ops.

* Introduce a new operation fir.volatile_cast, whose only purpose is to
add or take away the volatility of an SSA value's type. The types must
be otherwise identical, and any other type conversions must be handled
by fir.convert. fir.convert will give an error if the volatility of the
inputs does not match, such that all changes to volatility must be
handled explicitly through fir.volatile_cast.
* Add memory effects to ops that read from or write to memory. The
precedent for this comes from the LLVM dialect (feb7beaf70) where
llvm.load/store ops with the volatile attribute report read/write
effects to a generic memory resource. This change is similar in spirit
but different in two ways: the volatility of an operation is determined
by the type of its memref, not an attribute on the op, and the memory
effects of a load- or store-like operation on a volatile reference type
are reported against a particular memory resource,
`VolatileMemoryResource`. This is so MLIR optimizations are able to
reorder operations that are not volatile around operations that are,
which we believe more precisely models LLVM's volatile memory semantics.
@vzakhari suggested this in #132486 citing LangRef. See
https://llvm.org/docs/LangRef.html#volatile-memory-accesses

Changes needed to generate IR with volatile types are not included in
this change, so it should be non-functional, containing only the changes
to Fir ops and op utilities that will be needed once we enable lowering
to generate volatile types.


  Commit: 750da48b4aa52f317a4165cc6cf18acf5dd2a0a5
      https://github.com/llvm/llvm-project/commit/750da48b4aa52f317a4165cc6cf18acf5dd2a0a5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    R libcxx/include/__cxx03/__algorithm/clamp.h
    M libcxx/include/__cxx03/__algorithm/count.h
    M libcxx/include/__cxx03/__algorithm/equal.h
    M libcxx/include/__cxx03/__algorithm/equal_range.h
    M libcxx/include/__cxx03/__algorithm/find.h
    M libcxx/include/__cxx03/__algorithm/find_end.h
    R libcxx/include/__cxx03/__algorithm/fold.h
    M libcxx/include/__cxx03/__algorithm/for_each.h
    R libcxx/include/__cxx03/__algorithm/for_each_n.h
    R libcxx/include/__cxx03/__algorithm/in_found_result.h
    R libcxx/include/__cxx03/__algorithm/in_fun_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_result.h
    M libcxx/include/__cxx03/__algorithm/includes.h
    M libcxx/include/__cxx03/__algorithm/is_permutation.h
    M libcxx/include/__cxx03/__algorithm/iterator_operations.h
    R libcxx/include/__cxx03/__algorithm/lexicographical_compare_three_way.h
    M libcxx/include/__cxx03/__algorithm/lower_bound.h
    M libcxx/include/__cxx03/__algorithm/make_projected.h
    M libcxx/include/__cxx03/__algorithm/max.h
    M libcxx/include/__cxx03/__algorithm/min.h
    M libcxx/include/__cxx03/__algorithm/min_element.h
    R libcxx/include/__cxx03/__algorithm/min_max_result.h
    M libcxx/include/__cxx03/__algorithm/minmax.h
    M libcxx/include/__cxx03/__algorithm/minmax_element.h
    M libcxx/include/__cxx03/__algorithm/partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/pstl.h
    R libcxx/include/__cxx03/__algorithm/ranges_adjacent_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_all_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_any_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_binary_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_clamp.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains_subrange.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_count.h
    R libcxx/include/__cxx03/__algorithm/ranges_count_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_ends_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal_range.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_end.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_first_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if_not.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_last.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_includes.h
    R libcxx/include/__cxx03/__algorithm/ranges_inplace_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_partitioned.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_iterator_concept.h
    R libcxx/include/__cxx03/__algorithm/ranges_lexicographical_compare.h
    R libcxx/include/__cxx03/__algorithm/ranges_lower_bound.h
    R libcxx/include/__cxx03/__algorithm/ranges_make_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_max.h
    R libcxx/include/__cxx03/__algorithm/ranges_max_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_min.h
    R libcxx/include/__cxx03/__algorithm/ranges_min_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_mismatch.h
    R libcxx/include/__cxx03/__algorithm/ranges_move.h
    R libcxx/include/__cxx03/__algorithm/ranges_move_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_next_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_none_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_nth_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_point.h
    R libcxx/include/__cxx03/__algorithm/ranges_pop_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_prev_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_push_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_sample.h
    R libcxx/include/__cxx03/__algorithm/ranges_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_search_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_intersection.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_symmetric_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_union.h
    R libcxx/include/__cxx03/__algorithm/ranges_shuffle.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_starts_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_swap_ranges.h
    R libcxx/include/__cxx03/__algorithm/ranges_transform.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_upper_bound.h
    R libcxx/include/__cxx03/__algorithm/sample.h
    M libcxx/include/__cxx03/__algorithm/search.h
    M libcxx/include/__cxx03/__algorithm/search_n.h
    M libcxx/include/__cxx03/__algorithm/set_difference.h
    M libcxx/include/__cxx03/__algorithm/set_intersection.h
    R libcxx/include/__cxx03/__algorithm/shift_left.h
    R libcxx/include/__cxx03/__algorithm/shift_right.h
    M libcxx/include/__cxx03/__algorithm/simd_utils.h
    M libcxx/include/__cxx03/__algorithm/sort.h
    M libcxx/include/__cxx03/__algorithm/unwrap_range.h
    M libcxx/include/__cxx03/__algorithm/upper_bound.h
    R libcxx/include/__cxx03/__atomic/atomic_ref.h
    R libcxx/include/__cxx03/__bit/bit_cast.h
    R libcxx/include/__cxx03/__bit/bit_ceil.h
    R libcxx/include/__cxx03/__bit/bit_floor.h
    R libcxx/include/__cxx03/__bit/bit_log2.h
    R libcxx/include/__cxx03/__bit/bit_width.h
    R libcxx/include/__cxx03/__bit/byteswap.h
    M libcxx/include/__cxx03/__bit/countl.h
    M libcxx/include/__cxx03/__bit/countr.h
    R libcxx/include/__cxx03/__bit/endian.h
    R libcxx/include/__cxx03/__bit/has_single_bit.h
    M libcxx/include/__cxx03/__bit/invert_if.h
    M libcxx/include/__cxx03/__bit/popcount.h
    M libcxx/include/__cxx03/__bit/rotate.h
    M libcxx/include/__cxx03/__bit_reference
    R libcxx/include/__cxx03/__charconv/chars_format.h
    R libcxx/include/__cxx03/__charconv/from_chars_integral.h
    R libcxx/include/__cxx03/__charconv/from_chars_result.h
    R libcxx/include/__cxx03/__charconv/tables.h
    R libcxx/include/__cxx03/__charconv/to_chars.h
    R libcxx/include/__cxx03/__charconv/to_chars_base_10.h
    R libcxx/include/__cxx03/__charconv/to_chars_floating_point.h
    R libcxx/include/__cxx03/__charconv/to_chars_integral.h
    R libcxx/include/__cxx03/__charconv/to_chars_result.h
    R libcxx/include/__cxx03/__charconv/traits.h
    R libcxx/include/__cxx03/__chrono/calendar.h
    R libcxx/include/__cxx03/__chrono/concepts.h
    R libcxx/include/__cxx03/__chrono/convert_to_tm.h
    R libcxx/include/__cxx03/__chrono/day.h
    M libcxx/include/__cxx03/__chrono/duration.h
    R libcxx/include/__cxx03/__chrono/exception.h
    R libcxx/include/__cxx03/__chrono/file_clock.h
    R libcxx/include/__cxx03/__chrono/formatter.h
    R libcxx/include/__cxx03/__chrono/hh_mm_ss.h
    R libcxx/include/__cxx03/__chrono/leap_second.h
    R libcxx/include/__cxx03/__chrono/literals.h
    R libcxx/include/__cxx03/__chrono/local_info.h
    R libcxx/include/__cxx03/__chrono/month.h
    R libcxx/include/__cxx03/__chrono/month_weekday.h
    R libcxx/include/__cxx03/__chrono/monthday.h
    R libcxx/include/__cxx03/__chrono/ostream.h
    R libcxx/include/__cxx03/__chrono/parser_std_format_spec.h
    R libcxx/include/__cxx03/__chrono/statically_widen.h
    R libcxx/include/__cxx03/__chrono/sys_info.h
    M libcxx/include/__cxx03/__chrono/time_point.h
    R libcxx/include/__cxx03/__chrono/time_zone.h
    R libcxx/include/__cxx03/__chrono/time_zone_link.h
    R libcxx/include/__cxx03/__chrono/tzdb.h
    R libcxx/include/__cxx03/__chrono/tzdb_list.h
    R libcxx/include/__cxx03/__chrono/weekday.h
    R libcxx/include/__cxx03/__chrono/year.h
    R libcxx/include/__cxx03/__chrono/year_month.h
    R libcxx/include/__cxx03/__chrono/year_month_day.h
    R libcxx/include/__cxx03/__chrono/year_month_weekday.h
    R libcxx/include/__cxx03/__chrono/zoned_time.h
    R libcxx/include/__cxx03/__compare/common_comparison_category.h
    R libcxx/include/__cxx03/__compare/compare_partial_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_strong_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_three_way.h
    R libcxx/include/__cxx03/__compare/compare_three_way_result.h
    R libcxx/include/__cxx03/__compare/compare_weak_order_fallback.h
    R libcxx/include/__cxx03/__compare/is_eq.h
    R libcxx/include/__cxx03/__compare/ordering.h
    R libcxx/include/__cxx03/__compare/partial_order.h
    R libcxx/include/__cxx03/__compare/strong_order.h
    R libcxx/include/__cxx03/__compare/synth_three_way.h
    R libcxx/include/__cxx03/__compare/three_way_comparable.h
    R libcxx/include/__cxx03/__compare/weak_order.h
    R libcxx/include/__cxx03/__concepts/arithmetic.h
    R libcxx/include/__cxx03/__concepts/assignable.h
    R libcxx/include/__cxx03/__concepts/boolean_testable.h
    R libcxx/include/__cxx03/__concepts/class_or_enum.h
    R libcxx/include/__cxx03/__concepts/common_reference_with.h
    R libcxx/include/__cxx03/__concepts/common_with.h
    R libcxx/include/__cxx03/__concepts/constructible.h
    R libcxx/include/__cxx03/__concepts/convertible_to.h
    R libcxx/include/__cxx03/__concepts/copyable.h
    R libcxx/include/__cxx03/__concepts/derived_from.h
    R libcxx/include/__cxx03/__concepts/destructible.h
    R libcxx/include/__cxx03/__concepts/different_from.h
    R libcxx/include/__cxx03/__concepts/equality_comparable.h
    R libcxx/include/__cxx03/__concepts/invocable.h
    R libcxx/include/__cxx03/__concepts/movable.h
    R libcxx/include/__cxx03/__concepts/predicate.h
    R libcxx/include/__cxx03/__concepts/regular.h
    R libcxx/include/__cxx03/__concepts/relation.h
    R libcxx/include/__cxx03/__concepts/same_as.h
    R libcxx/include/__cxx03/__concepts/semiregular.h
    R libcxx/include/__cxx03/__concepts/swappable.h
    R libcxx/include/__cxx03/__concepts/totally_ordered.h
    R libcxx/include/__cxx03/__coroutine/coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/coroutine_traits.h
    R libcxx/include/__cxx03/__coroutine/noop_coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/trivial_awaitables.h
    R libcxx/include/__cxx03/__expected/bad_expected_access.h
    R libcxx/include/__cxx03/__expected/expected.h
    R libcxx/include/__cxx03/__expected/unexpect.h
    R libcxx/include/__cxx03/__expected/unexpected.h
    R libcxx/include/__cxx03/__filesystem/copy_options.h
    R libcxx/include/__cxx03/__filesystem/directory_entry.h
    R libcxx/include/__cxx03/__filesystem/directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/directory_options.h
    R libcxx/include/__cxx03/__filesystem/file_status.h
    R libcxx/include/__cxx03/__filesystem/file_time_type.h
    R libcxx/include/__cxx03/__filesystem/file_type.h
    R libcxx/include/__cxx03/__filesystem/filesystem_error.h
    R libcxx/include/__cxx03/__filesystem/operations.h
    R libcxx/include/__cxx03/__filesystem/path.h
    R libcxx/include/__cxx03/__filesystem/path_iterator.h
    R libcxx/include/__cxx03/__filesystem/perm_options.h
    R libcxx/include/__cxx03/__filesystem/perms.h
    R libcxx/include/__cxx03/__filesystem/recursive_directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/space_info.h
    R libcxx/include/__cxx03/__filesystem/u8path.h
    R libcxx/include/__cxx03/__format/buffer.h
    R libcxx/include/__cxx03/__format/concepts.h
    R libcxx/include/__cxx03/__format/container_adaptor.h
    R libcxx/include/__cxx03/__format/enable_insertable.h
    R libcxx/include/__cxx03/__format/escaped_output_table.h
    R libcxx/include/__cxx03/__format/extended_grapheme_cluster_table.h
    R libcxx/include/__cxx03/__format/format_arg.h
    R libcxx/include/__cxx03/__format/format_arg_store.h
    R libcxx/include/__cxx03/__format/format_args.h
    R libcxx/include/__cxx03/__format/format_context.h
    R libcxx/include/__cxx03/__format/format_error.h
    R libcxx/include/__cxx03/__format/format_functions.h
    R libcxx/include/__cxx03/__format/format_parse_context.h
    R libcxx/include/__cxx03/__format/format_string.h
    R libcxx/include/__cxx03/__format/format_to_n_result.h
    R libcxx/include/__cxx03/__format/formatter.h
    R libcxx/include/__cxx03/__format/formatter_bool.h
    R libcxx/include/__cxx03/__format/formatter_char.h
    R libcxx/include/__cxx03/__format/formatter_floating_point.h
    R libcxx/include/__cxx03/__format/formatter_integer.h
    R libcxx/include/__cxx03/__format/formatter_integral.h
    R libcxx/include/__cxx03/__format/formatter_output.h
    R libcxx/include/__cxx03/__format/formatter_pointer.h
    R libcxx/include/__cxx03/__format/formatter_string.h
    R libcxx/include/__cxx03/__format/formatter_tuple.h
    R libcxx/include/__cxx03/__format/indic_conjunct_break_table.h
    R libcxx/include/__cxx03/__format/parser_std_format_spec.h
    R libcxx/include/__cxx03/__format/range_default_formatter.h
    R libcxx/include/__cxx03/__format/range_formatter.h
    R libcxx/include/__cxx03/__format/unicode.h
    R libcxx/include/__cxx03/__format/width_estimation_table.h
    R libcxx/include/__cxx03/__format/write_escaped.h
    M libcxx/include/__cxx03/__functional/bind.h
    R libcxx/include/__cxx03/__functional/bind_back.h
    R libcxx/include/__cxx03/__functional/bind_front.h
    R libcxx/include/__cxx03/__functional/boyer_moore_searcher.h
    R libcxx/include/__cxx03/__functional/compose.h
    R libcxx/include/__cxx03/__functional/default_searcher.h
    R libcxx/include/__cxx03/__functional/function.h
    R libcxx/include/__cxx03/__functional/invoke.h
    R libcxx/include/__cxx03/__functional/is_transparent.h
    M libcxx/include/__cxx03/__functional/mem_fn.h
    R libcxx/include/__cxx03/__functional/not_fn.h
    R libcxx/include/__cxx03/__functional/perfect_forward.h
    R libcxx/include/__cxx03/__functional/ranges_operations.h
    M libcxx/include/__cxx03/__functional/reference_wrapper.h
    M libcxx/include/__cxx03/__functional/weak_result_type.h
    R libcxx/include/__cxx03/__fwd/format.h
    R libcxx/include/__cxx03/__fwd/mdspan.h
    R libcxx/include/__cxx03/__fwd/memory_resource.h
    R libcxx/include/__cxx03/__fwd/span.h
    M libcxx/include/__cxx03/__fwd/string.h
    R libcxx/include/__cxx03/__fwd/subrange.h
    M libcxx/include/__cxx03/__hash_table
    M libcxx/include/__cxx03/__iterator/advance.h
    M libcxx/include/__cxx03/__iterator/bounded_iter.h
    R libcxx/include/__cxx03/__iterator/common_iterator.h
    R libcxx/include/__cxx03/__iterator/concepts.h
    R libcxx/include/__cxx03/__iterator/counted_iterator.h
    R libcxx/include/__cxx03/__iterator/data.h
    R libcxx/include/__cxx03/__iterator/default_sentinel.h
    M libcxx/include/__cxx03/__iterator/distance.h
    R libcxx/include/__cxx03/__iterator/empty.h
    R libcxx/include/__cxx03/__iterator/incrementable_traits.h
    R libcxx/include/__cxx03/__iterator/indirectly_comparable.h
    M libcxx/include/__cxx03/__iterator/insert_iterator.h
    M libcxx/include/__cxx03/__iterator/istream_iterator.h
    M libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
    R libcxx/include/__cxx03/__iterator/iter_move.h
    R libcxx/include/__cxx03/__iterator/iter_swap.h
    M libcxx/include/__cxx03/__iterator/iterator_traits.h
    R libcxx/include/__cxx03/__iterator/iterator_with_data.h
    R libcxx/include/__cxx03/__iterator/mergeable.h
    M libcxx/include/__cxx03/__iterator/move_iterator.h
    R libcxx/include/__cxx03/__iterator/move_sentinel.h
    M libcxx/include/__cxx03/__iterator/next.h
    R libcxx/include/__cxx03/__iterator/permutable.h
    M libcxx/include/__cxx03/__iterator/prev.h
    R libcxx/include/__cxx03/__iterator/projected.h
    R libcxx/include/__cxx03/__iterator/ranges_iterator_traits.h
    R libcxx/include/__cxx03/__iterator/readable_traits.h
    R libcxx/include/__cxx03/__iterator/reverse_access.h
    M libcxx/include/__cxx03/__iterator/reverse_iterator.h
    R libcxx/include/__cxx03/__iterator/size.h
    R libcxx/include/__cxx03/__iterator/sortable.h
    R libcxx/include/__cxx03/__iterator/unreachable_sentinel.h
    M libcxx/include/__cxx03/__iterator/wrap_iter.h
    R libcxx/include/__cxx03/__math/special_functions.h
    R libcxx/include/__cxx03/__mdspan/default_accessor.h
    R libcxx/include/__cxx03/__mdspan/extents.h
    R libcxx/include/__cxx03/__mdspan/layout_left.h
    R libcxx/include/__cxx03/__mdspan/layout_right.h
    R libcxx/include/__cxx03/__mdspan/layout_stride.h
    R libcxx/include/__cxx03/__mdspan/mdspan.h
    R libcxx/include/__cxx03/__memory/concepts.h
    R libcxx/include/__cxx03/__memory/inout_ptr.h
    R libcxx/include/__cxx03/__memory/out_ptr.h
    R libcxx/include/__cxx03/__memory/ranges_construct_at.h
    R libcxx/include/__cxx03/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__cxx03/__memory/shared_ptr.h
    M libcxx/include/__cxx03/__memory/unique_ptr.h
    R libcxx/include/__cxx03/__memory/uses_allocator_construction.h
    R libcxx/include/__cxx03/__memory_resource/memory_resource.h
    R libcxx/include/__cxx03/__memory_resource/monotonic_buffer_resource.h
    R libcxx/include/__cxx03/__memory_resource/polymorphic_allocator.h
    R libcxx/include/__cxx03/__memory_resource/pool_options.h
    R libcxx/include/__cxx03/__memory_resource/synchronized_pool_resource.h
    R libcxx/include/__cxx03/__memory_resource/unsynchronized_pool_resource.h
    M libcxx/include/__cxx03/__mutex/once_flag.h
    R libcxx/include/__cxx03/__node_handle
    R libcxx/include/__cxx03/__numeric/exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/gcd_lcm.h
    R libcxx/include/__cxx03/__numeric/inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/midpoint.h
    R libcxx/include/__cxx03/__numeric/pstl.h
    R libcxx/include/__cxx03/__numeric/reduce.h
    R libcxx/include/__cxx03/__numeric/saturation_arithmetic.h
    R libcxx/include/__cxx03/__numeric/transform_exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_reduce.h
    R libcxx/include/__cxx03/__ostream/print.h
    R libcxx/include/__cxx03/__pstl/backend.h
    R libcxx/include/__cxx03/__pstl/backend_fwd.h
    R libcxx/include/__cxx03/__pstl/backends/default.h
    R libcxx/include/__cxx03/__pstl/backends/libdispatch.h
    R libcxx/include/__cxx03/__pstl/backends/serial.h
    R libcxx/include/__cxx03/__pstl/backends/std_thread.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/any_of.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/cpu_traits.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/fill.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/find_if.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/for_each.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/merge.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/stable_sort.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform_reduce.h
    R libcxx/include/__cxx03/__pstl/dispatch.h
    R libcxx/include/__cxx03/__pstl/handle_exception.h
    M libcxx/include/__cxx03/__random/generate_canonical.h
    M libcxx/include/__cxx03/__random/seed_seq.h
    R libcxx/include/__cxx03/__random/uniform_random_bit_generator.h
    R libcxx/include/__cxx03/__ranges/access.h
    R libcxx/include/__cxx03/__ranges/all.h
    R libcxx/include/__cxx03/__ranges/as_rvalue_view.h
    R libcxx/include/__cxx03/__ranges/chunk_by_view.h
    R libcxx/include/__cxx03/__ranges/common_view.h
    R libcxx/include/__cxx03/__ranges/concepts.h
    R libcxx/include/__cxx03/__ranges/container_compatible_range.h
    R libcxx/include/__cxx03/__ranges/counted.h
    R libcxx/include/__cxx03/__ranges/dangling.h
    R libcxx/include/__cxx03/__ranges/data.h
    R libcxx/include/__cxx03/__ranges/drop_view.h
    R libcxx/include/__cxx03/__ranges/drop_while_view.h
    R libcxx/include/__cxx03/__ranges/elements_view.h
    R libcxx/include/__cxx03/__ranges/empty.h
    R libcxx/include/__cxx03/__ranges/empty_view.h
    R libcxx/include/__cxx03/__ranges/enable_borrowed_range.h
    R libcxx/include/__cxx03/__ranges/enable_view.h
    R libcxx/include/__cxx03/__ranges/filter_view.h
    R libcxx/include/__cxx03/__ranges/from_range.h
    R libcxx/include/__cxx03/__ranges/iota_view.h
    R libcxx/include/__cxx03/__ranges/istream_view.h
    R libcxx/include/__cxx03/__ranges/join_view.h
    R libcxx/include/__cxx03/__ranges/lazy_split_view.h
    R libcxx/include/__cxx03/__ranges/movable_box.h
    R libcxx/include/__cxx03/__ranges/non_propagating_cache.h
    R libcxx/include/__cxx03/__ranges/owning_view.h
    R libcxx/include/__cxx03/__ranges/range_adaptor.h
    R libcxx/include/__cxx03/__ranges/rbegin.h
    R libcxx/include/__cxx03/__ranges/ref_view.h
    R libcxx/include/__cxx03/__ranges/rend.h
    R libcxx/include/__cxx03/__ranges/repeat_view.h
    R libcxx/include/__cxx03/__ranges/reverse_view.h
    R libcxx/include/__cxx03/__ranges/single_view.h
    R libcxx/include/__cxx03/__ranges/size.h
    R libcxx/include/__cxx03/__ranges/split_view.h
    R libcxx/include/__cxx03/__ranges/subrange.h
    R libcxx/include/__cxx03/__ranges/take_view.h
    R libcxx/include/__cxx03/__ranges/take_while_view.h
    R libcxx/include/__cxx03/__ranges/to.h
    R libcxx/include/__cxx03/__ranges/transform_view.h
    R libcxx/include/__cxx03/__ranges/view_interface.h
    R libcxx/include/__cxx03/__ranges/views.h
    R libcxx/include/__cxx03/__ranges/zip_view.h
    R libcxx/include/__cxx03/__stop_token/atomic_unique_lock.h
    R libcxx/include/__cxx03/__stop_token/intrusive_list_view.h
    R libcxx/include/__cxx03/__stop_token/intrusive_shared_ptr.h
    R libcxx/include/__cxx03/__stop_token/stop_callback.h
    R libcxx/include/__cxx03/__stop_token/stop_source.h
    R libcxx/include/__cxx03/__stop_token/stop_state.h
    R libcxx/include/__cxx03/__stop_token/stop_token.h
    M libcxx/include/__cxx03/__string/char_traits.h
    M libcxx/include/__cxx03/__system_error/error_category.h
    M libcxx/include/__cxx03/__system_error/error_code.h
    M libcxx/include/__cxx03/__system_error/error_condition.h
    R libcxx/include/__cxx03/__thread/formatter.h
    M libcxx/include/__cxx03/__thread/id.h
    R libcxx/include/__cxx03/__thread/jthread.h
    M libcxx/include/__cxx03/__thread/thread.h
    M libcxx/include/__cxx03/__tree
    R libcxx/include/__cxx03/__tuple/ignore.h
    R libcxx/include/__cxx03/__type_traits/common_reference.h
    R libcxx/include/__cxx03/__type_traits/has_unique_object_representation.h
    R libcxx/include/__cxx03/__type_traits/is_aggregate.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_convertible.h
    M libcxx/include/__cxx03/__type_traits/result_of.h
    R libcxx/include/__cxx03/__utility/as_const.h
    R libcxx/include/__cxx03/__utility/cmp.h
    M libcxx/include/__cxx03/__utility/exception_guard.h
    R libcxx/include/__cxx03/__utility/exchange.h
    R libcxx/include/__cxx03/__utility/forward_like.h
    R libcxx/include/__cxx03/__utility/in_place.h
    M libcxx/include/__cxx03/__utility/pair.h
    R libcxx/include/__cxx03/__utility/to_underlying.h
    M libcxx/include/__cxx03/algorithm
    R libcxx/include/__cxx03/any
    M libcxx/include/__cxx03/array
    M libcxx/include/__cxx03/atomic
    R libcxx/include/__cxx03/barrier
    R libcxx/include/__cxx03/bit
    M libcxx/include/__cxx03/bitset
    R libcxx/include/__cxx03/charconv
    M libcxx/include/__cxx03/chrono
    M libcxx/include/__cxx03/cmath
    M libcxx/include/__cxx03/codecvt
    R libcxx/include/__cxx03/compare
    R libcxx/include/__cxx03/concepts
    M libcxx/include/__cxx03/condition_variable
    R libcxx/include/__cxx03/coroutine
    M libcxx/include/__cxx03/deque
    R libcxx/include/__cxx03/execution
    R libcxx/include/__cxx03/expected
    R libcxx/include/__cxx03/experimental/__simd/aligned_tag.h
    R libcxx/include/__cxx03/experimental/__simd/declaration.h
    R libcxx/include/__cxx03/experimental/__simd/reference.h
    R libcxx/include/__cxx03/experimental/__simd/scalar.h
    R libcxx/include/__cxx03/experimental/__simd/simd.h
    R libcxx/include/__cxx03/experimental/__simd/simd_mask.h
    R libcxx/include/__cxx03/experimental/__simd/traits.h
    R libcxx/include/__cxx03/experimental/__simd/utility.h
    R libcxx/include/__cxx03/experimental/__simd/vec_ext.h
    R libcxx/include/__cxx03/experimental/iterator
    R libcxx/include/__cxx03/experimental/memory
    R libcxx/include/__cxx03/experimental/propagate_const
    R libcxx/include/__cxx03/experimental/simd
    R libcxx/include/__cxx03/experimental/type_traits
    M libcxx/include/__cxx03/experimental/utility
    M libcxx/include/__cxx03/ext/hash_map
    M libcxx/include/__cxx03/ext/hash_set
    R libcxx/include/__cxx03/filesystem
    R libcxx/include/__cxx03/format
    M libcxx/include/__cxx03/forward_list
    M libcxx/include/__cxx03/fstream
    M libcxx/include/__cxx03/functional
    R libcxx/include/__cxx03/initializer_list
    M libcxx/include/__cxx03/ios
    M libcxx/include/__cxx03/istream
    M libcxx/include/__cxx03/iterator
    R libcxx/include/__cxx03/latch
    M libcxx/include/__cxx03/list
    M libcxx/include/__cxx03/locale
    M libcxx/include/__cxx03/map
    R libcxx/include/__cxx03/mdspan
    M libcxx/include/__cxx03/memory
    R libcxx/include/__cxx03/memory_resource
    M libcxx/include/__cxx03/mutex
    R libcxx/include/__cxx03/numbers
    M libcxx/include/__cxx03/numeric
    R libcxx/include/__cxx03/optional
    M libcxx/include/__cxx03/ostream
    R libcxx/include/__cxx03/print
    M libcxx/include/__cxx03/queue
    M libcxx/include/__cxx03/random
    R libcxx/include/__cxx03/ranges
    M libcxx/include/__cxx03/regex
    R libcxx/include/__cxx03/scoped_allocator
    R libcxx/include/__cxx03/semaphore
    M libcxx/include/__cxx03/set
    R libcxx/include/__cxx03/shared_mutex
    R libcxx/include/__cxx03/source_location
    R libcxx/include/__cxx03/span
    M libcxx/include/__cxx03/stack
    R libcxx/include/__cxx03/stop_token
    M libcxx/include/__cxx03/string
    M libcxx/include/__cxx03/string_view
    R libcxx/include/__cxx03/syncstream
    M libcxx/include/__cxx03/system_error
    M libcxx/include/__cxx03/thread
    R libcxx/include/__cxx03/tuple
    M libcxx/include/__cxx03/type_traits
    M libcxx/include/__cxx03/typeindex
    M libcxx/include/__cxx03/unordered_map
    M libcxx/include/__cxx03/unordered_set
    M libcxx/include/__cxx03/utility
    M libcxx/include/__cxx03/valarray
    R libcxx/include/__cxx03/variant
    M libcxx/include/__cxx03/vector
    M libcxx/include/any
    M libcxx/include/barrier
    M libcxx/include/bit
    M libcxx/include/charconv
    M libcxx/include/compare
    M libcxx/include/concepts
    M libcxx/include/coroutine
    M libcxx/include/execution
    M libcxx/include/expected
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/filesystem
    M libcxx/include/format
    M libcxx/include/initializer_list
    M libcxx/include/latch
    M libcxx/include/mdspan
    M libcxx/include/memory_resource
    M libcxx/include/numbers
    M libcxx/include/optional
    M libcxx/include/print
    M libcxx/include/ranges
    M libcxx/include/scoped_allocator
    M libcxx/include/semaphore
    M libcxx/include/shared_mutex
    M libcxx/include/source_location
    M libcxx/include/span
    M libcxx/include/stop_token
    M libcxx/include/syncstream
    M libcxx/include/tuple
    M libcxx/include/variant

  Log Message:
  -----------
  [libc++][C++03] Remove headers which don't provide anything (#134044)

This patch removes all of the frozen headers which don't provide
anything. Basically any header that's C++11-or-later is removed from the
frozen headers.

This is part of
https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc.


  Commit: 6e7c40b83de8290d081bcd72b1c57e30aeb28989
      https://github.com/llvm/llvm-project/commit/6e7c40b83de8290d081bcd72b1c57e30aeb28989
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    A clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
    A clang/test/CIR/CodeGenOpenACC/parallel.c
    A clang/test/CIR/CodeGenOpenACC/serial.c

  Log Message:
  -----------
  [OpenACC][CIR] Initial patch to do OpenACC->IR lowering (#134936)

This patch adds some lowering code for Compute Constructs, plus the
infrastructure to someday do clauses. Doing this requires adding the
dialect to the CIRGenerator.

This patch does not however implement/correctly initialize lowering from
OpenACC-Dialect to anything lower however.


  Commit: d54c28b9c1396fa92d9347ac1135da7907121cb8
      https://github.com/llvm/llvm-project/commit/d54c28b9c1396fa92d9347ac1135da7907121cb8
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip

  Log Message:
  -----------
  [HIP] use offload wrapper for non-device-only non-rdc (#132869)

Currently HIP still uses offload bundler for non-rdc mode for the new
offload driver.

This patch switches to use offload wrapper for non-device-only non-rdc
mode when new offload driver is enabled.

This makes the rdc and non-rdc compilation more consistent and speeds up
compilation since the offload wrapper supports parallel compilation for
different GPU arch's.

It is implemented by adding a linker wrapper action for each assemble
action of input file. Linker wrapper action differentiates this special
type of work vs normal linker wrapper work by the fle type. This type of
work results in object instead of image. The linker wrapper adds "-r"
for it and only includes the object file as input, not the host
libraries.

For device-only non-RDC mode, the new driver keeps the original
behavior.


  Commit: 4f64da14953a998d3f6571d924116e160560c647
      https://github.com/llvm/llvm-project/commit/4f64da14953a998d3f6571d924116e160560c647
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 750da48b4aa5

The .h removals was done by the sync script. I manually cleaned up
the remaining removals based on the output of

    git show 750da48b4aa52f libcxx/include/CMakeLists.txt | rg '^- ' | rg -v '\.'


  Commit: e24c9e7a0c61ed49e79433d405cb5157483ce691
      https://github.com/llvm/llvm-project/commit/e24c9e7a0c61ed49e79433d405cb5157483ce691
  Author: Zhaoxuan Jiang <jiangzhaoxuan94 at gmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h

  Log Message:
  -----------
  [IR] improve hashing quality for ValueInfo (#132917)

The current hashing quality for `ValueInfo` is poor because it uses
pointers as the hash value, which can negatively impact performance in
various places that use a `DenseSet`/`Map` of `ValueInfo`. In one
observed case, `ModuleSummaryIndex::propagateAttributes()` was taking
about 25 minutes to complete on a ThinLTO application. Profiling
revealed that the majority of this time was spent operating on the
`MarkedNonReadWriteOnly` set.

With the improved hashing, the execution time for `propagateAttributes`
is dramatically reduced to less than 10 seconds.


  Commit: d99cdd7fba3cf48e2e2ca976b1747ee7b2e89625
      https://github.com/llvm/llvm-project/commit/d99cdd7fba3cf48e2e2ca976b1747ee7b2e89625
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h

  Log Message:
  -----------
  MachineRegisterInfo: Remove trailing whitespace


  Commit: e3f5a1bfc58b5c8db8ff8ac8390e790c7a396d4a
      https://github.com/llvm/llvm-project/commit/e3f5a1bfc58b5c8db8ff8ac8390e790c7a396d4a
  Author: Vy Nguyen <vyng at google.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Telemetry.h

  Log Message:
  -----------
  [LLDB][NFC]Also includes the error in log msg. (#134922)

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 54cdc758571731e2b8e6369cc84bbc27f1c1db59
      https://github.com/llvm/llvm-project/commit/54cdc758571731e2b8e6369cc84bbc27f1c1db59
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/ROCm.h
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/hip-sanitize-options.hip

  Log Message:
  -----------
  clang/AMDGPU: Stop looking for hip.bc in device libs (#134801)

This has been an empty library since January 2023


  Commit: ad9f6d3ceef676093add49ed7e530171fd9b72d6
      https://github.com/llvm/llvm-project/commit/ad9f6d3ceef676093add49ed7e530171fd9b72d6
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M offload/test/offloading/gpupgo/pgo1.c
    M offload/test/offloading/gpupgo/pgo2.c

  Log Message:
  -----------
  [PGO][Offload] Use %profdata in PGO tests (#135015)

So that the wrong llvm-profdata is not picked up from PATH.


  Commit: fb73086dd2d359459888068e2b088032fc242111
      https://github.com/llvm/llvm-project/commit/fb73086dd2d359459888068e2b088032fc242111
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIROps.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/cse.fir
    M flang/test/Fir/invalid.fir

  Log Message:
  -----------
  Revert "[flang][nfc] Support volatility in Fir ops" (#135034)

Reverts llvm/llvm-project#134858

Fails to build when shared libraries are enabled:
https://lab.llvm.org/buildbot/#/builders/80/builds/12361
```
: && /usr/local/bin/c++ -fPIC -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wno-deprecated-copy -Wno-string-conversion -Wno-ctad-maybe-unsupported -Wno-unused-command-line-argument -Wstring-conversion           -Wcovered-switch-default -Wno-nested-anon-types -O3 -DNDEBUG  -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/./lib  -Wl,--gc-sections -shared -Wl,-soname,libFIRDialect.so.21.0git -o lib/libFIRDialect.so.21.0git tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIRAttr.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIRDialect.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIRType.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FirAliasTagOpInterface.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FortranVariableInterface.cpp.o tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/Inliner.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/lib:"  lib/libCUFAttrs.so.21.0git  lib/libFIRDialectSupport.so.21.0git  lib/libLLVMAsmPrinter.so.21.0git  lib/libMLIRBuiltinToLLVMIRTranslation.so.21.0git  lib/libMLIROpenMPToLLVM.so.21.0git  lib/libMLIRLLVMToLLVMIRTranslation.so.21.0git  lib/libMLIRFuncToLLVM.so.21.0git  lib/libMLIRArithToLLVM.so.21.0git  lib/libMLIRArithAttrToLLVMConversion.so.21.0git  lib/libMLIRArithTransforms.so.21.0git  lib/libMLIRBufferizationTransforms.so.21.0git  lib/libMLIRBufferizationDialect.so.21.0git  lib/libMLIRSparseTensorDialect.so.21.0git  lib/libMLIRSCFDialect.so.21.0git  lib/libMLIRFuncTransforms.so.21.0git  lib/libMLIRShardingInterface.so.21.0git  lib/libMLIRMeshDialect.so.21.0git  lib/libMLIRVectorDialect.so.21.0git  lib/libMLIRTensorDialect.so.21.0git  lib/libMLIRParallelCombiningOpInterface.so.21.0git  lib/libMLIRMaskableOpInterface.so.21.0git  lib/libMLIRMaskingOpInterface.so.21.0git  lib/libMLIRVectorInterfaces.so.21.0git  lib/libMLIRControlFlowToLLVM.so.21.0git  lib/libMLIRControlFlowDialect.so.21.0git  lib/libMLIRMemRefToLLVM.so.21.0git  lib/libMLIRLLVMCommonConversion.so.21.0git  lib/libMLIRMemRefUtils.so.21.0git  lib/libMLIRAffineDialect.so.21.0git  lib/libMLIRMemRefDialect.so.21.0git  lib/libMLIRArithUtils.so.21.0git  lib/libMLIRComplexDialect.so.21.0git  lib/libMLIRArithDialect.so.21.0git  lib/libMLIRCastInterfaces.so.21.0git  lib/libMLIRInferIntRangeCommon.so.21.0git  lib/libMLIRShapedOpInterfaces.so.21.0git  lib/libMLIRDialect.so.21.0git  lib/libMLIRDialectUtils.so.21.0git  lib/libMLIROpenMPDialect.so.21.0git  lib/libMLIROpenACCMPCommon.so.21.0git  lib/libMLIRTargetLLVMIRExport.so.21.0git  lib/libMLIRDLTIDialect.so.21.0git  lib/libMLIRLLVMIRTransforms.so.21.0git  lib/libMLIRTransforms.so.21.0git  lib/libMLIRUBDialect.so.21.0git  lib/libMLIRRuntimeVerifiableOpInterface.so.21.0git  lib/libMLIRFuncDialect.so.21.0git  lib/libMLIRNVVMDialect.so.21.0git  lib/libMLIRTranslateLib.so.21.0git  lib/libMLIRParser.so.21.0git  lib/libMLIRBytecodeReader.so.21.0git  lib/libMLIRAsmParser.so.21.0git  lib/libMLIRTransformUtils.so.21.0git  lib/libMLIRSubsetOpInterface.so.21.0git  lib/libMLIRValueBoundsOpInterface.so.21.0git  lib/libMLIRDestinationStyleOpInterface.so.21.0git  lib/libMLIRRewrite.so.21.0git  lib/libMLIRRewritePDL.so.21.0git  lib/libMLIRPDLToPDLInterp.so.21.0git  lib/libMLIRPass.so.21.0git  lib/libMLIRAnalysis.so.21.0git  lib/libMLIRInferIntRangeInterface.so.21.0git  lib/libMLIRLoopLikeInterface.so.21.0git  lib/libMLIRPresburger.so.21.0git  lib/libMLIRViewLikeInterface.so.21.0git  lib/libMLIRPDLInterpDialect.so.21.0git  lib/libMLIRPDLDialect.so.21.0git  lib/libLLVMFrontendOpenMP.so.21.0git  lib/libLLVMTransformUtils.so.21.0git  lib/libMLIRLLVMDialect.so.21.0git  lib/libMLIRInferTypeOpInterface.so.21.0git  lib/libMLIRControlFlowInterfaces.so.21.0git  lib/libMLIRDataLayoutInterfaces.so.21.0git  lib/libMLIRFunctionInterfaces.so.21.0git  lib/libMLIRCallInterfaces.so.21.0git  lib/libMLIRMemorySlotInterfaces.so.21.0git  lib/libMLIRSideEffectInterfaces.so.21.0git  lib/libMLIRIR.so.21.0git  lib/libLLVMBitWriter.so.21.0git  lib/libLLVMAnalysis.so.21.0git  lib/libLLVMAsmParser.so.21.0git  lib/libLLVMBitReader.so.21.0git  lib/libMLIRSupport.so.21.0git  lib/libLLVMCore.so.21.0git  lib/libLLVMRemarks.so.21.0git  lib/libLLVMBinaryFormat.so.21.0git  lib/libLLVMTargetParser.so.21.0git  lib/libLLVMSupport.so.21.0git  -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-sharedlibs/build/lib && :
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::CharBoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir12CharBoxValue4dumpEv[_ZNK3fir12CharBoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::CharBoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::PolymorphicValue::dump() const':
FIROps.cpp:(.text._ZNK3fir16PolymorphicValue4dumpEv[_ZNK3fir16PolymorphicValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::PolymorphicValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::ArrayBoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir13ArrayBoxValue4dumpEv[_ZNK3fir13ArrayBoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::ArrayBoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::CharArrayBoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir17CharArrayBoxValue4dumpEv[_ZNK3fir17CharArrayBoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::CharArrayBoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::ProcBoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir12ProcBoxValue4dumpEv[_ZNK3fir12ProcBoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::ProcBoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::BoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir8BoxValue4dumpEv[_ZNK3fir8BoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::BoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::MutableBoxValue::dump() const':
FIROps.cpp:(.text._ZNK3fir15MutableBoxValue4dumpEv[_ZNK3fir15MutableBoxValue4dumpEv]+0x20): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::MutableBoxValue const&)'
/usr/bin/ld: tools/flang/lib/Optimizer/Dialect/CMakeFiles/FIRDialect.dir/FIROps.cpp.o: in function `fir::ExtendedValue::dump() const':
FIROps.cpp:(.text._ZNK3fir13ExtendedValue4dumpEv[_ZNK3fir13ExtendedValue4dumpEv]+0x18): undefined reference to `fir::operator<<(llvm::raw_ostream&, fir::ExtendedValue const&)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
```


  Commit: 076318bd78f5ed338350841075316a75d89ecd9b
      https://github.com/llvm/llvm-project/commit/076318bd78f5ed338350841075316a75d89ecd9b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/reordered-loads.ll

  Log Message:
  -----------
  [SLP]Use proper order when calculating costs for geps/extracts to correctly identify profitability

Need to reorder properly the scalars, when evaluating the costs for the
external uses/geps to prevent differences in the calculating of the
profitability costs, used to choose between gather/compressed loads.

Fixes https://github.com/llvm/llvm-project/pull/132099#issuecomment-2789627454


  Commit: 5083e80c14a5c1f0ab40b5df95771ebbdda1adb2
      https://github.com/llvm/llvm-project/commit/5083e80c14a5c1f0ab40b5df95771ebbdda1adb2
  Author: ivangarcia44 <36650061+ivangarcia44 at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/canonicalize.mlir

  Log Message:
  -----------
  Folding extract_strided_metadata input into reinterpret_cast (#134845)

We can always fold the input of a extract_strided_metadata operator to
the input of a reinterpret_cast operator, because they point to the same
memory. Note that the reinterpret_cast does not use the layout of its
input memref, only its base memory pointer which is the same as the base
pointer returned by the extract_strided_metadata operator and the base
pointer of the extract_strided_metadata memref input.

Operations like expand_shape, collapse_shape, and subview are lowered to
a pair of extract_strided_metadata and reinterpret_cast like this:
      
%base_buffer, %offset, %sizes:2, %strides:2 =
memref.extract_strided_metadata %input_memref :
memref<ID1x...xIDNxBaseType> -> memref<f32>, index, index, index, index,
index

%reinterpret_cast = memref.reinterpret_cast %base_buffer to offset:
[%o1], sizes: [%d1,...,%dN], strides: [%s1,...,%N] : memref<f32> to
memref<OD1x...xODNxBaseType >

In many cases the input of the extract_strided_metadata input can be
passed directly into the input of the reinterpret_cast operation like
this (see how %base_buffer is replaced by %input_memref in the
reinterpret_cast above and the input type is updated):

%base_buffer, %offset, %sizes:2, %strides:2 =
memref.extract_strided_metadata %input_memref :
memref<ID1x...xIDNxBaseType> -> memref<f32>, index, index, index, index,
index
%reinterpret_cast = memref.reinterpret_cast %input_memref to offset:
[%o1], sizes: [%d1,...,%dN], strides: [%s1,...,%N] :
memref<ID1x...xIDNxBaseType> to memref<OD1x...xODNxBaseType >

When dealing with static dimensions, the extract_strided_metatdata will
become deadcode and we end up only with a reinterpret_cast:

%reinterpret_cast = memref.reinterpret_cast %input_memref to offset:
[%o1], sizes: [%d1,...,%dN], strides: [%s1,...,%N] :
memref<ID1x...xIDNxBaseType> to memref<OD1x...xODNxBaseType >

Note that reinterpret_cast only reads the base memory pointer from the
input memref (%input_memref above), which is equivalent to the
%base_buffer returned by the extract_strided_metadata operation. Hence
it is legal always to use the extract_strided_metadata input memref
directly in the reinterpret_cast. Note that since this is a pointer,
this operation is legal even when the base pointer values are modified
between the operation pair.

@matthias-springer 
@joker-eph 
@sahas3
@Hanumanth04
@dixinzhou
@rafaelubalmw

---------

Co-authored-by: Ivan Garcia <igarcia at vdi-ah2ddp-178.dhcp.mathworks.com>


  Commit: b0338c3d6c6d9787232e07ceff56ef161c357602
      https://github.com/llvm/llvm-project/commit/b0338c3d6c6d9787232e07ceff56ef161c357602
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M libclc/clc/include/clc/integer/gentype.inc
    M libclc/clc/include/clc/math/gentype.inc
    A libclc/clc/include/clc/misc/clc_shuffle.h
    A libclc/clc/include/clc/misc/clc_shuffle2.h
    A libclc/clc/include/clc/misc/shuffle2_decl.inc
    A libclc/clc/include/clc/misc/shuffle2_def.inc
    A libclc/clc/include/clc/misc/shuffle_decl.inc
    A libclc/clc/include/clc/misc/shuffle_def.inc
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/misc/clc_shuffle.cl
    A libclc/clc/lib/generic/misc/clc_shuffle2.cl
    M libclc/generic/include/clc/misc/shuffle.h
    M libclc/generic/lib/misc/shuffle.cl
    M libclc/generic/lib/misc/shuffle2.cl

  Log Message:
  -----------
  [libclc] Move shuffle/shuffle2 to the CLC library (#135000)

This commit moves the shuffle and shuffle2 builtins to the CLC library.
In so doing it makes the headers simpler and re-usable for other builtin
layers to hook into the CLC functions, if they wish.

An additional gentype utility has been made available, which provides a
consistent vector-size-or-1 macro for use.

The existing __CLC_VECSIZE is defined but empty which is useful in
certain applications, such as in concatenation with a type to make a
correctly sized scalar or vector type. However, this isn't usable in the
same preprocessor lines when wanting to check for specific vector sizes,
as e.g., '__CLC_VECSIZE == 2' resolves to '== 2' which is invalid. In
local testing this is also useful for the geometric builtins which are
only available for scalar types and vector types of 2, 3, or 4 elements.

No codegen changes are observed, except the internal shuffle/shuffle2
utility functions are no longer made publicly available.


  Commit: b010554d2d1fbe19091b2b3996e0477b70fcd84b
      https://github.com/llvm/llvm-project/commit/b010554d2d1fbe19091b2b3996e0477b70fcd84b
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [IR] Reduce use of getCalledFunction in Verifier. NFCI. (#134978)

This is mostly just a simplification. getCalledFunction is a best-effort
thing so the verifier should not be relying on it in most cases, except
for intrinsic calls where we are guaranteed that the called function is
known, but most of those cases can be handled with
CallBase::getIntrinsicID instead.

---------

Co-authored-by: Tim Gymnich <tim at gymni.ch>


  Commit: 68ee56d15020b4fa7f3c5443b4be6504481957d4
      https://github.com/llvm/llvm-project/commit/68ee56d15020b4fa7f3c5443b4be6504481957d4
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [clang][OpenMP][SPIR-V] Fix addrspace of global constants (#134399)

SPIR-V has strict address space rules, constant globals cannot be in the
default address space.

The OMPIRBuilder change was required for lit tests to pass, we were
missing an addrspacecast.

---------

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


  Commit: 9344b2196cbc36cdc577314bbb2b889606ba6820
      https://github.com/llvm/llvm-project/commit/9344b2196cbc36cdc577314bbb2b889606ba6820
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/Transforms/Inline/X86/inline-landing-pad.ll

  Log Message:
  -----------
  [DebugInfo][Inlining] Propagate inlined `resume` source loc to new br (#134826)

As part of inlining an invoke instruction, we may replace an inlined
resume instruction with a simple branch to the landing pad block. When
this happens, we should also propagate the resume's DILocation to this
branch, which this patch enables.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: a00a61d59bf1c1f142c8e08b74a0f26991122f7a
      https://github.com/llvm/llvm-project/commit/a00a61d59bf1c1f142c8e08b74a0f26991122f7a
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
    M mlir/test/mlir-tblgen/attr-or-type-format.mlir

  Log Message:
  -----------
  [mlir][IR] Improve error message when parsing incorrect type (#134984)

Improve error messages when parsing an incorrect type.

Before:
```
invalid kind of type specified
```

After:
```
invalid kind of type specified: expected builtin.tensor, but found 'tensor<*xi32>'
```

This error message is produced when a certain operand/result type is
expected according to an op's TableGen definition, but a different type
is parsed. Type constraints (which may have nice error messages) are
checked after parsing a type. If an incorrect type is parsed, we never
get to the point of printing type constraint error messages. This may
discourage users from specifying C++ classes with type constraints.
(Explicitly specifying C++ classes is beneficial because the
auto-generated C++ code will have richer type information; explicit
casts are unnecessary, etc.) See #134981 for an example where specifying
additional type information with type constraints (e.g.,
`LLVM_AnyVector`) lead to worse error messages.

Note: In order to generate a better error message, the parser must
retrieve a type's name from the C++ class. TableGen-generated type
classes always have a `name` field, but hand-written C++ type classes
may not. The `HasStaticName` template was copied from
`DialectImplementation.h` (`HasStaticDialectName`).


  Commit: 5039bf4e26f07f9082e42374a342b3f52236e3fc
      https://github.com/llvm/llvm-project/commit/5039bf4e26f07f9082e42374a342b3f52236e3fc
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    A llvm/test/Transforms/Inline/X86/inline-simplified-branch-dbg-loc.ll

  Log Message:
  -----------
  [DebugInfo][Inline] Propagate source locs when simplifying cond branches (#134827)

During inlining, we may opportunistically simplify conditional branches
(incl. switches) to unconditional branches if, after inlining, their
destination is fixed. While we do this, we should propagate any
DILocation attached to the original branch to the simplified branch,
which this patch enables.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: 94f6f0334d13d6090c7c31387e50358d5b244313
      https://github.com/llvm/llvm-project/commit/94f6f0334d13d6090c7c31387e50358d5b244313
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/eq-of-parts.ll
    M llvm/test/Transforms/InstCombine/onehot_merge.ll

  Log Message:
  -----------
  [InstCombine] handle trunc to i1 in foldLogOpOfMaskedICmps. (#128861)

proof: https://alive2.llvm.org/ce/z/pu8WmX

fixes #128778


  Commit: c4667c5aa6edbf03bc56c104e52da9b6ef1eb3a1
      https://github.com/llvm/llvm-project/commit/c4667c5aa6edbf03bc56c104e52da9b6ef1eb3a1
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    A llvm/test/Transforms/Reassociate/debugloc-factoring-add.ll

  Log Message:
  -----------
  [DebugInfo][Reassociate] Propagate source locs when factoring add->mul (#134829)

As part of reassociating add instructions, we may factorize some of the
adds and produce a mul instruction; this patch propagates the source
location of the reassociated tree of instructions to the new mul.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: b6f4ec72f90dc31b0d8665ed59ce34844858dd5a
      https://github.com/llvm/llvm-project/commit/b6f4ec72f90dc31b0d8665ed59ce34844858dd5a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/tools/llvm-reduce/deltas/Delta.cpp

  Log Message:
  -----------
  llvm-reduce: Add scope braces (#135025)


  Commit: 1e9f46c1b34cce7df4f2b4c392ccb0a540d7a6a6
      https://github.com/llvm/llvm-project/commit/1e9f46c1b34cce7df4f2b4c392ccb0a540d7a6a6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp

  Log Message:
  -----------
  llvm-reduce: Fix taking wrong error before exit (#135020)


  Commit: 840b366d47115ecf2f7034721c13576e6f14cd82
      https://github.com/llvm/llvm-project/commit/840b366d47115ecf2f7034721c13576e6f14cd82
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h

  Log Message:
  -----------
  CodeGen: Remove redundant arguments to defusechain_instr_iterator (#135023)

ByOperand must be false, this is implied by the iterator type.
The instr_iterator cases are a separate implementation from the single
operand defusechain_iterator.

Additionally ByInstr and ByBundle are mutually exclusive.


  Commit: 2a7f12e37b450e24869c0e82b39a4894d69b8d3e
      https://github.com/llvm/llvm-project/commit/2a7f12e37b450e24869c0e82b39a4894d69b8d3e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h

  Log Message:
  -----------
  CodeGen: Trim redundant template argument from defusechain_iterator (#135024)

Only one of ByOperand, ByInstr, or ByBundle should be true. Replace
ByBundle with !ByInstr, and assert that both are not used.


  Commit: 751c3f51eb65b493bf2fc2c6b2788f89e16a1fbe
      https://github.com/llvm/llvm-project/commit/751c3f51eb65b493bf2fc2c6b2788f89e16a1fbe
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Update TileOp infer shape (#134732)

update to use getConstShapeValues in TileOp's shape inference

Signed-off-by: Tai Ly <tai.ly at arm.com>
Co-authored-by: Tai Ly <tai.ly at arm.com>


  Commit: 543e5f5842fe576bb8752f04345b2cc995e5bb50
      https://github.com/llvm/llvm-project/commit/543e5f5842fe576bb8752f04345b2cc995e5bb50
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/SemaCXX/align_value.cpp
    M clang/test/SemaCXX/alloc-align-attr.cpp
    M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp

  Log Message:
  -----------
  Fix crash with align_value diagnostic reporting (#135013)

We were passing the address of a local variable to a call to Diag()
which then tried to use the object after its lifetime ended, resulting
in crashes. We no longer pass the temporary object any longer.

Fixes #26612


  Commit: c0480738cb3f4b2db47b77f5b18f9819cb995373
      https://github.com/llvm/llvm-project/commit/c0480738cb3f4b2db47b77f5b18f9819cb995373
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-10 (Thu, 10 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/pointer-overflow.c

  Log Message:
  -----------
  [Clang][CodeGen] Respect -fwrapv-pointer when emitting struct GEPs (#134269)

This patch turns off inbounds/nuw flags for member accesses when
`-fwrapv-pointer` is set.

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

It is required by https://github.com/llvm/llvm-project/pull/130734.


  Commit: f0131c327ea1432ff45f385aac28fe5d57005244
      https://github.com/llvm/llvm-project/commit/f0131c327ea1432ff45f385aac28fe5d57005244
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/tools/llvm-reduce/deltas/Delta.cpp

  Log Message:
  -----------
  llvm-reduce: Avoid reallocating per chunk iteration (#135029)


  Commit: 0eb560a4dee05a55781f44c60c8164aef3bcf04c
      https://github.com/llvm/llvm-project/commit/0eb560a4dee05a55781f44c60c8164aef3bcf04c
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
    A llvm/test/Transforms/Coroutines/coro-early-twice.ll

  Log Message:
  -----------
  [Coroutines] Don't assert if coro-early runs more than once (#134854)

The pass may run more than once during ThinLTO for example (see bug).
Maybe that means those pass pipelines aren't optimal, but the pass
should be resilient against that.

Fixes #134054


  Commit: 40f9bb9e250d5762ee9cedabc7b7704c4cccddde
      https://github.com/llvm/llvm-project/commit/40f9bb9e250d5762ee9cedabc7b7704c4cccddde
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
    M llvm/test/Assembler/DIDefaultTemplateParam.ll
    M llvm/test/Assembler/metadata-use-uselistorder.ll
    M llvm/test/Bitcode/dbg-record-roundtrip.ll
    R llvm/test/CodeGen/AArch64/fast-isel-branch-uncond-debug.ll
    M llvm/test/tools/llvm-reduce/debug-metadata-verifier.ll
    R llvm/test/tools/llvm-reduce/remove-args-dbg-intrinsics.ll
    M llvm/tools/llvm-link/llvm-link.cpp
    M llvm/tools/llvm-lto/llvm-lto.cpp
    M llvm/tools/llvm-lto2/llvm-lto2.cpp
    M llvm/tools/llvm-reduce/llvm-reduce.cpp
    M llvm/tools/verify-uselistorder/verify-uselistorder.cpp
    M llvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp
    M llvm/unittests/Transforms/Utils/LocalTest.cpp

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Eliminate another debug-info variation flag (#133917)

The "preserve input debug-info format" flag allowed some tooling to opt
into not seeing the new debug records yet, and to not autoupgrade. This
was good at the time, but un-necessary now that we'll be ditching
intrinsics shortly.

It also hides errors now: verify-uselistorder was hardcoding this flag
to on, and as a result it hasn't seen debug records before. Thus, we
missed a uselistorder variation: constant-expressions such as GEPs can
be contained within debug records and completely isolated from the value
hierachy, see the metadata-use-uselistorder.ll test. These Values didn't
get ordered, but were legitimate uses of constants like "i64 0", and we
now run into difficulty handling that. The patch to AsmWriter seeks
Values to order even through debug-info now.

Finally there are a few intrinsics-tests relying on this flag that we
can just delete, such as one in llvm-reduce and another few in the
LocalTest unit tests. For the fast-isel test, it was added in
https://reviews.llvm.org/D67703 explicitly for checking the size of
blocks without debug-info and in 1525abb9c94 the codepath it tests moved
towards being sunsetted. It'll be totally redundant once RemoveDIs is on
permanently.

Note that there's now no explicit test for the textual-IR autoupgrade
path. I submit that we can rely on the thousands of .ll files where
we've only been bothered to update the outputs, not the inputs, to debug
records.


  Commit: 1aed6ad906f54d6d3fd94b7f46aaeb4cc7e516ec
      https://github.com/llvm/llvm-project/commit/1aed6ad906f54d6d3fd94b7f46aaeb4cc7e516ec
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Enable multiple variables for target teams reductions (#134903)

This patch enables multiple reductions to be used in a reduction clause
inside target regions for GPU offloading.

---------

Co-authored-by: Sergio Afonso <safonsof at amd.com>


  Commit: f76d9da6d8a005d019c63775b2205c5a8cb3da67
      https://github.com/llvm/llvm-project/commit/f76d9da6d8a005d019c63775b2205c5a8cb3da67
  Author: k-kashapov <52855633+k-kashapov at users.noreply.github.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  [MSan] Update type for MsanMetadataPtrForLoadN and MsanMetadataPtrForStoreN (#135040)

Changed last parameter type for `MsanMetadataPtrForLoadN` and
`MsanMetadataPtrForStoreN` from `i64` to `IntptrTy` to keep it
consistent with call in `getShadowOriginPtrKernelNoVec`

Co-authored-by: Kamil Kashapov <kashapov at ispras.ru>


  Commit: c8d49e9dd2e7e4c64a0a70bf05b0e6c83b04841a
      https://github.com/llvm/llvm-project/commit/c8d49e9dd2e7e4c64a0a70bf05b0e6c83b04841a
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm

  Log Message:
  -----------
  [alpha.webkit.RetainPtrCtorAdoptChecker] Recognize mutableCopy from literal as +1 (#132350)

This PR adds the support for recognizing the return value of copy /
mutableCopy as +1. isAllocInit and isOwned now traverses
PseudoObjectExpr to its last semantic expression.


  Commit: 6d4d017fd250b77e832bec37644f3446d0be6d6c
      https://github.com/llvm/llvm-project/commit/6d4d017fd250b77e832bec37644f3446d0be6d6c
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/StripSymbols.h
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/StripSymbols.cpp
    A llvm/test/Transforms/StripSymbols/strip-cg-profile.ll
    M llvm/tools/llvm-extract/llvm-extract.cpp

  Log Message:
  -----------
  [llvm-extract] Delete dead `CG Profile` edges (#134940)

When `llvm-extract`-ing a function, and the `CG Profile` flag is present in the original module, we end up with lots of `!{null, null, i64 1234}` entries for call edges that have disappeared as result of the removed functions.

This patch fixes that by adding a pass to `llvm-extract` that finds `CG Profile` edges with one or both operands `null` and removes them. This results in a cleaner output.


  Commit: fa273e1158edb109e1c392a0d8e18b711d0e008e
      https://github.com/llvm/llvm-project/commit/fa273e1158edb109e1c392a0d8e18b711d0e008e
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    A clang/test/CIR/CodeGenOpenACC/data.c
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c
    M clang/test/CIR/CodeGenOpenACC/serial.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'data' construct lowering (#135038)

This patch does the lowering of the OpenACC 'data' construct, which
requires getting the `default` clause (as `data` requires at least 1 of
a list of clauses, and this is the easiest one). The lowering of the
clauses appears to happen in 1 of 2 ways: a- as an operand. or b- as an
attribute.

This patch adds infrastructure to lower as an attribute, as that is how
'data' works.

In addition to that, it changes the OpenACCClauseVisitor a bit, which
previously just required that each of the derived classes have all of
the clauses covered. This patch modifies it so that the visitor directly
calls the derived class from its visitor function, which leaves the
base-class ones the ability to defer to a generic function. This was
previously like this because I had some use cases that I didn't end up
using, and the 'generic' function here seems much more useful.


  Commit: f4d87c42a6021e49fd972f5f5d863d35b267d17f
      https://github.com/llvm/llvm-project/commit/f4d87c42a6021e49fd972f5f5d863d35b267d17f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/descriptor.h
    M flang-rt/include/flang-rt/runtime/reduction-templates.h
    M flang-rt/lib/cuda/allocatable.cpp
    M flang-rt/lib/runtime/allocatable.cpp
    M flang-rt/lib/runtime/array-constructor.cpp
    M flang-rt/lib/runtime/assign.cpp
    M flang-rt/lib/runtime/character.cpp
    M flang-rt/lib/runtime/copy.cpp
    M flang-rt/lib/runtime/derived.cpp
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/extrema.cpp
    M flang-rt/lib/runtime/findloc.cpp
    M flang-rt/lib/runtime/matmul-transpose.cpp
    M flang-rt/lib/runtime/matmul.cpp
    M flang-rt/lib/runtime/misc-intrinsic.cpp
    M flang-rt/lib/runtime/temporary-stack.cpp
    M flang-rt/lib/runtime/tools.cpp
    M flang-rt/lib/runtime/transformational.cpp
    M flang-rt/unittests/Evaluate/reshape.cpp
    M flang-rt/unittests/Runtime/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M flang-rt/unittests/Runtime/CUDA/Memory.cpp
    M flang-rt/unittests/Runtime/CharacterTest.cpp
    M flang-rt/unittests/Runtime/CommandTest.cpp
    M flang-rt/unittests/Runtime/TemporaryStack.cpp
    M flang-rt/unittests/Runtime/tools.h
    M flang/include/flang/Runtime/allocatable.h
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
    M flang/test/HLFIR/elemental-codegen.fir
    M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/allocatable-runtime.f90
    M flang/test/Lower/allocate-mold.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Transforms/lower-repack-arrays.fir

  Log Message:
  -----------
  [flang][cuda] Add asyncId to allocate entry point (#134947)


  Commit: e98d1380a0e7282ef23d1f583f0a4e02d608eb1d
      https://github.com/llvm/llvm-project/commit/e98d1380a0e7282ef23d1f583f0a4e02d608eb1d
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp

  Log Message:
  -----------
  [NFC][LLDB] Clean up comments/some code in MinidumpFileBuilder (#134961)

I've recently been working on Minidump File Builder again, and some of
the comments are out of date, and many of the includes are no longer
used. This patch removes unneeded includes and rephrases some comments
to better fit with the current state after the read write chunks pr.


  Commit: 0c2a6f2d62ec66065e88f70e7b863cbcb43b3307
      https://github.com/llvm/llvm-project/commit/0c2a6f2d62ec66065e88f70e7b863cbcb43b3307
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/CMakeLists.txt
    M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    M mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    A mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/include/mlir/Target/LLVMIR/Dialect/All.h
    R mlir/include/mlir/Target/LLVMIR/Dialect/X86Vector/X86VectorToLLVMIRTranslation.h
    M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/lib/Target/LLVMIR/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/CMakeLists.txt
    R mlir/lib/Target/LLVMIR/Dialect/X86Vector/CMakeLists.txt
    R mlir/lib/Target/LLVMIR/Dialect/X86Vector/X86VectorToLLVMIRTranslation.cpp
    M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    M mlir/test/Target/LLVMIR/x86vector.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][x86vector] Simplify intrinsic generation (#133692)

Replaces separate x86vector named intrinsic operations with direct calls
to LLVM intrinsic functions.
    
This rework reduces the number of named ops leaving only high-level MLIR
equivalents of whole intrinsic classes e.g., variants of AVX512 dot on
BF16 inputs. Dialect conversion applies LLVM intrinsic name mangling
further simplifying lowering logic.
    
The separate conversion step translating x86vector intrinsics into LLVM
IR is also eliminated. Instead, this step is now performed by the
existing llvm dialect infrastructure.

RFC:
https://discourse.llvm.org/t/rfc-simplify-x86-intrinsic-generation/85581


  Commit: 9dc6551fa8944668af475e09bcb16dd81ab1bd00
      https://github.com/llvm/llvm-project/commit/9dc6551fa8944668af475e09bcb16dd81ab1bd00
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Extract a check for a SplitVectorize node, NFC



Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


  Commit: 505a7e7d1cd2b77ab67ef82ac4abc9cf94271adb
      https://github.com/llvm/llvm-project/commit/505a7e7d1cd2b77ab67ef82ac4abc9cf94271adb
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    A clang/test/CIR/CodeGenOpenACC/init.c
    A clang/test/CIR/CodeGenOpenACC/shutdown.c

  Log Message:
  -----------
  [OpenACC][CIR] Support for `init` and `shutdown` lowering

These two are very simple.  they don't require any clauses and don't
have an associated statement, so they have very simple output.  This
patch implements them, but none of the associated clauses.


  Commit: 3ef2bb6d0bcfcdcfde72d8aa3354e72c2366e22b
      https://github.com/llvm/llvm-project/commit/3ef2bb6d0bcfcdcfde72d8aa3354e72c2366e22b
  Author: metkarpoonam <poonammetkar at microsoft.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/dst.hlsl

  Log Message:
  -----------
  [HLSL] Implement the dst HLSL Function  (#133828)

fixes: https://github.com/llvm/llvm-project/issues/99108
Implement dst algorithm in the hlsl_intrinsics.h and added test cases
for HLSL codegen and sema


- [x] implement dst algorithm in the hlsl_intrinsics.h

- [x] Add HLSL codegen tests to clang/test/CodeGenHLSL/builtins/dst.hlsl

- [x] Add sema tests to clang/test/SemaHLSL/BuiltIns/dst-errors.hlsl


  Commit: f64d965f6a5d841e5ffc16aa8c3dd6c707570879
      https://github.com/llvm/llvm-project/commit/f64d965f6a5d841e5ffc16aa8c3dd6c707570879
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-09 (Wed, 09 Apr 2025)

  Changed paths:
    M .ci/metrics/metrics.py
    M .ci/monolithic-linux.sh
    M .github/new-prs-labeler.yml
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/libcxx-build-and-test.yaml
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Core/Relocation.h
    M bolt/include/bolt/Passes/DataflowAnalysis.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinarySection.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/test/AArch64/tls.c
    M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
    A bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/CMakeLists.txt
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/Headers.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/comparison-in-temp-failure-retry.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/concurrency/mt-unsafe.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-malloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-private-member-variables-in-classes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-data-pointer.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/inconsistent-declaration-parameter-name.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-smartptr-get.rst
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/capturing-this-in-member-variable.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/standalone-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output-cast-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unintended-char-ostream-output.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
    M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned2.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned3.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values-before-cxx23.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-camelback.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-lowercase.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-rewritten-binop.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-uppercase.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/for-range-copy.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp
    M clang/cmake/caches/HLSL.cmake
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclOpenACC.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/TemplateBase.h
    M clang/include/clang/AST/TemplateName.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    A clang/include/clang/ASTMatchers/LowLevelHelpers.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Builtins.td
    A clang/include/clang/Basic/BuiltinsDirectX.td
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticAST.h
    M clang/include/clang/Basic/DiagnosticAnalysis.h
    M clang/include/clang/Basic/DiagnosticComment.h
    M clang/include/clang/Basic/DiagnosticCrossTU.h
    M clang/include/clang/Basic/DiagnosticDriver.h
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontend.h
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticInstallAPI.h
    M clang/include/clang/Basic/DiagnosticLex.h
    M clang/include/clang/Basic/DiagnosticParse.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticRefactoring.h
    M clang/include/clang/Basic/DiagnosticSema.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DiagnosticSerialization.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/SyncScope.h
    M clang/include/clang/Basic/TargetBuiltins.h
    A clang/include/clang/Basic/UnsignedOrNone.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/LoweringHelpers.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/LexHLSLRootSignature.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    A clang/include/clang/Sema/SemaDirectX.h
    M clang/include/clang/Sema/SemaLambda.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/Serialization/ASTRecordWriter.h
    M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclOpenACC.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/AST/TemplateName.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/ASTMatchers/CMakeLists.txt
    A clang/lib/ASTMatchers/LowLevelHelpers.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Basic/Targets/DirectX.cpp
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    A clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    A clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    A clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Lowering/CMakeLists.txt
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    A clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    A clang/lib/CodeGen/TargetBuiltins/DirectX.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/ROCm.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Headers/altivec.h
    M clang/lib/Headers/amxcomplexintrin.h
    M clang/lib/Headers/avx10_2_512bf16intrin.h
    M clang/lib/Headers/avx10_2bf16intrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/llvm_libc_wrappers/stdlib.h
    M clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPExpressions.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    A clang/lib/Sema/SemaDirectX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    M clang/test/AST/ByteCode/arrays.cpp
    M clang/test/AST/ByteCode/cxx17.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ast-print-openacc-combined-construct.cpp
    M clang/test/AST/ast-print-openacc-compute-construct.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/AST/ast-print-openacc-declare-construct.cpp
    M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
    M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    A clang/test/Analysis/castsize.c
    M clang/test/C/C11/n1330.c
    M clang/test/C/C23/n3042.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    A clang/test/CIR/CodeGen/cmp.cpp
    A clang/test/CIR/CodeGen/if-consteval.cpp
    A clang/test/CIR/CodeGen/if.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    A clang/test/CIR/CodeGen/nullptr-init.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    A clang/test/CIR/CodeGenOpenACC/data.c
    A clang/test/CIR/CodeGenOpenACC/init.c
    A clang/test/CIR/CodeGenOpenACC/kernels.c
    A clang/test/CIR/CodeGenOpenACC/openacc-not-implemented-global.cpp
    A clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
    A clang/test/CIR/CodeGenOpenACC/parallel.c
    A clang/test/CIR/CodeGenOpenACC/serial.c
    A clang/test/CIR/CodeGenOpenACC/shutdown.c
    A clang/test/CIR/IR/cmp.cir
    M clang/test/CIR/Lowering/array.cpp
    A clang/test/CIR/Lowering/if.cir
    A clang/test/CIR/Transforms/if.cir
    M clang/test/CXX/drs/cwg15xx.cpp
    M clang/test/CXX/temp/temp.decls/temp.class.spec/p6.cpp
    A clang/test/ClangScanDeps/modules-relocated-mm-macro.c
    M clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x1.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x1.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x2.c
    A clang/test/CodeGen/Inputs/cuda.h
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/bounds-checking-debuginfo.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/cfi-check-fail.c
    M clang/test/CodeGen/cfi-check-fail2.c
    A clang/test/CodeGen/invalid_llvm_ir.ll
    M clang/test/CodeGen/nvptx-surface.cu
    M clang/test/CodeGen/pointer-overflow.c
    M clang/test/CodeGen/pragma-fenv_access.c
    M clang/test/CodeGen/ubsan-trap-merge.c
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    A clang/test/CodeGenCoroutines/pr134409.cpp
    A clang/test/CodeGenDirectX/Builtins/dot2add.c
    A clang/test/CodeGenHLSL/builtins/dot2add.hlsl
    A clang/test/CodeGenHLSL/builtins/dst.hlsl
    M clang/test/CodeGenHLSL/cbuffer.hlsl
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/CodeGenOpenCL/cl-uniform-wg-size.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
    M clang/test/CodeGenOpenCL/cl20-device-side-enqueue.cl
    M clang/test/CodeGenOpenCL/enqueue-kernel-non-entry-block.cl
    M clang/test/CodeGenOpenCL/fdeclare-opencl-builtins.cl
    M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
    M clang/test/CodeGenOpenCL/kernel-arg-info.cl
    A clang/test/CodeGenOpenCL/opencl-kernel-call.cl
    M clang/test/CodeGenOpenCL/reflect.cl
    M clang/test/CodeGenOpenCL/sampler.cl
    M clang/test/CodeGenOpenCL/spir-calling-conv.cl
    M clang/test/CodeGenOpenCL/visibility.cl
    M clang/test/CodeGenOpenCLCXX/addrspace-of-this.clcpp
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    M clang/test/Driver/arm-thread-pointer.c
    M clang/test/Driver/darwin-ld-platform-version-watchos.c
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-device-libs.hip
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-sanitize-options.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    A clang/test/Driver/openacc-no-cir.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Frontend/amdgcn-machine-analysis-remarks.cl
    M clang/test/Headers/Inputs/include/cuda.h
    M clang/test/Headers/altivec-header.c
    M clang/test/Import/pack-expansion-expr/test.cpp
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    A clang/test/Modules/fmodule-file-mismatch.cppm
    M clang/test/ParserOpenACC/parse-clauses.c
    A clang/test/Preprocessor/constants.c
    M clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json
    M clang/test/Sema/attr-callback-broken.c
    A clang/test/Sema/clear_cache.c
    M clang/test/Sema/for.c
    M clang/test/Sema/incomplete-decl.c
    A clang/test/Sema/main-no-return-c89-1.c
    A clang/test/Sema/main-no-return-c89-2.c
    A clang/test/Sema/main-no-return-c89-3.c
    A clang/test/Sema/nullability-and-template-deduction.cpp
    M clang/test/Sema/tentative-decls.c
    M clang/test/SemaCXX/align_value.cpp
    M clang/test/SemaCXX/alloc-align-attr.cpp
    M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp
    A clang/test/SemaCXX/for-static-assert.cpp
    A clang/test/SemaCXX/gh134265.cpp
    M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
    A clang/test/SemaHLSL/BuiltIns/dot2add-errors.hlsl
    M clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copy-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyin-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyout-clause.c
    M clang/test/SemaOpenACC/combined-construct-create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-copy-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyin-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyout-clause.c
    M clang/test/SemaOpenACC/compute-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-clause.c
    M clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyin-clause.c
    M clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyout-clause.c
    M clang/test/SemaOpenACC/data-construct-create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-create-clause.c
    M clang/test/SemaOpenACC/declare-construct-ast.cpp
    M clang/test/SemaOpenACC/declare-construct.cpp
    M clang/test/SemaOpenCL/atomic-ops.cl
    M clang/test/SemaTemplate/attributes.cpp
    M clang/test/SemaTemplate/dependent-names.cpp
    M clang/test/SemaTemplate/instantiate-expanded-type-constraint.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/partial-order.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/trailing-return-short-circuit.cpp
    M clang/tools/CMakeLists.txt
    R clang/tools/amdgpu-arch/AMDGPUArch.cpp
    R clang/tools/amdgpu-arch/AMDGPUArchByHIP.cpp
    R clang/tools/amdgpu-arch/AMDGPUArchByKFD.cpp
    R clang/tools/amdgpu-arch/CMakeLists.txt
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    R clang/tools/nvptx-arch/CMakeLists.txt
    R clang/tools/nvptx-arch/NVPTXArch.cpp
    A clang/tools/offload-arch/AMDGPUArchByHIP.cpp
    A clang/tools/offload-arch/AMDGPUArchByKFD.cpp
    A clang/tools/offload-arch/CMakeLists.txt
    A clang/tools/offload-arch/NVPTXArch.cpp
    A clang/tools/offload-arch/OffloadArch.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/Analysis/MacroExpansionContextTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
    M clang/unittests/Lex/LexerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/unittests/Lex/PPCallbacksTest.cpp
    M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
    M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
    M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/asan/asan_fake_stack.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/lib/ctx_profile/CMakeLists.txt
    M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
    M compiler-rt/lib/ctx_profile/RootAutoDetector.cpp
    M compiler-rt/lib/ctx_profile/RootAutoDetector.h
    M compiler-rt/lib/msan/msan.cpp
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/test/asan/TestCases/Linux/asan_rt_confict_test-2.cpp
    A compiler-rt/test/asan/TestCases/fakeframe-right-redzone.cpp
    M compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
    A compiler-rt/test/ctx_profile/TestCases/autodetect-roots.cpp
    M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
    M compiler-rt/test/hwasan/TestCases/Linux/release-shadow.c
    M compiler-rt/test/hwasan/TestCases/heap-buffer-overflow.c
    M compiler-rt/test/hwasan/TestCases/tag-mismatch-border-address.c
    M compiler-rt/test/sanitizer_common/android_commands/android_compile.py
    M compiler-rt/test/sanitizer_common/android_commands/android_run.py
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c
    M flang-rt/include/flang-rt/runtime/allocator-registry.h
    M flang-rt/include/flang-rt/runtime/descriptor.h
    M flang-rt/include/flang-rt/runtime/environment.h
    M flang-rt/include/flang-rt/runtime/reduction-templates.h
    M flang-rt/lib/cuda/allocatable.cpp
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/descriptor.cpp
    M flang-rt/lib/runtime/allocatable.cpp
    M flang-rt/lib/runtime/array-constructor.cpp
    M flang-rt/lib/runtime/assign.cpp
    M flang-rt/lib/runtime/character.cpp
    M flang-rt/lib/runtime/command.cpp
    M flang-rt/lib/runtime/copy.cpp
    M flang-rt/lib/runtime/derived.cpp
    M flang-rt/lib/runtime/descriptor-io.h
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/environment.cpp
    M flang-rt/lib/runtime/extensions.cpp
    M flang-rt/lib/runtime/extrema.cpp
    M flang-rt/lib/runtime/findloc.cpp
    M flang-rt/lib/runtime/matmul-transpose.cpp
    M flang-rt/lib/runtime/matmul.cpp
    M flang-rt/lib/runtime/misc-intrinsic.cpp
    M flang-rt/lib/runtime/pointer.cpp
    M flang-rt/lib/runtime/temporary-stack.cpp
    M flang-rt/lib/runtime/tools.cpp
    M flang-rt/lib/runtime/transformational.cpp
    M flang-rt/lib/runtime/unit.cpp
    M flang-rt/lib/runtime/unit.h
    M flang-rt/unittests/Evaluate/reshape.cpp
    M flang-rt/unittests/Runtime/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M flang-rt/unittests/Runtime/CUDA/Memory.cpp
    M flang-rt/unittests/Runtime/CharacterTest.cpp
    M flang-rt/unittests/Runtime/CommandTest.cpp
    M flang-rt/unittests/Runtime/TemporaryStack.cpp
    M flang-rt/unittests/Runtime/tools.h
    M flang/docs/ArrayRepacking.md
    M flang/docs/CMakeLists.txt
    M flang/docs/Intrinsics.md
    M flang/include/flang/Common/Fortran-consts.h
    M flang/include/flang/Common/enum-class.h
    M flang/include/flang/Common/real.h
    A flang/include/flang/Common/type-kinds.h
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/include/flang/Optimizer/Builder/Runtime/Command.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/allocatable.h
    M flang/include/flang/Runtime/command.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/target.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/IO.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/Clauses.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/Character.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
    M flang/lib/Optimizer/Builder/Runtime/Command.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
    M flang/lib/Parser/parsing.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/token-sequence.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/lib/Support/Fortran.cpp
    M flang/module/cudadevice.f90
    M flang/test/Driver/code-object-version.f90
    A flang/test/Driver/frepack-arrays-contiguity.f90
    A flang/test/Driver/frepack-arrays.f90
    A flang/test/Driver/fstack-repack-arrays.f90
    M flang/test/Driver/linker-flags.f90
    M flang/test/Evaluate/errors01.f90
    M flang/test/Fir/CUDA/cuda-constructor-2.f90
    M flang/test/Fir/invalid-types.fir
    M flang/test/HLFIR/assign-codegen.fir
    M flang/test/HLFIR/associate-codegen.fir
    M flang/test/HLFIR/char_extremum-bufferization.fir
    M flang/test/HLFIR/concat-bufferization.fir
    M flang/test/HLFIR/elemental-codegen.fir
    M flang/test/Integration/OpenMP/atomic-capture-complex.f90
    A flang/test/Integration/amdgpu-code-object-version.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M flang/test/Lower/CUDA/cuda-doconc.cuf
    M flang/test/Lower/Intrinsics/ieee_flag.f90
    A flang/test/Lower/Intrinsics/putenv-func.f90
    A flang/test/Lower/Intrinsics/putenv-sub.f90
    A flang/test/Lower/Intrinsics/time.f90
    A flang/test/Lower/Intrinsics/unlink-func.f90
    A flang/test/Lower/Intrinsics/unlink-sub.f90
    M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    A flang/test/Lower/OpenMP/cancel.f90
    A flang/test/Lower/OpenMP/cancellationpoint.f90
    A flang/test/Lower/OpenMP/clause-cleanup.f90
    A flang/test/Lower/OpenMP/copyprivate3.f90
    M flang/test/Lower/OpenMP/loop-directive.f90
    A flang/test/Lower/OpenMP/threadprivate-host-association-3.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/allocatable-runtime.f90
    M flang/test/Lower/allocate-mold.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/io-derived-type.f90
    M flang/test/Lower/optional-value-caller.f90
    M flang/test/Lower/pointer-references.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Lower/repack-arrays.f90
    M flang/test/Lower/statement-function.f90
    M flang/test/Lower/structure-constructors.f90
    M flang/test/Parser/OpenMP/compiler-directive-continuation.f90
    M flang/test/Parser/OpenMP/sentinels.f
    M flang/test/Parser/continuation-in-conditional-compilation.f
    M flang/test/Preprocessing/bug126459.F90
    M flang/test/Preprocessing/directive-contin-with-pp.F90
    M flang/test/Preprocessing/line-in-contin.F90
    A flang/test/Preprocessing/pp047.F
    M flang/test/Preprocessing/pp132.f90
    A flang/test/Preprocessing/pp135.F90
    M flang/test/Preprocessing/preprocessed-dirs.F90
    M flang/test/Semantics/OpenMP/default-none.f90
    M flang/test/Semantics/OpenMP/interop-construct.f90
    A flang/test/Semantics/OpenMP/threadprivate09.f90
    M flang/test/Semantics/cuf-device-procedures02.cuf
    M flang/test/Semantics/cuf09.cuf
    M flang/test/Semantics/cuf10.cuf
    A flang/test/Semantics/putenv.f90
    M flang/test/Semantics/resolve18.f90
    M flang/test/Semantics/test_errors.py
    M flang/test/Transforms/DoConcurrent/loop_nest_test.f90
    M flang/test/Transforms/lower-repack-arrays.fir
    M flang/tools/bbc/bbc.cpp
    M flang/unittests/Optimizer/FIRTypesTest.cpp
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/porting.rst
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/include/sys/time.yaml
    M libc/src/__support/FPUtil/aarch64/sqrt.h
    A libc/src/__support/FPUtil/arm/sqrt.h
    M libc/src/__support/FPUtil/riscv/sqrt.h
    M libc/src/__support/FPUtil/sqrt.h
    M libc/src/__support/FPUtil/x86_64/sqrt.h
    M libc/src/__support/macros/properties/cpu_features.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/asinhf.cpp
    M libc/src/math/generic/atan2.cpp
    M libc/src/math/generic/atan2f.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/cosf16.cpp
    M libc/src/math/generic/cospif.cpp
    M libc/src/math/generic/cospif16.cpp
    M libc/src/math/generic/erff.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sin.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinf16.cpp
    M libc/src/math/generic/sinpif.cpp
    M libc/src/math/generic/sinpif16.cpp
    M libc/src/math/generic/tan.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/src/math/generic/tanf16.cpp
    M libc/src/math/generic/tanpif16.cpp
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/time/CMakeLists.txt
    A libc/src/sys/time/linux/CMakeLists.txt
    A libc/src/sys/time/linux/utimes.cpp
    A libc/src/sys/time/utimes.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/acosf_test.cpp
    M libc/test/src/math/smoke/acoshf_test.cpp
    M libc/test/src/math/smoke/asinf_test.cpp
    M libc/test/src/math/smoke/asinhf_test.cpp
    M libc/test/src/math/smoke/atan2_test.cpp
    M libc/test/src/math/smoke/atan2f_test.cpp
    M libc/test/src/math/smoke/atan_test.cpp
    M libc/test/src/math/smoke/atanf_test.cpp
    M libc/test/src/math/smoke/atanhf_test.cpp
    M libc/test/src/math/smoke/cbrt_test.cpp
    M libc/test/src/math/smoke/cbrtf_test.cpp
    M libc/test/src/math/smoke/cos_test.cpp
    M libc/test/src/math/smoke/cosf16_test.cpp
    M libc/test/src/math/smoke/cosf_test.cpp
    M libc/test/src/math/smoke/coshf_test.cpp
    M libc/test/src/math/smoke/cospif16_test.cpp
    M libc/test/src/math/smoke/cospif_test.cpp
    M libc/test/src/math/smoke/erff_test.cpp
    M libc/test/src/math/smoke/exp10_test.cpp
    M libc/test/src/math/smoke/exp10f_test.cpp
    M libc/test/src/math/smoke/exp10m1f_test.cpp
    M libc/test/src/math/smoke/exp2_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M libc/test/src/math/smoke/exp2m1f_test.cpp
    M libc/test/src/math/smoke/exp_test.cpp
    M libc/test/src/math/smoke/expf_test.cpp
    M libc/test/src/math/smoke/expm1_test.cpp
    M libc/test/src/math/smoke/expm1f_test.cpp
    M libc/test/src/math/smoke/log10_test.cpp
    M libc/test/src/math/smoke/log10f_test.cpp
    M libc/test/src/math/smoke/log1p_test.cpp
    M libc/test/src/math/smoke/log1pf_test.cpp
    M libc/test/src/math/smoke/log2_test.cpp
    M libc/test/src/math/smoke/log2f_test.cpp
    M libc/test/src/math/smoke/log_test.cpp
    M libc/test/src/math/smoke/logf_test.cpp
    M libc/test/src/math/smoke/pow_test.cpp
    M libc/test/src/math/smoke/powf_test.cpp
    M libc/test/src/math/smoke/sin_test.cpp
    M libc/test/src/math/smoke/sincos_test.cpp
    M libc/test/src/math/smoke/sincosf_test.cpp
    M libc/test/src/math/smoke/sinf16_test.cpp
    M libc/test/src/math/smoke/sinf_test.cpp
    M libc/test/src/math/smoke/sinhf_test.cpp
    M libc/test/src/math/smoke/sinpif16_test.cpp
    M libc/test/src/math/smoke/sinpif_test.cpp
    M libc/test/src/math/smoke/tan_test.cpp
    M libc/test/src/math/smoke/tanf16_test.cpp
    M libc/test/src/math/smoke/tanf_test.cpp
    M libc/test/src/math/smoke/tanhf_test.cpp
    M libc/test/src/math/smoke/tanpif16_test.cpp
    M libc/test/src/sys/CMakeLists.txt
    A libc/test/src/sys/time/CMakeLists.txt
    A libc/test/src/sys/time/utimes_test.cpp
    M libc/test/src/time/ctime_test.cpp
    M libclc/clc/include/clc/integer/gentype.inc
    M libclc/clc/include/clc/math/gentype.inc
    A libclc/clc/include/clc/misc/clc_shuffle.h
    A libclc/clc/include/clc/misc/clc_shuffle2.h
    A libclc/clc/include/clc/misc/shuffle2_decl.inc
    A libclc/clc/include/clc/misc/shuffle2_def.inc
    A libclc/clc/include/clc/misc/shuffle_decl.inc
    A libclc/clc/include/clc/misc/shuffle_def.inc
    M libclc/clc/lib/clspv/integer/clc_mul_hi.cl
    M libclc/clc/lib/generic/SOURCES
    M libclc/clc/lib/generic/math/clc_frexp.inc
    A libclc/clc/lib/generic/misc/clc_shuffle.cl
    A libclc/clc/lib/generic/misc/clc_shuffle2.cl
    M libclc/generic/include/clc/misc/shuffle.h
    M libclc/generic/include/clc/misc/shuffle2.h
    M libclc/generic/lib/misc/shuffle.cl
    M libclc/generic/lib/misc/shuffle2.cl
    M libcxx/.clang-format
    M libcxx/docs/DesignDocs/VisibilityMacros.rst
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/ReleaseNotes/21.rst
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/out_value_result.h
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/support.h
    M libcxx/include/__condition_variable/condition_variable.h
    M libcxx/include/__config
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__configuration/platform.h
    R libcxx/include/__cxx03/__algorithm/clamp.h
    M libcxx/include/__cxx03/__algorithm/count.h
    M libcxx/include/__cxx03/__algorithm/equal.h
    M libcxx/include/__cxx03/__algorithm/equal_range.h
    M libcxx/include/__cxx03/__algorithm/find.h
    M libcxx/include/__cxx03/__algorithm/find_end.h
    R libcxx/include/__cxx03/__algorithm/fold.h
    M libcxx/include/__cxx03/__algorithm/for_each.h
    R libcxx/include/__cxx03/__algorithm/for_each_n.h
    R libcxx/include/__cxx03/__algorithm/in_found_result.h
    R libcxx/include/__cxx03/__algorithm/in_fun_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_result.h
    M libcxx/include/__cxx03/__algorithm/includes.h
    M libcxx/include/__cxx03/__algorithm/is_permutation.h
    M libcxx/include/__cxx03/__algorithm/iterator_operations.h
    R libcxx/include/__cxx03/__algorithm/lexicographical_compare_three_way.h
    M libcxx/include/__cxx03/__algorithm/lower_bound.h
    M libcxx/include/__cxx03/__algorithm/make_projected.h
    M libcxx/include/__cxx03/__algorithm/max.h
    M libcxx/include/__cxx03/__algorithm/min.h
    M libcxx/include/__cxx03/__algorithm/min_element.h
    R libcxx/include/__cxx03/__algorithm/min_max_result.h
    M libcxx/include/__cxx03/__algorithm/minmax.h
    M libcxx/include/__cxx03/__algorithm/minmax_element.h
    M libcxx/include/__cxx03/__algorithm/partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/pstl.h
    R libcxx/include/__cxx03/__algorithm/ranges_adjacent_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_all_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_any_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_binary_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_clamp.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains_subrange.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_count.h
    R libcxx/include/__cxx03/__algorithm/ranges_count_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_ends_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal_range.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_end.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_first_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if_not.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_last.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_includes.h
    R libcxx/include/__cxx03/__algorithm/ranges_inplace_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_partitioned.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_iterator_concept.h
    R libcxx/include/__cxx03/__algorithm/ranges_lexicographical_compare.h
    R libcxx/include/__cxx03/__algorithm/ranges_lower_bound.h
    R libcxx/include/__cxx03/__algorithm/ranges_make_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_max.h
    R libcxx/include/__cxx03/__algorithm/ranges_max_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_min.h
    R libcxx/include/__cxx03/__algorithm/ranges_min_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_mismatch.h
    R libcxx/include/__cxx03/__algorithm/ranges_move.h
    R libcxx/include/__cxx03/__algorithm/ranges_move_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_next_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_none_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_nth_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_point.h
    R libcxx/include/__cxx03/__algorithm/ranges_pop_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_prev_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_push_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_sample.h
    R libcxx/include/__cxx03/__algorithm/ranges_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_search_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_intersection.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_symmetric_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_union.h
    R libcxx/include/__cxx03/__algorithm/ranges_shuffle.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_starts_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_swap_ranges.h
    R libcxx/include/__cxx03/__algorithm/ranges_transform.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_upper_bound.h
    R libcxx/include/__cxx03/__algorithm/sample.h
    M libcxx/include/__cxx03/__algorithm/search.h
    M libcxx/include/__cxx03/__algorithm/search_n.h
    M libcxx/include/__cxx03/__algorithm/set_difference.h
    M libcxx/include/__cxx03/__algorithm/set_intersection.h
    R libcxx/include/__cxx03/__algorithm/shift_left.h
    R libcxx/include/__cxx03/__algorithm/shift_right.h
    M libcxx/include/__cxx03/__algorithm/simd_utils.h
    M libcxx/include/__cxx03/__algorithm/sort.h
    M libcxx/include/__cxx03/__algorithm/unwrap_range.h
    M libcxx/include/__cxx03/__algorithm/upper_bound.h
    R libcxx/include/__cxx03/__atomic/atomic_ref.h
    R libcxx/include/__cxx03/__bit/bit_cast.h
    R libcxx/include/__cxx03/__bit/bit_ceil.h
    R libcxx/include/__cxx03/__bit/bit_floor.h
    R libcxx/include/__cxx03/__bit/bit_log2.h
    R libcxx/include/__cxx03/__bit/bit_width.h
    R libcxx/include/__cxx03/__bit/byteswap.h
    M libcxx/include/__cxx03/__bit/countl.h
    M libcxx/include/__cxx03/__bit/countr.h
    R libcxx/include/__cxx03/__bit/endian.h
    R libcxx/include/__cxx03/__bit/has_single_bit.h
    M libcxx/include/__cxx03/__bit/invert_if.h
    M libcxx/include/__cxx03/__bit/popcount.h
    M libcxx/include/__cxx03/__bit/rotate.h
    M libcxx/include/__cxx03/__bit_reference
    R libcxx/include/__cxx03/__charconv/chars_format.h
    R libcxx/include/__cxx03/__charconv/from_chars_integral.h
    R libcxx/include/__cxx03/__charconv/from_chars_result.h
    R libcxx/include/__cxx03/__charconv/tables.h
    R libcxx/include/__cxx03/__charconv/to_chars.h
    R libcxx/include/__cxx03/__charconv/to_chars_base_10.h
    R libcxx/include/__cxx03/__charconv/to_chars_floating_point.h
    R libcxx/include/__cxx03/__charconv/to_chars_integral.h
    R libcxx/include/__cxx03/__charconv/to_chars_result.h
    R libcxx/include/__cxx03/__charconv/traits.h
    R libcxx/include/__cxx03/__chrono/calendar.h
    R libcxx/include/__cxx03/__chrono/concepts.h
    R libcxx/include/__cxx03/__chrono/convert_to_tm.h
    R libcxx/include/__cxx03/__chrono/day.h
    M libcxx/include/__cxx03/__chrono/duration.h
    R libcxx/include/__cxx03/__chrono/exception.h
    R libcxx/include/__cxx03/__chrono/file_clock.h
    R libcxx/include/__cxx03/__chrono/formatter.h
    R libcxx/include/__cxx03/__chrono/hh_mm_ss.h
    R libcxx/include/__cxx03/__chrono/leap_second.h
    R libcxx/include/__cxx03/__chrono/literals.h
    R libcxx/include/__cxx03/__chrono/local_info.h
    R libcxx/include/__cxx03/__chrono/month.h
    R libcxx/include/__cxx03/__chrono/month_weekday.h
    R libcxx/include/__cxx03/__chrono/monthday.h
    R libcxx/include/__cxx03/__chrono/ostream.h
    R libcxx/include/__cxx03/__chrono/parser_std_format_spec.h
    R libcxx/include/__cxx03/__chrono/statically_widen.h
    R libcxx/include/__cxx03/__chrono/sys_info.h
    M libcxx/include/__cxx03/__chrono/time_point.h
    R libcxx/include/__cxx03/__chrono/time_zone.h
    R libcxx/include/__cxx03/__chrono/time_zone_link.h
    R libcxx/include/__cxx03/__chrono/tzdb.h
    R libcxx/include/__cxx03/__chrono/tzdb_list.h
    R libcxx/include/__cxx03/__chrono/weekday.h
    R libcxx/include/__cxx03/__chrono/year.h
    R libcxx/include/__cxx03/__chrono/year_month.h
    R libcxx/include/__cxx03/__chrono/year_month_day.h
    R libcxx/include/__cxx03/__chrono/year_month_weekday.h
    R libcxx/include/__cxx03/__chrono/zoned_time.h
    R libcxx/include/__cxx03/__compare/common_comparison_category.h
    R libcxx/include/__cxx03/__compare/compare_partial_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_strong_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_three_way.h
    R libcxx/include/__cxx03/__compare/compare_three_way_result.h
    R libcxx/include/__cxx03/__compare/compare_weak_order_fallback.h
    R libcxx/include/__cxx03/__compare/is_eq.h
    R libcxx/include/__cxx03/__compare/ordering.h
    R libcxx/include/__cxx03/__compare/partial_order.h
    R libcxx/include/__cxx03/__compare/strong_order.h
    R libcxx/include/__cxx03/__compare/synth_three_way.h
    R libcxx/include/__cxx03/__compare/three_way_comparable.h
    R libcxx/include/__cxx03/__compare/weak_order.h
    R libcxx/include/__cxx03/__concepts/arithmetic.h
    R libcxx/include/__cxx03/__concepts/assignable.h
    R libcxx/include/__cxx03/__concepts/boolean_testable.h
    R libcxx/include/__cxx03/__concepts/class_or_enum.h
    R libcxx/include/__cxx03/__concepts/common_reference_with.h
    R libcxx/include/__cxx03/__concepts/common_with.h
    R libcxx/include/__cxx03/__concepts/constructible.h
    R libcxx/include/__cxx03/__concepts/convertible_to.h
    R libcxx/include/__cxx03/__concepts/copyable.h
    R libcxx/include/__cxx03/__concepts/derived_from.h
    R libcxx/include/__cxx03/__concepts/destructible.h
    R libcxx/include/__cxx03/__concepts/different_from.h
    R libcxx/include/__cxx03/__concepts/equality_comparable.h
    R libcxx/include/__cxx03/__concepts/invocable.h
    R libcxx/include/__cxx03/__concepts/movable.h
    R libcxx/include/__cxx03/__concepts/predicate.h
    R libcxx/include/__cxx03/__concepts/regular.h
    R libcxx/include/__cxx03/__concepts/relation.h
    R libcxx/include/__cxx03/__concepts/same_as.h
    R libcxx/include/__cxx03/__concepts/semiregular.h
    R libcxx/include/__cxx03/__concepts/swappable.h
    R libcxx/include/__cxx03/__concepts/totally_ordered.h
    R libcxx/include/__cxx03/__coroutine/coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/coroutine_traits.h
    R libcxx/include/__cxx03/__coroutine/noop_coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/trivial_awaitables.h
    R libcxx/include/__cxx03/__expected/bad_expected_access.h
    R libcxx/include/__cxx03/__expected/expected.h
    R libcxx/include/__cxx03/__expected/unexpect.h
    R libcxx/include/__cxx03/__expected/unexpected.h
    R libcxx/include/__cxx03/__filesystem/copy_options.h
    R libcxx/include/__cxx03/__filesystem/directory_entry.h
    R libcxx/include/__cxx03/__filesystem/directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/directory_options.h
    R libcxx/include/__cxx03/__filesystem/file_status.h
    R libcxx/include/__cxx03/__filesystem/file_time_type.h
    R libcxx/include/__cxx03/__filesystem/file_type.h
    R libcxx/include/__cxx03/__filesystem/filesystem_error.h
    R libcxx/include/__cxx03/__filesystem/operations.h
    R libcxx/include/__cxx03/__filesystem/path.h
    R libcxx/include/__cxx03/__filesystem/path_iterator.h
    R libcxx/include/__cxx03/__filesystem/perm_options.h
    R libcxx/include/__cxx03/__filesystem/perms.h
    R libcxx/include/__cxx03/__filesystem/recursive_directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/space_info.h
    R libcxx/include/__cxx03/__filesystem/u8path.h
    R libcxx/include/__cxx03/__format/buffer.h
    R libcxx/include/__cxx03/__format/concepts.h
    R libcxx/include/__cxx03/__format/container_adaptor.h
    R libcxx/include/__cxx03/__format/enable_insertable.h
    R libcxx/include/__cxx03/__format/escaped_output_table.h
    R libcxx/include/__cxx03/__format/extended_grapheme_cluster_table.h
    R libcxx/include/__cxx03/__format/format_arg.h
    R libcxx/include/__cxx03/__format/format_arg_store.h
    R libcxx/include/__cxx03/__format/format_args.h
    R libcxx/include/__cxx03/__format/format_context.h
    R libcxx/include/__cxx03/__format/format_error.h
    R libcxx/include/__cxx03/__format/format_functions.h
    R libcxx/include/__cxx03/__format/format_parse_context.h
    R libcxx/include/__cxx03/__format/format_string.h
    R libcxx/include/__cxx03/__format/format_to_n_result.h
    R libcxx/include/__cxx03/__format/formatter.h
    R libcxx/include/__cxx03/__format/formatter_bool.h
    R libcxx/include/__cxx03/__format/formatter_char.h
    R libcxx/include/__cxx03/__format/formatter_floating_point.h
    R libcxx/include/__cxx03/__format/formatter_integer.h
    R libcxx/include/__cxx03/__format/formatter_integral.h
    R libcxx/include/__cxx03/__format/formatter_output.h
    R libcxx/include/__cxx03/__format/formatter_pointer.h
    R libcxx/include/__cxx03/__format/formatter_string.h
    R libcxx/include/__cxx03/__format/formatter_tuple.h
    R libcxx/include/__cxx03/__format/indic_conjunct_break_table.h
    R libcxx/include/__cxx03/__format/parser_std_format_spec.h
    R libcxx/include/__cxx03/__format/range_default_formatter.h
    R libcxx/include/__cxx03/__format/range_formatter.h
    R libcxx/include/__cxx03/__format/unicode.h
    R libcxx/include/__cxx03/__format/width_estimation_table.h
    R libcxx/include/__cxx03/__format/write_escaped.h
    M libcxx/include/__cxx03/__functional/bind.h
    R libcxx/include/__cxx03/__functional/bind_back.h
    R libcxx/include/__cxx03/__functional/bind_front.h
    R libcxx/include/__cxx03/__functional/boyer_moore_searcher.h
    R libcxx/include/__cxx03/__functional/compose.h
    R libcxx/include/__cxx03/__functional/default_searcher.h
    R libcxx/include/__cxx03/__functional/function.h
    R libcxx/include/__cxx03/__functional/invoke.h
    R libcxx/include/__cxx03/__functional/is_transparent.h
    M libcxx/include/__cxx03/__functional/mem_fn.h
    R libcxx/include/__cxx03/__functional/not_fn.h
    R libcxx/include/__cxx03/__functional/perfect_forward.h
    R libcxx/include/__cxx03/__functional/ranges_operations.h
    M libcxx/include/__cxx03/__functional/reference_wrapper.h
    M libcxx/include/__cxx03/__functional/weak_result_type.h
    R libcxx/include/__cxx03/__fwd/format.h
    R libcxx/include/__cxx03/__fwd/mdspan.h
    R libcxx/include/__cxx03/__fwd/memory_resource.h
    R libcxx/include/__cxx03/__fwd/span.h
    M libcxx/include/__cxx03/__fwd/string.h
    R libcxx/include/__cxx03/__fwd/subrange.h
    M libcxx/include/__cxx03/__hash_table
    M libcxx/include/__cxx03/__iterator/advance.h
    M libcxx/include/__cxx03/__iterator/bounded_iter.h
    R libcxx/include/__cxx03/__iterator/common_iterator.h
    R libcxx/include/__cxx03/__iterator/concepts.h
    R libcxx/include/__cxx03/__iterator/counted_iterator.h
    R libcxx/include/__cxx03/__iterator/data.h
    R libcxx/include/__cxx03/__iterator/default_sentinel.h
    M libcxx/include/__cxx03/__iterator/distance.h
    R libcxx/include/__cxx03/__iterator/empty.h
    R libcxx/include/__cxx03/__iterator/incrementable_traits.h
    R libcxx/include/__cxx03/__iterator/indirectly_comparable.h
    M libcxx/include/__cxx03/__iterator/insert_iterator.h
    M libcxx/include/__cxx03/__iterator/istream_iterator.h
    M libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
    R libcxx/include/__cxx03/__iterator/iter_move.h
    R libcxx/include/__cxx03/__iterator/iter_swap.h
    M libcxx/include/__cxx03/__iterator/iterator_traits.h
    R libcxx/include/__cxx03/__iterator/iterator_with_data.h
    R libcxx/include/__cxx03/__iterator/mergeable.h
    M libcxx/include/__cxx03/__iterator/move_iterator.h
    R libcxx/include/__cxx03/__iterator/move_sentinel.h
    M libcxx/include/__cxx03/__iterator/next.h
    R libcxx/include/__cxx03/__iterator/permutable.h
    M libcxx/include/__cxx03/__iterator/prev.h
    R libcxx/include/__cxx03/__iterator/projected.h
    R libcxx/include/__cxx03/__iterator/ranges_iterator_traits.h
    R libcxx/include/__cxx03/__iterator/readable_traits.h
    R libcxx/include/__cxx03/__iterator/reverse_access.h
    M libcxx/include/__cxx03/__iterator/reverse_iterator.h
    R libcxx/include/__cxx03/__iterator/size.h
    R libcxx/include/__cxx03/__iterator/sortable.h
    R libcxx/include/__cxx03/__iterator/unreachable_sentinel.h
    M libcxx/include/__cxx03/__iterator/wrap_iter.h
    R libcxx/include/__cxx03/__math/special_functions.h
    R libcxx/include/__cxx03/__mdspan/default_accessor.h
    R libcxx/include/__cxx03/__mdspan/extents.h
    R libcxx/include/__cxx03/__mdspan/layout_left.h
    R libcxx/include/__cxx03/__mdspan/layout_right.h
    R libcxx/include/__cxx03/__mdspan/layout_stride.h
    R libcxx/include/__cxx03/__mdspan/mdspan.h
    R libcxx/include/__cxx03/__memory/concepts.h
    R libcxx/include/__cxx03/__memory/inout_ptr.h
    R libcxx/include/__cxx03/__memory/out_ptr.h
    R libcxx/include/__cxx03/__memory/ranges_construct_at.h
    R libcxx/include/__cxx03/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__cxx03/__memory/shared_ptr.h
    M libcxx/include/__cxx03/__memory/unique_ptr.h
    R libcxx/include/__cxx03/__memory/uses_allocator_construction.h
    R libcxx/include/__cxx03/__memory_resource/memory_resource.h
    R libcxx/include/__cxx03/__memory_resource/monotonic_buffer_resource.h
    R libcxx/include/__cxx03/__memory_resource/polymorphic_allocator.h
    R libcxx/include/__cxx03/__memory_resource/pool_options.h
    R libcxx/include/__cxx03/__memory_resource/synchronized_pool_resource.h
    R libcxx/include/__cxx03/__memory_resource/unsynchronized_pool_resource.h
    M libcxx/include/__cxx03/__mutex/once_flag.h
    R libcxx/include/__cxx03/__node_handle
    R libcxx/include/__cxx03/__numeric/exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/gcd_lcm.h
    R libcxx/include/__cxx03/__numeric/inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/midpoint.h
    R libcxx/include/__cxx03/__numeric/pstl.h
    R libcxx/include/__cxx03/__numeric/reduce.h
    R libcxx/include/__cxx03/__numeric/saturation_arithmetic.h
    R libcxx/include/__cxx03/__numeric/transform_exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_reduce.h
    R libcxx/include/__cxx03/__ostream/print.h
    R libcxx/include/__cxx03/__pstl/backend.h
    R libcxx/include/__cxx03/__pstl/backend_fwd.h
    R libcxx/include/__cxx03/__pstl/backends/default.h
    R libcxx/include/__cxx03/__pstl/backends/libdispatch.h
    R libcxx/include/__cxx03/__pstl/backends/serial.h
    R libcxx/include/__cxx03/__pstl/backends/std_thread.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/any_of.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/cpu_traits.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/fill.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/find_if.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/for_each.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/merge.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/stable_sort.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform_reduce.h
    R libcxx/include/__cxx03/__pstl/dispatch.h
    R libcxx/include/__cxx03/__pstl/handle_exception.h
    M libcxx/include/__cxx03/__random/generate_canonical.h
    M libcxx/include/__cxx03/__random/seed_seq.h
    R libcxx/include/__cxx03/__random/uniform_random_bit_generator.h
    R libcxx/include/__cxx03/__ranges/access.h
    R libcxx/include/__cxx03/__ranges/all.h
    R libcxx/include/__cxx03/__ranges/as_rvalue_view.h
    R libcxx/include/__cxx03/__ranges/chunk_by_view.h
    R libcxx/include/__cxx03/__ranges/common_view.h
    R libcxx/include/__cxx03/__ranges/concepts.h
    R libcxx/include/__cxx03/__ranges/container_compatible_range.h
    R libcxx/include/__cxx03/__ranges/counted.h
    R libcxx/include/__cxx03/__ranges/dangling.h
    R libcxx/include/__cxx03/__ranges/data.h
    R libcxx/include/__cxx03/__ranges/drop_view.h
    R libcxx/include/__cxx03/__ranges/drop_while_view.h
    R libcxx/include/__cxx03/__ranges/elements_view.h
    R libcxx/include/__cxx03/__ranges/empty.h
    R libcxx/include/__cxx03/__ranges/empty_view.h
    R libcxx/include/__cxx03/__ranges/enable_borrowed_range.h
    R libcxx/include/__cxx03/__ranges/enable_view.h
    R libcxx/include/__cxx03/__ranges/filter_view.h
    R libcxx/include/__cxx03/__ranges/from_range.h
    R libcxx/include/__cxx03/__ranges/iota_view.h
    R libcxx/include/__cxx03/__ranges/istream_view.h
    R libcxx/include/__cxx03/__ranges/join_view.h
    R libcxx/include/__cxx03/__ranges/lazy_split_view.h
    R libcxx/include/__cxx03/__ranges/movable_box.h
    R libcxx/include/__cxx03/__ranges/non_propagating_cache.h
    R libcxx/include/__cxx03/__ranges/owning_view.h
    R libcxx/include/__cxx03/__ranges/range_adaptor.h
    R libcxx/include/__cxx03/__ranges/rbegin.h
    R libcxx/include/__cxx03/__ranges/ref_view.h
    R libcxx/include/__cxx03/__ranges/rend.h
    R libcxx/include/__cxx03/__ranges/repeat_view.h
    R libcxx/include/__cxx03/__ranges/reverse_view.h
    R libcxx/include/__cxx03/__ranges/single_view.h
    R libcxx/include/__cxx03/__ranges/size.h
    R libcxx/include/__cxx03/__ranges/split_view.h
    R libcxx/include/__cxx03/__ranges/subrange.h
    R libcxx/include/__cxx03/__ranges/take_view.h
    R libcxx/include/__cxx03/__ranges/take_while_view.h
    R libcxx/include/__cxx03/__ranges/to.h
    R libcxx/include/__cxx03/__ranges/transform_view.h
    R libcxx/include/__cxx03/__ranges/view_interface.h
    R libcxx/include/__cxx03/__ranges/views.h
    R libcxx/include/__cxx03/__ranges/zip_view.h
    R libcxx/include/__cxx03/__stop_token/atomic_unique_lock.h
    R libcxx/include/__cxx03/__stop_token/intrusive_list_view.h
    R libcxx/include/__cxx03/__stop_token/intrusive_shared_ptr.h
    R libcxx/include/__cxx03/__stop_token/stop_callback.h
    R libcxx/include/__cxx03/__stop_token/stop_source.h
    R libcxx/include/__cxx03/__stop_token/stop_state.h
    R libcxx/include/__cxx03/__stop_token/stop_token.h
    M libcxx/include/__cxx03/__string/char_traits.h
    M libcxx/include/__cxx03/__system_error/error_category.h
    M libcxx/include/__cxx03/__system_error/error_code.h
    M libcxx/include/__cxx03/__system_error/error_condition.h
    R libcxx/include/__cxx03/__thread/formatter.h
    M libcxx/include/__cxx03/__thread/id.h
    R libcxx/include/__cxx03/__thread/jthread.h
    M libcxx/include/__cxx03/__thread/thread.h
    M libcxx/include/__cxx03/__tree
    R libcxx/include/__cxx03/__tuple/ignore.h
    R libcxx/include/__cxx03/__type_traits/common_reference.h
    R libcxx/include/__cxx03/__type_traits/has_unique_object_representation.h
    R libcxx/include/__cxx03/__type_traits/is_aggregate.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_convertible.h
    M libcxx/include/__cxx03/__type_traits/result_of.h
    R libcxx/include/__cxx03/__utility/as_const.h
    R libcxx/include/__cxx03/__utility/cmp.h
    M libcxx/include/__cxx03/__utility/exception_guard.h
    R libcxx/include/__cxx03/__utility/exchange.h
    R libcxx/include/__cxx03/__utility/forward_like.h
    R libcxx/include/__cxx03/__utility/in_place.h
    M libcxx/include/__cxx03/__utility/pair.h
    R libcxx/include/__cxx03/__utility/to_underlying.h
    M libcxx/include/__cxx03/algorithm
    R libcxx/include/__cxx03/any
    M libcxx/include/__cxx03/array
    M libcxx/include/__cxx03/atomic
    R libcxx/include/__cxx03/barrier
    R libcxx/include/__cxx03/bit
    M libcxx/include/__cxx03/bitset
    R libcxx/include/__cxx03/charconv
    M libcxx/include/__cxx03/chrono
    M libcxx/include/__cxx03/cmath
    M libcxx/include/__cxx03/codecvt
    R libcxx/include/__cxx03/compare
    R libcxx/include/__cxx03/concepts
    M libcxx/include/__cxx03/condition_variable
    R libcxx/include/__cxx03/coroutine
    M libcxx/include/__cxx03/deque
    R libcxx/include/__cxx03/execution
    R libcxx/include/__cxx03/expected
    R libcxx/include/__cxx03/experimental/__simd/aligned_tag.h
    R libcxx/include/__cxx03/experimental/__simd/declaration.h
    R libcxx/include/__cxx03/experimental/__simd/reference.h
    R libcxx/include/__cxx03/experimental/__simd/scalar.h
    R libcxx/include/__cxx03/experimental/__simd/simd.h
    R libcxx/include/__cxx03/experimental/__simd/simd_mask.h
    R libcxx/include/__cxx03/experimental/__simd/traits.h
    R libcxx/include/__cxx03/experimental/__simd/utility.h
    R libcxx/include/__cxx03/experimental/__simd/vec_ext.h
    R libcxx/include/__cxx03/experimental/iterator
    R libcxx/include/__cxx03/experimental/memory
    R libcxx/include/__cxx03/experimental/propagate_const
    R libcxx/include/__cxx03/experimental/simd
    R libcxx/include/__cxx03/experimental/type_traits
    M libcxx/include/__cxx03/experimental/utility
    M libcxx/include/__cxx03/ext/hash_map
    M libcxx/include/__cxx03/ext/hash_set
    R libcxx/include/__cxx03/filesystem
    R libcxx/include/__cxx03/format
    M libcxx/include/__cxx03/forward_list
    M libcxx/include/__cxx03/fstream
    M libcxx/include/__cxx03/functional
    R libcxx/include/__cxx03/initializer_list
    M libcxx/include/__cxx03/ios
    M libcxx/include/__cxx03/istream
    M libcxx/include/__cxx03/iterator
    R libcxx/include/__cxx03/latch
    M libcxx/include/__cxx03/list
    M libcxx/include/__cxx03/locale
    M libcxx/include/__cxx03/map
    R libcxx/include/__cxx03/mdspan
    M libcxx/include/__cxx03/memory
    R libcxx/include/__cxx03/memory_resource
    M libcxx/include/__cxx03/mutex
    R libcxx/include/__cxx03/numbers
    M libcxx/include/__cxx03/numeric
    R libcxx/include/__cxx03/optional
    M libcxx/include/__cxx03/ostream
    R libcxx/include/__cxx03/print
    M libcxx/include/__cxx03/queue
    M libcxx/include/__cxx03/random
    R libcxx/include/__cxx03/ranges
    M libcxx/include/__cxx03/regex
    R libcxx/include/__cxx03/scoped_allocator
    R libcxx/include/__cxx03/semaphore
    M libcxx/include/__cxx03/set
    R libcxx/include/__cxx03/shared_mutex
    R libcxx/include/__cxx03/source_location
    R libcxx/include/__cxx03/span
    M libcxx/include/__cxx03/stack
    R libcxx/include/__cxx03/stop_token
    M libcxx/include/__cxx03/string
    M libcxx/include/__cxx03/string_view
    R libcxx/include/__cxx03/syncstream
    M libcxx/include/__cxx03/system_error
    M libcxx/include/__cxx03/thread
    R libcxx/include/__cxx03/tuple
    M libcxx/include/__cxx03/type_traits
    M libcxx/include/__cxx03/typeindex
    M libcxx/include/__cxx03/unordered_map
    M libcxx/include/__cxx03/unordered_set
    M libcxx/include/__cxx03/utility
    M libcxx/include/__cxx03/valarray
    R libcxx/include/__cxx03/variant
    M libcxx/include/__cxx03/vector
    A libcxx/include/__flat_set/flat_multiset.h
    M libcxx/include/__flat_set/flat_set.h
    A libcxx/include/__flat_set/utils.h
    M libcxx/include/__iterator/aliasing_iterator.h
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/locale_base_api.h
    A libcxx/include/__numeric/ranges_iota.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/is_char_like_type.h
    M libcxx/include/__type_traits/is_trivial.h
    M libcxx/include/algorithm
    M libcxx/include/any
    M libcxx/include/barrier
    M libcxx/include/bit
    M libcxx/include/charconv
    M libcxx/include/compare
    M libcxx/include/concepts
    M libcxx/include/condition_variable
    M libcxx/include/coroutine
    M libcxx/include/execution
    M libcxx/include/expected
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/filesystem
    M libcxx/include/flat_set
    M libcxx/include/format
    M libcxx/include/fstream
    M libcxx/include/future
    M libcxx/include/initializer_list
    M libcxx/include/istream
    M libcxx/include/latch
    M libcxx/include/locale
    M libcxx/include/mdspan
    M libcxx/include/memory_resource
    M libcxx/include/module.modulemap
    M libcxx/include/mutex
    M libcxx/include/numbers
    M libcxx/include/numeric
    M libcxx/include/optional
    M libcxx/include/print
    M libcxx/include/queue
    M libcxx/include/ranges
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/semaphore
    M libcxx/include/shared_mutex
    M libcxx/include/source_location
    M libcxx/include/span
    M libcxx/include/stack
    M libcxx/include/stop_token
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/strstream
    M libcxx/include/syncstream
    M libcxx/include/tuple
    M libcxx/include/type_traits
    M libcxx/include/variant
    M libcxx/include/version
    M libcxx/modules/std/algorithm.inc
    M libcxx/modules/std/flat_set.inc
    M libcxx/modules/std/numeric.inc
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
    M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp
    M libcxx/test/libcxx/clang_tidy.gen.py
    A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/assert.sorted_unique.pass.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/iterator.compile.pass.cpp
    A libcxx/test/libcxx/diagnostics/flat_multiset.nodiscard.verify.cpp
    M libcxx/test/libcxx/feature_test_macro/ftm_metadata.sh.py
    M libcxx/test/libcxx/feature_test_macro/implemented_ftms.sh.py
    M libcxx/test/libcxx/feature_test_macro/standard_ftms.sh.py
    M libcxx/test/libcxx/feature_test_macro/std_dialects.sh.py
    M libcxx/test/libcxx/feature_test_macro/version_header.sh.py
    M libcxx/test/libcxx/feature_test_macro/version_header_implementation.sh.py
    M libcxx/test/libcxx/memory/allocator_void.trivial.compile.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx/system_reserved_names.gen.py
    M libcxx/test/libcxx/type_traits/no_specializations.verify.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
    M libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
    M libcxx/test/std/algorithms/algorithms.results/no_unique_address.compile.pass.cpp
    A libcxx/test/std/algorithms/algorithms.results/out_value_result.pass.cpp
    M libcxx/test/std/algorithms/ranges_result_alias_declarations.compile.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/trivially_copyable.verify.cpp
    M libcxx/test/std/containers/container.adaptors/flat.map/helpers.h
    M libcxx/test/std/containers/container.adaptors/flat.multimap/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/empty.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/max_size.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.capacity/size.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/assign_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/compare.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/containers.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy_alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/copy_assign.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/deduct_pmr.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/default.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/dtor_noexcept.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move_alloc.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/move_assign.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/pmr.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_container.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.cons/sorted_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.erasure/erase_if.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.erasure/erase_if_exceptions.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_comparison.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_concept_conformance.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/range_concept_conformance.compile.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/reverse_iterator.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/clear.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/emplace.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/emplace_hint.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/erase_key_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/extract.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_cv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_cv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_iter_rv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_rv.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_sorted_initializer_list.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/insert_sorted_iter_iter.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/replace.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_exception.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_free.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.modifiers/swap_member.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.observers/comp.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/contains_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/count_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/equal_range_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/find_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/lower_bound_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.operations/upper_bound_transparent.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat.multiset/incomplete_type.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/op_compare.pass.cpp
    A libcxx/test/std/containers/container.adaptors/flat.multiset/types.compile.pass.cpp
    M libcxx/test/std/containers/container.adaptors/flat.set/helpers.h
    A libcxx/test/std/containers/container.adaptors/flat_helpers.h
    M libcxx/test/std/depr/depr.c.headers/stddef_h.compile.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/setbuf.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.types/byte.pass.cpp
    M libcxx/test/std/language.support/support.types/max_align_t.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_double.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_float.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long_double.pass.cpp
    A libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/std/ranges/range.req/range.view/view_base.compile.pass.cpp
    M libcxx/test/std/strings/basic.string/char.bad.verify.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
    M libcxx/test/std/strings/string.view/char.bad.verify.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/types.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/aligned_union.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_trivial.deprecated.verify.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.general/ignore.pass.cpp
    M libcxx/test/support/nasty_string.h
    M libcxx/test/support/test_iterators.h
    M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
    M libcxx/test/tools/clang_tidy_checks/libcpp_module.cpp
    A libcxx/test/tools/clang_tidy_checks/robust_against_operator_ampersand.cpp
    A libcxx/test/tools/clang_tidy_checks/robust_against_operator_ampersand.hpp
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/modules.py
    M libcxx/utils/libcxx/test/params.py
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M lld/COFF/Driver.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/ELF/Relocations.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/OutputSegment.cpp
    M lld/docs/ReleaseNotes.rst
    A lld/test/COFF/imports-static-lib-indirect.test
    A lld/test/COFF/imports-static-lib.test
    R lld/test/COFF/undefined_lazy.test
    A lld/test/ELF/aarch64-execute-only-mixed.s
    M lld/test/ELF/aarch64-execute-only.s
    A lld/test/ELF/arm-execute-only-mixed.s
    M lld/test/ELF/arm-execute-only.s
    A lld/test/ELF/loongarch-relax-tls-ie.s
    M lld/test/ELF/loongarch-tls-ie.s
    M lld/test/MachO/arm64-objc-stubs.s
    A lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/API/SBModule.h
    M lldb/include/lldb/Core/Telemetry.h
    M lldb/include/lldb/Initialization/SystemLifetimeManager.h
    M lldb/include/lldb/Symbol/FuncUnwinders.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/RegisterContextUnwind.h
    M lldb/include/lldb/Utility/LLDBAssert.h
    A lldb/include/lldb/ValueObject/DILAST.h
    A lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    A lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/API/SBModule.cpp
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Statusline.cpp
    M lldb/source/Initialization/SystemLifetimeManager.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/CMakeLists.txt
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.cpp
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.h
    R lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwinProperties.td
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
    M lldb/source/Symbol/CompactUnwindInfo.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/source/Symbol/FuncUnwinders.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/RegisterContextUnwind.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Utility/LLDBAssert.cpp
    M lldb/source/ValueObject/CMakeLists.txt
    A lldb/source/ValueObject/DILAST.cpp
    A lldb/source/ValueObject/DILEval.cpp
    A lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.py
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/TestFrameVarDILGlobalVariableLookup.py
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/TestFrameVarDILInstanceVariables.py
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/main.cpp
    M lldb/test/API/functionalities/asan/Makefile
    M lldb/test/API/functionalities/asan/TestMemoryHistory.py
    M lldb/test/API/functionalities/asan/TestReportData.py
    M lldb/test/API/functionalities/statusline/TestStatusline.py
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/Makefile
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/TestConsecutiveWatchpoints.py
    A lldb/test/API/functionalities/watchpoint/consecutive-watchpoints/main.c
    M lldb/tools/debugserver/source/DNBBreakpoint.cpp
    M lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp
    M lldb/tools/lldb-server/lldb-server.cpp
    M lldb/tools/lldb-test/SystemInitializerTest.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/ValueObject/DILLexerTests.cpp
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
    M llvm/docs/CMake.rst
    M llvm/docs/CommandGuide/llc.rst
    M llvm/docs/GitHub.rst
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/toy.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/toy.cpp
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h
    A llvm/include/llvm/CodeGen/PostRAHazardRecognizer.h
    A llvm/include/llvm/CodeGen/SDNodeInfo.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF.h
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF_ppc64.h
    M llvm/include/llvm/Frontend/Atomic/Atomic.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/IR/DerivedTypes.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/include/llvm/MC/MCParser/AsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmParser.h
    M llvm/include/llvm/MC/MCSymbol.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/include/llvm/MC/MCWasmStreamer.h
    M llvm/include/llvm/Object/TapiUniversal.h
    M llvm/include/llvm/PassSupport.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
    M llvm/include/llvm/SandboxIR/Constant.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/include/llvm/SandboxIR/Values.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
    M llvm/include/llvm/Transforms/IPO/StripSymbols.h
    M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
    M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/Reassociate.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ProfileSummaryInfo.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
    M llvm/lib/CodeGen/LivePhysRegs.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/PostRAHazardRecognizer.cpp
    M llvm/lib/CodeGen/SelectionDAG/CMakeLists.txt
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/lib/CodeGen/SelectionDAG/SDNodeInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGTargetInfo.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TypePromotion.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/Demangle/MicrosoftDemangle.cpp
    M llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
    M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFF.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.h
    A llvm/lib/ExecutionEngine/JITLink/XCOFF_ppc64.cpp
    M llvm/lib/ExecutionEngine/Orc/LoadLinkableFile.cpp
    M llvm/lib/ExecutionEngine/Orc/ObjectFileInterface.cpp
    M llvm/lib/Frontend/Atomic/Atomic.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/GCStrategy.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/ReplaceConstant.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCObjectWriter.cpp
    M llvm/lib/MC/MCParser/AsmLexer.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/CMakeLists.txt
    R llvm/lib/MC/MCParser/MCAsmLexer.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/MC/MCWasmStreamer.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Object/TapiUniversal.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/MemProfReader.cpp
    M llvm/lib/SandboxIR/Constant.cpp
    M llvm/lib/SandboxIR/Context.cpp
    M llvm/lib/Target/AArch64/AArch64A53Fix835769.cpp
    M llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp
    M llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
    M llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp
    M llvm/lib/Target/AArch64/AArch64CondBrTuning.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64LowerHomogeneousPrologEpilog.cpp
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64PostCoalescerPass.cpp
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp
    M llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp
    M llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.h
    M llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
    M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUExportClustering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMachineModuleInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMarkLastScratchLoad.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUReserveWWMRegs.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURewriteUndefForPHI.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/R600.h
    M llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/BPF/BPFMIChecking.cpp
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
    M llvm/lib/Target/Lanai/Lanai.h
    M llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp
    M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
    M llvm/lib/Target/M68k/M68kMCInstLower.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.h
    M llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.cpp
    M llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.h
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp
    M llvm/lib/Target/NVPTX/NVPTXAtomicLower.cpp
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.h
    M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp
    M llvm/lib/Target/NVPTX/NVPTXPeephole.cpp
    M llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
    M llvm/lib/Target/NVPTX/NVVMReflect.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrMMA.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVO0PreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPostLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
    M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    M llvm/lib/Target/RISCV/RISCVRedundantCopyElimination.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/SystemZCopyPhysRegs.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZLDCleanup.cpp
    M llvm/lib/Target/SystemZ/SystemZLongBranch.cpp
    M llvm/lib/Target/SystemZ/SystemZPostRewrite.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/SystemZ/SystemZTDC.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCAsmInfo.cpp
    A llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCExpr.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
    M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/ElimAvailExtern.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/IPO/ModuleInliner.cpp
    M llvm/lib/Transforms/IPO/StripSymbols.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/ControlFlowUtils.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/BasicAA/noalias-inttoptr.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-and-annotate.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-check-path.ll
    A llvm/test/Analysis/CtxProfAnalysis/flatten-insert-icp-mdprof.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-zero-path.ll
    M llvm/test/Analysis/CtxProfAnalysis/handle-select.ll
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    A llvm/test/Analysis/CtxProfAnalysis/pruning.ll
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
    M llvm/test/Assembler/DIDefaultTemplateParam.ll
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/Assembler/metadata-use-uselistorder.ll
    M llvm/test/Bindings/OCaml/debuginfo.ml
    M llvm/test/Bitcode/dbg-record-roundtrip.ll
    M llvm/test/Bitcode/thinlto-unused-type-tests.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    M llvm/test/CodeGen/AArch64/arm64-windows-tailcall.ll
    M llvm/test/CodeGen/AArch64/constant-pool-partition.ll
    R llvm/test/CodeGen/AArch64/fast-isel-branch-uncond-debug.ll
    M llvm/test/CodeGen/AArch64/fast-isel-dbg.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    A llvm/test/CodeGen/AArch64/jump-table-partition.ll
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-02.mir
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/patchable-function-entry-bti.ll
    M llvm/test/CodeGen/AArch64/selectiondag-order.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    A llvm/test/CodeGen/AArch64/typepromotion-gep.ll
    M llvm/test/CodeGen/AArch64/typepromotion-phisret.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/vector-insert-dag-combines.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    R llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-lower-all.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-lower-none.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-indirect-access-lower-all.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-sw-lower-lds-static-indirect-access-lower-none.ll
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
    M llvm/test/CodeGen/AMDGPU/break-smem-soft-clauses.mir
    M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
    M llvm/test/CodeGen/AMDGPU/hazard-flat-instruction-valu-check.mir
    M llvm/test/CodeGen/AMDGPU/insert-handle-flat-vmem-ds.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.err.ll
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-special-instructions.mir
    M llvm/test/CodeGen/AMDGPU/rotate-add.ll
    M llvm/test/CodeGen/AMDGPU/set-gpr-idx-peephole.mir
    M llvm/test/CodeGen/ARM/2010-11-29-PrologueBug.ll
    M llvm/test/CodeGen/ARM/ldm.ll
    R llvm/test/CodeGen/ARM/plt-relative-reloc.ll
    A llvm/test/CodeGen/ARM/relative-reloc.ll
    M llvm/test/CodeGen/ARM/rotate-add.ll
    M llvm/test/CodeGen/ARM/zextload_demandedbits.ll
    A llvm/test/CodeGen/DirectX/dot2add.ll
    M llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-bit-shift.ll
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-rotate.ll
    A llvm/test/CodeGen/LoongArch/lasx/vec-shuffle-byte-shift.ll
    A llvm/test/CodeGen/LoongArch/lsx/vec-shuffle-byte-rotate.ll
    M llvm/test/CodeGen/MIR/X86/diexpr-win32.mir
    M llvm/test/CodeGen/NVPTX/atomics.ll
    A llvm/test/CodeGen/NVPTX/convert-fp-i8.ll
    M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    M llvm/test/CodeGen/NVPTX/rotate-add.ll
    M llvm/test/CodeGen/PowerPC/adde_return_type.ll
    M llvm/test/CodeGen/PowerPC/addegluecrash.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-byval-split.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-xcoff-reloc-large32.ll
    M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
    A llvm/test/CodeGen/PowerPC/carry-liveness-after-expand-isel.ll
    M llvm/test/CodeGen/PowerPC/cvt_i64_to_fp.ll
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll
    M llvm/test/CodeGen/PowerPC/inc-of-add.ll
    M llvm/test/CodeGen/PowerPC/mcm-5.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-acc-spill.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
    A llvm/test/CodeGen/PowerPC/ppc32-pic-bcl.ll
    M llvm/test/CodeGen/PowerPC/ppc32-pic-large.ll
    M llvm/test/CodeGen/PowerPC/ppc32-pic.ll
    M llvm/test/CodeGen/PowerPC/pr35688.ll
    M llvm/test/CodeGen/PowerPC/pr36292.ll
    M llvm/test/CodeGen/PowerPC/pr40922.ll
    M llvm/test/CodeGen/PowerPC/pr45448.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/PowerPC/select.ll
    M llvm/test/CodeGen/PowerPC/uaddo-32.ll
    M llvm/test/CodeGen/PowerPC/uaddo-64.ll
    M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/v1024ls.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/compress-opt-select.ll
    M llvm/test/CodeGen/RISCV/dso_local_equivalent.ll
    M llvm/test/CodeGen/RISCV/hwasan-check-memaccess.ll
    M llvm/test/CodeGen/RISCV/kcfi.ll
    M llvm/test/CodeGen/RISCV/patchable-function-entry.ll
    R llvm/test/CodeGen/RISCV/plt-relative-reloc.ll
    A llvm/test/CodeGen/RISCV/relative-reloc.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-struct.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-vector-tuple.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-stepvector.ll
    A llvm/test/CodeGen/RISCV/rvv/zext-icmp.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/xcvmem.ll
    M llvm/test/CodeGen/RISCV/zbb-cmp-combine.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_ternary_bitwise_function/bitwise-function.ll
    A llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/constant-pool-partition.ll
    M llvm/test/CodeGen/X86/dso_local_equivalent.ll
    M llvm/test/CodeGen/X86/global-variable-partition.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/jump-table-partition.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    A llvm/test/CodeGen/X86/powi-const.ll
    M llvm/test/CodeGen/X86/powi.ll
    M llvm/test/CodeGen/X86/pr119158.ll
    A llvm/test/CodeGen/X86/pr134607.ll
    A llvm/test/CodeGen/X86/relative-reloc-32.ll
    A llvm/test/CodeGen/X86/relative-reloc-64.ll
    M llvm/test/CodeGen/X86/relptr-rodata.ll
    M llvm/test/CodeGen/X86/rotate-add.ll
    M llvm/test/CodeGen/X86/selectiondag-order.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    R llvm/test/CodeGen/X86/x86-64-plt-relative-reloc.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    R llvm/test/CodeGen/X86/x86-plt-relative-reloc.ll
    M llvm/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
    M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    A llvm/test/DebugInfo/pick-merged-source-locations.ll
    M llvm/test/Demangle/invalid-manglings.test
    A llvm/test/ExecutionEngine/JITLink/ppc64/XCOFF_ppc64.ll
    M llvm/test/Instrumentation/MemorySanitizer/i386/vararg.ll
    M llvm/test/MC/AArch64/coff-relocations.s
    M llvm/test/MC/AArch64/data-directive-specifier.s
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AArch64/label-arithmetic-diags-darwin.s
    M llvm/test/MC/CSKY/relocation-specifier.s
    M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
    M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
    M llvm/test/MC/ELF/bad-expr.s
    M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
    R llvm/test/MC/PowerPC/ppc64-errors-emit-obj.s
    R llvm/test/MC/PowerPC/pr24686.s
    A llvm/test/MC/PowerPC/relocation-specifier-err.s
    M llvm/test/MC/RISCV/rv32p-valid.s
    M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv32zcmp-invalid.s
    A llvm/test/MC/RISCV/rv32zilsd-pseudos.s
    M llvm/test/MC/RISCV/rv64p-valid.s
    M llvm/test/MC/RISCV/xqciac-valid.s
    A llvm/test/MC/RISCV/xqcibi-long-conditional-jump.s
    A llvm/test/MC/RISCV/xqcibi-relocations.s
    M llvm/test/MC/RISCV/xqcibi-valid.s
    M llvm/test/MC/RISCV/xqcibm-valid.s
    M llvm/test/MC/RISCV/xqcicli-valid.s
    M llvm/test/MC/RISCV/xqcicm-valid.s
    M llvm/test/MC/RISCV/xqciint-csrs-valid.s
    M llvm/test/MC/RISCV/xqciint-valid.s
    M llvm/test/MC/RISCV/xqciio-aliases-valid.s
    M llvm/test/MC/RISCV/xqciio-valid.s
    M llvm/test/MC/RISCV/xqcilb-valid.s
    M llvm/test/MC/RISCV/xqcili-invalid.s
    M llvm/test/MC/RISCV/xqcili-li.s
    A llvm/test/MC/RISCV/xqcili-relocations.s
    M llvm/test/MC/RISCV/xqcili-valid.s
    M llvm/test/MC/RISCV/xqcilia-valid.s
    M llvm/test/MC/RISCV/xqcilo-aliases-valid.s
    A llvm/test/MC/RISCV/xqcilo-pseudos-invalid.s
    A llvm/test/MC/RISCV/xqcilo-pseudos-valid.s
    M llvm/test/MC/RISCV/xqcilo-valid.s
    M llvm/test/MC/RISCV/xqcisim-valid.s
    M llvm/test/MC/RISCV/xqcisync-valid.s
    M llvm/test/MC/RISCV/xrivosvisni-valid.s
    M llvm/test/MC/RISCV/xrivosvizip-valid.s
    M llvm/test/MC/X86/macho-reloc-errors-x86_64.s
    M llvm/test/ThinLTO/X86/ctxprof-separate-module.ll
    A llvm/test/Transforms/AggressiveInstCombine/dbgloc-memchr.ll
    M llvm/test/Transforms/Attributor/IPConstantProp/pthreads.ll
    A llvm/test/Transforms/Attributor/align-atomic.ll
    M llvm/test/Transforms/Attributor/allocator.ll
    M llvm/test/Transforms/Attributor/callbacks.ll
    M llvm/test/Transforms/Attributor/issue87856.ll
    M llvm/test/Transforms/Attributor/memory_locations.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/noundef.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    A llvm/test/Transforms/Coroutines/coro-early-twice.ll
    M llvm/test/Transforms/EarlyCSE/AArch64/intrinsics.ll
    M llvm/test/Transforms/EliminateAvailableExternally/transform-to-local.ll
    M llvm/test/Transforms/FixIrreducible/basic.ll
    A llvm/test/Transforms/InferAddressSpaces/NVPTX/arguments.ll
    A llvm/test/Transforms/Inline/SystemZ/inline-target-attr.ll
    A llvm/test/Transforms/Inline/SystemZ/lit.local.cfg
    A llvm/test/Transforms/Inline/X86/inline-landing-pad.ll
    A llvm/test/Transforms/Inline/X86/inline-simplified-branch-dbg-loc.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul_u-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul_u-idempotency.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/assume.ll
    A llvm/test/Transforms/InstCombine/debuginfo-invoke.ll
    M llvm/test/Transforms/InstCombine/eq-of-parts.ll
    M llvm/test/Transforms/InstCombine/onehot_merge.ll
    A llvm/test/Transforms/JumpThreading/thread-prob-8.ll
    M llvm/test/Transforms/JumpThreading/unreachable-loops.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling-multi-exit.ll
    A llvm/test/Transforms/LoopUnroll/AArch64/unrolling-multi-exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/i1-reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
    M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-bf16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-f16.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
    M llvm/test/Transforms/LoopVectorize/X86/i1-reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
    M llvm/test/Transforms/LoopVectorize/X86/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
    M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/as_cast.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/discriminator.ll
    M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
    M llvm/test/Transforms/LoopVectorize/loop-form.ll
    M llvm/test/Transforms/LoopVectorize/memdep-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/optsize.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr51614-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/select-reduction.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-counting-down.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
    A llvm/test/Transforms/LowerMatrixIntrinsics/analysis-invalidation.ll
    M llvm/test/Transforms/Mem2Reg/ignore-droppable.ll
    A llvm/test/Transforms/MergeFunc/crash-cast-arrays.ll
    M llvm/test/Transforms/NaryReassociate/nary-add.ll
    M llvm/test/Transforms/NaryReassociate/nary-mul.ll
    M llvm/test/Transforms/NaryReassociate/nary-req.ll
    M llvm/test/Transforms/NaryReassociate/nary-smax.ll
    M llvm/test/Transforms/NaryReassociate/nary-smin.ll
    M llvm/test/Transforms/NaryReassociate/nary-umax.ll
    M llvm/test/Transforms/NaryReassociate/nary-umin.ll
    M llvm/test/Transforms/NaryReassociate/pr24301.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    R llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll
    A llvm/test/Transforms/Reassociate/debugloc-factoring-add.ll
    A llvm/test/Transforms/Reassociate/debugloc-factoring-neg.ll
    A llvm/test/Transforms/Reassociate/debugloc-reass-add.ll
    A llvm/test/Transforms/RewriteStatepointsForGC/unsupported-gc-error.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/reordered-loads.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads-simple.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reordered-masked-loads.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-getAltInstrMask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-last-inst-vectorized.ll
    M llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll
    M llvm/test/Transforms/SLPVectorizer/revec.ll
    M llvm/test/Transforms/SROA/assume.ll
    M llvm/test/Transforms/SROA/ignore-droppable.ll
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
    A llvm/test/Transforms/StripSymbols/strip-cg-profile.ll
    M llvm/test/Transforms/TailCallElim/debugloc.ll
    M llvm/test/Transforms/TypePromotion/ARM/phis-ret.ll
    M llvm/test/Transforms/TypePromotion/ARM/pointers.ll
    A llvm/test/tools/dsymutil/ARM/swiftmodule.test
    A llvm/test/tools/dsymutil/Inputs/Binary.swiftmodule
    A llvm/test/tools/dsymutil/Inputs/FromInterface.swiftmodule
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    A llvm/test/tools/llc/instprinter-options.ll
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness.s
    M llvm/test/tools/llvm-mc/disassembler-options.test
    M llvm/test/tools/llvm-mt/help.test
    M llvm/test/tools/llvm-nm/tapi-files.test
    M llvm/test/tools/llvm-profdata/memprof-buildid.test
    M llvm/test/tools/llvm-reduce/debug-metadata-verifier.ll
    M llvm/test/tools/llvm-reduce/reduce-conditionals.ll
    R llvm/test/tools/llvm-reduce/remove-args-dbg-intrinsics.ll
    M llvm/tools/dsymutil/CMakeLists.txt
    M llvm/tools/dsymutil/DebugMap.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/RelocationMap.h
    A llvm/tools/dsymutil/SwiftModule.cpp
    A llvm/tools/dsymutil/SwiftModule.h
    M llvm/tools/llc/llc.cpp
    M llvm/tools/llvm-ar/llvm-ar.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-extract/llvm-extract.cpp
    M llvm/tools/llvm-link/llvm-link.cpp
    M llvm/tools/llvm-lto/llvm-lto.cpp
    M llvm/tools/llvm-lto2/llvm-lto2.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-mt/CMakeLists.txt
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceUsingSimplifyCFG.cpp
    M llvm/tools/llvm-reduce/deltas/Utils.cpp
    M llvm/tools/llvm-reduce/deltas/Utils.h
    M llvm/tools/llvm-reduce/llvm-reduce.cpp
    M llvm/tools/verify-uselistorder/verify-uselistorder.cpp
    M llvm/unittests/ADT/EquivalenceClassesTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/X86MCInstLowerTest.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/Target/DirectX/UniqueResourceFromUseTests.cpp
    M llvm/unittests/Transforms/Utils/LocalTest.cpp
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/git/code-format-helper.py
    M llvm/utils/gn/.gn
    M llvm/utils/gn/build/sync_source_lists_from_cmake.py
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/secondary/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/support/BUILD.gn
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/clang-sycl-linker/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    A llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni
    M llvm/utils/gn/secondary/compiler-rt/lib/hwasan/BUILD.gn
    A llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/test/hwasan/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/ValueObject/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/SelectionDAG/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/JITLink/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/MC/MCParser/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/dsymutil/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
    M mlir/docs/Dialects/LLVM.md
    M mlir/docs/Dialects/TOSA.md
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/Affine/Utils.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/include/mlir/Dialect/Ptr/IR/PtrDialect.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaUtilOps.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/Dialect/X86Vector/CMakeLists.txt
    M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    M mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    A mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/Diagnostics.h
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/include/mlir/Interfaces/VectorInterfaces.td
    M mlir/include/mlir/Reducer/Passes.h
    M mlir/include/mlir/Reducer/Passes.td
    M mlir/include/mlir/Target/LLVMIR/Dialect/All.h
    R mlir/include/mlir/Target/LLVMIR/Dialect/X86Vector/X86VectorToLLVMIRTranslation.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/InliningUtils.h
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/lib/Conversion/MemRefToLLVM/AllocLikeConversion.cpp
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Debug/CLOptionsSetup.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    M mlir/lib/Dialect/AMDGPU/IR/CMakeLists.txt
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OptimizeAllocationLiveness.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/NormalizeMemRefs.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaLayerwiseConstantFoldPass.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/SubsetOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/lib/IR/Diagnostics.cpp
    M mlir/lib/Reducer/OptReductionPass.cpp
    M mlir/lib/Reducer/ReductionTreePass.cpp
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/lib/Target/LLVMIR/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/CMakeLists.txt
    M mlir/lib/Target/LLVMIR/Dialect/GPU/SelectObjectAttr.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    R mlir/lib/Target/LLVMIR/Dialect/X86Vector/CMakeLists.txt
    R mlir/lib/Target/LLVMIR/Dialect/X86Vector/X86VectorToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/lib/Target/LLVMIR/TypeFromLLVM.cpp
    M mlir/lib/Target/LLVMIR/TypeToLLVM.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/lib/Transforms/Utils/InliningUtils.cpp
    A mlir/test/Conversion/AMDGPUToROCDL/load_lds.mlir
    R mlir/test/Conversion/MemRefToLLVM/invalid-uint.mlir
    M mlir/test/Conversion/MemRefToLLVM/invalid.mlir
    R mlir/test/Conversion/MemRefToLLVM/issue-70160.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/Bufferization/Transforms/optimize-allocation-liveness.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    A mlir/test/Dialect/LLVMIR/blockaddress-canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/constant-folding.mlir
    M mlir/test/Dialect/LLVMIR/inlining.mlir
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Dialect/LLVMIR/opaque-ptr.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Dialect/LLVMIR/types-invalid.mlir
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Dialect/MemRef/canonicalize.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
    M mlir/test/Dialect/Shape/canonicalize.mlir
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/ops.mlir
    M mlir/test/IR/invalid-builtin-types.mlir
    M mlir/test/IR/parser.mlir
    M mlir/test/IR/test-verifiers-type.mlir
    A mlir/test/Target/LLVMIR/Import/blockaddress.ll
    M mlir/test/Target/LLVMIR/Import/constant.ll
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    M mlir/test/Target/LLVMIR/Import/incorrect-scalable-vector-check.ll
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    A mlir/test/Target/LLVMIR/Import/metadata-dependent-libraries.ll
    A mlir/test/Target/LLVMIR/blockaddress.mlir
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
    M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir-types.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    A mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir
    A mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
    A mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
    M mlir/test/Target/LLVMIR/opaque-ptr.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-distribute-reduction.mlir
    A mlir/test/Target/LLVMIR/openmp-teams-reduction.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    M mlir/test/Target/LLVMIR/x86vector.mlir
    A mlir/test/Transforms/test-inlining-callback.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Transforms/CMakeLists.txt
    M mlir/test/lib/Transforms/TestInlining.cpp
    A mlir/test/lib/Transforms/TestInliningCallback.cpp
    A mlir/test/mlir-opt/debuggerhook.mlir
    M mlir/test/mlir-tblgen/attr-or-type-format.mlir
    M mlir/test/python/ir/builtin_types.py
    M mlir/tools/mlir-opt/mlir-opt.cpp
    M mlir/unittests/Target/LLVM/SerializeNVVMTarget.cpp
    M mlir/utils/generate-test-checks.py
    A offload/test/offloading/fortran/basic-target-parallel-reduction.f90
    A offload/test/offloading/fortran/basic-target-teams-parallel-reduction.f90
    M offload/test/offloading/gpupgo/pgo1.c
    M offload/test/offloading/gpupgo/pgo2.c
    M polly/lib/CodeGen/LoopGeneratorsGOMP.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/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/llvm/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch2/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch3/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch4/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch5/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch6/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/examples/toy/Ch7/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/unittests/BUILD.bazel

  Log Message:
  -----------
  Rebase

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/37876801e79f...f64d965f6a5d

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