[all-commits] [llvm/llvm-project] f0cc50: [ADT] Add hash_combine_range that takes a range (N...

Chao Chen via All-commits all-commits at lists.llvm.org
Tue Apr 29 13:36:50 PDT 2025


  Branch: refs/heads/users/chencha3/xegpu/xegpu_unroll_patterns
  Home:   https://github.com/llvm/llvm-project
  Commit: f0cc50cdc969d141015cd132cf56a2ab8447f763
      https://github.com/llvm/llvm-project/commit/f0cc50cdc969d141015cd132cf56a2ab8447f763
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ADT/Hashing.h
    M llvm/unittests/ADT/HashingTest.cpp

  Log Message:
  -----------
  [ADT] Add hash_combine_range that takes a range (NFC) (#136459)

The new function will allow us to replace:

  hash_combine_range(Ops.begin(), Ops.end())

with:

  hash_combine_range(Ops)


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

  Changed paths:
    M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
    M clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] fix `clang-tidy` warnings in `clang-tools-extra/clang-tidy` directory (#136097)

Mostly stylistic changes to `clang-tidy` source code.

Command run:
`python3 clang-tools-extra/clang-tidy/tool/run-clang-tidy.py -p build/
-j $(nproc) clang-tools-extra/clang-tidy`


  Commit: 3ac1aa4c88d4fe40166209cad616f4ae867c20a2
      https://github.com/llvm/llvm-project/commit/3ac1aa4c88d4fe40166209cad616f4ae867c20a2
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/SemaCXX/bitfield-preferred-type-sizing.cpp

  Log Message:
  -----------
  [Clang] Consider preferred_type in bitfield warnings (#116760) (#116785)

Very simply extends the bitfield sema checks for assignment to fields
with a preferred type specified to consider the preferred type if the
decl storage type is not explicitly an enum type.

This does mean that if the preferred and explicit types have different
storage requirements we may not warn in all possible cases, but that's a
scenario for which the warnings are much more complex and confusing.


  Commit: f87109f018faad5f3f1bf8a4668754c24e84e886
      https://github.com/llvm/llvm-project/commit/f87109f018faad5f3f1bf8a4668754c24e84e886
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M compiler-rt/lib/builtins/int_lib.h

  Log Message:
  -----------
  [compiler-rt] allow building with uefi (#131499)

I'm trying to put together an LLVM built toolchain (including LLVM libc)
targeting UEFI, currently I get an error saying "Unknown target". This
PR enables compiling compiler-rt for UEFI.


  Commit: b01e25debaf3fde3c76c9763e78e118a7da3d592
      https://github.com/llvm/llvm-project/commit/b01e25debaf3fde3c76c9763e78e118a7da3d592
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/Hashing.h
    M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/Transforms/IPO/FunctionSpecialization.h
    M llvm/lib/CodeGen/MIRVRegNamerUtils.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/ExecutionEngine/Orc/IRPartitionLayer.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Support/StringRef.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanSLP.h
    M llvm/tools/llvm-profgen/PerfReader.h

  Log Message:
  -----------
  [llvm] Call hash_combine_range with ranges (NFC) (#136511)


  Commit: 5e834b9ec7fc85072ec12de780d3c793c03b7d00
      https://github.com/llvm/llvm-project/commit/5e834b9ec7fc85072ec12de780d3c793c03b7d00
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Polynomial/IR/Polynomial.h
    M mlir/include/mlir/IR/BlockSupport.h
    M mlir/include/mlir/IR/TypeRange.h
    M mlir/lib/Dialect/Quant/IR/TypeDetail.h
    M mlir/lib/Dialect/SPIRV/Linking/ModuleCombiner/ModuleCombiner.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/unittests/IR/OpPropertiesTest.cpp

  Log Message:
  -----------
  [mlir] Call hash_combine_range with ranges (NFC) (#136512)


  Commit: b07d2e62c63414bbce5c1d61bf72153071a8c05d
      https://github.com/llvm/llvm-project/commit/b07d2e62c63414bbce5c1d61bf72153071a8c05d
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/Mips16FrameLowering.cpp
    M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp

  Log Message:
  -----------
  [Mips] Use helper class for emitting CFI instructions (NFCI) (#136242)


  Commit: c6e7bb19f70f6509e1f54e6010a6de50f6a4804f
      https://github.com/llvm/llvm-project/commit/c6e7bb19f70f6509e1f54e6010a6de50f6a4804f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/DebugNames.cpp

  Log Message:
  -----------
  [BOLT] Use llvm::unique (NFC) (#136513)


  Commit: be48727b95bf9075e4290cc8938ab87db8b7410c
      https://github.com/llvm/llvm-project/commit/be48727b95bf9075e4290cc8938ab87db8b7410c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-include-fixer/IncludeFixerContext.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp

  Log Message:
  -----------
  [clang-tools-extra] Use llvm::unique (NFC) (#136514)


  Commit: 27653bdc49161b6d0e785185384a5c96a55e9e24
      https://github.com/llvm/llvm-project/commit/27653bdc49161b6d0e785185384a5c96a55e9e24
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/LangOptions.def

  Log Message:
  -----------
  Ensure bit-fields storing FPEvalMethodKind are wide enough to do so (#136515)

After landing #116760 we hit build failures due to existing fields
storing FPEvalMethodKind not being wide enough.


  Commit: 0e3e0bf42c25b280d8caa455c6ae7e4a04d3667a
      https://github.com/llvm/llvm-project/commit/0e3e0bf42c25b280d8caa455c6ae7e4a04d3667a
  Author: Chyaka <lilium23187 at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [RISCV] Add processor definition for XiangShan-KunMingHu-V2R2 (#123193)

XiangShan-KunMingHu is the third generation of Open-source
high-performance RISC-V processor developed by Beijing Institute of Open
Source Chip (BOSC) , and its latest version is V2R2.

The KunMingHu manual is now available at
https://github.com/OpenXiangShan/XiangShan-User-Guide/releases.
It will be updated on the official XiangShan documentation site:
https://docs.xiangshan.cc/zh-cn/latest

You can find the corresponding ISA extension from the XiangShan Github
repository:
https://github.com/OpenXiangShan/XiangShan/blob/master/src/main/scala/xiangshan/Parameters.scala

If you want to track the latest performance data of KunMingHu, please
check XiangShan Biweekly: https://docs.xiangshan.cc/zh-cn/latest/blog

This PR adds the processor definition for KunMingHu V2R2, developed by
the XSCC team https://github.com/orgs/OpenXiangShan/teams/xscc.

The scheduling model for XiangShan-KunMingHu V2R2 will be submitted in a
subsequent PR.

---------

Co-authored-by: Shenglin Tang <tangshenglin at ict.ac.cn>
Co-authored-by: Xu, Zefan <ceba_robot at outlook.com>
Co-authored-by: Tang Haojin <tanghaojin at outlook.com>


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/apx/cf.ll

  Log Message:
  -----------
  [X86][APX] Combine (X86Sub 0, AND(X, Y)) to (X86And X, Y) for CLOAD/CSTORE (#136429)

https://godbolt.org/z/TsWochrbf


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

  Changed paths:
    M llvm/docs/CodeOfConduct.rst

  Log Message:
  -----------
  [docs] Correct my email address


  Commit: a8644b3d881fabaac217ba8d8b4afa446e29b453
      https://github.com/llvm/llvm-project/commit/a8644b3d881fabaac217ba8d8b4afa446e29b453
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M bolt/lib/Profile/YAMLProfileWriter.cpp

  Log Message:
  -----------
  [BOLT] Call hash_combine_range with ranges (NFC) (#136524)


  Commit: 02b55d2b78d318dad331a66ddac81c7318b0b87a
      https://github.com/llvm/llvm-project/commit/02b55d2b78d318dad331a66ddac81c7318b0b87a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M clang/lib/AST/ItaniumCXXABI.cpp

  Log Message:
  -----------
  [AST] Call hash_combine_range with a range (NFC) (#136525)


  Commit: 6274442f8c657597233b9691298df7b5cd743e66
      https://github.com/llvm/llvm-project/commit/6274442f8c657597233b9691298df7b5cd743e66
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

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

  Log Message:
  -----------
  [clangd] Call hash_combine_range with a range (NFC) (#136526)


  Commit: 2ba20c52e43ae881dc54037fff94d7e2f217c99d
      https://github.com/llvm/llvm-project/commit/2ba20c52e43ae881dc54037fff94d7e2f217c99d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-20 (Sun, 20 Apr 2025)

  Changed paths:
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Target/Target.cpp
    M lldb/tools/lldb-dap/Handler/BreakpointLocationsHandler.cpp

  Log Message:
  -----------
  [lldb] Use llvm::unique (NFC) (#136527)


  Commit: f024aab844ab89ab6455ddf1e2232a957c72328e
      https://github.com/llvm/llvm-project/commit/f024aab844ab89ab6455ddf1e2232a957c72328e
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/zext-with-load-is-free.ll

  Log Message:
  -----------
  [RISCV] Remove the TODO that lbu and lhu should be selected to avoid the unnecessary masking. NFC.

RISCVTargetLowering::isZExtFree has been implemented in
https://github.com/llvm/llvm-project/commit/15e894baeeb96612ae471fa83d1729a2d3388fc8.


  Commit: e183459b8b341ec787b2856be7e86a9e6200e2f8
      https://github.com/llvm/llvm-project/commit/e183459b8b341ec787b2856be7e86a9e6200e2f8
  Author: David Green <david.green at arm.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [CostModel] Make sure getCmpSelInstrCost is passed a CondTy (#135535)

It is already required along certain code paths that the CondTy is
valid. Fix some of the uses to make sure it is passed.


  Commit: 2ba455ff3dd192ff814514647d485491510a6342
      https://github.com/llvm/llvm-project/commit/2ba455ff3dd192ff814514647d485491510a6342
  Author: David Green <david.green at arm.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll

  Log Message:
  -----------
  [AArch64] Add CostKind to getSpliceCost (#135537)

This likely does not alter much yet with how the costs are used. Like
other cost functions the CostKind should be passed into and through the
function.


  Commit: 8435de0916d9df5a3a9dd9eeb44d5bf4aba87ba3
      https://github.com/llvm/llvm-project/commit/8435de0916d9df5a3a9dd9eeb44d5bf4aba87ba3
  Author: Tongsheng Wu <tongshengwu0 at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [clangd] Print include spelling in IncludeCleaner error message (#136237)


  Commit: 050ca5e27082055f41ad7e3dd2dea2f39364b3ab
      https://github.com/llvm/llvm-project/commit/050ca5e27082055f41ad7e3dd2dea2f39364b3ab
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp

  Log Message:
  -----------
  [CIR][NFC] Simplify BoolAttr builders (#136366)

This mirrors incubator changes from https://github.com/llvm/clangir/pull/1572


  Commit: b6820c35c59a4da3e59c11f657093ffbd79ae1db
      https://github.com/llvm/llvm-project/commit/b6820c35c59a4da3e59c11f657093ffbd79ae1db
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi11.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi12.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi13.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi6.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi9.ll

  Log Message:
  -----------
  [MachinePipeliner] Remove UB from tests (NFC) (#123169)

This patch removes UB from some tests for MachinePipeliner. This patch
fixes following cases.

- Branching on an `undef` value.
- Using `undef`/`null` as a pointer operand of a load/store.

There are other tests of pipeliner that contain the same UB, but for
now, this patch fixes particularly unstable cases when I developed
pipeliner.


  Commit: 4853bf0956058f4433fb81e880a2087da4487f26
      https://github.com/llvm/llvm-project/commit/4853bf0956058f4433fb81e880a2087da4487f26
  Author: tangaac <tangyan01 at loongson.cn>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/test/CodeGen/LoongArch/lasx/broadcast-load.ll
    M llvm/test/CodeGen/LoongArch/lsx/broadcast-load.ll

  Log Message:
  -----------
  [LoongArch] Lower build_vector to broadcast load if possible (#135896)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll

  Log Message:
  -----------
  [RISCV] Handle scalarized reductions in getArithmeticReductionCost

This fixes a crash reported at
https://github.com/llvm/llvm-project/pull/114250#issuecomment-2813686061

If the vector type isn't legal at all, e.g. bfloat with +zvfbfmin,
then the legalized type will be scalarized. So use getScalarType()
instead of getVectorElement() when checking for f16/bf16.


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

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

  Log Message:
  -----------
  [mlir][LLVM][NFC] Avoid rollback in FuncOp --> LLVM lowering (#136477)

This pattern used to create an `llvm.func` op, then check additional
requirements and return "failure". This commit moves the checks before
the creation of the replacement op, so that no rollback is necessary
when one of the checks fails.

Note: This is in preparation of the One-Shot Dialect Conversion
refactoring, which removes the rollback functionality.


  Commit: 47ca7f1cce56332ee8ac0d525a0172d3bce8508e
      https://github.com/llvm/llvm-project/commit/47ca7f1cce56332ee8ac0d525a0172d3bce8508e
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [X86] Remove unused BitVector TILERegs (NFC) (#136508)

It is not used.


  Commit: c347ad21ab55fc28cbc1366e86de3ad073dd693a
      https://github.com/llvm/llvm-project/commit/c347ad21ab55fc28cbc1366e86de3ad073dd693a
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp

  Log Message:
  -----------
  [RISCV][NFC] Delete RISCVAsmParser::parsePseudoQCJumpSymbol (#136552)

fix, warning:
RISCVAsmParser::parsePseudoQCJumpSymbol(llvm::OperandVector&)’ defined
but not used [-Wunused-function]


  Commit: 940108b24d1d7cb25b06dd66c6529bddc7daefab
      https://github.com/llvm/llvm-project/commit/940108b24d1d7cb25b06dd66c6529bddc7daefab
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU][NewPM] Make the pass flow consistent with the legacy pipeline. (#136551)


  Commit: 788b50a4384985f2c221cfd8d290cabc6f59e646
      https://github.com/llvm/llvm-project/commit/788b50a4384985f2c221cfd8d290cabc6f59e646
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/combine-fcopysign.ll

  Log Message:
  -----------
  [X86] Add test coverage for #136368


  Commit: f12078e72601e7c03e5d66afab034313caf8f791
      https://github.com/llvm/llvm-project/commit/f12078e72601e7c03e5d66afab034313caf8f791
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/arm64-bitfield-extract.ll
    M llvm/test/CodeGen/AArch64/optimize-cond-branch.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/ctpop16.ll
    M llvm/test/CodeGen/AMDGPU/dead-machine-elim-after-dead-lane.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    M llvm/test/CodeGen/PowerPC/undef-args.ll
    M llvm/test/CodeGen/RISCV/miss-sp-restore-eh.ll

  Log Message:
  -----------
  [SelectionDAG] Folding  ZERO-EXTEND/SIGN_EXTEND poison to Poison value in getNode (#122741)

The PR will fix the issue
https://github.com/llvm/llvm-project/issues/122728

This patch addresses the signed/zero extension of poison by using a
poison value of the extended type instead of a constant zero of the
extended type.


  Commit: 111af76bd74708929a048f94ef5c52af646f1c64
      https://github.com/llvm/llvm-project/commit/111af76bd74708929a048f94ef5c52af646f1c64
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    A clang/test/CodeGenDirectX/unsupported_intrinsic.hlsl
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/test/CodeGen/DirectX/unsupported_intrinsic.ll

  Log Message:
  -----------
  [DirectX] add Function name to DiagnosticInfoUnsupported Msg in DXILOpLowering (#136234)

fixes #135654

In #128613 we added safe guards to prevent the lowering of just any
intrinsic in the backend. We used `DiagnosticInfoUnsupported` to do
this.

What we found was when using `opt` the diagnostic print function was
called but when using clang the diagnostic message was used.

Printing message in the clang version means we miss valuable debugging
information like function name and function type when LLVMContext was
only needed to call `getBestLocationFromDebugLoc`.

There are a few potential fixes

1. Write a custom DiagnosticInfoUnsupported so we can change the Message
just for DirectX. Too heavy handed so rejected.

2. Add the function name to the Message in DirectX code. Very simple one
line change. Downside is when using opt you see the function name twice.
But makes the clang-dxc bugs more actionable.

3. change CodeGenAction.cpp to always use the print function and not the
message directly. Downside is a bunch of innacurate information shows up
in the message if you don't specify `-debug-info-kind=standalone`.

4. add some book keeping to know which function called the intrinsic
keep a map of these so we can pass the calling function to
`DiagnosticInfoUnsupported` instead of the intrinsic. This would only be
useful if we had debug info so we could distinguish different uses of
the intrinsic by line\col number. We would also need to change from
iterating on every function to doing something like a LazyCallGraph
which is a nonstarter.

5. pick a different means of doing a Diagnostic error, because other
uses of `DiagnosticInfoUnsupported` error when we are in the body of a
function not when we see one being used like in the intrinsic case.

This PR went with a combo of option 2 & 5. Its low code change that also
only impacts the DirectX backend.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/arm64-bitfield-extract.ll
    M llvm/test/CodeGen/AArch64/optimize-cond-branch.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/ctpop16.ll
    M llvm/test/CodeGen/AMDGPU/dead-machine-elim-after-dead-lane.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    M llvm/test/CodeGen/PowerPC/undef-args.ll
    M llvm/test/CodeGen/RISCV/miss-sp-restore-eh.ll

  Log Message:
  -----------
  Revert "[SelectionDAG] Folding  ZERO-EXTEND/SIGN_EXTEND poison to Poison value in getNode (#122741)"

This reverts commit f12078e72601e7c03e5d66afab034313caf8f791.

Breaks `check-llvm`, see comments on https://github.com/llvm/llvm-project/pull/122741


  Commit: 1cb82ff9cd95c216f6d8da18637ee47a15bd41f6
      https://github.com/llvm/llvm-project/commit/1cb82ff9cd95c216f6d8da18637ee47a15bd41f6
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRTypesDetails.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp

  Log Message:
  -----------
  [clang][CIR] Fix various warnings. NFC

- Fix various warnings including '-Wparentheses', '-Wunused-variable',
  and '-Wreturn-type'.


  Commit: 08b0c2517eb859667d59873bf04b6aa78a7583a7
      https://github.com/llvm/llvm-project/commit/08b0c2517eb859667d59873bf04b6aa78a7583a7
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/Parser.cpp
    A clang/test/Parser/extern-template-attributes.cpp

  Log Message:
  -----------
  [Clang] disallow use of attributes before extern template declarations (#136328)

Fixes #79893 


--- 

This PR addresses the issue of _attributes_ being incorrectly allowed on
`extern template` declarations

```cpp
[[deprecated]] extern template struct S<int>;
```


  Commit: cfc2b0d094f705aa0995eff0dc5f1faf1440a769
      https://github.com/llvm/llvm-project/commit/cfc2b0d094f705aa0995eff0dc5f1faf1440a769
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/Support/SuffixTree.cpp

  Log Message:
  -----------
  [llvm] Use llvm::SmallVector::pop_back_val (NFC) (#136533)


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

  Changed paths:
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/test/TableGen/VarLenDecoder.td
    M llvm/test/TableGen/trydecode-emission.td
    M llvm/test/TableGen/trydecode-emission2.td
    M llvm/test/TableGen/trydecode-emission3.td
    M llvm/test/TableGen/trydecode-emission4.td
    M llvm/utils/TableGen/DecoderEmitter.cpp
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [LLVM][TableGen] Parameterize NumToSkip in DecoderEmitter  (#136456)

- Add command line option `num-to-skip-size` to parameterize the size of
`NumToSkip` bytes in the decoder table. Default value will be 2, and
targets that need larger size can use 3.
- Keep all existing targets, except AArch64, to use size 2, and change
AArch64 to use size 3 since it run into the "disassembler decoding table
too large" error with size 2.
- Additional fixes on top of earlier revert: mark `decodeNumToSkip` as
static (not necessary anymore as the generated code is now in anonymous
namespace, but doing it for consistency) and incorporate Bazel build
changes from https://github.com/llvm/llvm-project/pull/136212
- Following is a rough reduction in size for the decoder tables by
switching to size 2.

```
Target         Old Size   New Size   % Reduction
================================================
AArch64           153254     153254        0.00
AMDGPU            471566     412805       12.46
ARC                 5724       5061       11.58
ARM                84936      73831       13.07
AVR                 1497       1306       12.76
BPF                 2172       1927       11.28
CSKY               10064       8692       13.63
Hexagon            47967      41965       12.51
Lanai               1108        982       11.37
LoongArch          24446      21621       11.56
MSP430              4200       3716       11.52
Mips               36330      31415       13.53
PPC                31897      28098       11.91
RISCV              37979      32790       13.66
Sparc               8331       7252       12.95
SystemZ            36722      32248       12.18
VE                 48296      42873       11.23
XCore               2590       2316       10.58
Xtensa              3827       3316       13.35
```


  Commit: 52a5332a710d4db22327c3777ebf6873ff20732f
      https://github.com/llvm/llvm-project/commit/52a5332a710d4db22327c3777ebf6873ff20732f
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/CodeGenHLSL/ArrayAssignable.hlsl

  Log Message:
  -----------
  [HLSL] Make it possible to assign an array from a cbuffer (#134174)

Update Sema Checking to always do an HLSL Array RValue cast in the case
we are dealing with hlsl constant array types
Instead of comparing canonical types, compare canonical unqualified
types
Add a test to show it is possible to assign an array from a cbuffer.
Closes #133767


  Commit: 93b74f7178e510a12f0eae700a25f7d3eb226265
      https://github.com/llvm/llvm-project/commit/93b74f7178e510a12f0eae700a25f7d3eb226265
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/CtxProfAnalysis.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-insert-icp-mdprof.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-zero-path.ll
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll

  Log Message:
  -----------
  [ctxprof] Scale up everything under a root by its `TotalRootEntryCount` (#136015)

`TotalRootEntryCount` captures how many times that root was entered - regardless if a profile was also collected or not (profile collection for a given root happens on only one thread at a time).

We don't do this in compiler_rt because the goal there is to flush out the data as fast as possible, so traversing and multiplying vectors is punted to the profile user.

We really just need to do this when flattening the profile so that the values across roots and flat profiles match. We could do it earlier, too - like when loading the profile - but it seems beneficial (at least for debugging) to keep the counter values the same as the loaded ones. We can revisit this later.


  Commit: 86a03367bf62375cf0cc299a56f09bed5f0c4875
      https://github.com/llvm/llvm-project/commit/86a03367bf62375cf0cc299a56f09bed5f0c4875
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    A flang/test/Analysis/AliasAnalysis/alias-analysis-pack-array.fir

  Log Message:
  -----------
  [flang] Support fir.pack_array in FIR alias analysis. (#131946)

`fir.pack_array` is just a pass-through op for the process
of finding the source in FIR alias analysis (as defined in #127147).


  Commit: 5133b432bc89f66547f6aab9a935f0a29f3b4572
      https://github.com/llvm/llvm-project/commit/5133b432bc89f66547f6aab9a935f0a29f3b4572
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    A flang/test/Driver/m32-option.f90

  Log Message:
  -----------
  Enable `-m32`, `-maix32` and `-maix64` for Flang on AIX. (#136202)

This PR enables `-m32`, -`maix32` and `-maix64` for AIX only. For other
platforms, the driver will issue an error that `-m32` is not supported.


  Commit: 76ced7fa782f0d7db9efea871fa6de74706dd9cc
      https://github.com/llvm/llvm-project/commit/76ced7fa782f0d7db9efea871fa6de74706dd9cc
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/ptrmask.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
    A llvm/test/CodeGen/AMDGPU/uniform-vgpr-to-sgpr-return.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected

  Log Message:
  -----------
  [AMDGPU] Insert readfirstlane in the function returns in sgpr. (#135326)

insert `readfirstlane` in the function returns in sgpr.


  Commit: f0a59c49aaa951a25bea57cf753a8eb1735fd810
      https://github.com/llvm/llvm-project/commit/f0a59c49aaa951a25bea57cf753a8eb1735fd810
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/CodeGenHLSL/ArrayAssignable.hlsl

  Log Message:
  -----------
  Revert "[HLSL] Make it possible to assign an array from a cbuffer" (#136576)

Reverts llvm/llvm-project#134174
Revert due to test error in hlsl/ArrayAssignable.hlsl breaking a lot of bots.


  Commit: b95ec24ff08c6ffc300bd85c8b0e53dfda4bceef
      https://github.com/llvm/llvm-project/commit/b95ec24ff08c6ffc300bd85c8b0e53dfda4bceef
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [SDAG] Handle insert_subvector in isKnownNeverNaN (#131989)

Propagate nnan across insert_subvector.


  Commit: c17984711343c6cd16454431000b55627fc338eb
      https://github.com/llvm/llvm-project/commit/c17984711343c6cd16454431000b55627fc338eb
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/blockaddress-canonicalize.mlir
    A mlir/test/Dialect/LLVMIR/indirectbr.mlir
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    A mlir/test/Target/LLVMIR/Import/indirectbr.ll
    A mlir/test/Target/LLVMIR/indirectbr.mlir
    M mlir/test/mlir-translate/import-diagnostics.ll

  Log Message:
  -----------
  Reapply [MLIR][LLVM] Support for indirectbr (#136378)

Fix msan issue that caused revert in
https://github.com/llvm/llvm-project/pull/135695

### Original message

Now that LLVM dialect has `blockaddress` support, introduce
import/translation for `indirectbr` instruction.


  Commit: f02b285dbd284057d5f1dd5fb599d1c2155670f5
      https://github.com/llvm/llvm-project/commit/f02b285dbd284057d5f1dd5fb599d1c2155670f5
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/CodeGenHLSL/ArrayAssignable.hlsl

  Log Message:
  -----------
  [HLSL] Reland; Make it possible to assign an array from a cbuffer (#136580)

Reland #134174 
Update Sema Checking to always do an HLSL Array RValue cast in the case
we are dealing with hlsl constant array types
Instead of comparing canonical types, compare canonical unqualified
types
Add a test to show it is possible to assign an array from a cbuffer.
Closes https://github.com/llvm/llvm-project/issues/133767


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/load-of-struct-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/loop-form.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-predicated.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  [VPlan] Also duplicated scalar-steps when it enables sinking scalars. (#136021)

Extend sinking logic to duplicate scalar steps recipe if it enables
sinking, that is if all users in a destination block require all lanes.

This should be the last step before removing legacy sinkScalarOperands.

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


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

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    M flang/test/Fir/CUDA/cuda-gpu-launch-func.mlir
    M flang/test/Fir/CUDA/cuda-launch.fir

  Log Message:
  -----------
  [flang][cuda] Only convert launch from CUDA Fortran kernels (#136221)

Make sure `gpu.launch_func` has a CUDA proc attribute and update the
conversion pattern to only convert those with the attribute.


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

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

  Log Message:
  -----------
  [VPlan] Rename setFlags -> applyFlags (NFC).

Update name to apply flags to instructions, as suggested in
https://github.com/llvm/llvm-project/pull/135272.

Also changes the arg to a reference.


  Commit: 1ab9e53e4910557f2a4c0f00c7a7f8b5ac493b48
      https://github.com/llvm/llvm-project/commit/1ab9e53e4910557f2a4c0f00c7a7f8b5ac493b48
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp

  Log Message:
  -----------
  [lldb][Mach-O corefiles] Don't init Target arch to corefile (#136065)

This patch is making three changes, when loading a Mach-O corefile:

1. At the start of `DoLoadCore`, if a binary was provided in addition to
the corefile, initialize the Target's ArchSpec.

2. Before ProcessMachCore does its "exhaustive search" fallback, looking
through the corefile contents for a userland dyld or mach kernel, we
must make sure the Target has an ArchSpec, or methods that check the
address word size, or initialize a DataExtractor based on the Target
arch will not succeed.

3. Add logging when setting the Target's arch listing exactly what that
setting was based on -- the corefile itself, or the main binary.

Jonas landed a change last August (started with a patch from me) which
removed the Target ArchSpec initialization at the start of DoLoadCore,
in a scenario where the corefile had arch armv7 and the main binary had
arch armv7em (Cortex-M), and there was python code in the main binary's
dSYM which sets the operating system threads provider based on the
Target arch. It did different things for armv7 or armv7em, and so it
would fail.

Jonas' patch removed any ArchSpec setting at the start of DoLoadCore, so
we wouldn't have an incorrect arch value, but that broke the exhaustive
search for kernel binaries, because we didn't have an address word size
or endianness.

This patch should navigate the needs of both use cases.

I spent a good bit of time trying to construct a test to capture all of
these requirements -- but it turns out to be a good bit difficult,
encompassing both a genuine kernel corefiles and a microcontroller
firmware corefiles.

rdar://146821929


  Commit: 846986f35b5a7baa498db7c61ae15dd9b2dee797
      https://github.com/llvm/llvm-project/commit/846986f35b5a7baa498db7c61ae15dd9b2dee797
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  [Fuchsia] Disable PIC (#136376)

We aren't distributing any shared libraries so we don't need PIC and
using PIE instead of PIC can improve performance.


  Commit: 3d14596ccfa3aa6b0735a630e3efb575a2085a06
      https://github.com/llvm/llvm-project/commit/3d14596ccfa3aa6b0735a630e3efb575a2085a06
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:

  Log Message:
  -----------
  [CIR][NFC] Fix an unused variable warning (#136431)

This fixes a warning where a variable assigned in 'if' statement wasn't
referenced again.


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

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

  Log Message:
  -----------
  [clang] Enable making `CompilerInstance` VFS thread-safe (#135737)

The `llvm::vfs::FileSystem` interface makes no promises around
thread-safety. To enable making `CompilerInstance` thread-safe, this PR
allows passing an explicit VFS to `cloneForModuleCompile()`. This will
be used from the dependency scanner.


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

  Changed paths:
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Report error if Zilsd is used on RV64. (#136577)

Fixes #136564.


  Commit: 9968ba8652b8a2936858a1a307207a9c8690ee5c
      https://github.com/llvm/llvm-project/commit/9968ba8652b8a2936858a1a307207a9c8690ee5c
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/ptrmask.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
    R llvm/test/CodeGen/AMDGPU/uniform-vgpr-to-sgpr-return.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected

  Log Message:
  -----------
  Revert "[AMDGPU] Insert readfirstlane in the function returns in sgpr. (#135326)"

This reverts commit 76ced7fa782f0d7db9efea871fa6de74706dd9cc since it breaks a
lot of bots.


  Commit: c873ca25976d81f54421d9f4e24c5f700824d0d1
      https://github.com/llvm/llvm-project/commit/c873ca25976d81f54421d9f4e24c5f700824d0d1
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Target/Statistics.h
    M lldb/source/Target/Statistics.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py

  Log Message:
  -----------
  [lldb] Add symbol/table count into statistics (#136226)

# New stats

The following stats are added and are available in both "statistics
dump" command and in python API.

1. In summary:
1. Add `totalSymbolsLoaded`. The total number of symbols loaded in all
modules.
2. Add `totalSymbolTablesLoaded `. The total number symbol tables loaded
in all modules.
2. In each module's stats:
1. Add `symbolsLoaded`. The number of symbols loaded in the current
module.


# Example

Example `statistics dump` output:
```
(lldb) statistics dump
{
  ...,
  "modules": [
    {
      "path": "/Users/<username>/demo/simple/a.out",
      "symbolsLoaded": 6,
      ...
    },
    ...
  ],
  ...
  "totalSymbolTablesLoaded": 42,
  "totalSymbolsLoaded": 32198
}
```

# Tests

**Manual test**: Built and ran lldb on a helloworld program. Ran
`statistics dump`. Verified the above stats.

**Unit test**: Ran the following tests:
```
$ bin/lldb-dotest -p TestStats.py ~/llvm-sand/external/llvm-project/lldb/test/API/commands/statistics/basic/
...
Ran 18 tests in 192.676s

OK (skipped=3)
```


  Commit: e0c1e23b99e9719d0a01ab7dfc0807d891004bd4
      https://github.com/llvm/llvm-project/commit/e0c1e23b99e9719d0a01ab7dfc0807d891004bd4
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/BPF/BPFTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Constify BasicTTIImplBase::thisT() (NFCI) (#136575)

The main change is making `thisT` method `const`, the rest of the
changes is fixing compilation errors (*).

(*) There are two tricky methods, `getVectorInstrCost()` and
`getIntImmCost()`.
They have several overloads; some of these overloads are typically
pulled in to derived classes using the `using` directive, and then
hidden by methods in the derived class.
The compiler does not complain if the hiding methods are not marked as
`const`, which means that clients will use the methods from the base
class. If after this change your target fails cost model tests, this
must be the reason. To resolve the issue you need  to make all hiding
overloads `const`. See the second commit in this PR.

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


  Commit: 0ae9dac262afccea1e1a2e02520f737ab38b286c
      https://github.com/llvm/llvm-project/commit/0ae9dac262afccea1e1a2e02520f737ab38b286c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c

  Log Message:
  -----------
  [OpenACC][CIR] Lower 'num_workers' for parallel/kernels (#136578)

This patch also includes the first one to handle 'device_type' properly,
which is where most of the 'challenge' here comes from.

>From the best I can tell: we must keep two lists of the same size, 1 of
all of the 'num_workers' items, and 1 of the 'device_type' value for
that 'num_workers'. Additionally, the 'device_type' list can only handle
single 'device_type' values, so we have to duplicate the 'num_workers'
items in cases where there are multiple applicable 'device_type' values.

This patch accomplishes this by keeping the two in sync, and saving the
current 'device_type' in the visitor.


  Commit: 4b98955680e0aad33cad0e810f1daaa8bc7c0a23
      https://github.com/llvm/llvm-project/commit/4b98955680e0aad33cad0e810f1daaa8bc7c0a23
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  Fix capitalization re review from 0ae9dac


  Commit: 99e4b3927c5b8700b818ca2436f3c8394245e97c
      https://github.com/llvm/llvm-project/commit/99e4b3927c5b8700b818ca2436f3c8394245e97c
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/BlockFrequencyInfo.cpp
    M llvm/lib/Analysis/BranchProbabilityInfo.cpp
    M llvm/lib/Analysis/CallGraph.cpp
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/DomPrinter.cpp
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/Analysis/GlobalsModRef.cpp
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/IVUsers.cpp
    M llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/LoopInfo.cpp
    M llvm/lib/Analysis/LoopPass.cpp
    M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/Analysis/OptimizationRemarkEmitter.cpp
    M llvm/lib/Analysis/PhiValues.cpp
    M llvm/lib/Analysis/PostDominators.cpp
    M llvm/lib/Analysis/ProfileSummaryInfo.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/Analysis/RegionPrinter.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
    M llvm/lib/Analysis/ScopedNoAliasAA.cpp
    M llvm/lib/Analysis/StackSafetyAnalysis.cpp
    M llvm/lib/Analysis/StaticDataProfileInfo.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Analysis/UniformityAnalysis.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp

  Log Message:
  -----------
  [LLVM] Cleanup pass initialization for Analysis passes (#135858)

- Do not call pass initialization from pass constructors.
- Instead, pass initialization should happen in the `initializeAnalysis`
function.
- https://github.com/llvm/llvm-project/issues/111767


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c

  Log Message:
  -----------
  [OpenACC][CIR] Lowering for 'vector_length' on compute constructs

This is the same as the 'num_workers', with slightly different names in
places, so we just do the same exact implementation.  This extracts the
implementation as well, which should make it easier to reuse.


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

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

  Log Message:
  -----------
  [gn] port e1bb7f6ddec375


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

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

  Log Message:
  -----------
  [VPlan] Handle VPIRPhi in VPRecipeBase::isPhi (NFC).

Also handle VPIRPhi in VPRecipeBase::isPhi, to simplify existing code
dealing with VPIRPhis.

Suggested as part of https://github.com/llvm/llvm-project/pull/136455.


  Commit: c1049e42a1beab9b240cec80418b3ce32c9da03e
      https://github.com/llvm/llvm-project/commit/c1049e42a1beab9b240cec80418b3ce32c9da03e
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Correct VOP3P encoding. NFC. (#136005)

VOP3P encoding field was defined as 9 bit in GFX8/GFX9 and opcode
was 7 bit, while it is 8 and 8 since GFX10. There are no changes
to instructions, but it fixes difference with SP3 in terms of
fields breakdown.


  Commit: 56bf0e720288ae6ba6e8635c7ec12f1e7d6f783b
      https://github.com/llvm/llvm-project/commit/56bf0e720288ae6ba6e8635c7ec12f1e7d6f783b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/src/Kernel.cpp
    M offload/DeviceRTL/src/Mapping.cpp
    M offload/include/Shared/Environment.h

  Log Message:
  -----------
  [OpenMP] Remove dependency on LLVM include directory from DeviceRTL (#136359)

Summary:
Currently we depend on a single LLVM include directory. This is actually
only required to define one enum, which is highly unlikely to change.
THis patch makes the `Environment.h` include directory more hermetic so
we no long depend on other libraries. In exchange, we get a simpler
dependency list for the price of hard-coding `1` somewhere. I think it's
a valid trade considering that this flag is highly unlikely to change at
this point.

@ronlieb AMD version
https://gist.github.com/jhuber6/3313e6f957be14dc79fe85e5126d2cb3


  Commit: 863ead29e92de800fe50e56958b6eba6ede023e9
      https://github.com/llvm/llvm-project/commit/863ead29e92de800fe50e56958b6eba6ede023e9
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    A utils/bazel/llvm-project-overlay/libc/test/include/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Add a helper library with all deps of generated headers. (#136582)

Create "public_header_deps" that is a convenient way to express
dependencies of a generated headers as a single (and same) target. It's
also convenient to use it in unit tests - which is also demonstrated in
this PR by adding the BUILD.bazel placeholder for test/include unit
tests, and creating a libc_test target for one of these tests.

See issue #134780.


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

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

  Log Message:
  -----------
  [SelectionDAG] Prefer to use ATOMIC_LOAD extension type over getExtendForAtomicOps() in computeKnownBits/ComputeNumSignBits. (#136600)

If an ATOMIC_LOAD has ZEXTLOAD/SEXTLOAD extension type we should trust
that over getExtendForAtomicOps().

SystemZ is the only target that uses setAtomicLoadExtAction and they
return ANY_EXTEND from getExtendForAtomicOps(). So I'm not sure there's
a way to get a contradiction currently.

Note, type legalization uses getExtendForAtomicOps() when promoting
ATOMIC_LOAD so we may not need to check getExtendForAtomicOps() for
ATOMIC_LOAD. I have not done much investigating of this.


  Commit: aa5cdc0600ac8157a80f54fa2555ae7dfd5fc520
      https://github.com/llvm/llvm-project/commit/aa5cdc0600ac8157a80f54fa2555ae7dfd5fc520
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-intrinsics.ll
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-vl-intrinsics.ll
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll

  Log Message:
  -----------
  [msan][NFCI] Add avx512fp16-{arith-intrinsics, arith-vl-intrinsics, intrinsics} tests (#136260)

Forked from llvm/test/CodeGen/X86/avx512fp16-{arith-intrinsics,
arith-vl-intrinsics, intrinsics}.ll

The tests show that many instructions are handled suboptimally or
heuristically, but this commit message is too narrow to contain them.


  Commit: 1e803770a5a0d7e5a12511f6d505b779a1931724
      https://github.com/llvm/llvm-project/commit/1e803770a5a0d7e5a12511f6d505b779a1931724
  Author: lexi-nadia <me at lexibromfield.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [mlir][SMT] update Bazel configuration to match 697aa99 (#136616)

Update Bazel configuration to match
697aa9995c24a977425e672d76a4a434384b16e3.


  Commit: a27f7ac5c4e44b495f52e8d77b68a164dd833fda
      https://github.com/llvm/llvm-project/commit/a27f7ac5c4e44b495f52e8d77b68a164dd833fda
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  Revert "[Fuchsia] Disable PIC" (#136617)

Reverts llvm/llvm-project#136376 because it broke Fuchsia Clang
toolchain builders.


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

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.fpmath.ll
    A llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.no.fast.path.ll

  Log Message:
  -----------
  AMDGPU: Add global-isel checks and rename fptrunc.v2f16.fpmath.ll (#136609)

Also remove the checks with -enable-unsafe-fp-math (already in fptrunc.f16.ll)


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

  Changed paths:
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/test/Semantics/OpenACC/acc-kernels.f90
    M flang/test/Semantics/OpenACC/acc-parallel.f90
    M flang/test/Semantics/OpenACC/acc-serial.f90
    M llvm/include/llvm/Frontend/OpenACC/ACC.td

  Log Message:
  -----------
  [flang][openacc] Make async clause behavior homogenous (#136610)

The `async` clause was not handed in a similar way on `serial`,
`parallel` and `kernels` directive. This patches updates the `ACC.td`
file and the flang semantic to make it homogenous.


  Commit: 515564aa6ebeadc06eea03ff92aeda64727f1da5
      https://github.com/llvm/llvm-project/commit/515564aa6ebeadc06eea03ff92aeda64727f1da5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Partially revert my llvm::less_second patch (#136615)

This patch partially reverts:

  commit 5e1b0f97735083b6762834b83fdbb35e76002e03
  Author: Kazu Hirata <kazu at google.com>
  Date:   Fri Apr 18 10:05:55 2025 -0700

to fix:

  LLVM :: CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
  LLVM :: CodeGen/AMDGPU/sched-group-barrier-pre-RA.mir

under LLVM_ENABLE_EXPENSIVE_CHECKS.


  Commit: de0153da325b21340747d8a064906a8c1c2f95ea
      https://github.com/llvm/llvm-project/commit/de0153da325b21340747d8a064906a8c1c2f95ea
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinHeaders.def
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsARM.def
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    A clang/test/CodeGen/arm-former-microsoft-intrinsics-header-warning.c
    A clang/test/CodeGen/arm-former-microsoft-intrinsics.c
    M clang/test/CodeGen/arm-microsoft-intrinsics.c
    A clang/test/CodeGen/arm64-former-microsoft-intrinsics-header-warning.c
    A clang/test/CodeGen/arm64-former-microsoft-intrinsics.c
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    M clang/test/CodeGen/builtins-arm-microsoft.c
    M clang/test/Headers/Inputs/include/stdint.h
    M clang/test/Headers/ms-intrin.cpp

  Log Message:
  -----------
  [clang][ARM][AArch64] Define intrinsics guarded by __has_builtin on all platforms  (#128222)

Instead of defining ARM ACLE intrinsics only on MSVC and guarding
wrapper functions in headers with `__has_builtin`, universally define
the intrinsics as target header builtins.

---------

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


  Commit: 7810d8484413ae64029c93f8dfc43f77b0ba98c3
      https://github.com/llvm/llvm-project/commit/7810d8484413ae64029c93f8dfc43f77b0ba98c3
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/DirectX.cpp
    M clang/test/CodeGenHLSL/builtins/AppendStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/ConsumeStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl

  Log Message:
  -----------
  [HLSL] Boolean in a RawBuffer should be i32 and Boolean vector in a RawBuffer should be <N x i32> (#135848)

Instead of converting the type in a RawBuffer to its HLSL type using
'ConvertType', use 'ConvertTypeForMem'.
ConvertTypeForMem handles booleans being i32 and boolean vectors being <
N x i32 >.
Add tests to show booleans and boolean vectors in RawBuffers now have
the correct type of i32, and <N x i32> respectively.
Closes #135635


  Commit: 8389d6fad76bd880f02bddce7f0f2612ff0afc40
      https://github.com/llvm/llvm-project/commit/8389d6fad76bd880f02bddce7f0f2612ff0afc40
  Author: Pranav Kant <prka at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M lld/ELF/ICF.cpp
    M lld/ELF/SymbolTable.cpp
    M lld/ELF/SymbolTable.h
    A lld/test/ELF/aarch64-got-merging-icf.s
    M lld/test/ELF/icf-preemptible.s

  Log Message:
  -----------
  [lld] Merge equivalent symbols found during ICF (#134342)

Fixes a correctness issue for AArch64 when ADRP and LDR instructions are
outlined in separate sections and sections are fed to ICF for
deduplication.

See test case (based on
https://github.com/llvm/llvm-project/issues/129122) for details. All
rodata.* sections are folded into a single section with ICF. This leads
to all f2_* function sections getting folded into one (as their
relocation target symbols g* belong to .rodata.g* sections that have
already been folded into one). Since relocations still refer original g*
symbols, we end up creating duplicate GOT entry for all such symbols.
This PR addresses that by tracking such folded symbols and create one
GOT entry for all such symbols.

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

Co-authored by: @jyknight


  Commit: 92c0b425ad4ca7f4c9b8f7f663e6e64d1e070353
      https://github.com/llvm/llvm-project/commit/92c0b425ad4ca7f4c9b8f7f663e6e64d1e070353
  Author: Princeton Ferro <pferro at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll

  Log Message:
  -----------
  [NVPTX] add test case for vector reduction intrinsics (#136381)

Test how these intrinsics are handled by the NVPTX backend. Currently, these intrinsics are lowered to sequential reductions by the ExpandReductions pass.


  Commit: 6d765e1c916aba7a038f5ace963001fca4fc9314
      https://github.com/llvm/llvm-project/commit/6d765e1c916aba7a038f5ace963001fca4fc9314
  Author: Owen Anderson <resistor at mac.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang/lib/AST/Decl.cpp
    M clang/unittests/AST/AttrTest.cpp

  Log Message:
  -----------
  Reapply 19c708c "FunctionDecl::getFunctionTypeLoc: ignore function type attributes (#118420)" (#136484)

Avoid using PreservesMost in the testcase as it is not supported on all
targets.

Original PR #118290.

Co-authored-by: Robert Dazi <14996868+v01dXYZ at users.noreply.github.com>
Co-authored-by: v01dxyz <v01dxyz at v01d.xyz>


  Commit: 3ca2fa704e149ca22bd9739101ee7d5c498eb1a6
      https://github.com/llvm/llvm-project/commit/3ca2fa704e149ca22bd9739101ee7d5c498eb1a6
  Author: Theo de Magalhaes <theodemagalhaes at icloud.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/test/SemaCXX/windows-Wpadded-bitfield.cpp

  Log Message:
  -----------
  [CLANG][MS-STRUCT] bitfield padding warning presents padding to exact bit count (#136062)

Aims to fix #131647.


  Commit: c40d3a411ce3f0a35ae4f3d2f0e1e7df45673856
      https://github.com/llvm/llvm-project/commit/c40d3a411ce3f0a35ae4f3d2f0e1e7df45673856
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.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] Add dense math bfloat16 floating-point outer-product accumulate to DMR instructions (#133109)

This patch adds the following Dense Math Facility bfloat16
floating-point calculation instructions: dmxvbf16gerx2,
dmxvbf16gerx2pp,dmxvbf16gerx2pn, dmxvbf16gerx2np, dmxvbf16gerx2nn,
pmdmxvbf16gerx2, pmdmxvbf16gerx2pp, pmdmxvbf16gerx2pn,
pmdmxvbf16gerx2np, pmdmxvbf16gerx2nn, along with their corresponding
intrinsics and tests.


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

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/test/CodeGen/NVPTX/bug21465.ll
    M llvm/test/CodeGen/NVPTX/forward-ld-param.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/tools/UpdateTestChecks/update_llc_test_checks/Inputs/nvptx-basic.ll.expected

  Log Message:
  -----------
  [NVPTX] Improve kernel byval parameter lowering (#136008)

This change introduces a new pattern for lowering kernel byval
parameters in `NVPTXLowerArgs`. Each byval argument is wrapped in a call
to a new intrinsic, `@llvm.nvvm.internal.addrspace.wrap`. This intrinsic
explicitly equates to no instructions and is removed during operation
legalization in SDAG. However, it allows us to change the addrspace of
the arguments to 101 to reflect the fact that they will occupy this
space when lowered by `LowerFormalArgs` in `NVPTXISelLowering`.
Optionally, if a generic pointer to a param is needed, a standard
`addrspacecast` is used. This approach offers several advantages:

- Exposes addrspace optimizations: By using a standard `addrspacecast`
back to generic space we allow InferAS to optimize this instruction,
potentially sinking it through control flow or in other ways unsupported
by `NVPTXLowerArgs`. This is demonstrated in several existing tests.

- Clearer, more consistent semantics: Previously an `addrspacecast` from
generic to param space was implicitly a no-op. This is problematic
because it's not reciprocal with the inverse cast, violating LLVM
semantics. Further it is very confusing given the existence of
`cvta.to.param`. After this change the cast equates to this instruction.

- Allow for the removal of all nvvm.ptr.* intrinsics: In a follow-up
change the nvvm.ptr.gen.to.param and nvvm.ptr.param.to.gen intrinsics
may be removed.


  Commit: e79d8f6892aa138bfef65334817c24d3d9881855
      https://github.com/llvm/llvm-project/commit/e79d8f6892aa138bfef65334817c24d3d9881855
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Optimizer/Builder/DirectivesCommon.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-bounds.f90
    M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-enter-data.f90
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td

  Log Message:
  -----------
  [flang][acc] Update stride calculation to include inner-dimensions (#136613)

The acc.bounds operation allows specifying stride - but it did not
clarify what it meant. The dialect was updated to specifically note that
stride must capture inner dimension sizes when specified for outer
dimensions.

Flang lowering was also updated for OpenACC to adhere to this. This was
already the case for descriptor-based arrays - but now this is also
being done for all arrays.


  Commit: 53e62c654a3fe181686f1ccd960d2e2b981e4313
      https://github.com/llvm/llvm-project/commit/53e62c654a3fe181686f1ccd960d2e2b981e4313
  Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M compiler-rt/test/profile/AIX/pgo-lto-bcdtor-function-section.test

  Log Message:
  -----------
  [compiler-rt][profile][tests][NFC] Avoid using a.out from PATH (#136465)

Fix use of `a.out` from the PATH by specifying `./a.out`.


  Commit: d2fedd67debf011cec7465e0c7ac330dfb548b72
      https://github.com/llvm/llvm-project/commit/d2fedd67debf011cec7465e0c7ac330dfb548b72
  Author: Augie Fackler <augie at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp

  Log Message:
  -----------
  [NVPTX] mark unused variable introduced by 56910a8b1b302ebf37e9d30bd200091fd23dc232 [NFC]


  Commit: d1f4f52aa6f2276da8880b5003f220ce6211ad44
      https://github.com/llvm/llvm-project/commit/d1f4f52aa6f2276da8880b5003f220ce6211ad44
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-intrinsics.ll

  Log Message:
  -----------
  [msan] Handle x86.avx512fp16.{add,sub.mul,div,min,max}.ph.512 (#136619)

These are handled similarly to x86_avx512_(min|max)_p[sd]_512 intrinsics
(https://github.com/llvm/llvm-project/pull/124421) i.e., using
maybeHandleSimpleNomemIntrinsic, with the last parameter being the
rounding method.

Updates the test from https://github.com/llvm/llvm-project/pull/136260


  Commit: d5b40c71f6be972f677de5d9886f91866df007b5
      https://github.com/llvm/llvm-project/commit/d5b40c71f6be972f677de5d9886f91866df007b5
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/source/Core/Module.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp

  Log Message:
  -----------
  [lldb] Avoid force loading symbols in statistics collection (#136236)

Currently, `DebuggerStats::ReportStatistics()` calls
`Module::GetSymtab(/*can_create=*/false)`, but then the latter calls
`SymbolFile::GetSymtab()`. This will load symbols if haven't yet. See
stacktrace below.

The problem is that `DebuggerStats::ReportStatistics` should be
read-only. This is especially important because it reports stats for
symtab parsing/indexing time, which could be affected by the reporting
itself if it's not read-only.

This patch fixes this problem by adding an optional parameter
`SymbolFile::GetSymtab(bool can_create = true)` and receive the `false`
value passed down from `Module::GetSymtab(/*can_create=*/false)` when
the call was initiated from `DebuggerStats::ReportStatistics()`.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp

  Log Message:
  -----------
  [RISCV] Remove duplicate call to MFI.getStackID(FI). NFC

Reuse existing local variable.


  Commit: 2cdf474f12090919e5b14c6ef922e5d5df407418
      https://github.com/llvm/llvm-project/commit/2cdf474f12090919e5b14c6ef922e5d5df407418
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/Transforms/MemProfContextDisambiguation/mergenodes.ll
    A llvm/test/Transforms/MemProfContextDisambiguation/mergenodes2.ll
    M llvm/test/Transforms/MemProfContextDisambiguation/overlapping-contexts.ll

  Log Message:
  -----------
  [MemProf] Merge callee clones as needed before assigning functions (#135702)

We perform cloning for each allocation node separately. However, this
sometimes results in a situation where the same node calls multiple
clones of the same callee, created for different allocations. This
causes issues when assigning functions to these clones, as each node can
in reality only call a single callee clone.

To address this, before assigning functions, merge callee clone nodes as
needed using a post order traversal from the allocations. We attempt to
use existing clones as the merge node when legal, and to share them
among callers with the same properties (callers calling the same set of
callee clone nodes for the same allocations).

Without this fix, in some cases incorrect function assignment will lead
to calling the wrong allocation clone. In fact, this showed up in an
existing test, that I didn't notice as it existed to test earlier parts
of the cloning process.


  Commit: 08b4c52540727455194b0cf0f6310f391e87c2a5
      https://github.com/llvm/llvm-project/commit/08b4c52540727455194b0cf0f6310f391e87c2a5
  Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/source/Core/Module.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp

  Log Message:
  -----------
  Revert "[lldb] Avoid force loading symbols in statistics collection (#136236)"

This reverts commit d5b40c71f6be972f677de5d9886f91866df007b5.

This change broke greendragon lldb test:

lldb-api :: commands/statistics/basic/TestStats.py

And is therefore being reverted.


  Commit: 2b44eb9f56a51a25391319541de750bb9b5c1fc9
      https://github.com/llvm/llvm-project/commit/2b44eb9f56a51a25391319541de750bb9b5c1fc9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/test/TableGen/VarLenDecoder.td

  Log Message:
  -----------
  [LLVM][TableGen] Fix VarlenDecoder.td to not used fixed opcode values (#136632)


  Commit: c7ea01b8a0382c21da1f64a9bf077c951096db8e
      https://github.com/llvm/llvm-project/commit/c7ea01b8a0382c21da1f64a9bf077c951096db8e
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-21 (Mon, 21 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/test/Transforms/LowerTypeTests/aarch64-jumptable.ll
    M llvm/test/Transforms/LowerTypeTests/cfi-direct-call1.ll
    M llvm/test/Transforms/LowerTypeTests/function-arm-thumb.ll
    M llvm/test/Transforms/LowerTypeTests/function-thumb-bti.ll
    M llvm/test/Transforms/LowerTypeTests/function.ll
    M llvm/test/Transforms/LowerTypeTests/x86-jumptable.ll
    M llvm/test/Transforms/MergeFunc/cfi-thunk-merging.ll

  Log Message:
  -----------
  LowerTypeTests: Switch to emitting one inline asm call per jump table entry.

With the previous approach of emitting one inline asm call for all jump
table entries we would encounter SelectionDAG's limit on the number
of operands per node (65536) when the number of jump table entries
exceeded that number. Fix the problem by switching to one inline asm
per jump table entry so that each DAG node only needs one operand.

Reviewers: fmayer, vitalybuka

Reviewed By: fmayer

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


  Commit: 698cd48db9c2058442e5e6355a77e91e3456ec2c
      https://github.com/llvm/llvm-project/commit/698cd48db9c2058442e5e6355a77e91e3456ec2c
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll

  Log Message:
  -----------
  [RISCV] Fix Lsb > Msb case in (sra (sext_inreg X, _), C) for th.ext (#136287)

According the
[spec](https://github.com/XUANTIE-RV/thead-extension-spec/releases/tag/2.3.0),
the operation of `th.ext rd, rs1, msb, lsb` is

  reg[rd] := sign_extend(reg[rs1][msb:lsb])

The spec doesn't specify if lsb is greater than msb.

I don't think lsb can be greater than msb. So that If the shift-right
amount is greater than msb, we can set lsb equal to msb to extract the
bit rs1[msb] and sign-extend it.


  Commit: ddb8870a5f396f2f17462f878fb7c0cffc879ce4
      https://github.com/llvm/llvm-project/commit/ddb8870a5f396f2f17462f878fb7c0cffc879ce4
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll

  Log Message:
  -----------
  [RISCV] Remove the FIXME for using sraiw+and. NFC.

https://github.com/llvm/llvm-project/pull/102034 has implemented it.


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

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf

  Log Message:
  -----------
  [flang][cuda] Update stream type for cuf kernel op (#136627)

Update the type of the stream operand to be similar to KernelLaunchOp.


  Commit: b144258b0c0cc63dffba00a911d6539f00ed07bb
      https://github.com/llvm/llvm-project/commit/b144258b0c0cc63dffba00a911d6539f00ed07bb
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Parse/ParseExpr.cpp
    M clang/test/AST/ast-dump-recovery.cpp
    M clang/test/AST/new-unknown-type.cpp
    M clang/test/Parser/cxx-concepts-requires-clause.cpp

  Log Message:
  -----------
  [Clang] Improve error recovery for invalid calls (#136295)

It doesn't make sense that we only build a RecoveryExpr for expressions
with invalid trailing commas. This patch extends it so that we now
always build up a RecoveryExpr whenever the call contains anything
invalid. As a result, we can back out HasTrailingComma.

There is only one diagnostic change as to concepts, where a RecoveryExpr
than an ExprError is now used to model an invalid requires clause, for
which we suggest adding parentheses around it. (This looks like what GCC
diagnoses)


  Commit: 0014b49482c0862c140149c650d653b4e41fa9b4
      https://github.com/llvm/llvm-project/commit/0014b49482c0862c140149c650d653b4e41fa9b4
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/BPF/BPFTargetTransformInfo.h
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
    M llvm/lib/Target/Mips/MipsTargetTransformInfo.cpp
    M llvm/lib/Target/Mips/MipsTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/VE/VETargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Make all interface methods const (NFCI) (#136598)

Making `TargetTransformInfo::Model::Impl` `const` makes sure all
interface methods are `const`, in `BasicTTIImpl`, its bases, and in all
derived classes.

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


  Commit: 9e26c797ae9699fba8bd62af99ab3ad6f9b16462
      https://github.com/llvm/llvm-project/commit/9e26c797ae9699fba8bd62af99ab3ad6f9b16462
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/machine-csr-names.s
    M llvm/test/MC/RISCV/rv32-machine-csr-names.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add smcntrpmf extension (#136556)

spec: https://github.com/riscvarchive/riscv-smcntrpmf


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

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

  Log Message:
  -----------
  [SelectionDAG] Make the FoldingSet profile in getAtomic match AddNodeIDCustom. (#136651)

In theory, the mismatch would have made CSE of AtomicSDNodes not work,
but I don't know how to test it.


  Commit: 784dc16088885ebb28437ae2dbb90dcfd5df0457
      https://github.com/llvm/llvm-project/commit/784dc16088885ebb28437ae2dbb90dcfd5df0457
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef][IR] Fix default AS documentation for allocas without explicit AS (#135942)

So far, the Language Reference said that the alloca address space from
the datalayout is used if no explicit address space is provided, which
is not what the LLParser and the AsmWriter implement. This patch adjusts
the documentation to match the implementation: The default AS 0 is used
if none is explicitly specified.

This is an alternative to PR #135786, which would change the parser's
behavior to match the Language Reference instead.


  Commit: 53927ab726e6d0dfb3255498b6d0b130adeafb8c
      https://github.com/llvm/llvm-project/commit/53927ab726e6d0dfb3255498b6d0b130adeafb8c
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp

  Log Message:
  -----------
  [CIR] Make ZeroAttr use AttrBuilderWithInferredContext (#136604)

This mirrors incubator changes from https://github.com/llvm/clangir/pull/1576


  Commit: 0ca2d4d10451874b1d107e89c32eb7fd95e1a608
      https://github.com/llvm/llvm-project/commit/0ca2d4d10451874b1d107e89c32eb7fd95e1a608
  Author: Kirill Chibisov <contact at kchibisov.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Dialect/EmitC/transforms.mlir
    M mlir/test/Target/Cpp/expressions.mlir

  Log Message:
  -----------
  [mlir][emitc] mark `emitc.load` with `CExpression` (#130802)

Follow the `call` and `call_opaque` operations, as well as `apply`,
which already are marked as `CExpression` even though they have side
effects.

Even though `emitc.load` can be included inside the `emitc.expression`,
the inlining and `--form-expression` pass won't actually inline them
inside other expression due to it having a side effect, thus unless the
user manually writes the `emitc.load` inside the `emitc.expression` it
won't appear there.

--

It was brought
https://github.com/llvm/llvm-project/pull/91475#issuecomment-2302529428
and while there was some opposition due to `load` having a side effect,
`emitc` already allows all the rest operations that have it, so for
consistency reasons, enabling it doesn't really hurt from my point of
view. Especially given that `--form-expression` doesn't allow
it to really inline inside other expressions, which makes sense, since
if the users want such behavior, they should explicitly opt-in.


  Commit: 8639b365a5988932973a82ffe5e620a9c8ef9039
      https://github.com/llvm/llvm-project/commit/8639b365a5988932973a82ffe5e620a9c8ef9039
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp

  Log Message:
  -----------
  [CIR] Make UndefAttr use AttrBuilderWithInferredContext (#136605)

This mirrors incubator changes from https://github.com/llvm/clangir/pull/1577


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

  Changed paths:
    M mlir/include/mlir/IR/Builders.h
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Erase materialized constants instead of rollback (#136489)

When illegal (and not legalizable) constant operations are materialized
during a dialect conversion as part of op folding, these operations must
be deleted again. This used to be implemented via the rollback
mechanism. This commit switches the implementation to regular rewriter
API usage: simply delete the materialized constants with `eraseOp`.

This commit is in preparation of the One-Shot Dialect Conversion
refactoring, which will disallow IR rollbacks.

This commit also adds a new optional parameter to `OpBuilder::tryFold`
to get hold of the materialized constant ops.


  Commit: 56f5bcb0350b8af44aa5f65ccf865a464df2cc4a
      https://github.com/llvm/llvm-project/commit/56f5bcb0350b8af44aa5f65ccf865a464df2cc4a
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp

  Log Message:
  -----------
  [CIR] Let ConstantOp builder infer its type automatically (#136606)

This mirrors incubator changes from https://github.com/llvm/clangir/pull/1578


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

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

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Add flag to disable rollback (#136490)

This commit adds a new flag to `ConversionConfig` to disallow the
rollback of IR modification. This commit is in preparation of the
One-Shot Dialect Conversion refactoring, which will remove the ability
to roll back IR modifications from the conversion driver.

RFC:
https://discourse.llvm.org/t/rfc-a-new-one-shot-dialect-conversion-driver/79083/46

By default, this flag is set to "true". I.e., the rollback of IR
modifications is allowed. When set to "false", the conversion driver
will report a fatal LLVM error when an IR rollback is requested. The
name of the rolled back pattern is included in the error message.
Moreover, the original IR is no longer restored after a failed
conversion.

Example:
```
within split at llvm-project/mlir/test/Conversion/ArithToSPIRV/fast-math.mlir:1 offset :11:8: error: pattern '(anonymous namespace)::CmpFOpNanKernelPattern' produced IR that could not be legalized
  %0 = arith.cmpf ord, %arg0, %arg1 fastmath<fast> : f32
       ^
within split at llvm-project/mlir/test/Conversion/ArithToSPIRV/fast-math.mlir:1 offset :11:8: note: see current operation: %1 = "arith.cmpf"(%arg0, %arg1) <{fastmath = #arith.fastmath<fast>, predicate = 7 : i64}> : (f32, f32) -> i1
pattern '(anonymous namespace)::CmpFOpNanKernelPattern' rollback of IR modifications requested
UNREACHABLE executed at llvm-project/mlir/lib/Transforms/Utils/DialectConversion.cpp:1231!
```

The majority of patterns in MLIR have already been updated such that
they do not trigger any rollbacks, but a few SPIRV patterns remain. More
information in the RFC.


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

  Changed paths:
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp

  Log Message:
  -----------
  [lldb/cmake] Normalize use of HAVE_LIBCOMPRESSION (#135528)

I *think* this was the reason behind the failures in
2fd860c1f559c0b0be66cc000e38270a04d0a1a3: the clang include tool showed
the Config.h headers as unused, and because the macro was referenced
through an `#ifdef`, its removal didn't cause build failures. Switching
to `#cmakedefine01` + `#if` should make sure this does not happen again.

According to D48977, the `#ifndef`+`#cmakedefine` patterns is due to
some files redefining the macro themselves. I no longer see any such
files in the source tree (there also were no files like that in the
source tree at the revision mentioned, but the macro *was* defined in
the hand-maintained XCode project we had at the time).


  Commit: f541a3aad8e70b613ea411bf2d3e64a220f98e82
      https://github.com/llvm/llvm-project/commit/f541a3aad8e70b613ea411bf2d3e64a220f98e82
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    A llvm/test/CodeGen/AMDGPU/si-instr-info-vopc-exec.mir

  Log Message:
  -----------
  [AMDGPU] SIInstrInfo: Fix resultDependsOnExec for VOPC instructions (#134629)

SIInstrInfo::resultDependsOnExec assumes that operand 0 of a comparison
is always the destination of the instruction. This is not true for
instructions in VOPC form where it is "src0". This led to a crash in
machine-cse.

---------

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


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll

  Log Message:
  -----------
  [LV] Use requested calling convention for vector math routines (#136122)

Some vector math routines, e.g. ArmPL, specify a particular
calling convention on the routines which can help improve
performance by specifying what registers have to be preserved
across the call.


  Commit: 3334c3597dd51f5a102e5005738e3bf4ef7530e2
      https://github.com/llvm/llvm-project/commit/3334c3597dd51f5a102e5005738e3bf4ef7530e2
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/BPF/BPFTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/VE/VETargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Fix discrepancies in prototypes between interface and implementations (NFCI) (#136655)

These are not diagnosed because implementations hide the methods of the base class rather than overriding them.
This works as long as a hiding function is callable with the same arguments as the same function from the base class.

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


  Commit: a35f940b876a09211f3e68dd25d00271b7195145
      https://github.com/llvm/llvm-project/commit/a35f940b876a09211f3e68dd25d00271b7195145
  Author: Christian Kandeler <christian.kandeler at qt.io>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang/lib/Index/IndexBody.cpp

  Log Message:
  -----------
  [clangd] Support operators new and delete in textDocument/references (#135620)


  Commit: c3f815ba82defc84244a9688fd2578da513340fb
      https://github.com/llvm/llvm-project/commit/c3f815ba82defc84244a9688fd2578da513340fb
  Author: anjenner <161845516+anjenner at users.noreply.github.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/source/Core/DataFileCache.cpp
    M llvm/include/llvm/Support/Caching.h
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/Support/Caching.cpp
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-lto2/llvm-lto2.cpp
    M llvm/unittests/Support/CMakeLists.txt
    A llvm/unittests/Support/Caching.cpp

  Log Message:
  -----------
  Modify the localCache API to require an explicit commit on CachedFile… (#136121)

…Stream.

CachedFileStream has previously performed the commit step in its
destructor, but this means its only recourse for error handling is
report_fatal_error. Modify this to add an explicit commit() method, and
call this in the appropriate places with appropriate error handling for
the location.

Currently the destructor of CacheStream gives an assert failure in Debug
builds if commit() was not called. This will help track down any
remaining uses of the API that assume the old destructior behaviour. In
Release builds we fall back to the previous behaviour and call
report_fatal_error if the commit fails.

This is version 2 of this PR, superseding reverted PR
https://github.com/llvm/llvm-project/pull/115331 . I have incorporated a
change to the testcase to make it more reliable on Windows, as well as
two follow-up changes
(https://github.com/llvm/llvm-project/commit/df79000896101acc9b8d7435e59f767b36c00ac8
and
https://github.com/llvm/llvm-project/commit/b0baa1d8bd68a2ce2f7c5f2b62333e410e9122a1)
that were also reverted when 115331 was reverted.

---------

Co-authored-by: Augie Fackler <augie at google.com>
Co-authored-by: Vitaly Buka <vitalybuka at google.com>


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

  Changed paths:
    M lldb/docs/resources/build.rst

  Log Message:
  -----------
  [lldb][docs] Repeat required Python version number

We do say it in the table below but if you didn't
want any optional stuff you'd miss it.


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

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  [ValueTracking] Drop ucmp/scmp from getIntrinsicRange() (NFCI)

After #135642 we have a range attribute on the intrinsic declaration,
so we should not need the special handling here.


  Commit: 4bcc414af3782c333f3d535c0e0a92e6120868f5
      https://github.com/llvm/llvm-project/commit/4bcc414af3782c333f3d535c0e0a92e6120868f5
  Author: Robert Konicar <rkonicar at mail.muni.cz>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SMT/IR/SMTAttributes.td
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/include/mlir/TableGen/AttrOrTypeDef.h
    M mlir/lib/Dialect/SMT/IR/SMTAttributes.cpp
    M mlir/lib/TableGen/AttrOrTypeDef.cpp
    A mlir/test/mlir-tblgen/apint-param-error.td
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp

  Log Message:
  -----------
  [MLIR][TableGen] Error on APInt parameter without custom comparator (#135970)

The error is triggered when an attribute or type uses an APInt typed
parameter with the generated equality operator. If the compared APInts
have different bit widths the equality operator triggers an assert. This
is dangerous, since `StorageUniquer` for types and attributes uses the
equality operator when a hash collision appears. As such, it is
necessary to use custom provided comarator or `APIntParameter` that
already has it.
This commit also replaces uses of the raw `APInt` parameter with the
`APIntParameter` and removes the no longer necessary custom StorageClass
for the `BitVectorAttr` from the SMT dialect that was a workaround for
the described issue.

---------

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


  Commit: d8b0e616b746a6c7bdd0492f2f349105028684b0
      https://github.com/llvm/llvm-project/commit/d8b0e616b746a6c7bdd0492f2f349105028684b0
  Author: Nathan Gauër <brioche at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll

  Log Message:
  -----------
  [SPIR-V] Fix OpVectorShuffle operands on load (#135954)

The generated OpVectorShuffle was wrong, as the indices we pass are not
to select the vector to sample from, but the position in the vector.


  Commit: e12681ae733e8341c161534d4d4de2611573b616
      https://github.com/llvm/llvm-project/commit/e12681ae733e8341c161534d4d4de2611573b616
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [clang-cl] Parse the /dynamicdeopt option

which was mentioned in
https://devblogs.microsoft.com/cppblog/cpp-dynamic-debugging-full-debuggability-for-optimized-builds/

(That post also mentions /d2DDTrimInlines, which we already parse via
a /d2 catch-all.)


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

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h

  Log Message:
  -----------
  [lldb] Clean up StartDebugserverProcess before I start refactoring it (#135342)

- use early exits where possible
- avoid the listen thread by using Socket APIs which allow separate
"listen" and "accept" steps
- use formatv-like log statements

There "should" be no functional changes from this patch.


  Commit: a86f4ee774e6d2eb9f38502ddda65842179a246a
      https://github.com/llvm/llvm-project/commit/a86f4ee774e6d2eb9f38502ddda65842179a246a
  Author: Yuval Deutscher <yuvald at sweet.security>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/tools/lldb-server/SystemInitializerLLGS.h

  Log Message:
  -----------
  [lldb] Use correct path for debugserver (#131609)

This solves an issue that arises when running lldb-server through a
symlink which is not named exactly `lldb-server`. For example, in many
distros lldb-server is packaged as e.g.
`/usr/lib/llvm-19/bin/lldb-server` which is then accessed through a
symlink such as `/usr/bin/lldb-server-19`.

It turns out that there is a cascade of bugs here:
* `GetShlibDir` attempts to locate the LLVM library directory by calling
`GetModuleFileSpecForHostAddress` on the address of the function
`ComputeSharedLibraryDirectory`, assuming that it is inside
`liblldb.so`. However, in every packaging I've seen of lldb-server the
function `ComputeSharedLibraryDirectory` is statically linked into the
`lldb-server` binary and is not in `liblldb.so`.
* When run through a symlink, `GetModuleFileSpecForHostAddress` on an
address that is in `lldb-server` returns the path of the symlink, not
the path of the binary itself. So we get e.g. `/usr/bin/` and not
`/usr/lib/llvm-19/bin/`.
* `GetDebugserverPath` attempts to concat `"lldb-server"` to the
directory we obtained, and thus fails when the symlink is not named
exactly `lldb-server`.
* Ironically, the reason that this works in the first place is precisely
because `GetModuleFileSpecForHostAddress` returns an incorrect path -
when the server is run as `lldb-server-19 ...` it returns
`"lldb-server-19"` which then causes `ComputePathRelativeToLibrary` to
fail and then `ComputeSupportExeDirectory` falls back to just using
`GetProgramFileSpec` instead (which is the only option that actually
yields a correct path).


  Commit: 9efd798a278a7ddda3b88365558ceb655c329d11
      https://github.com/llvm/llvm-project/commit/9efd798a278a7ddda3b88365558ceb655c329d11
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Make the rest of TTI::Concept/TTI::Model methods const (NFC) (#136668)

This will simplify future changes.


  Commit: 112ffe7c621e8bf145c5c5926e36f3af9e0fd045
      https://github.com/llvm/llvm-project/commit/112ffe7c621e8bf145c5c5926e36f3af9e0fd045
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/Driver/Distro.h
    M clang/lib/Driver/Distro.cpp

  Log Message:
  -----------
  Add support of the next Ubuntu (Ubuntu 25.10 - Questing Quokka)


  Commit: 97eb416c65863cdf25ec3fa19ed056aac38d1013
      https://github.com/llvm/llvm-project/commit/97eb416c65863cdf25ec3fa19ed056aac38d1013
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M flang/lib/Parser/unparse.cpp
    A flang/test/Parser/OpenMP/cancel.f90
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp

  Log Message:
  -----------
  [flang][Parser][OpenMP] Fix unparser for cancellation_construct_type (#136001)

Previously the unparser would print like
```
!$OMP CANCEL CANCELLATION_CONSTRUCT_TYPE(SECTIONS)
```

This is not valid Fortran. I have fixed it to print without the clause
name.


  Commit: c1940cd0deef84c9cbbf6966d956b8fef4519efa
      https://github.com/llvm/llvm-project/commit/c1940cd0deef84c9cbbf6966d956b8fef4519efa
  Author: Nathan Gauër <brioche at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-struct.ll

  Log Message:
  -----------
  [SPIR-V] Add store legalization for ptrcast (#135369)

This commits adds handling for spv.ptrcast result being used in a store
instruction, modifying the store to operate on the source type.


  Commit: 8f8853a5743fe204b390f0276cb6d0266e4b9a9b
      https://github.com/llvm/llvm-project/commit/8f8853a5743fe204b390f0276cb6d0266e4b9a9b
  Author: quic_hchandel <quic_hchandel at quicinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    A llvm/test/CodeGen/RISCV/xqcia.ll

  Log Message:
  -----------
  [RISCV] Add ISel patterns for Xqcia instructions (#136548)

This patch adds instruction selection patterns for generating the
integer arithmetic instructions.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/vector-select.ll

  Log Message:
  -----------
  [LLVM][CostModel][AArch64] Remove magic numbers from f16 vector compares. (#135795)

The PR also extends the code to cover bfloat vector compares that are
also promoted to float.

NOTE: There is a bail out for the compares that are scalarised that will
be removed by https://github.com/llvm/llvm-project/pull/135398.


  Commit: d7d170656404e1cb29a51689fd66a12bc060c630
      https://github.com/llvm/llvm-project/commit/d7d170656404e1cb29a51689fd66a12bc060c630
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/IOHandler.h
    M lldb/include/lldb/Host/Editline.h
    M lldb/include/lldb/Interpreter/CommandInterpreter.h
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/IOHandler.cpp
    M lldb/source/Host/common/Editline.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/test/API/terminal/TestEditline.py

  Log Message:
  -----------
  [lldb] Fix use-color settings not persistent (#135626)

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

If `settings set use-color` is changed when lldb is running it does not take effect. 
This is fixes that.

---------

Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 1a48e1df4541ccccdaf14a6ea379be004e319a09
      https://github.com/llvm/llvm-project/commit/1a48e1df4541ccccdaf14a6ea379be004e319a09
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    A llvm/test/CodeGen/AMDGPU/do-not-fold-copy.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/mul.ll

  Log Message:
  -----------
  [AMDGPU] Do not fold COPY with implicit operands (#136003)

Folding may remove COPY from inside of the divergent loop.


  Commit: ef926e7e49cab2d8087ed4ebdbdc686ac99e1c8f
      https://github.com/llvm/llvm-project/commit/ef926e7e49cab2d8087ed4ebdbdc686ac99e1c8f
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [lldb][mlir] Port a22ad659cd0665669d89fae174f9e6a83d1a446d


  Commit: c60f24dca96dad44afc60df3fcb80997737b6306
      https://github.com/llvm/llvm-project/commit/c60f24dca96dad44afc60df3fcb80997737b6306
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [lldb][mlir] Fix port of a22ad65

Sorry, typo!


  Commit: 7851b1bcf1f0966883d5598268f95d355718f9f5
      https://github.com/llvm/llvm-project/commit/7851b1bcf1f0966883d5598268f95d355718f9f5
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/lib/ExecutionEngine/CudaRuntimeWrappers.cpp
    M mlir/lib/Target/LLVMIR/Dialect/GPU/SelectObjectAttr.cpp
    A mlir/test/Integration/GPU/CUDA/concurrent-kernels.mlir
    M mlir/test/Target/LLVMIR/gpu.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][gpu] Change GPU modules to globals (#135478)

Load/unload GPU modules in global ctors/dtors instead of each time when
launching a kernel.

Loading GPU modules is a heavy-weight operation and synchronizes the GPU
context. Now that the modules are loaded ahead of time, asynchronously
launched kernels can run concurrently, see
https://discourse.llvm.org/t/how-to-lower-the-combination-of-async-gpu-ops-in-gpu-dialect.

The implementations of `embedBinary()` and `launchKernel()` use slightly
different mechanics at the moment but I prefer to not change the latter
more than necessary as part of this PR. I will prepare a follow-up NFC
for `launchKernel()` to align them again.


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

  Changed paths:
    M lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/test/Shell/Unwind/Inputs/eh-frame-small-fde.s
    M lldb/test/Shell/Unwind/eh-frame-small-fde.test
    M lldb/unittests/Symbol/UnwindPlanTest.cpp

  Log Message:
  -----------
  [lldb] Slide eh_frame unwind plan if it doesn't begin at function boundary (#135333)

This is mainly useful for discontinuous functions because individual
parts of the function will have separate FDE entries, which can begin
many megabytes from the start of the function. However, I'm separating
it out, because it turns out we already have a test case for the
situation where the FDE does not begin exactly at the function boundary.

The test works mostly by accident because the FDE starts only one byte
after the beginning of the function so it doesn't really matter whether
one looks up the unwind row using the function or fde offset. In this
patch, I beef up the test to catch this problem more reliably.

To make this work I've also needed to change a couple of places which
that an unwind plan always has a row at offset zero.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    A clang/test/SemaCXX/cxx20-c99-designator.cpp
    M clang/test/SemaCXX/decltype.cpp

  Log Message:
  -----------
  Reorganize -Winitializer-overrides and -Wreorder-init-list (#136586)

These are both now grouped under -Wc99-designator as they both relate to
the C99 feature as it was introduced into C++20.

Fixes #47037


  Commit: a25fdd7aca240c5e1a1051ee0509c9c6a4440009
      https://github.com/llvm/llvm-project/commit/a25fdd7aca240c5e1a1051ee0509c9c6a4440009
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/ptrmask.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
    A llvm/test/CodeGen/AMDGPU/uniform-vgpr-to-sgpr-return.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected

  Log Message:
  -----------
  Reapply "[AMDGPU] Insert readfirstlane in the function returns in sgpr." (#136678)

Reapply  #135326 and fix the target-dependent constant check.

---------

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


  Commit: 7f684c9fca76a166efe4e03c6e2bc969e8aed81b
      https://github.com/llvm/llvm-project/commit/7f684c9fca76a166efe4e03c6e2bc969e8aed81b
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/test/Dialect/SCF/invalid.mlir

  Log Message:
  -----------
  [mlir] Avoid doublespace in error (NFC). (#136560)

This was resulting in 2 spaces in the error message.


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

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn

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


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

  Changed paths:
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py

  Log Message:
  -----------
  [lldb] Avoid modifying the source tree in TestPlatformLaunchGDBServer

The test binary gets uploaded to the "remote" platform's working
directory which, by default is in the source tree. Change that.


  Commit: 47903e3372b8ab942f0d36f135edba5a8de07cf9
      https://github.com/llvm/llvm-project/commit/47903e3372b8ab942f0d36f135edba5a8de07cf9
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/insert-waitcnts-gfx12-wbinv.mir

  Log Message:
  -----------
  [AMDGPU][InsertWaitCnts] Add test for global_wb/inv/wbinv tracking (#135339)


  Commit: ec3a90509d7db3b32d6102351c86470d9799dc9b
      https://github.com/llvm/llvm-project/commit/ec3a90509d7db3b32d6102351c86470d9799dc9b
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_noprivate.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-system.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-store.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-gfx12-wbinv.mir
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/waitcnt-global-inv-wb.mir

  Log Message:
  -----------
  [AMDGPU][InsertWaitCnts] Track global_wb/inv/wbinv (#135340)

wb/wbinv use storecnt, inv uses loadcnt.
Track them as VMEM_WRITE_ACCESS and VMEM_READ_ACCESS to avoid
InsertWaitCnt incorrectly eliminating the waitcnts after these instructions.

Solves SWDEV-526604


  Commit: 2b712693886a2a8339c0452f12f06b676e946d49
      https://github.com/llvm/llvm-project/commit/2b712693886a2a8339c0452f12f06b676e946d49
  Author: Iris <0.0 at owo.li>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll

  Log Message:
  -----------
  [SelectionDAG][X86] Fold `sub(x, mul(divrem(x,y)[0], y))` to `divrem(x, y)[1]` (#136565)

Closes #51823.


  Commit: 2e145f11c0bcfa2052416d96d682c75f33971a8c
      https://github.com/llvm/llvm-project/commit/2e145f11c0bcfa2052416d96d682c75f33971a8c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M flang-rt/CMakeLists.txt
    M flang-rt/README.md
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/lib/runtime/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/docs/gpu/building.rst

  Log Message:
  -----------
  [LLVM] Replace use of `LLVM_RUNTIMES_TARGET` with `LLVM_DEFAULT_TARGET_TRIPLE` (#136208)

Summary:
For purposes of determining the triple, it's more correct to use
`LLVM_DEFAULT_TARGET_TRIPLE`.


  Commit: 974a8ccb2b9f5b930ce47f65122b5a86481e57fe
      https://github.com/llvm/llvm-project/commit/974a8ccb2b9f5b930ce47f65122b5a86481e57fe
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/test/API/commands/statistics/basic/TestStats.py

  Log Message:
  -----------
  [LLDB] Silence Windows buildbot failure caused by #136226

This patch temporarily silences a LLDB test failure caused by PR 136226.
The PR added symbol/table count statistics but caused failures in the
lldb-aarch64-windows buildbot where the reported number of symbols and
symbol tables were incorrectly showing as 0.

https://lab.llvm.org/buildbot/#/builders/141/builds/8084


  Commit: a5cdbef5f06904fab27219955604a2759e4dd482
      https://github.com/llvm/llvm-project/commit/a5cdbef5f06904fab27219955604a2759e4dd482
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M flang-rt/CMakeLists.txt
    M flang-rt/README.md
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/lib/runtime/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/docs/gpu/building.rst

  Log Message:
  -----------
  Revert "[LLVM] Replace use of `LLVM_RUNTIMES_TARGET` with `LLVM_DEFAULT_TARGET_TRIPLE` (#136208)"

This reverts commit 2e145f11c0bcfa2052416d96d682c75f33971a8c.

Somehow causes some static assertions to fail?


  Commit: dba8acde6d6a320dad42cdbfe7c8261938348e23
      https://github.com/llvm/llvm-project/commit/dba8acde6d6a320dad42cdbfe7c8261938348e23
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  Revert "[ValueTracking] Drop ucmp/scmp from getIntrinsicRange() (NFCI)"

This does seem to cause some functionality to change, see comment on
https://github.com/llvm/llvm-project/commit/278c429d11e63bc709ea8c537b23c4e350ce2a07

This reverts commit 278c429d11e63bc709ea8c537b23c4e350ce2a07.


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

  Changed paths:
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/tools/lldb-server/SystemInitializerLLGS.h

  Log Message:
  -----------
  Revert "[lldb] Use correct path for debugserver (#131609)"

This reverts commit a86f4ee774e6d2eb9f38502ddda65842179a246a and the fixup in
587206a442ebb656f9d72e7e0cc5845ef3a2f7ed because brakage on macos
(TestAutoInstallMainExecutable.py).


  Commit: c9eb1ffcfe7cf8c9751afe436a6fcab9cb5b9c9b
      https://github.com/llvm/llvm-project/commit/c9eb1ffcfe7cf8c9751afe436a6fcab9cb5b9c9b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c
    M clang/test/CIR/CodeGenOpenACC/serial.c
    M clang/test/SemaOpenACC/compute-construct-async-clause.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'async' lowering. (#136626)

Async acts just like num_workers/vector_length in that it gets a new
variant per device_type and is lowered as an operand.

However, it has one additional complication, in that it can have a
variant that has no argument, which produces an attribute with the
correct devicetype.

Additionally, this syncronizes us with the implementation of flang,
  which prohibits multiple 'async' clauses per-device_type.


  Commit: cfeaa395970b7a2a2f0389d06a20d0970d591807
      https://github.com/llvm/llvm-project/commit/cfeaa395970b7a2a2f0389d06a20d0970d591807
  Author: Koakuma <koachan at protonmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcInstrVIS.td
    A llvm/test/CodeGen/SPARC/multiply-extension.ll
    M llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll

  Log Message:
  -----------
  Reapply "[SPARC] Use umulxhi to do extending 64x64->128 multiply when we have VIS3" (#135897) (#136475)

Update the tests to reflect the change in instruction ordering.
Otherwise there are no changes from the previous commit.

This reverts commit 5e9650ec2deb2f2bb6d5ad28e83bb6cd3c4189e4.


  Commit: d20604e5b6792bd010dd4dfd36f3e836ae0fe7b2
      https://github.com/llvm/llvm-project/commit/d20604e5b6792bd010dd4dfd36f3e836ae0fe7b2
  Author: David Green <david.green at arm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [CostModel] Plumb CostKind into getExtractWithExtendCost (#135523)

This will likely not affect much with the current uses of the function,
but if we have getExtractWithExtendCost we can plumb CostKind through it
in the same way as other costmodel functions.


  Commit: e87aa0c6ab7b9d1abbf86e8df84053cd4de92656
      https://github.com/llvm/llvm-project/commit/e87aa0c6ab7b9d1abbf86e8df84053cd4de92656
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Arith/Utils/Utils.cpp
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/vector-sink-transform.mlir
    M mlir/test/Dialect/Vector/vector-sink.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Sink vector.extract/splat into load/store ops (#134389)

```
vector.load %arg0[%arg1] : memref<?xf32>, vector<4xf32>
vector.extract %0[1] : f32 from vector<4xf32>
```
Gets converted to:
```
%c1 = arith.constant 1 : index
%0 = arith.addi %arg1, %c1 overflow<nsw> : index
%1 = memref.load %arg0[%0] : memref<?xf32>
```

```
%0 = vector.splat %arg2 : vector<1xf32>
vector.store %0, %arg0[%arg1] : memref<?xf32>, vector<1xf32>
```
Gets converted to:
```
memref.store %arg2, %arg0[%arg1] : memref<?xf32>
```


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

  Changed paths:
    M llvm/test/Transforms/CorrelatedValuePropagation/uscmp.ll

  Log Message:
  -----------
  [CVP] Add test showing how a call-site range can pessimize opt (NFC)


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

  Changed paths:
    M llvm/lib/IR/Instructions.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/uscmp.ll

  Log Message:
  -----------
  [IR] Intersect call and fn range in CallBase::getRange()

To make sure that a larger range on the call-site does not suppress
information from a smaller range at the declaration.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Fix MayReadFromMemory/MayWriteToMemory on VPWidenIntrinsicRecipe (#136684)

These seem to be the wrong way round, e.g. see the definition at
Instruction::mayReadFromMemory().
If an instruction only writes to memory then it's known to not read
memory, and so on.

Only noticed this when using VPWidenIntrinsicRecipe in a local patch and
wondered why it kept on getting DCEd despite the intrinsic writing to
memory.


  Commit: c2ae5723b5418fa0f5901f2c21c2c905fa48a498
      https://github.com/llvm/llvm-project/commit/c2ae5723b5418fa0f5901f2c21c2c905fa48a498
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [clang][bytecode] Allow reinterpret casts from/to the same pointer type (#136692)


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

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  Reapply [ValueTracking] Drop ucmp/scmp from getIntrinsicRange() (NFCI)

Reapply after d51b2785abf77978d9218a7b6fb5b8ec6c770c31, which should
fix optimization regressions.

After #135642 we have a range attribute on the intrinsic declaration,
so we should not need the special handling here.


  Commit: 901ac60db7d864c79aa34d93fc46f2635e3afd50
      https://github.com/llvm/llvm-project/commit/901ac60db7d864c79aa34d93fc46f2635e3afd50
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV] Use ri.vzip2{a,b} for interleave2 if available (#136364)

If XRivosVizip is available, the ri.vzip2a and ri.vzip2b instructions
can be used perform a interleave shuffle. This patch only effects the
intrinsic lowering (and thus scalable vectors). Fixed vectors go through
shuffle lowering and the zip2a (but not zip2b) case is already handled
there..


  Commit: f010725e392c50700dec0dfe7ef3ff1ecfc517bd
      https://github.com/llvm/llvm-project/commit/f010725e392c50700dec0dfe7ef3ff1ecfc517bd
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir

  Log Message:
  -----------
  [mlir][linalg] Add folder for `linalg.index` (#136640)

We know that the index of unit dims is always 0.


  Commit: 0252d338fa9f4f2f1262b5f7d8158e3f5857fcaf
      https://github.com/llvm/llvm-project/commit/0252d338fa9f4f2f1262b5f7d8158e3f5857fcaf
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
    M llvm/test/Transforms/SLPVectorizer/X86/full-match-with-poison-scalar.ll
    M llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
    M llvm/test/Transforms/SLPVectorizer/X86/matched-nodes-updated.ll
    M llvm/test/Transforms/SLPVectorizer/X86/memory-runtime-checks.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
    M llvm/test/Transforms/SLPVectorizer/icmp-altopcode-after-reordering.ll
    M llvm/test/Transforms/SLPVectorizer/reordering-single-phi.ll

  Log Message:
  -----------
  [SLP]Model single unique value insert + shuffle as splat + select, where profitable

When we have the remaining unique scalar, that should be inserted into
non-poison vector and into non-zero position:
```
%vec1 = insertelement %vec, %v, pos1
%res = shuffle %vec1, poison, <0, 1, 2,..., pos1, pos1 + 1, ..., pos1,
...>
```
better to estimate if it is profitable to model it as is or model it as:
```
%bv = insertelement poison, %v, 0
%splat = shuffle %bv, poison, <poison, ..., 0, ..., 0, ...>
%res = shuffle %vec, %splat, <0, 1, 2,..., pos1 + VF, pos1 + 1, ...>
```

Reviewers: preames, hiraditya, RKSimon

Reviewed By: preames

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


  Commit: 212f14fbc26e71b26d3345b272b97f22c9df4725
      https://github.com/llvm/llvm-project/commit/212f14fbc26e71b26d3345b272b97f22c9df4725
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td

  Log Message:
  -----------
  [CIR] Change 'CIR-int' to use a 'APIntParameter' argument (#136713)

After 4bcc414af3782c333 an APInt parameter diagnoses, so this switches
us to APIntParameter.

I don't believe we need to put this in the incubator, as it'll get this
in the same
pulldown as the diagnostic.


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

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [docs] Fix typo in GitHub.rst


  Commit: b53db8913b1b0adf2236bca8ee68a6a971f9c708
      https://github.com/llvm/llvm-project/commit/b53db8913b1b0adf2236bca8ee68a6a971f9c708
  Author: Morris Hafner <mmha at users.noreply.github.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/test/CIR/CodeGen/binop.cpp
    A clang/test/CIR/Lowering/select.cir

  Log Message:
  -----------
  [CIR] Upstream SelectOp and ShiftOp (#133405)

Since SelectOp will only generated by a future pass that transforms a
TernaryOp this only includes the lowering bits.

This patch also improves the testing of the existing binary operators.

---------

Co-authored-by: Morris Hafner <mhafner at nvidia.com>


  Commit: a5a6ae12a4f3e7b22e1273465b64e632b49cdd2e
      https://github.com/llvm/llvm-project/commit/a5a6ae12a4f3e7b22e1273465b64e632b49cdd2e
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/docs/ResponseGuide.rst

  Log Message:
  -----------
  [docs][CoC] Update verbiage about appeal process (#136715)

Often, when the CoC investigates incidents, most members are available
to discuss & come to a unanimous decision. In the event of an appeal, we
agreed that the effective way to investigate would be for the committee
to consider evidence that was missed in the initial decision-making.
Update the Response guide to reflect this.


  Commit: 9c388f1f05f4f5fd661eb67a32cf3c5843b86c02
      https://github.com/llvm/llvm-project/commit/9c388f1f05f4f5fd661eb67a32cf3c5843b86c02
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads-simple.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll

  Log Message:
  -----------
  [SLP]Prefer segmented/deinterleaved loads to strided and fix codegen

Need to estimate, which one is preferable, deinterleaved/segmented
loads or strided. Segmented loads can be combined, improving
the overall performance.

Reviewers: RKSimon, hiraditya

Reviewed By: hiraditya, RKSimon

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


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

  Changed paths:
    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/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp

  Log Message:
  -----------
  [SelectionDAG] Pass LoadExtType when ATOMIC_LOAD is created. (#136653)

Rename one signature of getAtomic to getAtomicLoad and pass LoadExtType.
Previously we had to set the extension type after the node was created,
but we don't usually modify SDNodes once they are created. It's possible
the node already existed and has been CSEd. If that happens, modifying
the node may affect the other users. It's therefore safer to add the
extension type at creation so that it is part of the CSE information.

I don't know of any failures related to the current implementation. I
only noticed that it doesn't match how we usually do things.


  Commit: 928c33354ee88b98bcf785d8866171857a92dd82
      https://github.com/llvm/llvm-project/commit/928c33354ee88b98bcf785d8866171857a92dd82
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/CodeGen/RISCV/di-assignment-tracking-vector.ll
    A llvm/test/Verifier/diassignid-vector-stores.ll

  Log Message:
  -----------
  [DebugInfo] Handle additional types of stores in assignment tracking (#129070)

Fixes #126417.

Currently, assignment tracking recognizes allocas, stores, and mem
intrinsics as valid instructions to tag with DIAssignID, with allocas
representing the allocation for a variable and the others representing
instructions that may assign to the variable. There are other intrinsics
that can perform these assignments however, and if we transform a store
instruction into one of these intrinsics and correctly transfer the
DIAssignID over, this results in a verifier error. The
AssignmentTrackingAnalysis pass also does not know how to handle these
intrinsics if they are untagged, as it does not know how to extract
assignment information (base address, offset, size) from them.

This patch adds _some_ support for some intrinsics that may perform
assignments: masked store/scatter, and vp store/strided store/scatter.
This patch does not add support for extracting assignment information
from these, as they may store with either non-constant size or to
non-contiguous blocks of memory; instead it adds support for recognizing
untagged stores with "unknown" assignment info, for which we assume that
the memory location of the associated variable should not be used, as we
can't determine which fragments of it should or should not be used.

In principle, it should be possible to handle the more complex cases
mentioned above, but it would require more substantial changes to
AssignmentTrackingAnalysis, and it is mostly only needed as a fallback
if the DIAssignID is not preserved on these alternative stores.


  Commit: 4dbf67de4050cad3371706b991eb9e3cd9d39482
      https://github.com/llvm/llvm-project/commit/4dbf67de4050cad3371706b991eb9e3cd9d39482
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll

  Log Message:
  -----------
  [RISCV] Lower SEW<=32 vector_deinterleave(2) via vunzip2{a,b} (#136463)

This is a continuation from 22d5890c and adds the neccessary logic to
handle SEW!=64 profitably. The interesting case is needing to handle
e.g. a single m1 which is split via extract_subvector into two operands,
and form that back into a single m1 operation - instead of letting the
vslidedown by vlenb/Constant sequence be generated. This is analogous to
the getSingleShuffleSrc for vnsrl, and we can share a bunch of code.


  Commit: b20e063a90cc9277a3f2dc1f4bac39bce812c7ff
      https://github.com/llvm/llvm-project/commit/b20e063a90cc9277a3f2dc1f4bac39bce812c7ff
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
    M flang/test/Fir/OpenACC/openacc-mappable.fir

  Log Message:
  -----------
  [flang][acc] Generate acc.bounds operation from FIR shape (#136637)

This PR adds support to be able to generate `acc.bounds` operation
through `MappableType`'s `generateAccBounds` when there is no fir.box
entity. This is especially useful because the FIR type does not capture
size information for explicit-shape arrays and current implementation
relied on finding the box entity.

This scenario is possible because during HLFIRtoFIR, `fir.array_coor`
and `fir.box_addr` operations are often optimized to use raw address. If
one tries to map the ssa value that represents such a variable, correct
dimensions need extracted from the shape information held in the fir
declare operation.


  Commit: 0eba8cbef6a196d5373de17d8844487daf27656a
      https://github.com/llvm/llvm-project/commit/0eba8cbef6a196d5373de17d8844487daf27656a
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-sm6_5.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-sm6_6.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs.ll

  Log Message:
  -----------
  [DirectX] Implement Max64UAVs shader flag analysis (#136229)

Fixes [#114553](https://github.com/llvm/llvm-project/issues/114553)

This implementation replicates the behavior of DXC in setting the
`m_b64UAVs` flag: the `Max64UAVs` DXIL module flag is set in the
presence of more than 8 UAVs in a DXIL module.

The behavior of how UAV (resource) arrays are counted differs based on
Shader Model version:
- If Shader Model < 6.6, then a UAV array counts as a single UAV
regardless of its range size
- if Shader Model >= 6.6, then a UAV array contributes its range size to
the total number of UAVs

I initially thought the complete implementation of this analysis may be
blocked by the resource arrays implementation, but it seems that it is
not the case, as the `@llvm.dx.resource.handle*` already includes a
range size argument.


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/init.c
    M clang/test/CIR/CodeGenOpenACC/shutdown.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'if' and 'device_num' lowering for
init/shutdown

These are pretty simple, the 'if' implementation is the same as compute
constructs, and the 'device_num' is identical to a bunch of others, in
that it is just emitting an integral value.


  Commit: c04958381e90c32381ddabf1552d17c63cdd060b
      https://github.com/llvm/llvm-project/commit/c04958381e90c32381ddabf1552d17c63cdd060b
  Author: Andrew Rogers <andrurogerz at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/docs/InterfaceExportAnnotations.rst
    M llvm/include/llvm/Support/Compiler.h

  Log Message:
  -----------
  [llvm] add LLVM_ABI_FRIEND macro for friend function decls (#136595)

## Purpose
Introduce a new `LLVM_ABI_FRIEND` macro to `llvm/Support/Compiler.h` for
annotating `friend` function declarations for DLL export.

## Overview
1. Add a new `LLVM_ABI_FRIEND` macro, which behaves identically to the
existing `LLVM_ABI` macro on Windows and compiles to nothing on other
platforms.
2. Update existing documentation to describe proper usage of the
`LLVM_ABI_FRIEND` annotation.

## Background
* MSVC issues a warning when it encounters a `friend` function
declaration that does not match the DLL import/export annotation of the
original function.
* When compiling ELF and Mach-O shared libraries, `friend` function
declarations with visibility annotations produce compilation errors
(GCC) and warnings (Clang).
* Additional context on the effort to annotate LLVM's public interface
is in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307).


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

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

  Log Message:
  -----------
  [SLP][NFC]Rename functions/variables, limit visibility to meet the coding standards, NFC


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/set.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement lowering for 'set' clauses

The 'set' clauses are default_async, device_num, and if.  The latter two
are implemented identically to other constructs by that name.

default_async works exactly like device_num, (and others) that take an
int-expression.


  Commit: 5e101de13671a525d30ed7f546c1a8611db1da19
      https://github.com/llvm/llvm-project/commit/5e101de13671a525d30ed7f546c1a8611db1da19
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributes.h
    M mlir/include/mlir/IR/BuiltinAttributes.td
    M mlir/lib/IR/BuiltinAttributes.cpp

  Log Message:
  -----------
  [mlir][nfc] Replace some `std::vector`s with `SmallVector` (#136703)

`SmallVector` is preferable to `std::vector`
https://llvm.org/docs/ProgrammersManual.html#llvm-adt-smallvector-h


  Commit: c073c228654e907a619edc03ff87158da772704c
      https://github.com/llvm/llvm-project/commit/c073c228654e907a619edc03ff87158da772704c
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/AddressSpaces.h
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/TCE.h
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/AST/HLSL/OutArgExpr.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl
    M clang/test/SemaTemplate/address_space-dependent.cpp

  Log Message:
  -----------
  [HLSL] Use hlsl_device address space for getpointer. (#127675)

We add the hlsl_device address space to represent the device memory
space as defined in section 1.7.1.3 of the [HLSL
spec](https://microsoft.github.io/hlsl-specs/specs/hlsl.pdf).

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


  Commit: 68bfb17f1dd15f3b0b2754c8bce1d1c395e553c1
      https://github.com/llvm/llvm-project/commit/68bfb17f1dd15f3b0b2754c8bce1d1c395e553c1
  Author: Bob Wilson <bob.wilson at apple.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    A clang/test/Preprocessor/print-header-crash.modulemap

  Log Message:
  -----------
  [Clang] Fix crash when building a module with CC_PRINT_HEADERS_FORMAT=json (#136227)

There is no main file when building a module, so the code in
HeaderIncludesJSONCallback::EndOfMainFile() needs to check for that to
avoid crashing.


  Commit: 55678dcbd5e4a4e096a2c856ac2f5dbfa57acc00
      https://github.com/llvm/llvm-project/commit/55678dcbd5e4a4e096a2c856ac2f5dbfa57acc00
  Author: Davide Italiano <davidino at meta.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  Remove myself from CODEOWNERS.


  Commit: 1c722fc8f5671ab1bbb7965b3b5fbba0645884b0
      https://github.com/llvm/llvm-project/commit/1c722fc8f5671ab1bbb7965b3b5fbba0645884b0
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/shuffle-exact-vlen.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-permute.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll

  Log Message:
  -----------
  [RISCV][TTI] Use processShuffleMask for shuffle legalization estimate (#136191)

We had some code which tried to estimate legalization costs for
illegally typed shuffles, but it only handled the case of a widening
shuffle, and used a somewhat adhoc heuristic. We can reuse the
processShuffleMask utility (which we already use for individual vector
register splitting when exact VLEN is known) to perform the same
splitting given the legal vector type as the unit of split instead. This
makes the costing both simpler and more robust.

Note that this swings costs for illegal shuffles pretty wildly as we
were previously sometimes hitting the adhoc code, and sometimes falling
through into generic scalarization costing. I don't know that any of the
costs for the individual tests in tree are significant, but the test
which which triggered me finding this was reported to me by Alexey
reduced from something triggering a bad choice in SLP for x264. So this
has the potential to be somewhat high impact.


  Commit: 7c4cb0e8368583bdd48a59b5dd0e9d881cffa3a6
      https://github.com/llvm/llvm-project/commit/7c4cb0e8368583bdd48a59b5dd0e9d881cffa3a6
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp

  Log Message:
  -----------
  Fix build error introduced by 1c722fc

The change built before merge, but apparently a constness change landed
since I posted this for review.


  Commit: 710ffb69bfdc9281eaaad267ad85ca60ddbb94f0
      https://github.com/llvm/llvm-project/commit/710ffb69bfdc9281eaaad267ad85ca60ddbb94f0
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M libc/fuzzing/__support/CMakeLists.txt
    R libc/fuzzing/__support/fake_heap.s
    M libc/fuzzing/__support/freelist_heap_fuzz.cpp
    M libc/test/src/__support/CMakeLists.txt
    R libc/test/src/__support/fake_heap.s
    M libc/test/src/__support/freelist_heap_test.cpp

  Log Message:
  -----------
  [libc] Fix warnings for freelist_heap_test/fuzz (#136634)

Fixes #122367


  Commit: 5ebf08cd9a1d4b2697a0d3ad588ddbdc553362dc
      https://github.com/llvm/llvm-project/commit/5ebf08cd9a1d4b2697a0d3ad588ddbdc553362dc
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/legalize-lifetimes.ll

  Log Message:
  -----------
  [DirectX] Allow llvm lifetime intrinsics to pass on to the DirectX backend (#136622)

fixes #136620

It was determined that the lifetime intrinsics generated by clang are
likely more correct than the ones in DXC hence explaining the missing
lifetimes between the IR diffs.

As such we are legalizing lllvm lifetime intrinsics by letting them all
pass on through.


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

  Changed paths:
    M llvm/test/TableGen/trydecode-emission.td
    M llvm/test/TableGen/trydecode-emission2.td
    M llvm/test/TableGen/trydecode-emission3.td
    M llvm/test/TableGen/trydecode-emission4.td

  Log Message:
  -----------
  [LLVM][TableGen] Do not test fixed opcode value in DecoderEmitter tests (#136724)

Fix test to allow any opcode values for the OPC_Decode checks, since the
specific opcode value can be different for downstream configurations.


  Commit: 800d949bb315349a116a980e99d0f36645ffefd3
      https://github.com/llvm/llvm-project/commit/800d949bb315349a116a980e99d0f36645ffefd3
  Author: Callum Fare <callum at codeplay.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M offload/liboffload/API/APIDefs.td
    M offload/liboffload/API/Common.td
    M offload/liboffload/API/Device.td
    A offload/liboffload/API/Event.td
    A offload/liboffload/API/Kernel.td
    A offload/liboffload/API/Memory.td
    M offload/liboffload/API/OffloadAPI.td
    M offload/liboffload/API/Platform.td
    A offload/liboffload/API/Program.td
    A offload/liboffload/API/Queue.td
    M offload/liboffload/API/README.md
    M offload/liboffload/include/OffloadImpl.hpp
    M offload/liboffload/include/generated/OffloadAPI.h
    M offload/liboffload/include/generated/OffloadEntryPoints.inc
    M offload/liboffload/include/generated/OffloadFuncs.inc
    M offload/liboffload/include/generated/OffloadImplFuncDecls.inc
    M offload/liboffload/include/generated/OffloadPrint.hpp
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/liboffload/src/OffloadLib.cpp
    M offload/test/tools/offload-tblgen/entry_points.td
    M offload/test/tools/offload-tblgen/functions_ranged_param.td
    M offload/test/tools/offload-tblgen/print_enum.td
    M offload/test/tools/offload-tblgen/print_function.td
    M offload/test/tools/offload-tblgen/type_tagged_enum.td
    M offload/tools/offload-tblgen/APIGen.cpp
    M offload/tools/offload-tblgen/EntryPointGen.cpp
    M offload/tools/offload-tblgen/PrintGen.cpp
    M offload/tools/offload-tblgen/RecordTypes.hpp
    M offload/unittests/OffloadAPI/CMakeLists.txt
    M offload/unittests/OffloadAPI/common/Environment.cpp
    M offload/unittests/OffloadAPI/common/Environment.hpp
    M offload/unittests/OffloadAPI/common/Fixtures.hpp
    R offload/unittests/OffloadAPI/device/olGetDevice.cpp
    R offload/unittests/OffloadAPI/device/olGetDeviceCount.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
    A offload/unittests/OffloadAPI/device/olIterateDevices.cpp
    A offload/unittests/OffloadAPI/device_code/CMakeLists.txt
    A offload/unittests/OffloadAPI/device_code/bar.c
    A offload/unittests/OffloadAPI/device_code/foo.c
    A offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
    A offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
    A offload/unittests/OffloadAPI/memory/olMemAlloc.cpp
    A offload/unittests/OffloadAPI/memory/olMemFree.cpp
    A offload/unittests/OffloadAPI/memory/olMemcpy.cpp
    R offload/unittests/OffloadAPI/platform/olGetPlatform.cpp
    R offload/unittests/OffloadAPI/platform/olGetPlatformCount.cpp
    M offload/unittests/OffloadAPI/platform/olGetPlatformInfo.cpp
    M offload/unittests/OffloadAPI/platform/olGetPlatformInfoSize.cpp
    M offload/unittests/OffloadAPI/platform/olPlatformInfo.hpp
    A offload/unittests/OffloadAPI/program/olCreateProgram.cpp
    A offload/unittests/OffloadAPI/program/olDestroyProgram.cpp
    A offload/unittests/OffloadAPI/queue/olCreateQueue.cpp
    A offload/unittests/OffloadAPI/queue/olDestroyQueue.cpp
    A offload/unittests/OffloadAPI/queue/olWaitQueue.cpp

  Log Message:
  -----------
  [Offload] Implement the remaining initial Offload API (#122106)

Implement the complete initial version of the Offload API, to the extent
that is usable for simple offloading programs. Tested with a basic SYCL
program.

As far as possible, these are simple wrappers over existing
functionality in the plugins.

* Allocating and freeing memory (host, device, shared).
* Creating a program 
* Creating a queue (wrapper over asynchronous stream resource)
* Enqueuing memcpy operations
* Enqueuing kernel executions
* Waiting on (optional) output events from the enqueue operations
* Waiting on a queue to finish

Objects created with the API have reference counting semantics to handle
their lifetime. They are created with an initial reference count of 1,
which can be incremented and decremented with retain and release
functions. They are freed when their reference count reaches 0. Platform
and device objects are not reference counted, as they are expected to
persist as long as the library is in use, and it's not meaningful for
users to create or destroy them.

Tests have been added to `offload.unittests`, including device code for
testing program and kernel related functionality.

The API should still be considered unstable and it's very likely we will
need to change the existing entry points.


  Commit: b5eae19f64d5a53cd85ece433f448be1fd4c8539
      https://github.com/llvm/llvm-project/commit/b5eae19f64d5a53cd85ece433f448be1fd4c8539
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
    M flang/test/Semantics/OpenMP/critical-hint-clause.f90
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP] Introduce OmpHintClause, simplify OmpAtomicClause (#136311)

The OmpAtomicClause is a variant of a few specific clauses that are used
on the ATOMIC construct. The HINT clause, however, was represented as a
generic OmpClause, which somewhat complicated the analysis of an
OmpAtomicClause.

Introduce OmpHintClause to represent the contents of the HINT clause,
and use it on OmpAtomicClause similarly to how OmpFailClause is used.


  Commit: 80872d7a32cd335a7964df95e9fbcdee43eb1ad4
      https://github.com/llvm/llvm-project/commit/80872d7a32cd335a7964df95e9fbcdee43eb1ad4
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    A clang/test/CIR/IR/stack-save-restore.cir
    A clang/test/CIR/Lowering/stack-save-restore.cir

  Log Message:
  -----------
  [CIR] Upstream StackSave and StackRestoreOp (#136426)

This change adds support for StackSave and StackRestoreOp as a preliminary patch of VLA support


  Commit: 2dca9e80ffc7f300129fb8e5fcc8d1ee60a157e0
      https://github.com/llvm/llvm-project/commit/2dca9e80ffc7f300129fb8e5fcc8d1ee60a157e0
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M bolt/test/link_fdata.py

  Log Message:
  -----------
  [BOLT][test] Resolve symlink for nm tool (NFC) (#136722)

Handle the case where nm could be a symlink to llvm-nm.


  Commit: 718a50963ca4b3860fe1cb638d6030b8ae9e818c
      https://github.com/llvm/llvm-project/commit/718a50963ca4b3860fe1cb638d6030b8ae9e818c
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/Serialize.cpp

  Log Message:
  -----------
  [clang-doc] Fix clang-tidy naming diagnostics (#136444)

In quite a few places we were not following the project naming
conventions. This patch applies clang-tidy fixes, and updates
some additional names to follow more typical project wide patterns.


  Commit: e5128332dbb3bedfa30633fad30a52f5b1567d70
      https://github.com/llvm/llvm-project/commit/e5128332dbb3bedfa30633fad30a52f5b1567d70
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir

  Log Message:
  -----------
  [mlir][vector] Update ApplyVectorReductionToContractPatternsOp (#136699)

This PR removes the use of `populateSinkVectorOpsPatterns` from the
definition of:
  * `transform.apply_patterns.vector.reduction_to_contract`

As of #131462, there is now a dedicated transform op for this pattern:
  * `transform.apply_patterns.vector.sink_op`

Given that, we should now use the new TD op directly instead of relying
on unrelated TD ops to include it.

NOTE TO DOWNSTREAM USERS:
Please add the following to your TD scripts:
  * `transform.apply_patterns.vector.sink_op`

See the updated test for an example.


  Commit: 11d5c4dcccf19b5c01742a2a402889da89783630
      https://github.com/llvm/llvm-project/commit/11d5c4dcccf19b5c01742a2a402889da89783630
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/Serialize.cpp

  Log Message:
  -----------
  [clang-doc][NFC] Use isa<> over dyn_cast (#136445)


  Commit: 694c52cef5d24673836cb2199598445753a96864
      https://github.com/llvm/llvm-project/commit/694c52cef5d24673836cb2199598445753a96864
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/DiagnosticInfo.h
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/Transforms/Utils/MisExpect.cpp

  Log Message:
  -----------
  [llvm][misexpect][NFC] Fix Twine usage (#136446)


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

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

  Log Message:
  -----------
  [VPlan] Move Ingredient accesses closer to uses (NFC).

Move accessing Ingredient closer to its only use for
VPWidenMemoryRecipes.


  Commit: dee96a3d078f382b870b62146e38ab1f4a1e596b
      https://github.com/llvm/llvm-project/commit/dee96a3d078f382b870b62146e38ab1f4a1e596b
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/IR/ProfDataUtils.cpp

  Log Message:
  -----------
  [llvm][IR][NFC] Apply clang-tidy fixes to ProfDataUtils (#136447)

A few functions in the TU could be made static, and a loop variable name
could be changed to avoid warnings.


  Commit: d7460da554e3d5efdc5b9db3901078c9bf650fad
      https://github.com/llvm/llvm-project/commit/d7460da554e3d5efdc5b9db3901078c9bf650fad
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/utils/generate-test-checks.py

  Log Message:
  -----------
  [mlir][utils] Update generate-test-checks.py (#136721)

Following #128083, all `CHECK-SAME` lines generated by
generate-test-checks.py use a strict regex:

```mlir
// CHECK-SAME:  %[[VAL_0:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<128x256x512xf32>,
```

However, in most cases this strict form is unnecessary and can obscure
readability. In such cases, the following would be sufficient:

```mlir
// CHECK-SAME:  %[[VAL_0:.*]]: memref<128x256x512xf32>,
```

This patch adds a command-line flag to make the strict mode optional. To
enable strict regex matching, use:

```bash
generate-test-checks.py --strict_name_re=true file.mlir
```


  Commit: 50320504c852e0cb3a8b1e43e85c9137219d44fd
      https://github.com/llvm/llvm-project/commit/50320504c852e0cb3a8b1e43e85c9137219d44fd
  Author: Benson Chu <bchu at localhost.localdomain>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/SemaARM.h
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/arm-interrupt-save-fp-attr-status-regs.c
    A clang/test/CodeGen/arm-interrupt-save-fp-attr.c
    M clang/test/Sema/arm-interrupt-attr.c
    A clang/test/Sema/arm-interrupt-save-fp-attr.c
    M llvm/include/llvm/IR/IntrinsicsARM.td
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.td
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.h
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/lib/Target/ARM/ARMMachineFunctionInfo.h
    M llvm/lib/Target/ARM/ARMRegisterInfo.td
    A llvm/test/CodeGen/ARM/interrupt-save-fp-attr-status-regs.mir
    A llvm/test/CodeGen/ARM/interrupt-save-fp-attr.ll

  Log Message:
  -----------
  [ARM][Thumb] Save FPSCR + FPEXC for save-vfp attribute

FPSCR and FPEXC will be stored in FPStatusRegs, after GPRCS2 has been
saved.

- GPRCS1
- GPRCS2
- FPStatusRegs (new)
- DPRCS
- GPRCS3
- DPRCS2

FPSCR is present on all targets with a VFP, but the FPEXC register is
not present on Cortex-M devices, so different amounts of bytes are
being pushed onto the stack depending on our target, which would
affect alignment for subsequent saves.

DPRCS1 will sum up all previous bytes that were saved, and will emit
extra instructions to ensure that its alignment is correct. My
assumption is that if DPRCS1 is able to correct its alignment to be
correct, then all subsequent saves will also have correct alignment.

Avoid annotating the saving of FPSCR and FPEXC for functions marked
with the interrupt_save_fp attribute, even though this is done as part
of frame setup.  Since these are status registers, there really is no
viable way of annotating this. Since these aren't GPRs or DPRs, they
can't be used with .save or .vsave directives. Instead, just record
that the intermediate registers r4 and r5 are saved to the stack
again.

Co-authored-by: Jake Vossen <jake at vossen.dev>
Co-authored-by: Alan Phipps <a-phipps at ti.com>


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

  Changed paths:
    R clang/test/CodeGen/Inputs/cuda.h
    R clang/test/CodeGen/nvptx-surface.cu
    M clang/test/CodeGenCUDA/Inputs/cuda.h
    M clang/test/CodeGenCUDA/correctly-rounded-div.cu
    A clang/test/CodeGenCUDA/nvptx-surface.cu
    M clang/test/CodeGenCUDA/offloading-entries.cu
    M clang/test/CodeGenCUDA/profile-coverage-mapping.cu
    M clang/test/CodeGenCUDA/propagate-attributes.cu

  Log Message:
  -----------
  cuda clang: Move nvptx-surface.cu test to CodeGenCUDA (#134758)

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


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

  Changed paths:
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete.pass.cpp

  Log Message:
  -----------
  [libcxx] [test] Extend mingw workarounds for armv7/aarch64 too (#136419)

This would be more convenient, if ADDITIONAL_COMPILE_FLAGS(target=...)
could be set with a regular expression, just like within e.g. XFAIL
lines.


  Commit: ce2b3ce3b6f707b8941dcdbf2c3a9be9fe5fa01b
      https://github.com/llvm/llvm-project/commit/ce2b3ce3b6f707b8941dcdbf2c3a9be9fe5fa01b
  Author: ShatianWang <38512325+ShatianWang at users.noreply.github.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M bolt/lib/Passes/ProfileQualityStats.cpp
    A bolt/test/X86/profile-quality-reporting-small-binary.s
    M bolt/test/X86/profile-quality-reporting.test

  Log Message:
  -----------
  [BOLT] Improve profile quality reporting (#130810)

Improve profile quality reporting by 1) fixing a format issue for small
binaries, 2) adding new stats for exception handling usage, 3) excluding
selected blocks when computing the CFG flow conservation score.

More specifically for 3), we are excluding blocks that satisfy at least
one of the following characteristics: a) is a landing pad, b) has at
least one landing pad with non-zero execution counts, c) ends with a
recursive call. The reason for a) and b) is because the thrower -->
landing pad edges are not explicitly represented in the CFG. The reason
for c) is because the call-continuation fallthrough edge count is not
important in case of recursive calls.

Modified test `bolt/test/X86/profile-quality-reporting.test`.
Added test `bolt/test/X86/profile-quality-reporting-small-binary.s`.


  Commit: 5e6747686dc2eea4aa988f61db567c4f67a7421e
      https://github.com/llvm/llvm-project/commit/5e6747686dc2eea4aa988f61db567c4f67a7421e
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [Clang] Remove use after move of lambda (#136728)

Static analysis flagged this use after move. It is undefined behavior
and I don't see any possible performance gains here to attempt to do
anything else but simply remove it.


  Commit: f5564895ea8a9e09744826c9fa918a6fe0d2e478
      https://github.com/llvm/llvm-project/commit/f5564895ea8a9e09744826c9fa918a6fe0d2e478
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [mlir] Fix a warning

This patch fixes:

  mlir/lib/Transforms/Utils/DialectConversion.cpp:2104:9: error:
  unused variable 'rewriterImpl' [-Werror,-Wunused-variable]


  Commit: 66b2c343541a914e591aeae7091b97564cf534a7
      https://github.com/llvm/llvm-project/commit/66b2c343541a914e591aeae7091b97564cf534a7
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/TypeSystem.h

  Log Message:
  -----------
  [lldb] Clarify the documentation for GetIndexOfChildMemberWithName (#136633)


  Commit: 6f1adbdb2b6f21d81e491c9ddd307fca0d183850
      https://github.com/llvm/llvm-project/commit/6f1adbdb2b6f21d81e491c9ddd307fca0d183850
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/test/API/functionalities/statusline/TestStatusline.py

  Log Message:
  -----------
  [lldb] Make the statusline separator configurable (#136611)

And use this functionality to replace the ASCII "|" with the same
full-geight line-drawing character used in diagnostics rendering on a
color terminal.


  Commit: 89a792e4e3f0464d071e71db0fd14d01e4aff971
      https://github.com/llvm/llvm-project/commit/89a792e4e3f0464d071e71db0fd14d01e4aff971
  Author: arun-thmn <arun.thangamani at intel.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    M mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    M mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    M mlir/test/Dialect/X86Vector/roundtrip.mlir
    M mlir/test/Target/LLVMIR/x86vector.mlir

  Log Message:
  -----------
  [mlir][x86vector] AVX Convert/Broadcast BF16 to F32 instructions (#135143)

Adds AVX broadcast and conversion from BF16 to packed F32. The
instructions that are added:
- `llvm.x86.vcvtneebf162ps128/256`
- `llvm.x86.vcvtneobf162ps128/256`
- `llvm.x86.vbcstnebf162ps128/256`


  Commit: 21bc23e35efa6f285402c299e2991a8e991164cc
      https://github.com/llvm/llvm-project/commit/21bc23e35efa6f285402c299e2991a8e991164cc
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-04-22 (Tue, 22 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/Dialect/IR/CIRTypes.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.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayout.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/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/test/CIR/CodeGen/struct.c

  Log Message:
  -----------
  [CIR] Upstream support for accessing structure members (#136383)

This adds ClangIR support for accessing structure members. Access to
union members is deferred to a later change.


  Commit: 2c2ba7efd4d5f270e7dea2e6a5f0a22bd7aaecd0
      https://github.com/llvm/llvm-project/commit/2c2ba7efd4d5f270e7dea2e6a5f0a22bd7aaecd0
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    A flang/docs/OpenMPSupport.md
    M flang/docs/index.md

  Log Message:
  -----------
  [Flang][OpenMP] Add OpenMP standards support doc (#132707)


  Commit: 49b6c746b80cb0bd8e5735a2d154058efa18854a
      https://github.com/llvm/llvm-project/commit/49b6c746b80cb0bd8e5735a2d154058efa18854a
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp

  Log Message:
  -----------
  [NFC][llvm] Remove duplicate isUEFI check (#136593)

In `X86MCTargetDesc.cpp` while fixing the handling of UEFI target in the
`createX86MCAsmInfo` function (#132461), the previous incorrect handling
of isUEFI was not removed. This patch cleans up that case.


  Commit: afda4c295b1f8c4c4011358eddc1a08e17cd5b4d
      https://github.com/llvm/llvm-project/commit/afda4c295b1f8c4c4011358eddc1a08e17cd5b4d
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/arm64-bitfield-extract.ll
    M llvm/test/CodeGen/AArch64/optimize-cond-branch.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/ctpop16.ll
    M llvm/test/CodeGen/AMDGPU/dead-machine-elim-after-dead-lane.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    M llvm/test/CodeGen/PowerPC/undef-args.ll
    M llvm/test/CodeGen/RISCV/miss-sp-restore-eh.ll
    M llvm/test/CodeGen/VE/Vector/ticket-64420.ll
    M llvm/test/CodeGen/X86/avx512-i1test.ll
    M llvm/test/CodeGen/X86/bfloat.ll
    M llvm/test/CodeGen/X86/clobber_frame_ptr.ll
    M llvm/test/CodeGen/X86/concat-fpext-v2bf16.ll
    M llvm/test/CodeGen/X86/jump_sign.ll
    M llvm/test/CodeGen/X86/machine-trace-metrics-crash.ll
    M llvm/test/CodeGen/X86/pr50254.ll
    M llvm/test/CodeGen/X86/pr57673.ll
    M llvm/test/CodeGen/X86/pr63108.ll
    M llvm/test/CodeGen/X86/pr91005.ll
    M llvm/test/CodeGen/X86/ragreedy-hoist-spill.ll
    M llvm/test/CodeGen/X86/shift-combine.ll
    M llvm/test/CodeGen/X86/shuffle-combine-crash.ll
    M llvm/test/CodeGen/X86/shuffle-half.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tailcall-cgp-dup.ll
    M llvm/test/CodeGen/X86/vaargs-prolog-insert.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll

  Log Message:
  -----------
  Reland [SelectionDAG] Folding ZERO-EXTEND/SIGN_EXTEND poison to Poison value in getNode (#136701)

This patch addresses the signed/zero extension of poison by using a
poison value of the extended type instead of a constant zero of the
extended type.


  Commit: d6a68be7af0e1cec95e5fb9442dc1867cbde9f8d
      https://github.com/llvm/llvm-project/commit/d6a68be7af0e1cec95e5fb9442dc1867cbde9f8d
  Author: modiking <mmo at nvidia.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/test/CodeGen/target-data.c
    M llvm/include/llvm/Support/NVPTXAddrSpace.h
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    A llvm/test/CodeGen/NVPTX/addrspacecast-ptx64.ll
    A llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M llvm/test/CodeGen/NVPTX/nvptx-aa.ll
    M llvm/test/Transforms/InferAddressSpaces/NVPTX/isspacep.ll

  Log Message:
  -----------
  [NVPTX] Add support for Shared Cluster Memory address space [1/2] (#135444)

Adds support for new Shared Cluster Memory Address Space
(SHARED_CLUSTER, addrspace 7). See
https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#distributed-shared-memory
for details.

1. Update address space structures and datalayout to contain the new
space
2. Add new intrinsics that use this new address space
3. Update NVPTX alias analysis

The existing intrinsics are updated in
https://github.com/llvm/llvm-project/pull/136768


  Commit: 09147b4c3c5579e9d76aa090605ccc9b46e307f6
      https://github.com/llvm/llvm-project/commit/09147b4c3c5579e9d76aa090605ccc9b46e307f6
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Analysis/SliceAnalysis.h
    M mlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
    M mlir/include/mlir/ExecutionEngine/SparseTensor/MapRef.h
    M mlir/include/mlir/ExecutionEngine/SparseTensorRuntime.h
    M mlir/include/mlir/Pass/PassManager.h
    M mlir/include/mlir/Reducer/Tester.h

  Log Message:
  -----------
  [mlir][nfc] Cleanup some unused headers (#136738)


  Commit: e112dccc8ba49425c575a6b15325f2cbeef5c606
      https://github.com/llvm/llvm-project/commit/e112dccc8ba49425c575a6b15325f2cbeef5c606
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrDefs.td
    M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrs.h
    M mlir/include/mlir/Dialect/Ptr/IR/PtrEnums.td
    M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.h
    M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td
    M mlir/lib/Dialect/Ptr/IR/CMakeLists.txt
    M mlir/lib/Dialect/Ptr/IR/PtrAttrs.cpp
    M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
    A mlir/test/Dialect/Ptr/canonicalize.mlir
    A mlir/test/Dialect/Ptr/ops.mlir

  Log Message:
  -----------
  [mlir][ptr] Add the `ptradd` and `type_offset` ops, and `generic_space` attr (#136434)

This patch adds the `ptr.ptradd` and `ptr.type_offset` operations. Given
a `ptr` value these operations can be used to compute new addresses. For
example:

```mlir
func.func @ops0(%ptr: !ptr.ptr<#ptr.int_space>) -> !ptr.ptr<#ptr.int_space> {
  %off = ptr.type_offset f32 : index
  %res = ptr.ptradd %ptr, %off : !ptr.ptr<#ptr.int_space>, index
  return %res : !ptr.ptr<#ptr.int_space>
}
```

Additionally, this patch also adds the `#ptr.generic_space`. This memory
space allows loading and storing values to all types.

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>


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

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/fp128-storage-type.ll
    M llvm/test/CodeGen/NVPTX/i128-array.ll
    M llvm/test/CodeGen/NVPTX/i128-retval.ll
    M llvm/test/CodeGen/NVPTX/inline-asm-b128-test1.ll
    M llvm/test/CodeGen/NVPTX/inline-asm-b128-test3.ll
    M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll

  Log Message:
  -----------
  [NVPTX] Use v2.u64 to load/store 128-bit values (#136638)


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

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

  Log Message:
  -----------
  [clang] Enable making `CompilerInstance` diagnostics thread-safe (#136601)

The `DiagnosticConsumer` interface is not thread-safe. To enable
thread-safety of `CompilerInstance` objects cloned from the same parent,
this PR allows passing an explicit `DiagnosticConsumer` to
`cloneForModuleCompile()`. This will be used from the dependency
scanner.


  Commit: 7e86afa6526dc5e809a6d5f2c71a2b97c9713159
      https://github.com/llvm/llvm-project/commit/7e86afa6526dc5e809a6d5f2c71a2b97c9713159
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    M mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    M mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    M mlir/test/Dialect/X86Vector/roundtrip.mlir
    M mlir/test/Target/LLVMIR/x86vector.mlir

  Log Message:
  -----------
  Revert "[mlir][x86vector] AVX Convert/Broadcast BF16 to F32 instructions" (#136781)

Reverts llvm/llvm-project#135143

This broke multiple bots, see PR.


  Commit: a7dcedc5cf73bdeb4e3bb8cd8e32b65349b75b6e
      https://github.com/llvm/llvm-project/commit/a7dcedc5cf73bdeb4e3bb8cd8e32b65349b75b6e
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll

  Log Message:
  -----------
  [RISCV] Add initial batch of test coverage for zvqdotq codegen

This is not complete coverage, but it's a starting point for working
on codegen for this extension.


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    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-arc.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm

  Log Message:
  -----------
  [WebKit checkers] Treat global const variables as safe (#136170)

This PR makes WebKit checkers treat a variable with global storage as
safe instead of constraining to ones that start with k or _k.


  Commit: 8dbf92e06a9f86ba256b537b2a1a99bce9dee765
      https://github.com/llvm/llvm-project/commit/8dbf92e06a9f86ba256b537b2a1a99bce9dee765
  Author: modiking <mmo at nvidia.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/addrspacecast-ptx64.ll
    M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll

  Log Message:
  -----------
  [NVPTX] Fix ptxas tests from #135444 (#136782)

ptxas needs to be updated to the correct arch to match what llc is
outputting


  Commit: 8c74dc1adf83d370e740e44ffe073487fd3b38d2
      https://github.com/llvm/llvm-project/commit/8c74dc1adf83d370e740e44ffe073487fd3b38d2
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/test/Dialect/Affine/canonicalize.mlir
    M mlir/test/Dialect/Affine/invalid.mlir
    M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix affine.apply verifier and add functionality to demote invalid symbols to dims (#128289)

Fixes: https://github.com/llvm/llvm-project/issues/120189,
https://github.com/llvm/llvm-project/issues/128403

Fix affine.apply verifier to reject symbolic operands that are valid
dims for affine purposes. This doesn't affect other users in other
contexts where the operands were neither valid dims or symbols (for eg.
in scf.for or other region ops). Otherwise, it was possible for
`-canonicalize` to have generated invalid IR when such
affine.apply ops were composed.

Introduce a method to demote a symbolic operand to a dimensional one
(the inverse of the current canonicalizePromotedSymbols).  Demote
operands that could/should have been valid affine dimensional values
(affine loop IVs or their functions) from symbols to dims. This is a
general method that can be used to legalize a map + operands post
construction depending on its operands. Use it during
`canonicalizeMapOrSetAndOperands` so that pattern rewriter-based passes
are able to generate valid IR post folding. Users outside of affine
analyses/dialects remain unaffected.

In some cases, this change also leads to better simplified operands,
duplicates eliminated as shown in one of the test cases where the same
operand appeared as a symbol and as a dim.

This commit also fixes test cases where dimensional positions should have
been ideally used with affine.apply (for affine loop IVs for example).


  Commit: 3d04da5bc022269b3238b2a84347dce7a7afd51b
      https://github.com/llvm/llvm-project/commit/3d04da5bc022269b3238b2a84347dce7a7afd51b
  Author: modiking <mmo at nvidia.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/test/CodeGenCUDA/builtins-sm90.cu
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
    M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/test/Target/LLVMIR/nvvm/tma_bulk_copy.mlir

  Log Message:
  -----------
  [NVPTX] Add support for Shared Cluster Memory address space [2/2] (#136768)

Adds support for new Shared Cluster Memory Address Space
(SHARED_CLUSTER, addrspace 7). See
https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#distributed-shared-memory
for details.

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

1. Update existing codegen/intrinsics in LLVM and MLIR that now use this
address space
2. Auto-upgrade previous intrinsics that used SMEM (addrspace 3) but
were really taking in a shared cluster pointer to the new address space


  Commit: 85b35a90770b6053f91d79ca685cdfa4bf6499a4
      https://github.com/llvm/llvm-project/commit/85b35a90770b6053f91d79ca685cdfa4bf6499a4
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [MLIR] Fix build failure introduced by 3d04da5bc022

Fix build failure in assert mode introduced by
8c74dc1adf83d370e740e44ffe073487fd3b38d2.


  Commit: 4e679ea89cc68829c4b9efc73121467bee56519c
      https://github.com/llvm/llvm-project/commit/4e679ea89cc68829c4b9efc73121467bee56519c
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi

  Log Message:
  -----------
  [MLIR] [python] Fixed the signature of `_OperationBase.get_asm` (#136676)

It claimed to return an `io.StringIO` or an `io.BytesIO`, but it did in
fact return `str` or `bytes`.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFoldMemOffset.cpp
    A llvm/test/CodeGen/RISCV/fold-mem-offset.mir

  Log Message:
  -----------
  [RISCV] Clear kill flags after replaceRegWith in RISCVFoldMemOffset. (#136762)

Any kill flags that were present for the old register are not valid for
the replacement and the replacement may have extended the live range of
the replacement register.


  Commit: 122e5151ba84560de824d46f7b636502d41f2aa0
      https://github.com/llvm/llvm-project/commit/122e5151ba84560de824d46f7b636502d41f2aa0
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  gn build: Port d1cce66469d0 more


  Commit: 4f71655b64a815143d2aedb22b8f423f7ce99e29
      https://github.com/llvm/llvm-project/commit/4f71655b64a815143d2aedb22b8f423f7ce99e29
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Fix a bug in parsing C-style cast of lambdas (#136099)

Fix #135959


  Commit: 9efabbbbe58bd8bc2141ba1c914f79376e09cbcf
      https://github.com/llvm/llvm-project/commit/9efabbbbe58bd8bc2141ba1c914f79376e09cbcf
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Fix a bug in lexing C++ UDL ending in $ (#136476)

Fix #61612


  Commit: 037657de7e5ccd4a37054829874a209b82fb8be7
      https://github.com/llvm/llvm-project/commit/037657de7e5ccd4a37054829874a209b82fb8be7
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Correctly annotate kw_operator in using decls (#136545)

Fix #136541


  Commit: afc030dd30e377ca7bf225a97179fa1b64eedd28
      https://github.com/llvm/llvm-project/commit/afc030dd30e377ca7bf225a97179fa1b64eedd28
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

  Changed paths:
    M clang/unittests/Format/FormatTestJS.cpp

  Log Message:
  -----------
  [clang-format] Don't test stability if JS format test fails (#136662)


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

  Changed paths:
    M llvm/lib/TargetParser/RISCVISAInfo.cpp

  Log Message:
  -----------
  [RISCV] Remove stale comment. NFC


  Commit: 34a4c58018730736b940c4db4d694feed3266f52
      https://github.com/llvm/llvm-project/commit/34a4c58018730736b940c4db4d694feed3266f52
  Author: Michele Scandale <michele.scandale at gmail.com>
  Date:   2025-04-22 (Tue, 22 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] Rework `hasBooleanRepresentation`. (#136038)

This is a follow-up of 13aac46332f607a38067b5ddd466071683b8c255.
This commit adjusts the implementation of `hasBooleanRepresentation` to
be somewhat aligned to `hasIntegerRepresentation`.
In particular vector of booleans should be handled in
`hasBooleanRepresentation`, while `_Atomic(bool)` should not.


  Commit: 141c14c9522ba2bf7472d660d64928b9982b5f6e
      https://github.com/llvm/llvm-project/commit/141c14c9522ba2bf7472d660d64928b9982b5f6e
  Author: tangaac <tangyan01 at loongson.cn>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/LoongArch/lasx/widen-shuffle-mask.ll
    A llvm/test/CodeGen/LoongArch/lsx/widen-shuffle-mask.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit for widen shuffle mask (#136544)


  Commit: 7547ad3a7bc1e249c240512438eb39581f58c8ef
      https://github.com/llvm/llvm-project/commit/7547ad3a7bc1e249c240512438eb39581f58c8ef
  Author: lntue <lntue at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [libc][math] Skip checking for exceptional values in expm1f when LIBC_MATH_SKIP_ACCURATE_PASS is set. (#130968)


  Commit: 439f16a7e12f1aece321266e4fce760841bfcdf1
      https://github.com/llvm/llvm-project/commit/439f16a7e12f1aece321266e4fce760841bfcdf1
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Port e112dccc8ba49425c575a6b15325f2cbeef5c606.


  Commit: 3ccfbc8a002e1e0f64b5408d26bc42282afc194b
      https://github.com/llvm/llvm-project/commit/3ccfbc8a002e1e0f64b5408d26bc42282afc194b
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  [lldb] Make sure changing the separator takes immediate effect (#136779)

The setter is only used when changing the setting programmatically. When
using the settings command, we need to monitor SetPropertyValue.


  Commit: 7b6801574d978ef418dd76257478cbbe5866b09f
      https://github.com/llvm/llvm-project/commit/7b6801574d978ef418dd76257478cbbe5866b09f
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td

  Log Message:
  -----------
  [CIR] Infer MLIRContext in attr builders when possible (#136741)

Mirrors incubator changes from https://github.com/llvm/clangir/pull/1582


  Commit: 5080a0251fe3352d26560075a9b3b8c9acb13d23
      https://github.com/llvm/llvm-project/commit/5080a0251fe3352d26560075a9b3b8c9acb13d23
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/PowerPC/vector-popcnt-128-ult-ugt.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
    A llvm/test/CodeGen/RISCV/pr101786.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/X86/ispow2.ll
    A llvm/test/CodeGen/X86/pr94829.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512.ll
    A llvm/test/Transforms/CodeGenPrepare/unfold-pow2-test-vec.ll
    A llvm/test/Transforms/CodeGenPrepare/unfold-pow2-test.ll

  Log Message:
  -----------
  [CodeGenPrepare] Unfold slow ctpop when used in power-of-two test (#102731)

DAG combiner already does this transformation, but in some cases it does
not have a chance because either CodeGenPrepare or SelectionDAGBuilder
move icmp to a different basic block.

https://alive2.llvm.org/ce/z/ARzh99

Fixes #94829

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


  Commit: 1a78ef9a9eddd73de7932f5c33a7a7ad7e8b1806
      https://github.com/llvm/llvm-project/commit/1a78ef9a9eddd73de7932f5c33a7a7ad7e8b1806
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx26.cpp

  Log Message:
  -----------
  [clang][bytecode] Allow casts from void* only in std::allocator calls (#136714)

Otherwise, add the missing diagnostic.


  Commit: 832ca744f2f25a7a5334f2f04380c84e41f71678
      https://github.com/llvm/llvm-project/commit/832ca744f2f25a7a5334f2f04380c84e41f71678
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [RISCV] Add Andes N45/NX45 processor definition (#136670)

Andes N45/NX45 are 32/64bit in-order dual-issue 8-stage pipeline CPU
architecture implementing the RV[32|64]IMAFDC_Zba_Zbb_Zbs ISA
extensions. They are developed by Andes Technology
https://www.andestech.com, a RISC-V IP provider.

The overviews for N45/NX45:
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-n45/
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-nx45/

Scheduling model will be implemented in a later PR.


  Commit: 30c47147262523663892836fee42e02f8f9366f5
      https://github.com/llvm/llvm-project/commit/30c47147262523663892836fee42e02f8f9366f5
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/utils/generate-test-checks.py

  Log Message:
  -----------
  [mlir][utils] Update generate-test-checks.py (#136757)

At the moment, the `CHECK-SAME` lines generated by
"generate-test-checks.py" (i.e. check-lines that correspond to the
preceeding `CHECK-LABEL` line) are indented to match the label length.
For example,

```mlir
func.func @batch_reduce_matmul_bcast_k_to_fill_missing_dims_A(%arg0: memref<5xf32>, %arg1: memref<2x5x7xf32>, %arg2: memref<3x7xf32>) {
  linalg.batch_reduce_matmul indexing_maps = (...)
}
```

will lead to the following:

```mlir
// CHECK-LABEL:   func.func @batch_reduce_matmul_bcast_k_to_fill_missing_dims_A(
// CHECK-SAME:                                                                  %[[VAL_0:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<5xf32>,
// CHECK-SAME:                                                                  %[[VAL_1:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<2x5x7xf32>,
// CHECK-SAME:                                                                  %[[VAL_2:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<3x7xf32>) {
// CHECK:           linalg.batch_reduce_matmul indexing_maps = (...)
```

This indentation is unnecasarilly deep. With this change, for labales
that are longer than 20 chars, the indentation is trimmed to 4 spaces:
```mlir
// CHECK-LABEL:   func.func @batch_reduce_matmul_bcast_k_to_fill_missing_dims_A(
// CHECK-SAME:        %[[VAL_0:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<5xf32>,
// CHECK-SAME:        %[[VAL_1:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<2x5x7xf32>,
// CHECK-SAME:        %[[VAL_2:[0-9]+|[a-zA-Z$._-][a-zA-Z0-9$._-]*]]: memref<3x7xf32>) {
// CHECK:           linalg.batch_reduce_matmul indexing_maps = (...)
```


  Commit: 665914fea1433409015a87fef2837218bcd21460
      https://github.com/llvm/llvm-project/commit/665914fea1433409015a87fef2837218bcd21460
  Author: Mythreya <git at mythreya.dev>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/InlayHints.h
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp

  Log Message:
  -----------
  [clangd] Improve `BlockEnd` inlayhint presentation (#136106)

 * Only show for blocks 10 lines or taller (including braces)
 * Add parens for function call: "// if foo" -> "// if foo()" or "// if foo(...)"
 * Print literal nullptr
 * Escaping for abbreviated strings

Fixes https://github.com/clangd/clangd/issues/1807.

Based on the original PR at https://github.com/llvm/llvm-project/pull/72345.

Co-authored-by: daiyousei-qz <qyzheng2 at outlook.com>


  Commit: 98b6f8dc699d789d834e5b6d810ed217f560aad0
      https://github.com/llvm/llvm-project/commit/98b6f8dc699d789d834e5b6d810ed217f560aad0
  Author: David Green <david.green at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/Support/InstructionCost.h
    M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
    M llvm/lib/Analysis/CostModel.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/PartialInlining.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/unittests/Support/InstructionCostTest.cpp

  Log Message:
  -----------
  [CostModel] Remove optional from InstructionCost::getValue() (#135596)

InstructionCost is already an optional value, containing an Invalid
state that can be checked with isValid(). There is little point in
returning another optional from getValue(). Most uses do not make use of
it being a std::optional, dereferencing the value directly (either
isValid has been checked previously or the Cost is assumed to be valid).
The one case that does in AMDGPU used value_or which has been replaced
by a isValid() check.


  Commit: ca3a5d37ef64668234cbce7236dd640a98e2d687
      https://github.com/llvm/llvm-project/commit/ca3a5d37ef64668234cbce7236dd640a98e2d687
  Author: jeremyd2019 <github at jdrake.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/cxa-atexit.cpp

  Log Message:
  -----------
  [Clang] [Driver] use __cxa_atexit by default on Cygwin. (#135701)

GCC on Cygwin and MSYS2 are built with --enable-__cxa_atexit.

Adjust test to expect this change.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll

  Log Message:
  -----------
  [RISCV] Add tests for fixed-length vwadd[u].{w,v}v with disjoint or. NFC


  Commit: da8f2d52423bb82b5d4e75cff3018704effe044f
      https://github.com/llvm/llvm-project/commit/da8f2d52423bb82b5d4e75cff3018704effe044f
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-22 (Tue, 22 Apr 2025)

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

  Log Message:
  -----------
  Revert "[clang-format] Allow breaking before kw___attribute (#128623)"

This reverts commit 8fc8a84e23471fe56214e68706addc712b5a2949, which caused a
regression.

Fixes #136675.


  Commit: dfc60b2ceb50e75dc07bdda18ae74695f18b370c
      https://github.com/llvm/llvm-project/commit/dfc60b2ceb50e75dc07bdda18ae74695f18b370c
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Also add SideEffectInterfaces dep to PtrDialect.

Fix for port of e112dcc.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll

  Log Message:
  -----------
  [RISCV] Add disjoint or patterns for vwadd[u].v{v,x} (#136716)

DAGCombiner::hoistLogicOpWithSameOpcodeHands will hoist

(or disjoint (ext a), (ext b)) -> (ext (or disjoint a, b))

So this adds patterns to match vwadd[u].v{v,x} in this case.

We have to teach the combine to preserve the disjoint flag.


  Commit: dd3de590ebd63566a1a54eb0e2140c433a9add84
      https://github.com/llvm/llvm-project/commit/dd3de590ebd63566a1a54eb0e2140c433a9add84
  Author: David Green <david.green at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp

  Log Message:
  -----------
  [CostModel] Fix InlineSizeEstimatorAnalysis after #135596

Fix a reference to getValue() being optional in InlineSizeEstimatorAnalysis, a
file that is not included in the default build. A "warning: enumerated and
non-enumerated type in conditional expression" warning is fixed in AMDGPU too.


  Commit: ae47f2533709058d3442a34af783d8cd721b4177
      https://github.com/llvm/llvm-project/commit/ae47f2533709058d3442a34af783d8cd721b4177
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/docs/StandardCPlusPlusModules.rst

  Log Message:
  -----------
  [docs] Fix the use of word "dependent" and other typos in the C++ Modules Doc (#136719)

"Dependant BMI" / "Dependent BMI" was used incorrectly in the
documentation:
"Dependent BMI" refers to a BMI that depends on the current TU, but it
was used for the BMI that current TU depends on.

I replaced all the mentions with "BMI dependency".


  Commit: d0cd6f3b9339326af01549ee09f17a6e9b54f505
      https://github.com/llvm/llvm-project/commit/d0cd6f3b9339326af01549ee09f17a6e9b54f505
  Author: David Green <david.green at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-tbl.ll

  Log Message:
  -----------
  [AArch64] Fix tryToConvertShuffleOfTbl2ToTbl4 with non-buildvector input operands. (#135961)

It looks like this code is only considering buildvector inputs,
expecting the inputs to have at least 16 operands. This adds a check to
make sure that is true.

Fixes #135950


  Commit: 91edbe223177504cf878340f37a36dfcee349cab
      https://github.com/llvm/llvm-project/commit/91edbe223177504cf878340f37a36dfcee349cab
  Author: wanglei <wanglei at loongson.cn>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp

  Log Message:
  -----------
  [lldb][LoongArch] Fix expression function call failure

After upgrading the default code model from small to medium on
LoongArch, function calls using expression may fail. This is because the
function call instruction has changed from `bl` to `pcalau18i + jirl`,
but `RuntimeDyld` does not handle out-of-range jumps for this
instruction sequence.

This patch fixes: #136561

Reviewed By: SixWeining

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


  Commit: 8a57df6a5210d0c54ed482eb7230b7689a1f9cb9
      https://github.com/llvm/llvm-project/commit/8a57df6a5210d0c54ed482eb7230b7689a1f9cb9
  Author: Allin Lee <60502081+AllinLeeYL at users.noreply.github.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/Value.h
    M llvm/lib/IR/Value.cpp
    A llvm/test/tools/llvm-extract/extract-unnamed-bb.ll
    M llvm/tools/llvm-extract/llvm-extract.cpp

  Log Message:
  -----------
  [llvm-extract] support unnamed bbs. (#135140)

Dear developer:

I have recently working with LLVM IR and I want to isolate basic blocks
using the command "llvm-extract". However, I found that the command
option "llvm-extract --bb func_name:bb_name" will only function when
dumping source code into IRs with options "-fno-discard-value-names".
That is to say, the "llvm-extract" command cannot support unnamed basic
blocks, which is a default output of the compiler. So, I made these
changes and hope they will make LLVM better.

Best regards,

Co-authored-by: Yilin Li <allinleeme at gmail.com>


  Commit: 6db447f824d46956172b104f08105b25f9428f55
      https://github.com/llvm/llvm-project/commit/6db447f824d46956172b104f08105b25f9428f55
  Author: Iris Shi <0.0 at owo.li>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
    A llvm/test/Transforms/InstCombine/max-min-canonicalize.ll
    M llvm/test/Transforms/InstCombine/max_known_bits.ll
    M llvm/test/Transforms/InstCombine/minmax-fold.ll
    M llvm/test/Transforms/InstCombine/minmax-intrinsics.ll
    M llvm/test/Transforms/InstCombine/sadd_sat.ll
    M llvm/test/Transforms/InstCombine/select-min-max.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize `max(min(X, MinC), MaxC) -> min(max(X, MaxC), MinC)` (#136665)

Closes #121870.

https://alive2.llvm.org/ce/z/WjmAjz
https://alive2.llvm.org/ce/z/4KCjgL


  Commit: 4a58071d87265dfccba72134b25cf4d1595d98c5
      https://github.com/llvm/llvm-project/commit/4a58071d87265dfccba72134b25cf4d1595d98c5
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFrameInfo.h
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    A llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    A llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    A llvm/test/CodeGen/AMDGPU/vgpr-blocks-funcinfo.mir
    M llvm/unittests/Target/AMDGPU/CMakeLists.txt
    A llvm/unittests/Target/AMDGPU/LiveRegUnits.cpp

  Log Message:
  -----------
  [AMDGPU] Support block load/store for CSR (#130013)

Add support for using the existing `SCRATCH_STORE_BLOCK` and
`SCRATCH_LOAD_BLOCK` instructions for saving and restoring callee-saved
VGPRs. This is controlled by a new subtarget feature, `block-vgpr-csr`.
It does not include WWM registers - those will be saved and restored
individually, just like before. This patch does not change the ABI.

Use of this feature may lead to slightly increased stack usage, because
the memory is not compacted if certain registers don't have to be
transferred (this will happen in practice for calling conventions where
the callee and caller saved registers are interleaved in groups of 8).
However, if the registers at the end of the block of 32 don't have to be
transferred, we don't need to use a whole 128-byte stack slot - we can
trim some space off the end of the range.

In order to implement this feature, we need to rely less on the
target-independent code in the PrologEpilogInserter, so we override
several new methods in `SIFrameLowering`. We also add new pseudos,
`SI_BLOCK_SPILL_V1024_SAVE/RESTORE`.

One peculiarity is that both the SI_BLOCK_V1024_RESTORE pseudo and the
SCRATCH_LOAD_BLOCK instructions will have all the registers that are not
transferred added as implicit uses. This is done in order to inform
LiveRegUnits that those registers are not available before the restore
(since we're not really restoring them - so we can't afford to scavenge
them). Unfortunately, this trick doesn't work with the save, so before
the save all the registers in the block will be unavailable (see the
unit test).


  Commit: 48585caf727004678617dc34fa50383c3f4eb2de
      https://github.com/llvm/llvm-project/commit/48585caf727004678617dc34fa50383c3f4eb2de
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  InstCombine: Avoid counting uses of constants (#136566)

Logically it does not matter; getFreelyInvertedImpl doesn't
depend on the value for the m_ImmConstant case.

This use count logic should probably sink into getFreelyInvertedImpl,
every use of this appears to just be a hasOneUse or hasNUse count,
so this could change to just be a use count threshold.


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

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 4a58071d8726


  Commit: 3cd6b86cc1e1fd1d8d62ca1bcb8498362a4f7b68
      https://github.com/llvm/llvm-project/commit/3cd6b86cc1e1fd1d8d62ca1bcb8498362a4f7b68
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachinePipeliner.h
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    A llvm/test/CodeGen/Hexagon/swp-alias-cross-iteration.mir
    A llvm/test/CodeGen/Hexagon/swp-no-alias.mir

  Log Message:
  -----------
  [MachinePipeliner] Use AliasAnalysis properly when analyzing loop-carried dependencies (#136691)

MachinePipeliner uses AliasAnalysis to collect loop-carried memory
dependencies. To analyze loop-carried dependencies, we need to
explicitly tell AliasAnalysis that the values may come from different
iterations. Before this patch, MachinePipeliner didn't do this, so some
loop-carried dependencies might be missed. For example, in the following
case, there is a loop-carried dependency from the load to the store, but
it wasn't considered.

```
def @f(ptr noalias %p0, ptr noalias %p1) {
entry:
  br label %body

loop:
  %idx0 = phi ptr [ %p0, %entry ], [ %p1, %body ]
  %idx1 = phi ptr [ %p1, %entry ], [ %p0, %body ]
  %v0 = load %idx0
  ...
  store %v1, %idx1
  ...
}
```

Further, the handling of the underlying objects was not sound. If there
is no information about memory operands (i.e., `memoperands()` is
empty), it must be handled conservatively. However, Machinepipeliner
uses a dummy value (namely `UnknownValue`). It is distinguished from
other "known" objects, causing necessary dependencies to be missed.
(NOTE: in such cases, `buildSchedGraph` adds non-loop-carried
dependencies correctly, so perhaps a critical problem has not occurred.)

This patch fixes the above problems. This change has increased false
dependencies that didn't exist before. Therefore, this patch also
introduces additional alias checks with the underlying objects.

Split off from #135148


  Commit: 0de2f64e652a1b8c1e051635c98fb2b69c6b2c62
      https://github.com/llvm/llvm-project/commit/0de2f64e652a1b8c1e051635c98fb2b69c6b2c62
  Author: Alex Rønne Petersen <alex at alexrp.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/test/Driver/Xclangas.s

  Log Message:
  -----------
  [clang] XFAIL the `Xclangas.s` test on AIX. (#136744)

Clang on AIX does not use the integrated assembler.

https://github.com/llvm/llvm-project/pull/100714#issuecomment-2822056054


  Commit: 11a3de7e98785b0df8f2010fb22c10c0590d2707
      https://github.com/llvm/llvm-project/commit/11a3de7e98785b0df8f2010fb22c10c0590d2707
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/ARM/popcnt.ll
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/ctz_zero_return_test.ll
    M llvm/test/CodeGen/RISCV/pr56457.ll
    M llvm/test/CodeGen/RISCV/pr95271.ll
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/sextw-removal.ll
    M llvm/test/CodeGen/Thumb2/mve-ctpop.ll

  Log Message:
  -----------
  [SDag][ARM][RISCV] Allow lowering CTPOP into a libcall (#101786)

This is a reland of #99752 with the bug fixed (see test diff in the
third commit in this PR).
All `popcount` libcalls return `int`, but `ISD::CTPOP` returns the type
of the argument, which can be wider than `int`. The fix is to make DAG
legalizer pass the correct return type to `makeLibCall` and sign-extend
the result afterwards.

Original commit message:
The main change is adding CTPOP to `RuntimeLibcalls.def` to allow
targets to use LibCall action for CTPOP. DAG legalizers are changed
accordingly.

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


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

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaUtilOps.td
    M mlir/lib/Conversion/TosaToMLProgram/TosaToMLProgram.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-pipeline.mlir
    M mlir/test/Conversion/TosaToMLProgram/tosa-to-mlprogram.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/variables.mlir

  Log Message:
  -----------
  [mlir][tosa] Align Variable ops to match with TOSA v1.0 spec (#130680)

- updated AnyType:$value to Tosa_Tensor:$input1 and Tosa_Tensor:$output1
for VariableWrite and VriableRead Operators
- updated description discrepancies
- note: in the TOSA spec, we had var_shape attr, but it's already
included
      in the TypeAttr:$type in MLIR

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


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

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

  Log Message:
  -----------
  [NFC][AArch64TTI] Refactor instCombineSVEVectorMul into simplifySVEIntrinsicBinOp.


  Commit: 3c3fb357a0ed4dbf640bdb6c61db2a430f7eb298
      https://github.com/llvm/llvm-project/commit/3c3fb357a0ed4dbf640bdb6c61db2a430f7eb298
  Author: TatWai Chong <tatwai.chong at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Enhance CONV3D & DEPTHWISE_CONV2D verifier (#135738)

Verify the correctness of pad, stride, dilation, and dimension of
input/weight/bias/output.

Adapt and extend the existing conv2d error_if function to support
additional convolution variants.


  Commit: 8c47f23232fc8b547f643d379175f322d01e4cbd
      https://github.com/llvm/llvm-project/commit/8c47f23232fc8b547f643d379175f322d01e4cbd
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2025-04-23 (Wed, 23 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_subgroup_matrix_multiply_accumulate/subgroup_matrix_multiply_accumulate_generic.ll

  Log Message:
  -----------
  [SPIRV] Support for the SPV_INTEL_subgroup_matrix_multiply_accumulate SPIR-V extension (#135225)

Adds support for the SPV_INTEL_subgroup_matrix_multiply_accumulate
SPIR-V extension according to
https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_subgroup_matrix_multiply_accumulate.asciidoc


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/Utils.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/AArch64InstrGISel.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll

  Log Message:
  -----------
  [LLVM][ISel][AArch64 Remove AArch64ISD::FCM##z nodes. (#135817)

We can easily select compare-to-zero instructions without dedicated
nodes. The test changes show opportunities that were previous missed
because of the redundant complexity.


  Commit: 37e8c6c6ee7c809e45d0e5b61c601a0bb91ca1c4
      https://github.com/llvm/llvm-project/commit/37e8c6c6ee7c809e45d0e5b61c601a0bb91ca1c4
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT] Do not return Def-ed registers from MCPlusBuilder::getUsedRegs (#129890)

Update the implementation of `MCPlusBuilder::getUsedRegs` to match its
description in the header file, add unit tests.


  Commit: c93af22d124ed70742fb692886ff26d8786f8c2d
      https://github.com/llvm/llvm-project/commit/c93af22d124ed70742fb692886ff26d8786f8c2d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [X86] combineConstantPoolLoads - remove duplicate SDLoc. NFC.


  Commit: 720a91183b16f94876adaa831d0a49a04d31420a
      https://github.com/llvm/llvm-project/commit/720a91183b16f94876adaa831d0a49a04d31420a
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/preserve-inbounds.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep-and-gvn.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Preserve inbounds flag based on ValueTracking and NUW (#130617)

If we know that the initial GEP was inbounds, and we change it to a
sequence of GEPs from the same base pointer where every offset is
non-negative, then the new GEPs are inbounds.

We can also preserve inbounds if the inbounds GEP and the involved additions are NUW.

For SWDEV-516125.


  Commit: b0524f332958b6e593868533127fd0651bdcf553
      https://github.com/llvm/llvm-project/commit/b0524f332958b6e593868533127fd0651bdcf553
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/AVR.h
    M clang/test/CodeGen/avr/avr-inline-asm-constraints.c
    M clang/test/CodeGen/avr/avr-unsupported-inline-asm-constraints.c
    M llvm/test/CodeGen/AVR/inline-asm/inline-asm-invalid.ll

  Log Message:
  -----------
  [clang][AVR] Improve compatibility of inline assembly with avr-gcc (#136534)

Allow the value 64 to be round up to 0 for constraint 'I'.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll

  Log Message:
  -----------
  [RISCV] Support disjoint RISCVISD::OR_VL in combineOp_VLToVWOp_VL (#136820)

This handles combining fixed-length disjoint ors to vwadd[u].wv, as was
done for scalable vectors in #86929.

vwadd[u].vv patterns need to be handled separately with a pattern in a
separate patch due to the extends being sunk, see #136716.


  Commit: 2a9f77f6bd48d757b2d45aadcb6cf76ef4b4ef32
      https://github.com/llvm/llvm-project/commit/2a9f77f6bd48d757b2d45aadcb6cf76ef4b4ef32
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    A llvm/test/Transforms/Reassociate/canonicalize-made-change.ll

  Log Message:
  -----------
  [Reassociate] Invalidate analysis passes after canonicalizeOperands (#136835)

When ranking operands for an expression tree the reassociate pass also
perform canonicalization, putting constants on the right hand side. Such
transforms was however not registered as modifying the IR. So at the end
of the pass, if not having made any other changes, the pass returned
that all analyses should be kept.

With this patch we make sure to set MadeChange to true when modifying
the IR via canonicalizeOperands. This is to make sure analyses such as
DemandedBits are properly invalidated when instructions are modified.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/AnalysisBasedWarnings.h
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/Analysis/pragma-diag-control.cpp

  Log Message:
  -----------
  Control analysis-based diagnostics with #pragma (#136323)

Previously, analysis-based diagnostics (like -Wconsumed) had to be
enabled at file scope in order to be run at the end of each function
body. This meant that they did not respect #pragma clang diagnostic
enabling or disabling the diagnostic.

Now, these pragmas can control the diagnostic emission.

Fixes #42199


  Commit: 05b7e97c78ba375cc146c67a4539446f8bcb880c
      https://github.com/llvm/llvm-project/commit/05b7e97c78ba375cc146c67a4539446f8bcb880c
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/rewrite-directives.cpp

  Log Message:
  -----------
  [flang][OpenMP] Extend common::AtomicDefaultMemOrderType enumeration (#136312)

Add "Acquire" and "Release", and rename it to OmpMemoryOrderType, since
memory order type is a concept extending beyond the
ATOMIC_DEFAULT_MEM_ORDER clause.

When processing a REQUIRES directive (in rewrite-directives.cpp), do not
add Acquire or Release to ATOMIC constructs, because handling of those
types depends on the OpenMP version, which is not available in that
file. This issue will be addressed later.


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-shift.ll

  Log Message:
  -----------
  [NFC][LLVM] Add test coverage for all binops to sve-intrinsic-simplify-binop.ll.

Also adds sve-intrinsic-simplify-shift.ll to test asr, shl and shr.


  Commit: 0f32809139bd104adb2c1de4fa1044da78a7e5af
      https://github.com/llvm/llvm-project/commit/0f32809139bd104adb2c1de4fa1044da78a7e5af
  Author: arun-thmn <arun.thangamani at intel.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
    M mlir/include/mlir/Dialect/X86Vector/X86VectorDialect.h
    M mlir/include/mlir/Dialect/X86Vector/X86VectorInterfaces.td
    M mlir/lib/Dialect/X86Vector/IR/CMakeLists.txt
    M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
    M mlir/test/Dialect/X86Vector/roundtrip.mlir
    M mlir/test/Target/LLVMIR/x86vector.mlir

  Log Message:
  -----------
  Reland [mlir][x86vector] AVX Convert/Broadcast BF16 to F32 instructions (#136830)

Quick fix for the PR: https://github.com/llvm/llvm-project/pull/135143
which failed building on `amd` and `arm` bots build. See the logs in the
above PR for the errors.


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

  Changed paths:
    M clang/lib/Sema/AnalysisBasedWarnings.cpp

  Log Message:
  -----------
  Remove spurious semicolon; NFC


  Commit: a99e055030f0da61651e808cbb208bb39594cdc0
      https://github.com/llvm/llvm-project/commit/a99e055030f0da61651e808cbb208bb39594cdc0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h

  Log Message:
  -----------
  [DAG] shouldReduceLoadWidth - add optional<unsigned> byte offset argument (#136723)

Based off feedback for #129695 - we need to be able to determine the
load offset of smaller loads when trying to determine whether a multiple
use load should be split (in particular for AVX subvector extractions).

This patch adds a std::optional<unsigned> ByteOffset argument to
shouldReduceLoadWidth calls for where we know the constant offset to
allow targets to make use of it in future patches.


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

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
    R lldb/test/Shell/SymbolFile/DWARF/range-lower-then-low-pc.s
    M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-inline-function.s

  Log Message:
  -----------
  [lldb/DWARF] Remove "range lower than function low_pc" check (#132395)

The check is not correct for discontinuous functions, as one of the
blocks could very well begin before the function entry point. To catch
dead-stripped ranges, I check whether the functions is after the first
known code address. I don't print any error in this case as that is a
common/expected situation.

This avoids many errors like:
```
error: ld-linux-x86-64.so.2 0x00085f3b: adding range [0x0000000000001ae8-0x0000000000001b07) which has a 
base that is less than the function's low PC 0x000000000001cfb0. Please file a bug and attach the file at
 the start of this error message
```
when debugging binaries on debian trixie because the dynamic linker
(ld-linux) contains discontinuous functions.

If the block ranges is not a subrange of the enclosing block then this
will range will currently be added to the outer block as well (i.e., we
get the same behavior that's currently possible for non-subrange blocks
larger than function_low_pc). However, this code path is buggy and I'd
like to change that (#117725).


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

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h
    A lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndexSet.cpp
    A lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndexSet.h
    M lldb/unittests/SymbolFile/DWARF/DWARFIndexCachingTest.cpp

  Log Message:
  -----------
  [lldb] Preparation for DWARF indexing speedup (#123732)

This is part of the work proposed in

<https://discourse.llvm.org/t/rfc-speeding-up-dwarf-indexing-again/83979>.
One of the change is that the there will be a different structure for
holding the partial indexes and the final (consolidated) index. To
prepare for this, I'm making the IndexSet structure a template. The
index cache encoding/decoding methods are changed into free functions,
as they only need to know how to work with the final index.

I've moved this functionality to a separate file as all this doesn't
really depend on the rest of the ManualDWARFIndex and it needs to be
public due to its use in the unit test (both of which indicate that it
could be a component of its own).


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

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/SymbolFile/DWARF/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 94206c9700d5


  Commit: 6bb2f90557fb2b4b216299cc2beb4afb641476aa
      https://github.com/llvm/llvm-project/commit/6bb2f90557fb2b4b216299cc2beb4afb641476aa
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFrameInfo.h
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    R llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    R llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    R llvm/test/CodeGen/AMDGPU/vgpr-blocks-funcinfo.mir
    M llvm/unittests/Target/AMDGPU/CMakeLists.txt
    R llvm/unittests/Target/AMDGPU/LiveRegUnits.cpp

  Log Message:
  -----------
  Revert "[AMDGPU] Support block load/store for CSR" (#136846)

Reverts llvm/llvm-project#130013 due to failures with expensive checks
on.


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

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 6bb2f90557fb


  Commit: 14b38cf946c5b10039865f1aaedac8ea1ca06abb
      https://github.com/llvm/llvm-project/commit/14b38cf946c5b10039865f1aaedac8ea1ca06abb
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/matmul.mlir

  Log Message:
  -----------
  [mlir][vector] Update test post 136699 (nfc) (#136841)

Updates a test that I forgot to update in #136699. Failing bot:
  * https://lab.llvm.org/buildbot/#/builders/143/builds/7166


  Commit: 8292e050e62f69ae9aea68fafd011152eede7e4d
      https://github.com/llvm/llvm-project/commit/8292e050e62f69ae9aea68fafd011152eede7e4d
  Author: Wenju He <wenju.he at intel.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Build for OpenCL 3.0 (#135733)

This PR is modified cherry-pick of
https://github.com/intel/llvm/commit/cba338e5fb1c
This PR sets OpenCL language version to be the same, which is 3.0,
for every target and device, in order to unify the build process.
Target should define supported extensions and features via
setSupportedOpenCLOpts API.

llvm-diff shows one change to amdgcn--amdhsa.bc:
* ctz symbols are added since they are now enabled for amdgcn.


  Commit: 1ce709cb845b8b0bc4625198afa7a26c0a198fe4
      https://github.com/llvm/llvm-project/commit/1ce709cb845b8b0bc4625198afa7a26c0a198fe4
  Author: Nicholas Guy <nicholas.guy at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll

  Log Message:
  -----------
  [LV] Fix crash when building partial reductions using types that aren't known scale factors (#136680)


  Commit: a1f369e6309c8c6adaae886afc55817b97953641
      https://github.com/llvm/llvm-project/commit/a1f369e6309c8c6adaae886afc55817b97953641
  Author: Nicholas Guy <nicholas.guy at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll

  Log Message:
  -----------
  [AArch64][SVE] Add dot product lowering for PARTIAL_REDUCE_MLA node (#130933)

Add lowering in tablegen for PARTIAL_REDUCE_U/SMLA ISD nodes. Only
happens when the combine has been performed on the ISD node. Also adds
in check to only do the DAG combine when the node can then eventually be
lowered, so changes neon tests too.

---------

Co-authored-by: James Chesterman <james.chesterman at arm.com>


  Commit: 386ff113f974967dee9d3fd654c2259a94c59b2e
      https://github.com/llvm/llvm-project/commit/386ff113f974967dee9d3fd654c2259a94c59b2e
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h

  Log Message:
  -----------
  [flang][OpenMP] Use OmpMemoryOrderType enumeration in FAIL clause (#136313)

Make the FAIL clause contain OmpMemoryOrderType enumeration instead of
OmpClause. This simplifies the semantic checks of the FAIL clause.


  Commit: 5b0cd17c386ecd126c7f0ab514413bab8222b421
      https://github.com/llvm/llvm-project/commit/5b0cd17c386ecd126c7f0ab514413bab8222b421
  Author: Virginia Cangelosi <virginia.cangelosi at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_fp8.c
    A clang/test/Sema/aarch64-sme2p2-instrinsics/acle_sme2p2_fp8_imm.cpp
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4-fp8.ll

  Log Message:
  -----------
  [Clang][llvm] Implement fp8 FMOP4A intrinsics (#130127)

Implement all mf8 FMOP4A instructions in clang and llvm following the
acle in https://github.com/ARM-software/acle/pull/381/files.

It also updates previous mop4 instructions from IntrNoMem to
IntrInaccessibleMemOnly


  Commit: 92bba68634ec48c738d45bc86b05b1390aa82f4b
      https://github.com/llvm/llvm-project/commit/92bba68634ec48c738d45bc86b05b1390aa82f4b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMPDeviceConstants.h
    M offload/DeviceRTL/src/Kernel.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/test/offloading/ompx_bare.c
    M offload/test/offloading/ompx_bare_multi_dim.cpp

  Log Message:
  -----------
  [Offload] Fix handling of 'bare' mode when environment missing (#136794)

Summary:
We treated the missing kernel environment as a unique mode, but it was
kind of this random bool that was doing the same thing and it explicitly
expects the kernel environment to be zero. It broke after the previous
change since it used to default to SPMD and didn't handle zero in any of
the other cases despite being used. This fixes that and queries for it
without needing to consume an error.


  Commit: 6d0d50f0ac0cb108a06558cb178a68fb78cfa06f
      https://github.com/llvm/llvm-project/commit/6d0d50f0ac0cb108a06558cb178a68fb78cfa06f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M offload/DeviceRTL/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] Update the bitcode library install and search path (#136754)

Summary:
This was accidentally kept in the old location when we moved to the
new `lib/<triple>/` location for the DeviceRTL. Move this to reduce the
delta with https://github.com/llvm/llvm-project/pull/136729.


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp

  Log Message:
  -----------
  [DSE] Skip non-pointer args in initializes handling (NFCI)

Avoid performing AA queries on non-pointers.


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/NewGVN.cpp

  Log Message:
  -----------
  [NewGVN] Avoid AA query on non-pointers (NFCI)

In order for the instruction result to alias with the pointer it
needs to be a pointer.


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

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp

  Log Message:
  -----------
  [CoroElide] Avoid AA query on non-pointers (NFCI)


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

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp

  Log Message:
  -----------
  [CoroElide] Remove unnecessary bitcast (NFCI)

No longer needed with opaque pointers.


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

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

  Log Message:
  -----------
  [InstrProfiling] Avoid unnecessary bitcast (NFC)

Not needed with opaque pointers.


  Commit: 00934beb8e6b9a5fe04ff7805249706d0edc3c5b
      https://github.com/llvm/llvm-project/commit/00934beb8e6b9a5fe04ff7805249706d0edc3c5b
  Author: jyli0116 <jyli0116 at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/fsh.ll

  Log Message:
  -----------
  [AArch64] Funnel Shift now uses rev32/rev64 instructions (#136707)

Fixes #130469 

Now uses REV32/REV64 instructions to complete operation.

New Output:
```
G1:
        rev64   v0.4s, v0.4s
        ret
G2:
        rev32   v0.8h, v0.8h
        ret
G3:
        rev16   v0.16b, v0.16b
        ret
G4:
        rev32   v0.4h, v0.4h
        ret
G5:
        rev16   v0.8b, v0.8b
        ret
```

Old Output:

```
G1:
        shl     v1.2d, v0.2d, #32
        usra    v1.2d, v0.2d, #32
        mov     v0.16b, v1.16b
        ret

G2:
        shl     v1.4s, v0.4s, #16
        usra    v1.4s, v0.4s, #16
        mov     v0.16b, v1.16b
        ret

G3:
        rev16   v0.16b, v0.16b
        ret

G4:
        shl     v1.2s, v0.2s, #16
        usra    v1.2s, v0.2s, #16
        fmov    d0, d1
        ret

G5:
        rev16   v0.8b, v0.8b
        ret
```


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

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

  Log Message:
  -----------
  [AArch64Arm64ECCallLowering] Remove unnecessary bitcasts (NFCI)

These are all pointer bitcasts, which are no longer necessary
with opaque pointers.


  Commit: a2c1ff10eb930dd56be306dc0818d6ff31fff546
      https://github.com/llvm/llvm-project/commit/a2c1ff10eb930dd56be306dc0818d6ff31fff546
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td

  Log Message:
  -----------
  [mlir][acc] Use consistent name for device_num operand (#136745)

`acc.set`, `acc.init`, and `acc.shutdown` take a `device_num` operand.
However, this was named inconsistently. Give it the same consistent name
for all aforementioned operations.

---------

Co-authored-by: erichkeane <ekeane at nvidia.com>


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

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

  Log Message:
  -----------
  [AArch64Arm64ECCallLowering] Drop unnecessary pointer type members (NFC)

With opaque pointers, these are all the same type. Consolidate to
just PtrTy.


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

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [OMPIRBuilder] Remove unnecessary pointer bitcasts (NFCI)

Not needed with opaque pointers.


  Commit: 237ed0cffcd721f0ae48420f17db2e2da97fb625
      https://github.com/llvm/llvm-project/commit/237ed0cffcd721f0ae48420f17db2e2da97fb625
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Port 0f32809139bd104adb2c1de4fa1044da78a7e5af.


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

  Changed paths:
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-vector.mir

  Log Message:
  -----------
  [NFC][AArch64][GlobalISel] Add test coverage for vector load/store legalization (#134904)

Precommit tests for vector load/store legalization changes. This exposes
a miscompile in LegalizerHelper::reduceLoadStoreWidth for non-byte-sized
vector elements, which will be fixed in a follow-up patch.
The other tests are potential miscompilations due to unclear semantics
of vector load/stores, which will be addressed in a follow-up
discussion.


  Commit: 46f18b7c6febe75b2cc0095f2227d935c14f70f2
      https://github.com/llvm/llvm-project/commit/46f18b7c6febe75b2cc0095f2227d935c14f70f2
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libcxxabi/test/test_demangle.pass.cpp

  Log Message:
  -----------
  [ItaniumDemangle][test] Add test-cases for ref-qualified member pointer parameters

I noticed that there are test-cases that are commented out. But the
manglings for them seem to be impossible to generate from valid C++. I
added two test-cases generated from following C++ program:
```
struct X {
    int func() const && { return 5; }
    const int &&func2() { return 5; }
    const int &&func3(const int &x) volatile { return 5; }
};

void f(int (X::*)() const &&, int const && (X::*)(),
       int const && (X::*)(const int &) volatile) {}

int main() {
    f(&X::func, &X::func2, &X::func3);
    return 0;
}
```


  Commit: 8158d43da33b33d260f2c43eb3f448f42b839b21
      https://github.com/llvm/llvm-project/commit/8158d43da33b33d260f2c43eb3f448f42b839b21
  Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir

  Log Message:
  -----------
  [TOSA] Rescale output_zp fix (#136116)

Patch corrects output_zp in case of usigned output


  Commit: 8502ba1eb40acdb0eda1039807afc34db0c7084a
      https://github.com/llvm/llvm-project/commit/8502ba1eb40acdb0eda1039807afc34db0c7084a
  Author: lorenzo chelini <l.chelini at icloud.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.h
    M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
    M mlir/lib/Dialect/Bufferization/Pipelines/BufferizationPipelines.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandRealloc.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
    M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/NormalizeMemRefs.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ResolveShapedTypeResultDims.cpp
    M mlir/test/python/pass_manager.py

  Log Message:
  -----------
  [MLIR][NFC] Retire let constructor for MemRef (#134788)

let constructor is legacy (do not use in tree!) since the tableGen
backend emits most of the glue logic to build a pass.

Note: The following constructor has been retired:

```cpp
std::unique_ptr<Pass> createExpandReallocPass(bool emitDeallocs = true);
```
    
To update your codebase, replace it with the new options-based API:
    
```cpp
memref::ExpandReallocPassOptions expandAllocPassOptions{
          /*emitDeallocs=*/false};
pm.addPass(memref::createExpandReallocPass(expandAllocPassOptions));
```


  Commit: 806d59eecd16dc35473638fd73ea0be8e59c6275
      https://github.com/llvm/llvm-project/commit/806d59eecd16dc35473638fd73ea0be8e59c6275
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libclc/generic/include/clc/image/image.h

  Log Message:
  -----------
  [libclc] Fix unguarded use of image types (#136871)

Commit 8292e05 which switched the OpenCL C version to 3.0 exposed this
issue, which wasn't caught in pre-commit CI.


  Commit: 6c561604336497cbeebc90f9066a9f474458a38d
      https://github.com/llvm/llvm-project/commit/6c561604336497cbeebc90f9066a9f474458a38d
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Re-enable compiler warning (#136872)

libclc is now clean of code that triggers the
bitwise-conditional-parentheses warning, so we can finally remove the
workaround.


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

  Changed paths:
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/test/Fir/CUDA/cuda-target-rewrite.mlir

  Log Message:
  -----------
  [flang][cuda] Carry over the CUDA attribute in target rewrite (#136811)


  Commit: 96519028d514853d429c2d09482ba0bd9a899c57
      https://github.com/llvm/llvm-project/commit/96519028d514853d429c2d09482ba0bd9a899c57
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp

  Log Message:
  -----------
  [lldb][DataFormatters] Make data-formatters log to the DataFormatters channel

Currently the data-formatters log to either DataFormatters or Types. The
former is probably more sensible, so log there consistently from all
formatters.


  Commit: cc6def4b7521676fd339936d027e48928e0ba398
      https://github.com/llvm/llvm-project/commit/cc6def4b7521676fd339936d027e48928e0ba398
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libc/src/stdio/printf_core/core_structs.h

  Log Message:
  -----------
  [libc] Special case PPC double double for print (#136614)

Summary:
We use the storage class for `long double` in the printing
implementations. We don't fully support the PPC double double type,
which that maps to, but we can stub out just the support needed for the
print interface to works. This required using the internal interface for
storage type, but it should be good enough.

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


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

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

  Log Message:
  -----------
  [NFC][LLVM][TableGen] Eliminate inheritance from std::vector (#136573)


  Commit: 79151244d6a501c027add60734ddfe4c609e75bb
      https://github.com/llvm/llvm-project/commit/79151244d6a501c027add60734ddfe4c609e75bb
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [DAG] narrowExtractedVectorLoad - reuse existing SDLoc. NFC (#136870)


  Commit: 2e389cb9aae0e9734fc8e16f6ebc6edb392d79a9
      https://github.com/llvm/llvm-project/commit/2e389cb9aae0e9734fc8e16f6ebc6edb392d79a9
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M flang/test/Semantics/OpenACC/acc-data.f90
    M llvm/include/llvm/Frontend/OpenACC/ACC.td

  Log Message:
  -----------
  [Flang][OpenACC] Make async clause on data consistent with elsewhere (#136866)

in #136610 we agreed that all async clauses on compute constructs should
act as 'only 1 per device-type-group'. On `data`, it has the same
specification language, and the same real requirements, so it seems
sensible to make it work the same way.


  Commit: 8abc917fe04140b6c6088a67e0398f637efde808
      https://github.com/llvm/llvm-project/commit/8abc917fe04140b6c6088a67e0398f637efde808
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and-fcmp.ll

  Log Message:
  -----------
  [InstCombine] Do not fold logical is_finite test (#136851)

This patch disables the fold for logical is_finite test (i.e., `and
(fcmp ord x, 0), (fcmp u* x, inf) -> fcmp o* x, inf`).
It is still possible to allow this fold for several logical cases (e.g.,
`stripSignOnlyFPOps(RHS0)` does not strip any operations). Since this
patch has no real-world impact, I decided to disable this fold for all
logical cases.

Alive2: https://alive2.llvm.org/ce/z/aH4LC7
Closes https://github.com/llvm/llvm-project/issues/136650.


  Commit: 24c860547e8e595f8bf8d87b52544e2aff243f2e
      https://github.com/llvm/llvm-project/commit/24c860547e8e595f8bf8d87b52544e2aff243f2e
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp

  Log Message:
  -----------
  AMDGPU/MC: Fix emitting absolute expressions (#136789)

When absolute MCExprs appear in normal instruction operands, we have to
emit them like a normal inline constant or literal. More generally, an
MCExpr that happens to have an absolute evaluation should be treated
exactly like an immediate operand here.

No test; I found this downstream, and I don't think it can be triggered
upstream yet.

Fixes: 16238669 ("[AMDGPU][MC] Support UC_VERSION_* constants. (#95618)")


  Commit: 2f0cd0c68ef027f87f34f04141c083212fda2806
      https://github.com/llvm/llvm-project/commit/2f0cd0c68ef027f87f34f04141c083212fda2806
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp

  Log Message:
  -----------
  [NFCI] Move ProfOStream from InstrProfWriter.cpp to InstrProf.h/cpp (#136791)

ProfOStream is a wrapper class for output stream, and used by
InstrProfWriter.cpp to serialize various profiles, like PGO profiles and
MemProf.

This change proposes to move it into InstrProf.h/cpp. After this is in,
InstrProfWriter can dispatch serialization of various formats into
methods like `obj->serialize()`, and the serialization code could be
move out of InstrProfWriter.cpp into individual classes (each in a
smaller cpp file). One example is that we can gradually move
writeMemprof [1] into llvm/*/ProfileData/MemProf.h/cpp, where a couple
of classes already have `serialize/deserialize` methods.


[1]
https://github.com/llvm/llvm-project/blob/85b35a90770b6053f91d79ca685cdfa4bf6499a4/llvm/lib/ProfileData/InstrProfWriter.cpp#L774-L791


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

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndexSet.h

  Log Message:
  -----------
  [lldb] Fix typo in ManualDWARFIndexSet.h

operator== wasn't used in production code, but the bad definition made
the tests vacuosly pass.


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

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Target/DirectX/CMakeLists.txt
    A llvm/lib/Target/DirectX/DXILForwardHandleAccesses.cpp
    A llvm/lib/Target/DirectX/DXILForwardHandleAccesses.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/alloca.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/ambiguous.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/buffer-O0.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/cbuffer-access.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/undominated.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [DirectX] Implement the ForwardHandleAccesses pass (#135378)

This pass attempts to forward resource handle creation to accesses of
the handle global. This avoids dependence on optimizations like CSE and
GlobalOpt for correctness of DXIL.

Fixes #134574.


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/data.c
    M clang/test/SemaOpenACC/data-construct-async-clause.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'async'/'if' lowering for 'data' construct

These two are trivial, and work the same as the compute construct
versions of these, so this adds tests to do so, and adds them to the
implementation.


  Commit: d7215c0ee2e4bca1ce87b956335ef6a2cddaf16f
      https://github.com/llvm/llvm-project/commit/d7215c0ee2e4bca1ce87b956335ef6a2cddaf16f
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/libclang/LibclangTest.cpp

  Log Message:
  -----------
  [libclang/C++] Fix clang_File_isEqual for in-memory files (#135773)

Add tests for `clang_File_isEqual` (on-disk and in-memory)


  Commit: 83c309b90550aa768ff9aa11b70898ee2c56b71e
      https://github.com/llvm/llvm-project/commit/83c309b90550aa768ff9aa11b70898ee2c56b71e
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    A clang/test/CodeGenCUDA/lambda-constexpr-capture.cu

  Log Message:
  -----------
  [CUDA][HIP] capture possible ODR-used var (#136645)

In a lambda function, a call of a function may
resolve to host and device functions with different
signatures. Especially, a constexpr local variable may
be passed by value by the device function and
passed by reference by the host function, which
will cause the constexpr variable captured by
the lambda function in host compilation but
not in the device compilation. The discrepancy
in the lambda captures will violate ODR and
causes UB for kernels using these lambdas.

This PR fixes the issue by identifying
discrepancy of ODR/non-ODR usages of constexpr
local variables passed to host/device functions
and conservatively capture them.

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


  Commit: 1b6cbaa7b64f54b127d139d653468e213bae007e
      https://github.com/llvm/llvm-project/commit/1b6cbaa7b64f54b127d139d653468e213bae007e
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/PrimType.h
    M clang/test/AST/ByteCode/literals.cpp

  Log Message:
  -----------
  [clang][bytecode] Refine diagnostics for volatile reads (#136857)

Differentiate between a volarile read via a lvalue-to-rvalue cast of a
volatile qualified subexpression and a read from a pointer with a
volatile base object.


  Commit: 6dbc01e8015816e904687c03f0ea8afac817781d
      https://github.com/llvm/llvm-project/commit/6dbc01e8015816e904687c03f0ea8afac817781d
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-04-23 (Wed, 23 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.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.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.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/bitcast_vector_bigint.ll
    M llvm/test/CodeGen/AMDGPU/bitreverse.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
    M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
    M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/fminimum3.ll
    M llvm/test/CodeGen/AMDGPU/fmul-2-combine-multi-use.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/fnearbyint.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AMDGPU/fpext-free.ll
    M llvm/test/CodeGen/AMDGPU/fpow.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/function-args.ll
    M llvm/test/CodeGen/AMDGPU/function-returns.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/idot4s.ll
    M llvm/test/CodeGen/AMDGPU/idot4u.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f16.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.msaa.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.encode.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.tbuffer.load.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.powi.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/lrint.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
    M llvm/test/CodeGen/AMDGPU/omod.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/repeated-divisor.ll
    M llvm/test/CodeGen/AMDGPU/rotl.ll
    M llvm/test/CodeGen/AMDGPU/rotr.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/select-flags-to-fmin-fmax.ll
    M llvm/test/CodeGen/AMDGPU/sint_to_fp.i64.ll
    M llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll
    M llvm/test/CodeGen/AMDGPU/strict_fpext.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    M llvm/test/CodeGen/AMDGPU/uint_to_fp.i64.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-and.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-xor.ll
    M llvm/test/CodeGen/AMDGPU/vector_rebroadcast.ll
    M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
    M llvm/test/CodeGen/AMDGPU/vopc_dpp.mir
    M llvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] update GFX11Plus codegen test with true16 flag (#135078)

This is a NFC patch.

This patch run a bulk update on CodeGen tests that are impacted by the
true16 features. This patch applies:
1. duplicate GFX11plus runlines and apply them with
"+mattr=+real-true16" and "+mattr=-real-true16"
2. update the test with the update script

For some GISEL runlines, the current CodeGen do not fully support the
true16 version. Still update the runlines, but comment out the failing
one, and added a "FIXME-TRUE16" comment to that test for easier
tracking. These test will be fixed in the following patches.

This is in a transition state that we support both
"+real-true16/-real-true16" in our code base. We plan to move to
"+real-true16" as default, and finally remove "-real-true16" mode and
test lines.


  Commit: 1041d54bd4f693c1ac03077680ece67e03c99e22
      https://github.com/llvm/llvm-project/commit/1041d54bd4f693c1ac03077680ece67e03c99e22
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/CancelRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/DisconnectRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/NextRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/Transport.cpp

  Log Message:
  -----------
  [lldb-dap] Updating the 'next' request handler use well structured types (#136642)

This updates the 'next' request to use well structured types. While
working on this I also simplified the 'RequestHandler' implementation to
better handle void responses by allowing requests to return a
'llvm::Error' instead of an 'llvm::Expected<std::monostate>'. This makes
it easier to write and understand request handles that have simple ack
responses.


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

  Changed paths:
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/unittests/Lex/PPDependencyDirectivesTest.cpp

  Log Message:
  -----------
  [clang][deps] Make dependency directives getter thread-safe (#136178)

This PR fixes two issues in one go:
1. The dependency directives getter (a `std::function`) was being stored
in `PreprocessorOptions`. This goes against the principle where the
options classes are supposed to be value-objects representing the `-cc1`
command line arguments. This is fixed by moving the getter directly to
`CompilerInstance` and propagating it explicitly.
2. The getter was capturing the `ScanInstance` VFS. That's fine in
synchronous implicit module builds where the same VFS instance is used
throughout, but breaks down once you try to build modules asynchronously
(which forces the use of separate VFS instances). This is fixed by
explicitly passing a `FileManager` into the getter and extracting the
right instance of the scanning VFS out of it.


  Commit: 385b07b5038ff65f084446a92849e54fd86bd3a7
      https://github.com/llvm/llvm-project/commit/385b07b5038ff65f084446a92849e54fd86bd3a7
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/Serialize.cpp

  Log Message:
  -----------
  [clang-doc][NFC] Remove else after return (#136443)


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

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/struct.c
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/typedef.c
    M clang/test/CIR/CodeGen/union.c
    M clang/test/CIR/IR/struct.cir

  Log Message:
  -----------
  [CIR] Introduce type aliases for records (#136387)

This introduces MLIR aliases for ClangIR record types. These are used in
the incubator and having skipped over them upstream is causing the tests
to diverge.


  Commit: 3c9027c1d7aac0c1e54af13182f1b8f58d376115
      https://github.com/llvm/llvm-project/commit/3c9027c1d7aac0c1e54af13182f1b8f58d376115
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/Serialization/ModuleManager.cpp
    M clang/test/Modules/explicit-build.cpp

  Log Message:
  -----------
  [clang][Modules] Clarify error message when size check fails in lookupModuleFile


  Commit: dbb8434ff7b9bb414e2222cb8d9cddac599eadc6
      https://github.com/llvm/llvm-project/commit/dbb8434ff7b9bb414e2222cb8d9cddac599eadc6
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  SelectionDAG: Add missing AddNodeIDCustom case for MDNodeSDNode.

Without this we ended up never deduplicating MDNodeSDNodes.

Reviewers: arsenm

Reviewed By: arsenm

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


  Commit: 3b48e2a7508ab090b1b7c6a68f87e3eddad5473d
      https://github.com/llvm/llvm-project/commit/3b48e2a7508ab090b1b7c6a68f87e3eddad5473d
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] Ensure we acquire the SB API lock while handling requests. (#137026)

Acquiring the lock for the target should help ensure consistency with
other background operations, like the thread monitoring events that can
trigger run commands from a different thread.


  Commit: 213424b94792d730510a12046abfc05e0262c985
      https://github.com/llvm/llvm-project/commit/213424b94792d730510a12046abfc05e0262c985
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp
    M llvm/include/llvm/BinaryFormat/MachO.h

  Log Message:
  -----------
  Add MachO RISC-V CPU type and CPU subtype to llvm & lldb (#136785)

Add the enum values for MachO RISC-V CPU type and CPU subtype to
llvm and use in LLDB's ArchSpec.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll

  Log Message:
  -----------
  [LV] Fix missing entry in willGenerateVectors (#136712)

willGenerateVectors switches on opcodes of a recipe, but Histogram is
missing in the switch statement, which could cause a crash in some
cases. The crash was initially observed when developing another patch.


  Commit: 98eb4761c8640968a922dab417dfa42ef2621c43
      https://github.com/llvm/llvm-project/commit/98eb4761c8640968a922dab417dfa42ef2621c43
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/test/tools/dsymutil/ARM/stmt-seq-macho.test

  Log Message:
  -----------
  Fix stmt-seq-macho.test for little endian platforms (#137017)

The test YAML was created on a little-endian system, so its data is
stored in little-endian order. When the test runs on a big-endian host,
yaml2obj defaults to the host’s byte order, misreading the file as
big-endian and causing a failure.

This change explicitly marks the YAML as little-endian, guaranteeing
that yaml2obj always uses the correct byte order, no matter which
machine runs the test.

The reason that during creation, obj2yaml doesn't specify the endianness
is because the endianness is set as an optional parameter and therefore
it won't be specified if it matches the platform default. Ref:
https://github.com/llvm/llvm-project/blob/d7215c0ee2e4bca1ce87b956335ef6a2cddaf16f/llvm/lib/ObjectYAML/MachOYAML.cpp#L105


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

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

  Log Message:
  -----------
  [mlir][LLVM] Improve `llvm.extractvalue` folder (#136861)

Continue the traversal on the SSA chain of the inserted value for
additional folding opportunities.


  Commit: 5bb4cf9d9189c41de50adffd960eb2188140eb9c
      https://github.com/llvm/llvm-project/commit/5bb4cf9d9189c41de50adffd960eb2188140eb9c
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/offsetof_macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/jmp_buf.h
    M libc/include/setjmp.yaml
    M libc/src/setjmp/CMakeLists.txt
    A libc/src/setjmp/linux/CMakeLists.txt
    A libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
    M libc/src/setjmp/setjmp_impl.h
    A libc/src/setjmp/siglongjmp.cpp
    A libc/src/setjmp/siglongjmp.h
    A libc/src/setjmp/sigsetjmp.h
    A libc/src/setjmp/sigsetjmp_epilogue.h
    M libc/src/setjmp/x86_64/CMakeLists.txt
    M libc/src/setjmp/x86_64/setjmp.cpp
    A libc/src/setjmp/x86_64/sigsetjmp.cpp
    M libc/test/src/setjmp/CMakeLists.txt
    A libc/test/src/setjmp/sigsetjmp_test.cpp

  Log Message:
  -----------
  [libc] implement sigsetjmp/siglongjmp for x86-64 (#136072)


  Commit: a0fce0ba31277b6cbdb335a9529477415a01760d
      https://github.com/llvm/llvm-project/commit/a0fce0ba31277b6cbdb335a9529477415a01760d
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    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/lldb/source/Plugins/plugin_config.bzl

  Log Message:
  -----------
  [bazel] Use non_arc_srcs instead of passing -fno-objc-arc (#137037)

This is the recommended way in bazel to differentiate between files that
require arc and those that require it be disabled. This matters
depending on the toolchain since the order of these flags may not have
been correct and we were relying on overwriting the default.


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

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

  Log Message:
  -----------
  Reland "[HLSL][RootSignature] Implement initial parsing of the descriptor table clause params" (#136740)

This pr relands #133800.

It addresses the compilation error of using a shadowed name `Register`
for both the struct name and the data member holding this type:
`Register Register`. It resolves the issues my renaming the data members
called `Register` to `Reg`.

This issue was not caught as the current pre-merge checks do not include
a build of `llvm;clang` using the gcc/g++ compilers and this is not
erroneous with clang/clang++.

Second part of #126569

---------

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


  Commit: bc1198719e206b2b6928ac437cb59107b45662d6
      https://github.com/llvm/llvm-project/commit/bc1198719e206b2b6928ac437cb59107b45662d6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [Offload] Fix missing dependency on `clang-nvlink-wrapper' (#137033)

Summary:
It's possible that this won't be built in time for the runtimes build.
Add this as a dependency. We will also need to make this future proof
and loop over all the enabled targets, but that's a later update.


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

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

  Log Message:
  -----------
  [VPlan] Add exit phi operands during initial construction (NFC). (#136455)

Add incoming exit phi operands during the initial VPlan construction.
This ensures all users are added to the initial VPlan and is also needed
in preparation to retaining exiting edges during initial construction.

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


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/unchecked-members.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp

  Log Message:
  -----------
  [RawPtrRefMemberChecker] Member variable checker should allow T* in smart pointer classes (#136503)

This PR fixes member variable checker to allow the usage of T* in smart
pointer classes. e.g. alpha.webkit.NoUncheckedPtrMemberChecker should
allow T* to appear within RefPtr.


  Commit: f07511a0e0d2ac9bee9ae12a9ad68e279e352634
      https://github.com/llvm/llvm-project/commit/f07511a0e0d2ac9bee9ae12a9ad68e279e352634
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libc/src/setjmp/CMakeLists.txt
    M libc/src/setjmp/x86_64/sigsetjmp.cpp

  Log Message:
  -----------
  [libc] build fix for sigsetjmp (#137047)

This PR fixes the build failure due to the `sigsetjmp` implementation.

1. Use a most relaxed input constraint to fix `clang` build.
2. Avoid create alias target if os directory for `sigsetjmp_epilogue`
does not exist.


  Commit: 563ab56497104199b9fd57df9bd162f2b02cbe92
      https://github.com/llvm/llvm-project/commit/563ab56497104199b9fd57df9bd162f2b02cbe92
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/include/lldb/API/SBExecutionContext.h
    M lldb/include/lldb/API/SBInstructionList.h
    M lldb/source/API/SBInstructionList.cpp
    M lldb/tools/lldb-dap/Handler/SourceRequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] Show load addresses in disassembly (#136755)

Improves the lldb-dap disassembly by showing load addresses in
disassembly, same as in a regular LLDB `disassemble` command by default.

Before:

![Screenshot From 2025-04-22
21-33-56](https://github.com/user-attachments/assets/c3febd48-8335-4932-a270-5a87f48122fe)


After:

![Screenshot From 2025-04-22
21-54-51](https://github.com/user-attachments/assets/b2f44595-8ab2-4f28-aded-9233c53a589b)


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

  Changed paths:
    M flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [flang][cuda][NFC] Update binary name (#137034)

Name was changed in https://github.com/llvm/llvm-project/pull/135478


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

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

  Log Message:
  -----------
  [VPlan] Remove redundant setting of parent in createLoopRegion (NFC).

The regions parents will be set when the parents are set after creating
the parent region.


  Commit: 112014ba67792e00ff719d640a5fddb79d78674d
      https://github.com/llvm/llvm-project/commit/112014ba67792e00ff719d640a5fddb79d78674d
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp

  Log Message:
  -----------
  [Clang][NFC] Use temporary instead of one use local variable when creating APValue (#137029)

Static analysis flagged this code b/c we should have been using
std::move when passing by value since the value is not used anymore. In
this case the simpler fix is just to use a temporary value as many of
the other cases where we simply use MakeIntValue to then create an
APValue result from it.


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

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

  Log Message:
  -----------
  [VPlan] Use early exit in ::extractLastLaneOfFirstOperand (NFC).

Reduce indent level, as suggested in
https://github.com/llvm/llvm-project/pull/136455.


  Commit: f4189817df9b32903d0704028c8d2ea9b0ea5908
      https://github.com/llvm/llvm-project/commit/f4189817df9b32903d0704028c8d2ea9b0ea5908
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td

  Log Message:
  -----------
  [CIR] Create CIR_TypedAttr common class (#136852)

Introduce common base class for attributes with single type parameter.
This mirrors incubator changes introduced in https://github.com/llvm/clangir/pull/1583


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    A llvm/test/CodeGen/RISCV/zalasr-offset-folding.ll

  Log Message:
  -----------
  [RISCV] Return false for Zalasr load/store in isWorthFoldingAdd. (#136799)

The Zalasr load/store don't support reg-imm addressing modes so they
can't fold an ADDI.


  Commit: cef9ed56f8c19258f8805512e58627c5bc79bf98
      https://github.com/llvm/llvm-project/commit/cef9ed56f8c19258f8805512e58627c5bc79bf98
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp

  Log Message:
  -----------
  [lldb] Fix typo in tagged-pointer syntax string (NFC) (#137069)


  Commit: 6f5b98b3247969eb85135141bdae4a2d6aeb284a
      https://github.com/llvm/llvm-project/commit/6f5b98b3247969eb85135141bdae4a2d6aeb284a
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Utility/CompletionRequest.h
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/API/SBCommandInterpreter.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/test/API/commands/expression/completion/TestExprCompletion.py

  Log Message:
  -----------
  [lldb] returning command completions up to a maximum (#135565)

- Adding `max_return_elements` field to `CompletionRequest`.
- adding maximum checks to `SymbolCompleter` and `SourceFileCompleter`.

Fixes #135553


  Commit: ee617f195a2677abd274e4047246fed3a1501b77
      https://github.com/llvm/llvm-project/commit/ee617f195a2677abd274e4047246fed3a1501b77
  Author: Guy David <49722543+guy-david at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [NFC] [AArch64] Simplify offset scaling in ldst-opt (#137044)


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

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    R clang/test/CodeGenCXX/debug-info-dtor-implicit-args.cpp

  Log Message:
  -----------
  Revert "[Clang,debuginfo] added vtt parameter in destructor DISubroutineType (#130674)"

This reverts commit 27c1aa9b9cf9e0b14211758ff8f7d3aaba24ffcf.

See comments on PR. After this change, Clang now asserts like this:

clang: ../llvm/include/llvm/IR/Metadata.h:1435: const MDOperand &llvm::MDNode::getOperand(unsigned int) const: Assertion `I < getNumOperands() && "Out of range"' failed.
...
 #8 0x000055f345c4e4cb clang::CodeGen::CGDebugInfo::getOrCreateInstanceMethodType()
 #9 0x000055f345c5ba4f clang::CodeGen::CGDebugInfo::EmitFunctionDecl()
 #10 0x000055f345b52519 clang::CodeGen::CodeGenModule::EmitExternalFunctionDeclaration()

This is due to pre-existing jankiness in the way BPF emits extra
declarations for debug info, but we should rollback and then fix forward.


  Commit: dd17cf4480fc55c38813769a46fb2807397d8f72
      https://github.com/llvm/llvm-project/commit/dd17cf4480fc55c38813769a46fb2807397d8f72
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Interpreter/CommandObject.h

  Log Message:
  -----------
  [lldb] Minor improvements to AddNamesMatchingPartialString (NFC) (#136760)

The primary changes are:

1. Avoid allocating a temporary `std::string` each time in the loop
2. Use `starts_with` instead of `find(...) == 0`


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

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

  Log Message:
  -----------
  Revert unintentional diff from cd826d6e840ed33ad88458c862da5f9fcc6e908c

This is part of a forthcoming fix for issues observed in #91310, and was
unintentionally committed as part of the VTT type changes revert


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

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
    M llvm/test/CodeGen/NVPTX/and-or-setcc.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
    M llvm/test/CodeGen/NVPTX/bf16x2-instructions-approx.ll
    M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/convert-fp-i8.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm80.ll
    M llvm/test/CodeGen/NVPTX/convert-sm90.ll
    M llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M llvm/test/CodeGen/NVPTX/div.ll
    M llvm/test/CodeGen/NVPTX/f16-abs.ll
    M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/f32-lg2.ll
    M llvm/test/CodeGen/NVPTX/fabs-intrinsics.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-contract.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-fma-intrinsic.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-instruction-flag.ll
    M llvm/test/CodeGen/NVPTX/fp-contract.ll
    M llvm/test/CodeGen/NVPTX/frem.ll
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/CodeGen/NVPTX/intrinsics.ll
    M llvm/test/CodeGen/NVPTX/ldg-invariant.ll
    M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
    M llvm/test/CodeGen/NVPTX/load-store-scalars.ll
    M llvm/test/CodeGen/NVPTX/load-store-vectors.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll
    M llvm/test/CodeGen/NVPTX/misched_func_call.ll
    M llvm/test/CodeGen/NVPTX/param-add.ll
    M llvm/test/CodeGen/NVPTX/rcp-opt.ll
    M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
    M llvm/test/CodeGen/NVPTX/redux-sync-f32.ll
    M llvm/test/CodeGen/NVPTX/reg-types.ll
    M llvm/test/CodeGen/NVPTX/st-param-imm.ll
    M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
    M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
    M llvm/test/CodeGen/NVPTX/variadics-backend.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll

  Log Message:
  -----------
  [NVPTX] Switch to untyped float registers (#137011)

Register types in PTX are simply syntactic sugar and emitting them has
added lots of unnecessary complexity to the NVPTX backend. This change
takes the first step to their removal by using ".b" registers instead of
".f" in all cases. This should shake out any potential issues or bugs in
ptxas preventing full removal and pre-fetches many of the required test
updates.


  Commit: 9a8f90dba3f8c25cbb3525a482053d3abcd3fddc
      https://github.com/llvm/llvm-project/commit/9a8f90dba3f8c25cbb3525a482053d3abcd3fddc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    A llvm/include/llvm/ProfileData/IndexedMemProfData.h
    M llvm/lib/ProfileData/CMakeLists.txt
    A llvm/lib/ProfileData/IndexedMemProfData.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp

  Log Message:
  -----------
  [memprof] Move writeMemProf to a separate file (#137051)

This patch moves writeMemProf and its subroutines to a separate file.

The intent is as follows:

- Reduce the size of InstrProfWriter.cpp.
- Move the subroutines to a separate file because they don't interact
  with anything else in InstrProfWriter.cpp.

Remarks:

- The new file is named IndexedMemProfData.cpp without "Writer" in the
  name so that we can move the reader code to this file in the future.
- This patch just moves code without changing the function signatures
  for now.  It might make sense to implement a class encompassing
  "serialize" and "deserialize" methods for IndexedMemProfData, but
  that's left to subsequent patches.


  Commit: d72f1f92f469a5d0ee28dc89f72977634d90d111
      https://github.com/llvm/llvm-project/commit/d72f1f92f469a5d0ee28dc89f72977634d90d111
  Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp

  Log Message:
  -----------
  Bug fix in FindModuleUUID (#137075)

In some core file, we are seeing that it's not always the case that the
ELF header would exist in the first region in NT_FILES section.
Therefore the FindModuleUUID is not able to find the module UUID by just
returning the first entry with path matching.

This fix change the behavior to continue search the NT_FILE entries
until finding a valid UUID with path matching.

Co-authored-by: George Hu <georgehuyubo at gmail.com>


  Commit: 0d00b6bc3b459122de47d16c5153887063f4ea4b
      https://github.com/llvm/llvm-project/commit/0d00b6bc3b459122de47d16c5153887063f4ea4b
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    R libc/hdr/offsetof_macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/jmp_buf.h
    M libc/include/setjmp.yaml
    M libc/src/setjmp/CMakeLists.txt
    R libc/src/setjmp/linux/CMakeLists.txt
    R libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
    M libc/src/setjmp/setjmp_impl.h
    R libc/src/setjmp/siglongjmp.cpp
    R libc/src/setjmp/siglongjmp.h
    R libc/src/setjmp/sigsetjmp.h
    R libc/src/setjmp/sigsetjmp_epilogue.h
    M libc/src/setjmp/x86_64/CMakeLists.txt
    M libc/src/setjmp/x86_64/setjmp.cpp
    R libc/src/setjmp/x86_64/sigsetjmp.cpp
    M libc/test/src/setjmp/CMakeLists.txt
    R libc/test/src/setjmp/sigsetjmp_test.cpp

  Log Message:
  -----------
  Revert "[libc] build fix for sigsetjmp (#137047)" (#137077)

This reverts commit f07511a0e0d2ac9bee9ae12a9ad68e279e352634.

This reverts commit 5bb4cf9d9189c41de50adffd960eb2188140eb9c.

It caused a CMake configuration issue.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td

  Log Message:
  -----------
  [RISCV] Check the extension type for atomic loads in isel patterns. (#137019)

Previously we ignored the extension type and only used the memory type.
The extension type on RISC-V today can only be nonextload, extload, or
sextload. It is ok to treat extload as the same as sextload so ignoring
the extension type is fine.

For #136502, we want to support zextload as well so we will need to
disambiguate based on the extension type.

I wanted to use IsAtomic/IsZeroExtLoad/IsSignExtLoad/IsAnyExtLoad flags
from PatFrags to autogenerate the predicates, but those aren't hooked up
properly in tablegen for ISD::ATOMIC_LOAD. Fixing that will impact other
targets as almost all of them also ignore the extension type.


  Commit: 0547e84181ff10b24d6363bbfc97f168fe245397
      https://github.com/llvm/llvm-project/commit/0547e84181ff10b24d6363bbfc97f168fe245397
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/initializes.ll

  Log Message:
  -----------
  [FunctionAttrs] Bail if initializes range overflows 64-bit signed int (#137053)

Otherwise the range doesn't make sense since we interpret it as signed.

Fixes #134115


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

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

  Log Message:
  -----------
  [gn build] Port 9a8f90dba3f8


  Commit: 4f36ada1e205df08ad4377df88729f8defb36558
      https://github.com/llvm/llvm-project/commit/4f36ada1e205df08ad4377df88729f8defb36558
  Author: Bob Wilson <bob.wilson at apple.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/Preprocessor/print-header-json.c
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [Clang] Fix crash when -header-include-filtering is not specified (#136232)

If you specify -header-include-format=json, the only filtering option
currently supported is -header-include-filtering=only-direct-system. If
you specify some other filtering option, Clang gives an error message.
But, if you do not specify the filtering option at all, Clang crashes
when producing the error message, since it tries to get the value of the
unused option.


  Commit: 239718055d7260caa3e6631e82d68ac27e01c1f4
      https://github.com/llvm/llvm-project/commit/239718055d7260caa3e6631e82d68ac27e01c1f4
  Author: Robert O'Callahan <rocallahan at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/Options.td
    A lldb/test/API/commands/process/reverse-continue/Makefile
    A lldb/test/API/commands/process/reverse-continue/TestReverseContinue.py
    A lldb/test/API/commands/process/reverse-continue/TestReverseContinueNotSupported.py
    A lldb/test/API/commands/process/reverse-continue/main.c
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb] Implement CLI support for reverse-continue (#132783)

This introduces the options "-F/--forward" and "-R/--reverse" to
`process continue`.

These only work if you're running with a gdbserver backend that supports
reverse execution, such as rr. For testing we rely on the fake
reverse-execution functionality in `lldbreverse.py`.


  Commit: 55160e6a89820f219eaa218fa02da2006213ed2c
      https://github.com/llvm/llvm-project/commit/55160e6a89820f219eaa218fa02da2006213ed2c
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  [ConstEval] Fix crash when comparing strings past the end (#137078)

When `ArePotentiallyOverlappingStringLiterals`, added in
https://github.com/llvm/llvm-project/pull/109208, compares string
literals it drops the front of the string with the greatest offset from
its base pointer. The number of characters dropped is equal to the
difference between the two strings' offsets from their base pointers.
This would trigger an assert when the resulting offset is past the end
of the object. Not only are one-past-the-end pointers legal constructs,
the compiler should not crash even when faced with illegal constructs.

rdar://149865910


  Commit: de2f9395e6617e58e168fa3b2886f85109849787
      https://github.com/llvm/llvm-project/commit/de2f9395e6617e58e168fa3b2886f85109849787
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp

  Log Message:
  -----------
  [lldb] Quote module name in error message (#137083)

rdar://149554634


  Commit: 93705c3a76e9b00137be84fbc6ef3b4af5fcc031
      https://github.com/llvm/llvm-project/commit/93705c3a76e9b00137be84fbc6ef3b4af5fcc031
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  Revert "[ConstEval] Fix crash when comparing strings past the end" (#137088)

Reverts llvm/llvm-project#137078


  Commit: 6ba704a7f4e72ba088fa19c7622e42b9c460da47
      https://github.com/llvm/llvm-project/commit/6ba704a7f4e72ba088fa19c7622e42b9c460da47
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/Handler/NextRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/Handler/StepInRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h

  Log Message:
  -----------
  [lldb-dap] Migrate 'stepIn' request to well structured types. (#137071)

Migrates the 'stepIn' request handler to have well structured types
instead of raw json values.

I also noticed in the 'next' request handler we were not passing the
'RunMode' flag. Updated the 'next' request handler as well.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
    M llvm/test/CodeGen/RISCV/xqccmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/xqccmp-with-float.ll
    M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/zcmp-with-float.ll

  Log Message:
  -----------
  Revert "[RISCV] Allow spilling to unused Zcmp Stack (#125959)" (#137060)

This reverts commit 50cdf6cbc5035345507bb4d23fcb0292272754eb.

This patch causes miscompiles with vector and produces some odd code for
ilp32e.


  Commit: 905f1d8068a5bc1149732b46afc3f5dd780aa5d9
      https://github.com/llvm/llvm-project/commit/905f1d8068a5bc1149732b46afc3f5dd780aa5d9
  Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.h
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    M mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    M mlir/test/lib/Dialect/GPU/TestGpuRewrite.cpp

  Log Message:
  -----------
  [mlir][AMDGPU] Implement gpu.subgroup_reduce with DPP intrinsics on AMD GPUs (#133204)

When performing cross-lane reductions using subgroup_reduce ops across
contiguous lanes on AMD GPUs, lower to Data Parallel Primitives (DPP)
ops when possible. This reduces latency on applicable devices.
See related [Issue](https://github.com/iree-org/iree/issues/20007)
To do:
- Improve lowering to subgroup_reduce in compatible matvecs (these get
directly lowered to gpu.shuffles in an earlier pass)

---------

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


  Commit: 0400b8e8fd2ff66c8faab1fa818dec8199d969ce
      https://github.com/llvm/llvm-project/commit/0400b8e8fd2ff66c8faab1fa818dec8199d969ce
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/test/Driver/fsanitize.c
    M clang/test/Driver/sanitizer-ld.c

  Log Message:
  -----------
  [NFC][CFI] Add CFI minimal runtime tests (#137093)


  Commit: 9ad219372a31ec362b8ea462d694b8b819127235
      https://github.com/llvm/llvm-project/commit/9ad219372a31ec362b8ea462d694b8b819127235
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/extractelement-load.ll

  Log Message:
  -----------
  [X86][NFC] Precommit test for #136520


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

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

  Log Message:
  -----------
  [bazel] Add missing deps after 905f1d8068a5bc1149732b46afc3f5dd780aa5d9


  Commit: b45225fd0c756d969f1188baaef374dffd561aa2
      https://github.com/llvm/llvm-project/commit/b45225fd0c756d969f1188baaef374dffd561aa2
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/utils/vim/syntax/llvm.vim

  Log Message:
  -----------
  [Utils][vim] Add missing highlights for disjoint (#136801)

This patch adds the `disjoint` as keyword.


  Commit: 5981be76925c2d6ee5b33029332beae254addb46
      https://github.com/llvm/llvm-project/commit/5981be76925c2d6ee5b33029332beae254addb46
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [RISCV] Add Andes A45/AX45 processor definition (#136832)

Andes A45/AX45 are 32/64bit in-order dual-issue 8-stage pipeline
linux-capable CPU implementing the RV[32|64]IMAFDC_Zba_Zbb_Zbs ISA
extensions. They are developed by Andes Technology
https://www.andestech.com, a RISC-V IP provider.

The overviews for A45/AX45:
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-a45/
https://www.andestech.com/en/products-solutions/andescore-processors/riscv-ax45/

Scheduling model will be implemented in a later PR.


  Commit: a68c8e831452febc82ffb4091134aeb87ca52c2b
      https://github.com/llvm/llvm-project/commit/a68c8e831452febc82ffb4091134aeb87ca52c2b
  Author: Cedric <14017092+douyixuan at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir][vector] Fix parser of vector.transfer_read (#133721)

This PR adds a check in the parser to prevent a crash when
vector.transfer_read fails to create minor identity permutation. map.
Fixes #132851

a.mlir

```
module {
  func.func @test_vector.transfer_read(%arg1: memref<?xindex>) -> vector<3x4xi32> {
    %c3_i32 = arith.constant 3 : i32
    %0 = vector.transfer_read %arg1[%c3_i32, %c3_i32], %c3_i32 : memref<?xindex>, vector<3x4xi32>
    return %0 : vector<3x4xi32>
  }
}
```


  Commit: 178cdbf746bbc49ad18b5e83a95514ddd42f764c
      https://github.com/llvm/llvm-project/commit/178cdbf746bbc49ad18b5e83a95514ddd42f764c
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Add missing deps in mlir/test/BUILD.bazel after 905f1d8068a5bc1149732b46afc3f5dd780aa5d9


  Commit: 30fec128e8cc515392521628771510b347411c28
      https://github.com/llvm/llvm-project/commit/30fec128e8cc515392521628771510b347411c28
  Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/GPU/CMakeLists.txt

  Log Message:
  -----------
  [mlir][AMDGPU] Add missing dependency (#137107)

Add missing deps after
https://github.com/llvm/llvm-project/commit/905f1d8068a5bc1149732b46afc3f5dd780aa5d9

---------

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


  Commit: ea0dbee80813edf1c8a57d1c1bfd7fadee71d3fa
      https://github.com/llvm/llvm-project/commit/ea0dbee80813edf1c8a57d1c1bfd7fadee71d3fa
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/ProfileData/IndexedMemProfData.cpp
    M llvm/lib/ProfileData/InstrProfReader.cpp

  Log Message:
  -----------
  [memprof] Move IndexedMemProfReader::deserialize to IndexedemProfData.cpp (NFC) (#137089)

This patch moves IndexedMemProfReader::deserialize and its subroutines
to IndexedMemProfData.cpp, building on:

  commit 9a8f90dba3f8c25cbb3525a482053d3abcd3fddc
  Author: Kazu Hirata <kazu at google.com>
  Date:   Wed Apr 23 15:39:45 2025 -0700

The intent is as follows:

- Reduce the size of InstrProfReader.cpp.
- Move the subroutines to a separate file because they don't interact
  with anything else in InstrProfReader.cpp.


  Commit: de1af6b7271c6f4fc67848a849cf8fa6000d2b97
      https://github.com/llvm/llvm-project/commit/de1af6b7271c6f4fc67848a849cf8fa6000d2b97
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  Eval string one past end reland (#137091)

Relands #137078 after updating clang/test/AST/ByteCode/cxx20.cpp to
account for diagnostic outputs that differ between Linux and macOS.


  Commit: 0975c09c671aca48c25b1f5952a675931ae93702
      https://github.com/llvm/llvm-project/commit/0975c09c671aca48c25b1f5952a675931ae93702
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/Modules/Inputs/PR137102/module.modulemap
    A clang/test/Modules/Inputs/PR137102/type_aware_destroying_new_delete.h
    A clang/test/Modules/type-aware-destroying-new-and-delete-modules.cpp
    A clang/test/PCH/Inputs/type_aware_destroying_new_delete.h
    A clang/test/PCH/type-aware-destroying-new-and-delete-pch.cpp

  Log Message:
  -----------
  [clang][p2719] Module deserialization does not restore allocator flags (#137102)

When serializing and deserializing a FunctionDecl we don't recover
whether or not the decl was a type aware allocator or destroying delete,
because in the final PR that information was placed in a side table in
ASTContext.

In principle it should be possible to re-do the semantic checks to
determine what these flags should be when deserializing, but it seems
like the most robust path is simply recording the flags directly in the
serialized AST.


  Commit: e6466420505d9940fda087f30a500fb03e5507b5
      https://github.com/llvm/llvm-project/commit/e6466420505d9940fda087f30a500fb03e5507b5
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/module-roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/module-flags.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Allow strings in module flag value (#136793)

Expand support a bit beyond integers.

Next step is to support more complex metadata values (e.g. !"CG Profile"
and !"ProfileSummary"), but that's a bit more complex and deserves it
own PR.


  Commit: cb8495c0fcf32592c6fcd23429b702dccb57d2eb
      https://github.com/llvm/llvm-project/commit/cb8495c0fcf32592c6fcd23429b702dccb57d2eb
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

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

  Log Message:
  -----------
  [Driver][CFI] Add missing '-' into error message (#137097)

Co-authored-by: Jim Lin <jim at andestech.com>


  Commit: cd92d8db34afd95335697f85a527028fa8309d18
      https://github.com/llvm/llvm-project/commit/cd92d8db34afd95335697f85a527028fa8309d18
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/test/Format/lit.local.cfg

  Log Message:
  -----------
  [clang-format][NFC] Reformat clang/test/Format/lit.local.cfg with black


  Commit: cb96a3dc07b0a26023633ae91fab9b4213730236
      https://github.com/llvm/llvm-project/commit/cb96a3dc07b0a26023633ae91fab9b4213730236
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    A llvm/test/Transforms/PGOProfile/memprof-dump-matched-alloc-site.ll
    M llvm/test/Transforms/PGOProfile/memprof-dump-matched-call-sites.ll
    M llvm/test/Transforms/PGOProfile/memprof.ll

  Log Message:
  -----------
  [memprof] Dump the number of matched frames (#137082)

This patch teaches readMemprof to dump the number of frames for each
allocation site match.  This information helps us analyze what part of
the call stack in the MemProf profile has matched the IR.

Aside from updating existing test cases, this patch adds one more test
case, memprof-dump-matched-alloc-site.ll, because none of the existing
test cases has the number of frames greater than one.


  Commit: 77fe6aaeaaf2b16e021675e92e543dafd18bbc0b
      https://github.com/llvm/llvm-project/commit/77fe6aaeaaf2b16e021675e92e543dafd18bbc0b
  Author: Wenju He <wenju.he at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc] only check filename part of the source for avoiding duplication (#135710)

llvm-diff shows this PR has no changes to amdgcn--amdhsa.bc.

Motivation is that in our downstream the same category of target
built-ins, e.g. math, are organized in several different folders. For
example, in target SOURCES we have math-common/cos.cl, while in generic
SOURCES it is math/cos.cl. Based on current check rule that compares
both folder name and base filename, target math-common/cos.cl won't
override math/cos.cl when collecting source files from SOURCES files in
cmake function libclc_configure_lib_source.

With this PR, we allow folder name to be different in the process.

A notable change of this PR is that two entries in SOURCES with the same
base filename must not implements the same built-in.


  Commit: 31c7997a4acb838c94d5ab40baaf154556532ad9
      https://github.com/llvm/llvm-project/commit/31c7997a4acb838c94d5ab40baaf154556532ad9
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExpr.cpp

  Log Message:
  -----------
  [cfi] Fix one -fno-sanitize-merge case, and add two TODOs (#135438)

-fno-sanitize-merge (introduced in
https://github.com/llvm/llvm-project/pull/120464) nearly works for CFI:
code that calls EmitCheck will already check the merge options. This
patch fixes one EmitTrapCheck call, which did not check the merge
options, and for two other EmitTrapChecks, adds two TODOs that explain
why it is difficult to fix them.


  Commit: 096ab51de03437e38f97a48b8f2d453fb903414a
      https://github.com/llvm/llvm-project/commit/096ab51de03437e38f97a48b8f2d453fb903414a
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-04-23 (Wed, 23 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/RegisterContextDarwin_riscv32.cpp
    A lldb/source/Plugins/Process/Utility/RegisterContextDarwin_riscv32.h
    A lldb/test/API/macosx/riscv32-corefile/Makefile
    A lldb/test/API/macosx/riscv32-corefile/TestRV32MachOCorefile.py
    A lldb/test/API/macosx/riscv32-corefile/create-empty-riscv-corefile.cpp

  Log Message:
  -----------
  [lldb][MachO] MachO corefile support for riscv32 binaries (#137092)

Add support for reading a macho corefile with CPU_TYPE_RISCV and the
riscv32 general purpose register file. I added code for the floating
point and exception registers too, but haven't exercised this. If we
start putting the full CSR register bank in a riscv corefile, it'll be
in separate 4k byte chunks, but I don't have a corefile to test against
that so I haven't written the code to read it.

The RegisterContextDarwin_riscv32 is copied & in the style of the other
RegisterContextDarwin classes; it's not the first choice I would make
for representing this, but it wasn't worth changing for this cputype.

rdar://145014653


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

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 096ab51de034


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

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

  Log Message:
  -----------
  [SelectionDAG] Add NewSDValueDbgMsg to getAtomic.


  Commit: fb0000b6624a5f2df25d10e3667111e96dd1abd5
      https://github.com/llvm/llvm-project/commit/fb0000b6624a5f2df25d10e3667111e96dd1abd5
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Interpreter/OptionValueEnumeration.h
    M lldb/source/Interpreter/OptionValueEnumeration.cpp
    M lldb/test/API/commands/settings/TestSettings.py

  Log Message:
  -----------
  [lldb][lldb-dap] Add ToJSON for OptionValueEnumeration (#137007)

This automatically enables reading enum settings in the SB API


  Commit: de81b852fd8d2b654e1c7112f198026aa272c6b3
      https://github.com/llvm/llvm-project/commit/de81b852fd8d2b654e1c7112f198026aa272c6b3
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-varargs-caller-broken.ll
    M llvm/test/CodeGen/AArch64/sve-varargs.ll

  Log Message:
  -----------
  [AArch64] Allow variadic calls with SVE argument if it is named. (#136833)

The following case used to work:

  void foo(svint32_t a, ...);
  void bar(svint32_t a) { foo(a); }

but 6c9086d13fa7e1069e75ed2d139aae30ee3863c8 introduced a regression
that wasn't caught by the existing test `sve-varargs.ll` because the
call in the test wasn't a tail call and therefore skipped the code-path
with the `report_fatal_error`.


  Commit: 45a3056a4b3b05d2d1bce7a96437dddead60c071
      https://github.com/llvm/llvm-project/commit/45a3056a4b3b05d2d1bce7a96437dddead60c071
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A flang/docs/FortranStandardsSupport.md
    M flang/docs/index.md

  Log Message:
  -----------
  [Flang] Add a Fortran Standards Support doc (#132195)


  Commit: 7af555e524b5cddc338bf73b87d8b666611cefbc
      https://github.com/llvm/llvm-project/commit/7af555e524b5cddc338bf73b87d8b666611cefbc
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/ARM/popcnt.ll
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/ctz_zero_return_test.ll
    M llvm/test/CodeGen/RISCV/pr56457.ll
    M llvm/test/CodeGen/RISCV/pr95271.ll
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/sextw-removal.ll
    M llvm/test/CodeGen/Thumb2/mve-ctpop.ll

  Log Message:
  -----------
  [ARM][RISCV] Partially revert #101786 (#137120)

The change as is breaks the Linux kernel build as pointed out in the
comments.


  Commit: 886f1199f07bbcc385e35b90b9e620cbc8d76068
      https://github.com/llvm/llvm-project/commit/886f1199f07bbcc385e35b90b9e620cbc8d76068
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  [AMDGPU] Use variadic isa<>. NFC. (#137016)


  Commit: bea110db3ed1fa1215bb8e22d2057019fcbd2d16
      https://github.com/llvm/llvm-project/commit/bea110db3ed1fa1215bb8e22d2057019fcbd2d16
  Author: Hampus Adolfsson <15944368+HampusAdolfsson at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp

  Log Message:
  -----------
  [clangd] Strip invalid fromRanges for outgoing calls (#134657)

`CallHierarchyOutgoingCall::fromRanges` are interpreted as ranges in the
same file as the item for which 'outgoingCalls' was called.

It's possible for outgoing calls to be in a different file than that
item if the item is just a declaration (e.g. in a header file). Now,
such calls are dropped instead of being returned to the client.

This is the same as the change made in #111616, but now for outgoing
calls.

Fixes clangd/clangd#2350

---------

Co-authored-by: Nathan Ridge <zeratul976 at hotmail.com>


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr51366-sunk-instruction-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll

  Log Message:
  -----------
  [VPlan] Remove ILV::sinkScalarOperands. (#136023)

Remove legacy ILV sinkScalarOperands, which is superseded by the
sinkScalarOperands VPlan transforms.

There are a few cases that aren't handled by VPlan's sinkScalarOperands,
because the recipes doesn't support replicating. Those are pointer
inductions and blends.

We could probably improve this further, by allowing replication for more
recipes, but I don't think the extra complexity is warranted.

Depends on https://github.com/llvm/llvm-project/pull/136021.

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


  Commit: 0c61b24337236a0f67be54c26e12c98e9aecef5b
      https://github.com/llvm/llvm-project/commit/0c61b24337236a0f67be54c26e12c98e9aecef5b
  Author: Oleksandr "Alex" Zinenko <git at ozinenko.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/ConstantArgumentGlobalisation.cpp
    M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M mlir/include/mlir/Transforms/GreedyPatternRewriteDriver.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
    M mlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
    M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/BufferDeallocationSimplification.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Reducer/ReductionTreePass.cpp
    M mlir/lib/Transforms/Canonicalizer.cpp
    M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
    M mlir/test/lib/Dialect/Affine/TestAffineDataCopy.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir] add a fluent API to GreedyRewriterConfig (#137122)

This is similar to other configuration objects used across MLIR.

Rename some fields to better reflect that they are no longer booleans.

Reland 04d261101b4f229189463136a794e3e362a793af / #132253.


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

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

  Log Message:
  -----------
  [VPlan] Remove unneeded early continue. (NFC)

As suggested in
https://github.com/llvm/llvm-project/pull/136455, now unreachable exit
blocks won't have any phi nodes.


  Commit: a3d05e89873654dd1b27979b2bfd82ddd4859ba7
      https://github.com/llvm/llvm-project/commit/a3d05e89873654dd1b27979b2bfd82ddd4859ba7
  Author: anjenner <161845516+anjenner at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.AFLCustomIRMutator.opt.ll

  Log Message:
  -----------
  Remove an incorrect assert in MFMASmallGemmSingleWaveOpt. (#130131)

This assert was failing in a fuzzing test. I consulted with @jrbyrnes
who said:

The MFMASmallGemmSingleWaveOpt::apply() method is invoked if and only if
the user has inserted an intrinsic llvm.amdgcn.iglp.opt(i32 1) into
their source code. This intrinsic applies a highly specialized DAG
mutation to result in specific scheduling for a specific set of kernels.
These assertions are really just confirming that the characteristics of
the kernel match what is expected (i.e. The kernels are similar to the
ones this DAG mutation strategy were designed against).

However, if we apply this DAG mutation to kernels for which is was not
designed, then we may not find the types of instructions we are looking
for, and may end up with empty caches.

I think it should be fine to just return false if the cache is empty
instead of the assert.


  Commit: 03c2862404a9ab19940f87f8fb2dbe01818ab439
      https://github.com/llvm/llvm-project/commit/03c2862404a9ab19940f87f8fb2dbe01818ab439
  Author: Yuzhiy <44502685+Yuzhiy05 at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libcxx/include/__ranges/to.h
    M libcxx/test/libcxx/ranges/range.utility/range.utility.conv/to.static_assert.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Reject non-class types in ranges::to  (#135802)

This patch adds `static_assert` using `is_class_v` and `is_union_v` to
reject no-class type template parameters.

Fixes #132133

---------

Co-authored-by: A. Jiang <de34 at live.cn>


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll

  Log Message:
  -----------
  [RISCV] Add fixed-length patterns for disjoint or patterns for vwadd[u].v{v,x} (#136824)

This is the fixed-length equivalent of #136716.

The pattern we need to match is ({s,z}ext_vl (or_vl disjoint a, b)).
This only allows or_vls with an undef passthru, which allows us to
ignore its mask and vl and just take it from the {s,z}ext_vl.

A riscv_or_vl_is_add_oneuse PatFrag is added to mirror or_is_add in
RISCVInstrInfo.td.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h

  Log Message:
  -----------
  [VPlan] Fix typo in assertion. NFC (#137009)


  Commit: be044976b6c27a5553d7e83d60f64c4a72c0de52
      https://github.com/llvm/llvm-project/commit/be044976b6c27a5553d7e83d60f64c4a72c0de52
  Author: SivanShani-Arm <sivan.shani at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/lib/Headers/arm_acle.h
    M clang/test/CodeGen/AArch64/gcs.c

  Log Message:
  -----------
  [AArch64] Update __gcsss intrinsic to match revised ACLE specification (#136850)

The original __gcsss intrinsic was implemented based on:
https://github.com/ARM-software/acle/pull/260
with the signature: const void *__gcsss(const void *)

Per the updated specification in:
https://github.com/ARM-software/acle/pull/364
both const qualifiers have been removed. This commit updates the
signature accordingly to: void *__gcsss(void *)

This aligns the implementation with the latest ACLE definition.


  Commit: 59b26abbbe89994c2ffd50a933654be247b68aaf
      https://github.com/llvm/llvm-project/commit/59b26abbbe89994c2ffd50a933654be247b68aaf
  Author: Camsyn <camsyn at foxmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A compiler-rt/test/tsan/stack_race3.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/test/Instrumentation/ThreadSanitizer/capture.ll

  Log Message:
  -----------
  [TSan, SanitizerBinaryMetadata] Analyze the capture status for `alloca` rather than arbitrary `Addr` (#132756)

This PR is based on my last PR #132752 (the first commit of this PR),
but addressing a different issue.

This commit addresses the limitation in `PointerMayBeCaptured` analysis
when dealing with derived pointers (e.g. arr+1) as described in issue
#132739.

The current implementation of `PointerMayBeCaptured` may miss captures
of the underlying `alloca` when analyzing derived pointers, leading to
some FNs in TSan, as follows:
```cpp
void *Thread(void *a) {
  ((int*)a)[1] = 43;
  return 0;
}

int main() {
  int Arr[2] = {41, 42};
  pthread_t t;
  pthread_create(&t, 0, Thread, &Arr[0]);
  // Missed instrumentation here due to the FN of PointerMayBeCaptured
  Arr[1] = 43;
  barrier_wait(&barrier);
  pthread_join(t, 0);
}
```
Refer to this [godbolt page](https://godbolt.org/z/n67GrxdcE) to get the
compilation result of TSan.

Even when `PointerMayBeCaptured` working correctly, it should backtrack
to the original `alloca` firstly during analysis, causing redundancy to
the outer's `findAllocaForValue`.
```cpp
    const AllocaInst *AI = findAllocaForValue(Addr);
    // Instead of Addr, we should check whether its base pointer is captured.
    if (AI && !PointerMayBeCaptured(Addr, true)) ...
```

Key changes:
Directly analyze the capture status of the underlying `alloca` instead
of derived pointers to ensure accurate capture detection
```cpp
    const AllocaInst *AI = findAllocaForValue(Addr);
    // Instead of Addr, we should check whether its base pointer is captured.
    if (AI && !PointerMayBeCaptured(AI, true)) ...
```


  Commit: 1ec22fae7e2c72b763b1c5ee6b743c59b5a4064c
      https://github.com/llvm/llvm-project/commit/1ec22fae7e2c72b763b1c5ee6b743c59b5a4064c
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrFP.td
    M llvm/test/CodeGen/SystemZ/fp-abs-01.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-02.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-03.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-04.ll
    M llvm/test/CodeGen/SystemZ/fp-mul-08.ll
    M llvm/test/CodeGen/SystemZ/fp-mul-10.ll
    M llvm/test/CodeGen/SystemZ/fp-neg-01.ll
    M llvm/test/CodeGen/SystemZ/fp-neg-02.ll

  Log Message:
  -----------
  [SystemZ] Handle f16 load positive/negative/complement without libcalls. (#136286)

This can be done directly with the (64-bit) target instruction as only the sign bit
is changed.


  Commit: 55066b83612b6bcc8c38ef6a84e5230ad116730f
      https://github.com/llvm/llvm-project/commit/55066b83612b6bcc8c38ef6a84e5230ad116730f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    A clang/test/AST/ByteCode/i686.cpp

  Log Message:
  -----------
  [clang][bytecode] Compute pointer differences as 64bit integers (#137128)

And only convert to the target type after that.


  Commit: 94a14f9f0d884eebb87fb3003229ffee5f95d1c8
      https://github.com/llvm/llvm-project/commit/94a14f9f0d884eebb87fb3003229ffee5f95d1c8
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrFP.td
    M llvm/test/CodeGen/SystemZ/fp-copysign-01.ll
    M llvm/test/CodeGen/SystemZ/fp-copysign-02.ll
    M llvm/test/CodeGen/SystemZ/fp-copysign-03.ll

  Log Message:
  -----------
  [SystemZ] Add DAGCombine for FCOPYSIGN to remove rounding. (#136131)

Add a DAGCombine for FCOPYSIGN that removes the rounding which is never
needed as the sign bit is already in the correct place. This helps in particular the
rounding to f16 case which needs a libcall.

Also remove the roundings for other FP VTs and simplify the CPSDR
patterns correspondingly.

fp-copysign-03.ll test updated, now also covering the other FP VT
combinations.


  Commit: e98a61dc326c1b564461c0ae4fc693be5113d540
      https://github.com/llvm/llvm-project/commit/e98a61dc326c1b564461c0ae4fc693be5113d540
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add verifier check for Concat Op (#136047)

This adds verifier check for Concat Op
to make sure the sum of concatenated axis dimensions is equal to the
output's axis dimension

add tests in verifier.mlir
also moved existing concat verifier checks to verifier.mlir

Signed-off-by: Tai Ly <tai.ly at arm.com>


  Commit: 66461dbb3b8d107fae2d50049205ddb8c192049c
      https://github.com/llvm/llvm-project/commit/66461dbb3b8d107fae2d50049205ddb8c192049c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
      SPIRV: Set NoPHIs property after rewriting them (#136327)

There should be no PHIs after selection, as OpPhi is used
 instead. This hopefully avoids errors in #135277.


  Commit: c6c08462ee3e8fc3d9cf9a69bb51175be49d5d3c
      https://github.com/llvm/llvm-project/commit/c6c08462ee3e8fc3d9cf9a69bb51175be49d5d3c
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    A clang/bindings/python/tests/cindex/INPUTS/a.inc
    A clang/bindings/python/tests/cindex/INPUTS/b.inc
    A clang/bindings/python/tests/cindex/INPUTS/testfile.c
    M clang/bindings/python/tests/cindex/test_file.py
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [libclang/python] Add equality comparison operators for File (#130383)

This covers the `File` interface changes added by #120590

---------

Co-authored-by: Mathias Stearn <redbeard0531 at gmail.com>
Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: 82c25d27501996683f30eb92dabf8a11925b7a62
      https://github.com/llvm/llvm-project/commit/82c25d27501996683f30eb92dabf8a11925b7a62
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/test/AST/ByteCode/i686.cpp

  Log Message:
  -----------
  [clang][bytecode] Disable i686 test

The array is too big and we don't have array fillers yet, see
e.g. https://lab.llvm.org/buildbot/#/builders/154/builds/15255


  Commit: 88083a0c42e69e5967737e088ac6e5b1d12343f0
      https://github.com/llvm/llvm-project/commit/88083a0c42e69e5967737e088ac6e5b1d12343f0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - handle 512-bit X86ISD::VPERMI with lower half demanded elts (#137139)

512-bit X86ISD::VPERMI nodes handle the lower/upper 256-bits separately - so if we don't demand the upper half elements, we can just use the 256-bit variant.


  Commit: ebceb732d5afa7b97b73b34ce078a58c654ff0a0
      https://github.com/llvm/llvm-project/commit/ebceb732d5afa7b97b73b34ce078a58c654ff0a0
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [mlir][vector] Update the folder for vector.{insert|extract} (#136579)

This is a minor follow-up to #135498. It ensures that operations like
the following are not treated as out-of-bounds accesses and can be
folded correctly (*):

```mlir
  %c_neg_1 = arith.constant -1 : index
  %0 = vector.insert %value_to_store, %dest[%c_neg_1] : vector<5xf32> into vector<4x5xf32>
  %1 = vector.extract %src[%c_neg_1, 0] : f32 from vector<4x5xf32>
```

In addition to adding tests for the case above, this PR also relocates
the tests from #135498 to be alongside existing tests for the
`vector.{insert|extract}` folder, and reformats them to follow:
  * https://mlir.llvm.org/getting_started/TestingGuide/

For example:
  * The "no_fold" prefix is now used to label negative tests.
  * Redundant check lines have been removed (e.g., CHECK: vector.insert
    is sufficient to verify that folding did not occur).

(*) As per https://mlir.llvm.org/docs/Dialects/Vector/#vectorinsert-vectorinsertop,
these are poison values.


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/Utils.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/AArch64InstrGISel.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll

  Log Message:
  -----------
  Revert "[LLVM][ISel][AArch64 Remove AArch64ISD::FCM##z nodes. (#135817)"

This reverts commit 15d8b3cae9debc2bd7d27ca92ff599ba9fb30da5.


  Commit: e37c236597137bae4f6728e163e9f81a1d9aff18
      https://github.com/llvm/llvm-project/commit/e37c236597137bae4f6728e163e9f81a1d9aff18
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Remove unnecessary dependencies. (#136999)


  Commit: d664c42baaed7f47a80f73a3974afd6e2593e41a
      https://github.com/llvm/llvm-project/commit/d664c42baaed7f47a80f73a3974afd6e2593e41a
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libclc/generic/include/clc/clc.h
    R libclc/generic/include/clc/clcmacros.h

  Log Message:
  -----------
  [libclc] Remove unnecessary clcmacros.h (#137149)

The macros defined by this file (not to be confused with clcmacro.h)
don't appear necessary for building libclc.

The language version macros should be handled by clang, and there are no
uses of NULL or kernel_exec in the source code.


  Commit: 6900e9026516963ae625b28dded2cdf0bd16e590
      https://github.com/llvm/llvm-project/commit/6900e9026516963ae625b28dded2cdf0bd16e590
  Author: jeremyd2019 <github at jdrake.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp

  Log Message:
  -----------
  [LLVM][TargetParser] Handle -msys targets the same as -cygwin. (#136817)

MSYS2 uses i686-pc-msys and x86_64-pc-msys as target, and is a fork of
Cygwin. There's an effort underway to try to switch as much as possible
to use -pc-cygwin targets, but the -msys target will be hanging around
for the forseeable future.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOverload.cpp
    A clang/test/Sema/implicit-void-ptr-cast.c

  Log Message:
  -----------
  [C] Add (new) -Wimplicit-void-ptr-cast to -Wc++-compat (#136855)

This introduces a new diagnostic group (-Wimplicit-void-ptr-cast),
grouped under -Wc++-compat, which diagnoses implicit conversions from
void * to another pointer type in C. It's a common source of
incompatibility with C++ and is something GCC diagnoses (though GCC does
not have a specific warning group for this).

Fixes #17792


  Commit: 2edade28245b1fc2b7cb0b39804894f8fdcfb7ff
      https://github.com/llvm/llvm-project/commit/2edade28245b1fc2b7cb0b39804894f8fdcfb7ff
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libclc/generic/include/clc/shared/vload.h
    M libclc/generic/include/clc/shared/vstore.h
    M libclc/generic/lib/shared/vload.cl
    M libclc/generic/lib/shared/vload_half.inc
    M libclc/generic/lib/shared/vstore.cl
    M libclc/generic/lib/shared/vstore_half.inc

  Log Message:
  -----------
  [libclc][NFC] Clang-format vload/vstore code


  Commit: acc335bfa7b00ab19bf9832870aaf207f587b48b
      https://github.com/llvm/llvm-project/commit/acc335bfa7b00ab19bf9832870aaf207f587b48b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/build-vector-128.ll
    M llvm/test/CodeGen/X86/build-vector-256.ll
    M llvm/test/CodeGen/X86/build-vector-512.ll

  Log Message:
  -----------
  [X86] Add build vector test patterns with only 2 unique scalars

Based off test coverage for #135753 - these should be lowered to BLEND(BROADCAST(X),BROADCAST(Y))


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

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

  Log Message:
  -----------
  [VPlan] Manage instruction metadata in VPlan. (#135272)

Add a new helper to manage IR metadata that can be progated to generated
instructions for recipes.

This helps to remove a number of remaining uses of getUnderlyingInstr
during VPlan execution.

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


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

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

  Log Message:
  -----------
  [IA] Remove unused argument. NFC


  Commit: dde00f5e22e81ac88b37d1502d2383985a58329d
      https://github.com/llvm/llvm-project/commit/dde00f5e22e81ac88b37d1502d2383985a58329d
  Author: Tejas Vipin <alissxlace at proton.me>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    R libc/test/src/math/performance_testing/BinaryOpSingleOutputPerf.h
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/PerfTest.h
    R libc/test/src/math/performance_testing/SingleInputSingleOutputPerf.h
    M libc/test/src/math/performance_testing/ceilf_perf.cpp
    M libc/test/src/math/performance_testing/cosf_perf.cpp
    M libc/test/src/math/performance_testing/exp10f16_perf.cpp
    M libc/test/src/math/performance_testing/exp2f16_perf.cpp
    M libc/test/src/math/performance_testing/exp2f_perf.cpp
    M libc/test/src/math/performance_testing/expf16_perf.cpp
    M libc/test/src/math/performance_testing/expf_perf.cpp
    M libc/test/src/math/performance_testing/expm1f_perf.cpp
    M libc/test/src/math/performance_testing/fabsf_perf.cpp
    M libc/test/src/math/performance_testing/floorf_perf.cpp
    M libc/test/src/math/performance_testing/fmod_perf.cpp
    M libc/test/src/math/performance_testing/fmodf128_perf.cpp
    M libc/test/src/math/performance_testing/fmodf16_perf.cpp
    M libc/test/src/math/performance_testing/fmodf_perf.cpp
    M libc/test/src/math/performance_testing/fmodl_perf.cpp
    M libc/test/src/math/performance_testing/fmul_perf.cpp
    M libc/test/src/math/performance_testing/fmull_perf.cpp
    M libc/test/src/math/performance_testing/hypot_perf.cpp
    M libc/test/src/math/performance_testing/hypotf16_perf.cpp
    M libc/test/src/math/performance_testing/hypotf_perf.cpp
    M libc/test/src/math/performance_testing/log10f_perf.cpp
    M libc/test/src/math/performance_testing/log1pf_perf.cpp
    M libc/test/src/math/performance_testing/log2f_perf.cpp
    M libc/test/src/math/performance_testing/logbf_perf.cpp
    M libc/test/src/math/performance_testing/logf_perf.cpp
    M libc/test/src/math/performance_testing/max_min_funcs_perf.cpp
    M libc/test/src/math/performance_testing/misc_basic_ops_perf.cpp
    M libc/test/src/math/performance_testing/nearbyintf_perf.cpp
    M libc/test/src/math/performance_testing/nearest_integer_funcs_perf.cpp
    M libc/test/src/math/performance_testing/rintf_perf.cpp
    M libc/test/src/math/performance_testing/roundf_perf.cpp
    M libc/test/src/math/performance_testing/sinf_perf.cpp
    M libc/test/src/math/performance_testing/sqrtf128_perf.cpp
    M libc/test/src/math/performance_testing/sqrtf_perf.cpp
    M libc/test/src/math/performance_testing/truncf_perf.cpp

  Log Message:
  -----------
  [libc][math] Improve performance test framework (#134501)

- Merges `BinaryOpSingleOutputPerf.h` and
`SingleInputSingleOutputPerf.h` files into a unified `PerfTest.h` and
update all performance tests to use this.
- Improve the output printed to log file for tests.
- Removes unused `run_diff` method and redundant `run_perf` call in
`BINARY_INPUT_SINGLE_OUTPUT_PERF_EX` (previously
`BINARY_OP_SINGLE_OUTPUT_PERF_EX`)
- Change `BINARY_INPUT_SINGLE_OUTPUT_PERF_EX` and
`SINGLE_INPUT_SINGLE_OUTPUT_PERF` to not define `main`


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

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

  Log Message:
  -----------
  [VPlan] Replace checking IR loop with checking VPlan predecessors (NFC).

Update check to use VPEarlyExitBlock's predecessors, which removes a
dependence on underlying IR and is more in line with the comment below.


  Commit: 79144643b6b82f05fd0cee8916a2162b14bfd9fd
      https://github.com/llvm/llvm-project/commit/79144643b6b82f05fd0cee8916a2162b14bfd9fd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/PhaseOrdering/X86/blendv-select.ll

  Log Message:
  -----------
  [PhaseOrdering][X86] blendv-select.ll - add test coverage for #66513


  Commit: e35cc2d387e170d0e1f6ef647f17423262feb1ea
      https://github.com/llvm/llvm-project/commit/e35cc2d387e170d0e1f6ef647f17423262feb1ea
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang][NFC] Clean up TypeSystemClang::DeclGetMangledName to LLVM-style

Will make upcoming changes in this area easier to read.


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

  Changed paths:
    M lldb/test/API/commands/process/reverse-continue/TestReverseContinueNotSupported.py

  Log Message:
  -----------
  [lldb] Disable reverse continue command test on Windows

The new test added in https://github.com/llvm/llvm-project/pull/132783
is timing out on our Windows on Arm bot
https://lab.llvm.org/buildbot/#/builders/141/builds/8149

Disable it there while I figure out the problem.


  Commit: 8b2d269db22d253ef07a48ef433bc94dc70f2c75
      https://github.com/llvm/llvm-project/commit/8b2d269db22d253ef07a48ef433bc94dc70f2c75
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll

  Log Message:
  -----------
  [X86] Add extended test coverage for #135010


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/Utils.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/AArch64InstrGISel.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-const-vector.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll

  Log Message:
  -----------
  Reapply "[LLVM][ISel][AArch64 Remove AArch64ISD::FCM##z nodes. (#135817)"

This reverts commit 427b6448a3af009e57c0142d6d8af83318b45093.

Original patch has been updated to include a fix to esnure
AArch64InstructionSelector::emitConstantVector supports all the cases
where isBuildVectorAllOnes returns true.


  Commit: ecdd3fd71f41f600623e93bad08f9e41b1d0d8cc
      https://github.com/llvm/llvm-project/commit/ecdd3fd71f41f600623e93bad08f9e41b1d0d8cc
  Author: Karthika Devi C <quic_kartc at quicinc.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/CodeGeneration.cpp
    M polly/lib/CodeGen/IslExprBuilder.cpp
    M polly/lib/CodeGen/IslNodeBuilder.cpp
    M polly/lib/CodeGen/LoopGenerators.cpp
    M polly/lib/CodeGen/LoopGeneratorsGOMP.cpp
    M polly/lib/CodeGen/LoopGeneratorsKMP.cpp
    M polly/lib/CodeGen/PerfMonitor.cpp

  Log Message:
  -----------
  [RemoveDI][Polly] Use iterators instead of instruction pointers to SetInsertPoint (#135336)

As part of the effort to transition to using Debug Records instead of
Debug intrinsics, some API/argument changes are necessary to achieve the
desired behavior from Debug Records. This particular fix involves
passing iterators instead of instruction pointers to the SetInsertPoint
function. While this is crucial in certain areas, it may be more than
needed in others, but it does not cause any harm.


  Commit: 224cd50e005a9215e8c528d5ce68d4fcdfcdb98f
      https://github.com/llvm/llvm-project/commit/224cd50e005a9215e8c528d5ce68d4fcdfcdb98f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    A llvm/test/Transforms/GlobalOpt/X86/preserve-dbgloc-of-load-store-to-bool.ll

  Log Message:
  -----------
  [DebugInfo][GlobalOpt] Preserve source locs for optimized loads (#134828)

Some optimizations in globalopt simplify uses of a global value to uses
of a generated global bool value; in some cases where this happens, the
newly-generated instructions would not have the original source
location(s) of the instructions they replaced propagated to them; this
patch properly preserves those source locations.

Found using https://github.com/llvm/llvm-project/pull/107279.


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

  Changed paths:
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    A llvm/test/Transforms/GlobalOpt/malloc-promote-atomic.ll

  Log Message:
  -----------
  [GlobalOpt] Do not promote malloc if there are atomic loads/stores (#137158)

When converting a malloc stored to a global into a global, we will
introduce an i1 flag to track whether the global has been initialized.

In case of atomic loads/stores, this will result in verifier failures,
because atomic ops on i1 are illegal. Even if we changed this to i8, I
don't think it is a good idea to change atomic types in that way.

Instead, bail out of the transform is we encounter any atomic
loads/stores of the global.

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


  Commit: f572a5951a664d57e909928d5595285212ad6884
      https://github.com/llvm/llvm-project/commit/f572a5951a664d57e909928d5595285212ad6884
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/pr132563.ll

  Log Message:
  -----------
  [VectorCombine] Ensure canScalarizeAccess handles cases where the index type can't represent all inbounds values

Fixes #132563


  Commit: 2dfe68a306b33048346d30ca141605be991e5302
      https://github.com/llvm/llvm-project/commit/2dfe68a306b33048346d30ca141605be991e5302
  Author: Josep Pinot <josep.pinot at bsc.es>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M openmp/runtime/src/kmp_tasking.cpp

  Log Message:
  -----------
  [NFC][OpenMP] Fix task record/replay comments (#137178)


  Commit: 10ea5eedb1d13760e4caf0bd983ce7778cff0426
      https://github.com/llvm/llvm-project/commit/10ea5eedb1d13760e4caf0bd983ce7778cff0426
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [X86] pr40891.ll - add X64 test coverage


  Commit: 139e30e2158dcb83db82e59df6ec48894eac0129
      https://github.com/llvm/llvm-project/commit/139e30e2158dcb83db82e59df6ec48894eac0129
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    R libclc/amdgpu/lib/SOURCES_3.9
    R libclc/amdgpu/lib/SOURCES_4.0
    R libclc/amdgpu/lib/SOURCES_5.0
    R libclc/amdgpu/lib/shared/vload_half_helpers.ll
    R libclc/amdgpu/lib/shared/vstore_half_helpers.ll
    M libclc/generic/lib/shared/vload.cl
    M libclc/generic/lib/shared/vstore.cl
    M libclc/generic/lib/shared/vstore_half.inc
    R libclc/ptx/lib/SOURCES_3.9
    R libclc/ptx/lib/SOURCES_4.0
    R libclc/ptx/lib/SOURCES_5.0
    R libclc/ptx/lib/shared/vload_half_helpers.ll
    R libclc/ptx/lib/shared/vstore_half_helpers.ll

  Log Message:
  -----------
  [libclc] Remove (vload|vstore)_half helpers (#137181)

These were only being used when compiling with versions of clang older
than clang 6. As such they were essentially unsupported and untested.

This somewhat simplifies the codebase, producing fewer helper functions
in the final builtins library. It also avoids typed pointer IR.

There's no change to any of the targets' bytecode other than removing
these helper functions.


  Commit: e3eee9e81ec2a42d1f78d8a4e52f4b4ee8927436
      https://github.com/llvm/llvm-project/commit/e3eee9e81ec2a42d1f78d8a4e52f4b4ee8927436
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-trunc.ll

  Log Message:
  -----------
  [X86] vector-trunc.ll - replace stores to ptr undef with real ptr values

Prevents some unnecessary codegen changes in an upcoming patch


  Commit: ed866d994c3b074cb1b7a380b1ce9169dde3362c
      https://github.com/llvm/llvm-project/commit/ed866d994c3b074cb1b7a380b1ce9169dde3362c
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/extractelement-load.ll

  Log Message:
  -----------
  [X86][Combine] Ensure single use chain in extract-load combine (#136520)

The problem is that `SrcBC = peekThroughBitcasts(Src)` doesn't ensure
single use chain. It results in the situation when a cast may have
multiple users and instead of replacing a load we introduce a new one.
The situation is worsened by the fact that we've replaced the token from
the original load and its correct memory order now is not guaranteed.


  Commit: 52a96491e1e4e0d033e39fad87f49ccd871df41d
      https://github.com/llvm/llvm-project/commit/52a96491e1e4e0d033e39fad87f49ccd871df41d
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    A clang/test/CodeGenCUDASPIRV/printf.cu

  Log Message:
  -----------
  [clang][SPIR-V] Addrspace of opencl_global should always be 1 (#136753)

This fixes a CUDA SPIR-V regression introduced in
https://github.com/llvm/llvm-project/pull/134399.

---------

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


  Commit: 3e605b1e1d85f6767bbc2a91d3916688118040cd
      https://github.com/llvm/llvm-project/commit/3e605b1e1d85f6767bbc2a91d3916688118040cd
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll

  Log Message:
  -----------
  [NFC] Add a pre-commit test case for #111696 (#136730)

Add a pre- commit test case for Patch
https://github.com/llvm/llvm-project/pull/111696
 
Test ppc-vsx-fma-mutate pass work with
-schedule-ppc-vsx-fma-mutation-early not hoist the instruction
 
`xxspltiw vs2, 1170469888` out the loop.

---------

Co-authored-by: Amy Kwan <amy.kwan1 at ibm.com>


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

  Changed paths:
    M clang/lib/Sema/SemaOpenACCClause.cpp

  Log Message:
  -----------
  [OpenACC] Fix variable dereference found by static analysis

Reported here: https://github.com/llvm/llvm-project/issues/137116

Fixes: 137116


  Commit: 9ae7aa79b1e151c3af12b9ffec0e2fdeacde5cc9
      https://github.com/llvm/llvm-project/commit/9ae7aa79b1e151c3af12b9ffec0e2fdeacde5cc9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/records.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose comparing pointers to fields... (#137159)

... with different access specifiers.


  Commit: 0fcc9ffafd35e4567e6bc90f46b8c75f501dddf9
      https://github.com/llvm/llvm-project/commit/0fcc9ffafd35e4567e6bc90f46b8c75f501dddf9
  Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M flang/CMakeLists.txt
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Support using precompiled headers with ccache in flang (#136856)

In order for precompiled headers to work with ccache, a specific flag
needs to be passed to the compiler and ccache's sloppiness configuration
option needs to be set appropriately.

Due to issues with configuring CMake on certain Windows platforms, set
the required ccache option only on non-Windows systems for the time
being.

-----

Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>


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

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.ll
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [TableGen][GISel] Allow isTrivialOperatorNode to import patterns with isStore and a memory VT. (#137080)

This removes the need to explicitly set isTruncStore on truncstorei8 and
other similar PatFrags that include truncstore in their frags DAG.

This allows some new patterns to be imported for AMDGPU as you can see
in the changed test.

The extra isTruncStore were added in ae2b36e8bdfa6, along with some
other tablegen changes to look for MemoryVT along with isTruncStore. I
did not remove the code, because I'm not sure if any out of tree users
have become dependent on it. It's no longer exercised in tree.


  Commit: 4f5cfa81dcbd51d5416022d1872b04a9f376331b
      https://github.com/llvm/llvm-project/commit/4f5cfa81dcbd51d5416022d1872b04a9f376331b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-abi-attribute-hints.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-sret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constant-fold-vector-op.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-tail-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    M llvm/test/CodeGen/AMDGPU/cc-update.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-r600.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernel-argument-alignment.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-no-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/sopk-no-literal.ll
    M llvm/test/CodeGen/AMDGPU/spill-m0.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  AMDGPU: Remove amdhsa_code_object_version module flags from most tests (#136363)

These were added to the migration from v4 to v5 and should be removed
now
that the default has changed.


  Commit: 72cc868c65b0641f23d1fb0518a8503c73ecdb5a
      https://github.com/llvm/llvm-project/commit/72cc868c65b0641f23d1fb0518a8503c73ecdb5a
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [Clang][NFC] Move temp variable back into the source (#137095)

Static analysis flagged this code b/c we are copying the temp variable
back in when we could move it instead.


  Commit: b278aa31979f22409ee73d413a739394366fe2ff
      https://github.com/llvm/llvm-project/commit/b278aa31979f22409ee73d413a739394366fe2ff
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV] Make xrivosvizip interleave2 and deinterleave2 undef safe (#136733)

We're duplicating uses here, so we need to freeze the inputs.

---------

Co-authored-by: Luke Lau <luke_lau at icloud.com>


  Commit: a903c7b7f5d1cb8d72c170d494d94dc251fc7204
      https://github.com/llvm/llvm-project/commit/a903c7b7f5d1cb8d72c170d494d94dc251fc7204
  Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCMCInstLower.cpp
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll

  Log Message:
  -----------
  [PowerPC] Intrinsics and tests for dmr insert/extract (#135653)

Add some intrinsics and LIT tests for PPC dmr insert/extract
instructions.


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

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [TableGen][RISCV][AArch64][GISel] Properly implement isAnyExtLoad/isSignExtLoad/isZeroExtLoad for IsAtomic in SelectionDAG. (#137096)

Support isAnyExtLoad() for IsAtomic in GISel.

Modify atomic_load_az* to check for extload or zextload. And rename to
atomic_load_azext*

Add atomic_load_asext* and use in RISC-V. I used "asext" rather than
"as" so it wouldn't be confused with the word "as".


  Commit: feaa5aa840dcda69bd4133536142be882f696114
      https://github.com/llvm/llvm-project/commit/feaa5aa840dcda69bd4133536142be882f696114
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/constexpr-vectors-access-elements.cpp

  Log Message:
  -----------
  Fix a crash in constant evaluation of ExtVectorElementExprs (#136771)

Handle the case where the base expression is a pointer to a vector type.

rdar://149223362


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

  Changed paths:
    M clang/test/CodeGenCXX/mangle-template.cpp

  Log Message:
  -----------
  [clang] fix typo in CHECK line


  Commit: 0ab330b344dc6333907542bb6267a9bd13e94b07
      https://github.com/llvm/llvm-project/commit/0ab330b344dc6333907542bb6267a9bd13e94b07
  Author: Eric Astor <epastor at google.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/test/tools/llvm-ml/macro_function.asm

  Log Message:
  -----------
  [ms] [llvm-ml] Add support for `@CatStr` built-in function symbol (#130781)

MASM supports some built-in macro-type functions.

We start our support for these with `@CatStr`, one of the more commonly used.


  Commit: 72b2d4d758501ab9bf203e82be5b612f48c863b4
      https://github.com/llvm/llvm-project/commit/72b2d4d758501ab9bf203e82be5b612f48c863b4
  Author: stma247 <184293860+stma247 at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A llvm/test/tools/llvm-cov/branch-export-lcov-unify-instances.test
    M llvm/test/tools/llvm-cov/branch-export-lcov.test
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageExporterLcov.cpp
    M llvm/tools/llvm-cov/CoverageViewOptions.h

  Log Message:
  -----------
  [llvm-cov] Fix branch counts of template functions (second attempt) (#135074)

This PR is a second attempt for issue #111743 to finish reverted PR
#113925.

Added option "--unify-instantiations" to llvm-cov export to combine branch execution counts of C++ template instantiations.  Fix non-deterministic behavior.


  Commit: fe90b9dac76dd3efcb24f747007c68ee2bc27630
      https://github.com/llvm/llvm-project/commit/fe90b9dac76dd3efcb24f747007c68ee2bc27630
  Author: Camsyn <camsyn at foxmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M compiler-rt/lib/asan/asan_report.cpp

  Log Message:
  -----------
  [ASan] Limits the conditions of the deadlock patch (#137127)

PR #131756 introduced a patch to fix a deadlock between LSan and ASan.

The relevant deadlock only occurs when LSan is enabled and
`dl_iterate_phdr` is used for Stop-the-World, i.e., under the condition
`CAN_SANITIZE_LEAKS && (SANITIZER_LINUX || SANITIZER_NETBSD)`.

Therefore, this commit also sets the effective condition of this patch
to the above condition, avoiding unnecessary problems in other
environments, e.g., stack overflow on MSVC/Windows.


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

  Changed paths:
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Parse/ParseHLSLRootSignature.cpp

  Log Message:
  -----------
  [NFC][RootSignatures] Conform to new std::optional calling conventions (#136747)

- It was determined to define the parsing methods much more inline with
a recursive descent parser to follow the EBNF notation better
- As part of this change, we decided to go with a calling convention to
the parse.* methods of returning an optional rather than a bool and a
reference to the parsed struct

This is a clean-up task from
https://github.com/llvm/llvm-project/pull/133800


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

  Changed paths:
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp

  Log Message:
  -----------
  [flang][cuda][rt] Track asynchronous allocation stream for deallocation (#137073)

When an asynchronous allocation is made, we call `cudaMallocAsync` with
a stream. For deallocation, we need to call `cudaFreeAsync` with the
same stream. in order to achieve that, we need to track the allocation
and their respective stream.

This patch adds a simple sorted array of asynchronous allocations. A
binary search is performed to retrieve the allocation when deallocation
is needed.


  Commit: e78b763568e47e685926614195c3075afa35668c
      https://github.com/llvm/llvm-project/commit/e78b763568e47e685926614195c3075afa35668c
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/difile_absolute_filenames.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/difile_absolute_filenames.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values_dbgrecords.ll.funcsig.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/various_ir_values_dbgrecords.ll.funcsig.transitiveglobals.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/difile_absolute_filenames.test
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: Relax DIFile filename checks (#135692)

Avoid baking in absolute paths in check lines generated for DIFile
metadata. Generated test checks cannot be sensitive to absolute paths
anyway, as those vary with the environment, but there could be
situations where some sensitivity to partial paths is required for
certain tests. This implementation just assumes such tests aren't worth
the effort to support, but it could be supported in the future.

This is most useful for update_cc_test_checks with debug info enabled,
where the test writer cannot manipulate the paths within the generated
IR directly.


  Commit: 2de936b6eb38e7a37224a97c2a22aa79b9dfb9dc
      https://github.com/llvm/llvm-project/commit/2de936b6eb38e7a37224a97c2a22aa79b9dfb9dc
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/test/Dialect/Vector/vector-emulate-narrow-type-unaligned.mlir
    M mlir/test/Dialect/Vector/vector-emulate-narrow-type.mlir

  Log Message:
  -----------
  [mlir][vector] Fix emulation of "narrow" type `vector.store` (#133231)

Below are two examples of "narrow" `vector.stores`. The first example
  does not require partial stores and hence no RMW stores. This is
  currently emulated correctly.
  ```mlir
  func.func @example_1(%arg0: vector<4xi2>) {
      %0 = memref.alloc() : memref<13xi2>
      %c4 = arith.constant 4 : index
      vector.store %arg0, %0[%c4] : memref<13xi2>, vector<4xi2>
      return
  }
  ```

  The second example requires a partial (and hence RMW) store due to the
  offset pointing outside the emulated type boundary (`%c3`).
  ```mlir
  func.func @example_2(%arg0: vector<4xi2>) {
      %0 = memref.alloc() : memref<13xi2>
      %c3 = arith.constant 3 : index
      vector.store %arg0, %0[%c3] : memref<13xi2>, vector<4xi2>
      return
  }
  ```

  This is currently incorrectly emulated as a single "full" store (note
  that the offset is incorrect) instead of partial stores:
  ```mlir
  func.func @example_2(%arg0: vector<4xi2>) {
    %alloc = memref.alloc() : memref<4xi8>
    %0 = vector.bitcast %arg0 : vector<4xi2> to vector<1xi8>
    %c0 = arith.constant 0 : index
    vector.store %0, %alloc[%c0] : memref<4xi8>, vector<1xi8>
    return
  }
  ```

  The incorrect emulation stems from this simplified (i.e. incomplete)
  calculation of the front padding:
  ```cpp
      std::optional<int64_t> foldedNumFrontPadElems =
          isDivisibleInSize ? 0
: getConstantIntValue(linearizedInfo.intraDataOffset);
  ```

  Since `isDivisibleInSize` is `true` (i8 / i2 = 4):
    * front padding is set to `0` and, as a result,
    * the input offset (`%c3`) is ignored, and
    * we incorrectly assume that partial stores won't be needed.

  Note that in both examples we are storing `vector<4xi2>` into
  `memref<13xi2>` (note _different_ trailing dims) and hence partial
  stores might in fact be required. The condition above is updated to:
  ```cpp
      std::optional<int64_t> foldedNumFrontPadElems =
          (isDivisibleInSize && trailingDimsMatch)
              ? 0
              : getConstantIntValue(linearizedInfo.intraDataOffset);
  ```

  This change ensures that the input offset is properly taken into
  account, which fixes the issue. It doesn't affect `@example1`.

  Additional comments are added to clarify the current logic.


  Commit: 7a276c8acfc3977de8c3ceb0af67fcf603834946
      https://github.com/llvm/llvm-project/commit/7a276c8acfc3977de8c3ceb0af67fcf603834946
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h

  Log Message:
  -----------
  [lldb] Fix logic error in AppleObjCTypeEncodingParser (#137067)

Fixes parsing of an ObjC type encoding such as `{?="a""b"}`. Parsing of such a type
encoding would lead to an assert. This was observed when running `language objc
class-table dump`.

The function `ReadQuotedString` consumes the closing quote, however one of its two
callers (`ReadStructElement`) was also consuming a quote. For the above type encoding,
where two quoted strings occur back to back, the parser would unintentionally consume
the opening quote of the second quoted string - leaving the remaining text with an
unbalanced quote.

This changes fixes `ReadStructElement` to not consume a quote after calling
`ReadQuotedString`.

For callers to know whether a string was successfully parsed, `ReadQuotedString` now
returns an optional string.


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

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp

  Log Message:
  -----------
  [clang] Enable making the module build stack thread-safe (#137059)

This PR makes another piece of the
`CompilerInstance::cloneForModuleCompile()` result thread-safe: the
module build stack. This data structure is used to detect cyclic
dependencies between modules. The problem is that it uses
`FullSourceLoc` which refers to the `SourceManager` of the parent
`CompilerInstance`: if two threads happen to execute `CompilerInstance`s
cloned from the same parent concurrently, and both discover a dependency
cycle, they may concurrently access the parent `SourceManager` when
emitting the diagnostic, creating a data race.

In this PR, we prevent this by keeping the stack empty and moving the
responsibility of cycle detection to the client. The client can recreate
the same module build stack externally and ensure thread-safety by
enforcing mutual exclusion.


  Commit: 1143a04f349c4081a1a2d2503046f6ca422aa338
      https://github.com/llvm/llvm-project/commit/1143a04f349c4081a1a2d2503046f6ca422aa338
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/DebugInfo/Generic/inline-scopes.ll
    A llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll
    M llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
    M llvm/test/DebugInfo/X86/missing-abstract-variable.ll

  Log Message:
  -----------
  [DebugInfo][DWARF] Emit DW_AT_abstract_origin for concrete/inlined DW_TAG_lexical_blocks (#136205)

During the discussion under
https://github.com/llvm/llvm-project/pull/119001, it was noticed that
concrete DW_TAG_lexical_blocks should refer to corresponding abstract
DW_TAG_lexical_blocks by having DW_AT_abstract_origin, to avoid
ambiguity. This behavior is implemented in GCC
(https://godbolt.org/z/Khrzdq1Wx), but not in LLVM.

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


  Commit: 3e7e23d7d0eecf30dbb8adfae175696262e0b08e
      https://github.com/llvm/llvm-project/commit/3e7e23d7d0eecf30dbb8adfae175696262e0b08e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip

  Log Message:
  -----------
  clang/HIP: Add tests that shows fpmath metadata ends up on sqrt calls (#136413)

Make sure the builtin header sqrts work with
-fno-hip-f32-correctly-rounded-divide-sqrt, and we end up with
properly annotated sqrt intrinsic callsites.


  Commit: 6e3b16bec3a3384d8d2deb23d770d1d6a7357c50
      https://github.com/llvm/llvm-project/commit/6e3b16bec3a3384d8d2deb23d770d1d6a7357c50
  Author: David Green <david.green at arm.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/GlobalISel/select-binop.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-scalar-shift-imm.mir
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Fix EXTRACT_SUBREG reg classes in patterns to generate MULL. (#136083)

This fixes the GISel warning "Skipped pattern: EXTRACT_SUBREG child #0
could not be coerced to a register class" by ensuring the register class
is correct for the EXTRACT_SUBREG patterns. This most notably allows
UMADDL / SMADDL patterns to be imported (many still do not work as a
PatLeaf on a child cannot be generated at the moment).


  Commit: 2bc6f9d4b6ff1d838f1c2d50cacbab6ba2f20bc9
      https://github.com/llvm/llvm-project/commit/2bc6f9d4b6ff1d838f1c2d50cacbab6ba2f20bc9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M llvm/docs/TableGen/BackGuide.rst
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/JSONBackend.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/SetTheory.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/SearchableTableEmitter.cpp
    M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
    M mlir/tools/mlir-tblgen/TosaUtilsGen.cpp

  Log Message:
  -----------
  [TableGen] Only store direct superclasses in Record (#123072)

In Record only store the direct superclasses instead of all
superclasses. getSuperClasses recurses to find all superclasses when
necessary.

This gives a small reduction in memory usage. On lib/Target/X86/X86.td I
measured about 2.0% reduction in total bytes allocated (measured by
valgrind) and 1.3% reduction in peak memory usage (measured by
/usr/bin/time -v).

---------

Co-authored-by: Min-Yih Hsu <min at myhsu.dev>


  Commit: d6bb786705d0fe76d62010457eac0f8f05af7009
      https://github.com/llvm/llvm-project/commit/d6bb786705d0fe76d62010457eac0f8f05af7009
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    A llvm/test/Transforms/SimplifyCFG/X86/debugloc-invoke-to-call-br.ll

  Log Message:
  -----------
  [DebugInfo] Propagate source loc from invoke to replacement branch (#137206)

An existing transformation replaces invoke instructions with a call to
the invoked function and a branch to the destination; when this happens,
we propagate the invoke's source location to the call but not to the
branch. This patch updates this behaviour to propagate to the branch as
well.

Found using https://github.com/llvm/llvm-project/pull/107279.


  Commit: 92dc18b6df043d788d77b4a98e5afa3954a44cb0
      https://github.com/llvm/llvm-project/commit/92dc18b6df043d788d77b4a98e5afa3954a44cb0
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
    R llvm/test/DebugInfo/Generic/lexical-block-abstract-origin.ll

  Log Message:
  -----------
  [DebugInfo] Fix build failure introduced by 1143a04f.

Move test to AArch64 directory.


  Commit: 10f6c3e2702c6ab6751861e894741d23b902cb65
      https://github.com/llvm/llvm-project/commit/10f6c3e2702c6ab6751861e894741d23b902cb65
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/masked_store_trunc.ll
    M llvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
    M llvm/test/CodeGen/X86/masked_store_trunc_usat.ll
    M llvm/test/CodeGen/X86/pr40891.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/vector-reduce-xor-bool.ll
    M llvm/test/CodeGen/X86/vector-trunc-nowrap.ll
    M llvm/test/CodeGen/X86/vector-trunc-packus.ll
    M llvm/test/CodeGen/X86/vector-trunc-ssat.ll
    M llvm/test/CodeGen/X86/vector-trunc-usat.ll
    M llvm/test/CodeGen/X86/vector-trunc.ll

  Log Message:
  -----------
  [DAG] visitCONCAT_VECTORS - relax legality checks (#137210)

We can fold combineConcatVectorOfConcatVectors/combineConcatVectorOfExtracts until after vector legalization


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/phi-comparator.ll

  Log Message:
  -----------
  [SLP]Fix PHI comparator to make it follow weak strict ordering restriction

Fixes #137164


  Commit: 5f9164978b218fa65c53a59e91ea01831735f7a4
      https://github.com/llvm/llvm-project/commit/5f9164978b218fa65c53a59e91ea01831735f7a4
  Author: higher-performance <higher.performance.github at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libcxx/include/__tree

  Log Message:
  -----------
  Optimize std::__tree::__assign_multi to insert the provided range at the end of the tree every time (#131030)

This improves performance for the copy-assignment operators of associative containers such as `std::map`.

This optimization already exists in other places in the codebase, and seems to have been missed here.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/vectorize-reorder-alt-shuffle.ll

  Log Message:
  -----------
  [SLP]Improve reordering of the alternate nodes

Better to preserve the original order of the alternate nodes to avoid
inter-lane shuffling, select/insert subvector patterns provide better
perf.

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


  Commit: a9d93ecf1f8d2cfe3f77851e0df179b386cff353
      https://github.com/llvm/llvm-project/commit/a9d93ecf1f8d2cfe3f77851e0df179b386cff353
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/include/llvm/IR/DebugLoc.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/Transforms/Utils/Debugify.cpp

  Log Message:
  -----------
  [DLCov] Implement DebugLoc coverage tracking (#107279)

This is part of a series of patches that tries to improve DILocation bug
detection in Debugify; see the review for more details. This is the patch
that adds the main feature, adding a set of `DebugLoc::get<Kind>`
functions that can be used for instructions with intentionally empty
DebugLocs to prevent Debugify from treating them as bugs, removing the
currently-pervasive false positives and allowing us to use Debugify (in
its original DI preservation mode) to reliably detect existing bugs and
regressions. This patch does not add uses of these functions, except for
once in Clang before optimizations, and in
`Instruction::dropLocation()`, since that is an obvious case that
immediately removes a set of false positives.


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

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

  Log Message:
  -----------
  [VPlan] Remove dead SE argument from handleUncountableEarlyExit (NFC).

ScalarEvolution is not used by the function, remove the dead arg.


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

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    M flang/test/Fir/CUDA/cuda-gpu-launch-func.mlir

  Log Message:
  -----------
  [flang][cuda] Convert gpu.launch_func with result (#137231)

We cannot use `replaceOp` because the newly created operation has not
the same number of results.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    A llvm/test/CodeGen/RISCV/atomic-load-zext.ll

  Log Message:
  -----------
  [SelectionDAG][RISCV] Teach computeKnownBits to use range metadata for atomic_load. (#137119)

And teach SelectionDAGBuilder to get the range metadata in
visitAtomicLoad.

This allows us to recognize that sign extending a byte load of a
boolean value from memory will produce zeros for the extended bits.
This allow us to remove an AND on RISC-V.

Tests copied from #136502 with range metadata added to i1 cases.
Some of the test effects overlap with #136502, but that patch can't
handle the acquire or seq_cst cases with the Zalasr extension. We
only have sign extending versions of those loads.


  Commit: dd9f92c8862a08c4a632edfd5f254b08c225b412
      https://github.com/llvm/llvm-project/commit/dd9f92c8862a08c4a632edfd5f254b08c225b412
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/DebugInfo/Generic/inline-scopes.ll
    M llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
    M llvm/test/DebugInfo/X86/missing-abstract-variable.ll

  Log Message:
  -----------
  Revert "[DebugInfo][DWARF] Emit DW_AT_abstract_origin for concrete/inlined DW_TAG_lexical_blocks" (#137237)

Reverts llvm/llvm-project#136205

Breaks buildbots, probably something about needing to restrict the test
to running on a specific target or the like - I haven't looked closely.

Co-authored-by: Vladislav Dzhidzhoev <dzhidzhoev at gmail.com>


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

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/unittests/Target/DirectX/UniqueResourceFromUseTests.cpp

  Log Message:
  -----------
  [HLSL] Analyze updateCounter usage (#135669)

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

Analyze and annotate `ResourceInfo` with the derived direction of calls
to updateCounter (if any).

This change only sets the value. Any diagnostics that should be raised
must be done somewhere else.


  Commit: 73ddbd3c094274cfb7412d7c0fc99c170325217a
      https://github.com/llvm/llvm-project/commit/73ddbd3c094274cfb7412d7c0fc99c170325217a
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    A clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
    A clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp

  Log Message:
  -----------
  [NFC][CFI] Add tests for different reporting settings (#137225)

1. Trap
2. Abort from runtime
3. Recover from runtime
4. Abort from minimal runtime
5. Recover from minimal runtime

They already work as expected.


  Commit: 3c3992269c65d4a4269c8617d162daa02f7731f8
      https://github.com/llvm/llvm-project/commit/3c3992269c65d4a4269c8617d162daa02f7731f8
  Author: Finn Plummer <canadienfinn at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

  Log Message:
  -----------
  [HLSL][RootSignature] Add parsing of ShaderVisibility to DescriptorTable (#136751)

- Defines `parseShaderVisiblity` to establish how single enums will be
parsed
- Adds unit testing of the visiblity enum

Part three of implementing #126569


  Commit: 1636f4af7bccf466d8e5cd4c0cfdf2f7ca99b060
      https://github.com/llvm/llvm-project/commit/1636f4af7bccf466d8e5cd4c0cfdf2f7ca99b060
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp

  Log Message:
  -----------
  [CmpInstAnalysis] Decompose icmp eq (and x, C) C2 (#136367)

This type of decomposition is used in multiple places already. Adding it
to `CmpInstAnalysis` reduces code duplication.


  Commit: 37b135cc8f079483a3a969a79898e1d3933d0067
      https://github.com/llvm/llvm-project/commit/37b135cc8f079483a3a969a79898e1d3933d0067
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/issue87856.ll

  Log Message:
  -----------
  Attributor: Don't rely on use_empty for constants (#137218)

This allows inferring noalias on a null argument parameter. This
avoids a non-NFC diff in a future change.


  Commit: 4ed8bfd0c3949dbf4e3042bd35eb274373e55cf7
      https://github.com/llvm/llvm-project/commit/4ed8bfd0c3949dbf4e3042bd35eb274373e55cf7
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  LiveRangeShrink: Early exit when encountering a code motion barrier.

Without this, we end up with quadratic behavior affecting functions with
large numbers of code motion barriers, such as CFI jump tables.

As a drive-by cleanup, remove a redundant store to SawStore in this
pass as it is also done by isSafeToMove.

Reviewers: arsenm

Reviewed By: arsenm

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


  Commit: c007c465403ecfea7c390a2b05e555c3b6d90a88
      https://github.com/llvm/llvm-project/commit/c007c465403ecfea7c390a2b05e555c3b6d90a88
  Author: Steffi Stumpos <stumposs12 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/test/CodeGen/NVPTX/st-param-imm.ll

  Log Message:
  -----------
  [NVPTX] Support BFloat Store Parameter (#137074)

Before this patch, the instruction selector assumed that if the Memory
Type is not {f16, v2f16, f32, f64} then the node type must be a
ConstantSDNode when in fact if the memory type is bf16 then the node
type is ConstantFPSDNode.


  Commit: bea3b9214ea74d0678094e660c0b56893f5c9c2f
      https://github.com/llvm/llvm-project/commit/bea3b9214ea74d0678094e660c0b56893f5c9c2f
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/DebugInfo/Generic/inline-scopes.ll
    M llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
    M llvm/test/DebugInfo/X86/missing-abstract-variable.ll

  Log Message:
  -----------
  Revert "Revert "[DebugInfo][DWARF] Emit DW_AT_abstract_origin for concrete/inlined DW_TAG_lexical_blocks"" (#137243)

Reverts llvm/llvm-project#137237, as the problem was fixed with
92dc18b6df043d788d77b4a98e5afa3954a44cb0.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Complex/IR/ComplexOps.td

  Log Message:
  -----------
  [mlir][complex][NFC] Fix typo in PowOp (#137240)


  Commit: 425b9539684be00f3c8ccde54dbab18ce9bc8ebd
      https://github.com/llvm/llvm-project/commit/425b9539684be00f3c8ccde54dbab18ce9bc8ebd
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp

  Log Message:
  -----------
  [clang][bytecode] Emit diagnostics from GetGlobalUnchecked (#137203)

If the global is uninitialized.


  Commit: 9f74d517f13a4f1f5ca340d15c8d858f3784ec5c
      https://github.com/llvm/llvm-project/commit/9f74d517f13a4f1f5ca340d15c8d858f3784ec5c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M compiler-rt/test/ubsan_minimal/CMakeLists.txt
    M compiler-rt/test/ubsan_minimal/lit.common.cfg.py
    M compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in

  Log Message:
  -----------
  [NFC][UBSAN] Fix minimal UBSAN test names (#137244)

Same approach as in Asan.

Now it's going to print:
```
Failed Tests (2):
  UBSan-Minimal-i386-linux :: TestCases/icall.c
  UBSan-Minimal-x86_64-linux :: TestCases/icall.c
```

Before it was:
```
Failed Tests (2):
  UBSan-Minimal-x86_64 :: TestCases/icall.c
  UBSan-Minimal-x86_64 :: TestCases/icall.c
```


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    A clang/test/Analysis/Checkers/WebKit/unchecked-call-arg.cpp

  Log Message:
  -----------
  [alpha.webkit.UncheckedCallArgsChecker] Checker fails to recognize CanMakeCheckedPtrBase (#136500)

This PR fixes the bug that alpha.webkit.UncheckedCallArgsChecker did not
recognize CanMakeCheckedPtrBase due to getAsCXXRecordDecl returning
nullptr for it in hasPublicMethodInBase. Manually grab getTemplatedDecl
out of TemplateSpecializationType then CXXRecordDecl to workaround this
bug in clang frontend.


  Commit: 8baa212b7aef800a0f7d9abad529a3976bef9d50
      https://github.com/llvm/llvm-project/commit/8baa212b7aef800a0f7d9abad529a3976bef9d50
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
    M llvm/test/CodeGen/DirectX/ResourceAccess/load_typedbuffer.ll

  Log Message:
  -----------
  [DirectX] Handle <1 x ...> loads in DXILResourceAccess (#137076)

We can end up with loads of single element vectors when we have scalar
values, because the vectorizer may introduce these to use ops like
shufflevector in some cases. Make sure we're maintaining the correct
type when translating these into resource load operations.

Fixes #136409.


  Commit: 5d0afacd1bda42350efcd6ad567c70ec5c9d19d6
      https://github.com/llvm/llvm-project/commit/5d0afacd1bda42350efcd6ad567c70ec5c9d19d6
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp

  Log Message:
  -----------
  [BOLT][NFCI] Emit uniform diagnostics in DataAggregator (#136530)

DataAggregator supports reading different kinds of profile data:
- perf data: branch records or IP samples,
- pre-aggregated branch data.

Make profile quality reporting uniform across all kinds of input:
- out-of-range and mismatching samples,
- samples in cold code in BAT mode (profiled BOLTed binary).

Test Plan: NFCI


  Commit: 08efca9c2c2b9005a0390965a2bad9ef208e4db4
      https://github.com/llvm/llvm-project/commit/08efca9c2c2b9005a0390965a2bad9ef208e4db4
  Author: jeremyd2019 <github at jdrake.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/tools/llvm-config/BuildVariables.inc.in
    M llvm/tools/llvm-config/CMakeLists.txt
    M llvm/tools/llvm-config/llvm-config.cpp
    M llvm/tools/llvm-shlib/CMakeLists.txt

  Log Message:
  -----------
  [LLVM][Cygwin] Fix shared library name (#136599)

Treat Cygwin like WIN32 in llvm-shlib for naming the library.

Don't create shlib symlinks on Cygwin, they don't help anything there,
but teach llvm_install_library_symlink that Cygwin's shared libraries
live in BINDIR like WIN32.

Add a new variable to llvm-config's BuildVariables to have CMake's
shared library prefix, to avoid having to patch between "cyg" and
"msys-" on MSYS2.


  Commit: b649b3557e7b0a95612be64c1fe2334f6ecb2132
      https://github.com/llvm/llvm-project/commit/b649b3557e7b0a95612be64c1fe2334f6ecb2132
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILRootSignature.cpp
    M llvm/lib/Target/DirectX/DXILRootSignature.h
    R llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Validation-Error.ll
    M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
    M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Validation-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-Num32BitValues.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-RegisterSpace.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-ShaderRegister.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootFlags-VisibilityValidationError.ll

  Log Message:
  -----------
  [HLSL] Adding support for Root Constants in LLVM Metadata (#135085)

- Closes [#126637](https://github.com/llvm/llvm-project/issues/126637)

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>


  Commit: bae4c946a1998b0d2337a8b23c07db38afcabf12
      https://github.com/llvm/llvm-project/commit/bae4c946a1998b0d2337a8b23c07db38afcabf12
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'num_gangs' lowering (#137216)

This is similar to the previous handful of lowering commits, except that
it takes an array of int-expressions rather than a single one. This
complicates the list of things that need updating (as the 'segments'
array also needs updating), which resulted in a bit of a refactor.

At the moment, only parallel/kernels are enabled (not parallel
    loop/kernels loop), so tests are added just for those.

---------

Co-authored-by: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>


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

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    A clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/binop.cpp
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/cmp.cpp
    M clang/test/CIR/CodeGen/if.cpp
    M clang/test/CIR/CodeGen/int-to-bool.cpp
    M clang/test/CIR/CodeGen/local-vars.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    M clang/test/CIR/CodeGen/nullptr-init.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/Lowering/array.cpp
    M clang/test/CIR/Lowering/basic.cpp
    M clang/test/CIR/Lowering/func-simple.cpp
    M clang/test/CIR/Lowering/local-vars.cpp
    M clang/test/CIR/func-simple.cpp
    M clang/test/CIR/global-var-linkage.cpp

  Log Message:
  -----------
  [CIR] Upstream support for name mangling (#137094)

We have been using the default names for global symbols to this point.
This change introduces proper name mangling for functions.

This requires introducing a CXXABI class in the CIRGenModule. Because
only target independent name mangling is handled in this patch, the
CXXABI class does not require a target-specific implementation. The
general mechanism for selecting an implementation is introduced here,
but the actual target-specific subclasses are deferred until needed.


  Commit: 80182a7d5d66c8dc90bb4623c1f722aba7ebe45b
      https://github.com/llvm/llvm-project/commit/80182a7d5d66c8dc90bb4623c1f722aba7ebe45b
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    A clang/test/CIR/CodeGenOpenACC/wait.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'wait' directive lowering

This construct has a couple of 'intexprs' which are lowered the same way
as clauses, plus has a pair of simple clauses that needed lowering.
This patch does all of that.


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

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    A clang/test/CodeGenCXX/bpf-debug-structors.cpp

  Log Message:
  -----------
  [BPF] Fix issues with external declarations of C++ structor decls (#137079)

Use GetAddrOfGlobal, which is a more general API that takes a
GlobalDecl, and handles declaring C++ destructors and other types in a
general way. We can use this to generalize over functions and variable
declarations.

This fixes issues reported on #130674 by @lexi-nadia .


  Commit: 67cbfb9d8c38c038e33ee48c82262e72e46ff089
      https://github.com/llvm/llvm-project/commit/67cbfb9d8c38c038e33ee48c82262e72e46ff089
  Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsSPIRV.td
    M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaSPIRV.cpp
    A clang/test/CodeGenHLSL/builtins/faceforward.hlsl
    A clang/test/CodeGenSPIRV/Builtins/faceforward.c
    A clang/test/SemaHLSL/BuiltIns/faceforward-errors.hlsl
    A clang/test/SemaSPIRV/BuiltIns/faceforward-errors.c
    M clang/test/SemaSPIRV/BuiltIns/smoothstep-errors.c
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/faceforward.ll

  Log Message:
  -----------
  [HLSL] Implement the `faceforward` intrinsic (#135878)

Resolves #99114.

Tasks completed:
- Implement `faceforward` in
`hlsl_intrinsics.h`/`hlsl_intrinsic_helpers.h`
- Implement `faceforward` SPIR-V target builtin in
`clang/include/clang/Basic/BuiltinsSPIRV.td`
- Add a SPIR-V fast path in `hlsl_intrinsic_helpers.h`
- Add sema checks for `faceforward` to `CheckSPIRVBuiltinFunctionCall`
in `clang/lib/Sema/SemaSPIRV.cpp`
- Add codegen for SPIR-V `faceforward` builtin to `EmitSPIRVBuiltinExpr`
in `SPIR.cpp`
- Add HLSL codegen tests to
`clang/test/CodeGenHLSL/builtins/faceforward.hlsl`
- Add SPIRV builtin codegen tests to
`clang/test/CodeGenSPIRV/Builtins/faceforward.c`
- Add sema tests to
`clang/test/SemaHLSL/BuiltIns/faceforward-errors.hlsl`
- Add spirv sema tests to
`clang/test/SemaSPIRV/BuiltIns/faceforward-errors.c`
- Create the `int_spv_faceforward` intrinsic in `IntrinsicsSPIRV.td`
- In `SPIRVInstructionSelector.cpp` create the `faceforward` lowering
and map it to `int_spv_faceforward` in
`SPIRVInstructionSelector::selectIntrinsic`
- Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/hlsl-intrinsics/faceforward.ll`

Incomplete tasks:
- Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/opencl/faceforward.ll`
- Not applicable because the OpenCL SPIR-V extended instruction set does
not include a `faceforward` function

Follow-up tasks:
- Implement pattern matching for `faceforward` in `SPIRVCombine.td` and
`SPIRVPreLegalizerCombiner.cpp`
- In `faceforward.ll`, change `--target-env spv1.4` to `vulkan1.3` and
update the test accordingly once
[#136344](https://github.com/llvm/llvm-project/issues/136344) has been
resolved


  Commit: 851f7c74213e8497afb2b2a3b7facb9faedf9f5f
      https://github.com/llvm/llvm-project/commit/851f7c74213e8497afb2b2a3b7facb9faedf9f5f
  Author: Anton <44649959+amemov at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/include/math.yaml
    M libc/src/math/CMakeLists.txt
    A libc/src/math/acospif16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/acospif16.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/acospif16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/acospif16_test.cpp
    M libc/utils/MPFRWrapper/MPCommon.cpp
    M libc/utils/MPFRWrapper/MPCommon.h
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc][math][c23] Add acospif16() function (#134664)

Addresses #132211  #132754
Part of #95250


  Commit: 7de2e4971f8ad8d12ed617bc66f6d549d2830a57
      https://github.com/llvm/llvm-project/commit/7de2e4971f8ad8d12ed617bc66f6d549d2830a57
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
    M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp

  Log Message:
  -----------
  [mlir][NFC] Use Builder for getReassociationIndicesAttribute method. (#137251)

The method does not need to create any operation, so we can use Builder.
It can be reused by any attribute getter implementation, so it does not
need to declare OpBuilder in the implementation.

Signed-off-by: hanhanW <hanhan0912 at gmail.com>


  Commit: 768d3ba74319473e0bbf87ad92174062d4909488
      https://github.com/llvm/llvm-project/commit/768d3ba74319473e0bbf87ad92174062d4909488
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  github-automation.py: Add debug output to the commit-request-greeter (#137104)

This script is not working any more in the GitHub actions jobs and I
can't reproduce this locally, so I've added some debug output to try to
help find the problem.


  Commit: 5b16941f5707c3a326b688e0954f8882d8a36951
      https://github.com/llvm/llvm-project/commit/5b16941f5707c3a326b688e0954f8882d8a36951
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/NonTrivialTypeVisitor.h
    M clang/include/clang/AST/Type.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBlocks.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/CodeGen/ptrauth-in-c-struct.c
    A clang/test/CodeGen/ptrauth-qualifier-blocks.c
    M clang/test/Sema/ptrauth-qualifier.c
    M clang/test/SemaCXX/ptrauth-qualifier.cpp

  Log Message:
  -----------
  [clang] Ensure correct copying of records with authenticated fields (#136783)

When records contain fields with pointer authentication, even simple
copies can require
additional work be performed. This patch contains the core functionality
required to
handle user defined structs, as well as the implicitly constructed
structs for blocks, etc.

Co-authored-by: Ahmed Bougacha
Co-authored-by: Akira Hatanaka
Co-authored-by: John Mccall


  Commit: 42622c79592b98b899d787c89db11cea1b540b96
      https://github.com/llvm/llvm-project/commit/42622c79592b98b899d787c89db11cea1b540b96
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Depend on full Utility library in lldb (#137265)

Since 6493345c5ab96f60ab5ee38272fb6635f2083318 the utility library is
needed by the driver. Since liblldb's exports are limited with
-exports_symbols_list on macOS, some symbols like
`__ZN12SelectHelper10FDSetWriteEi` are not exported from liblldb and
therefore cause linker failures on macOS only. In the cmake the driver
now depends on the full utility library, even though that leads to some
duplication of symbols, so it should be safe for us to do in bazel as
well.


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

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/extendedStackTrace/TestDAP_extendedStackTrace.py
    M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
    M lldb/tools/lldb-dap/Handler/StackTraceRequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] Support StackFrameFormat (#137113)

The debug adapter protocol supports an option to provide formatting
information for a stack frames as part of the StackTrace request.
lldb-dap incorrectly advertises it supports this, but until this PR that
support wasn't actually implemented.

Fixes #137057


  Commit: fdbf073a86573c9ac4d595fac8e06d252ce1469f
      https://github.com/llvm/llvm-project/commit/fdbf073a86573c9ac4d595fac8e06d252ce1469f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/include/llvm/IR/DebugLoc.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/Transforms/Utils/Debugify.cpp

  Log Message:
  -----------
  Revert "[DLCov] Implement DebugLoc coverage tracking (#107279)"

This reverts commit a9d93ecf1f8d2cfe3f77851e0df179b386cff353.

Reverted due to the commit including a config in LLVM headers that is not
available outside of the llvm source tree.


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/test/CIR/CodeGen/namespace.cpp

  Log Message:
  -----------
  [CIR] Upstream namepsace handling (#137253)

This adds the handlers for Decl::Namespace and Decl::UsingDirective
(which is needed for anonymous namespaces).


  Commit: c0bc77512455ca7eec72efb45fb7aa6a7e9b449c
      https://github.com/llvm/llvm-project/commit/c0bc77512455ca7eec72efb45fb7aa6a7e9b449c
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/module-roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/module-flags.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Add CG Profile module flags support (#137115)

Dialect only accept arbitrary module flag values in face of simple types
like int and string. Whenever metadata is a bit more complex use
specific attributes to map functionality. This PR adds an attribute to
represent "CG Profile" entries, verifiers, import / translate support.


  Commit: 7122d9c5623f69a68817c38ecbe5cabd7ea13cd5
      https://github.com/llvm/llvm-project/commit/7122d9c5623f69a68817c38ecbe5cabd7ea13cd5
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV] Add codegen tests for `vector.(de)interleave3/5/7` on FP scalable vectors (#137257)

We had `vector.(de)interleave3/5/7` tests for floating point fixed
vectors but not for scalable vectors. This patch adds some tests. I also
reorganized the test files so all integer tests are put at the top.


  Commit: be48c0df77413a237565a339c9ccc275b8256631
      https://github.com/llvm/llvm-project/commit/be48c0df77413a237565a339c9ccc275b8256631
  Author: Ziqing Luo <ziqing at udel.edu>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    A clang/test/SemaCXX/bug149071318.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix a bug that wrongly assumed CXXMethodDecl always has an identifier (#137248)

Fix a bug in UnsafeBufferUsage.cpp that wrongly assumed that
CXXMethodDecl always has an identifier.

rdar://149071318


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp

  Log Message:
  -----------
  [webkit.UncountedLambdaCapturesChecker] Treat a call to lambda function via a variable as safe. (#135688)

This PR makes the checker ignore a function call to lambda via a local
variable.


  Commit: 31b38d67f246066cbca9328a5b2dd66a31e71245
      https://github.com/llvm/llvm-project/commit/31b38d67f246066cbca9328a5b2dd66a31e71245
  Author: Chris B <chris.bieneman at me.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    A clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitListAST.hlsl

  Log Message:
  -----------
  [HLSL] Handle incomplete array types (#133508)

This refactors the initialization list transformation code to handle
incomplete array types.

Fixes #132958


  Commit: 967434aa3275842637937e9ac17614a10f81bae7
      https://github.com/llvm/llvm-project/commit/967434aa3275842637937e9ac17614a10f81bae7
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/source/Core/Module.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp

  Log Message:
  -----------
  [lldb] Remerge #136236 (Avoid force loading symbols in statistics collection (#136795)

Fix a [test
failure](https://github.com/llvm/llvm-project/pull/136236#issuecomment-2819772879)
in #136236, apply a minor renaming of statistics, and remerge. See
details below.

# Changes in #136236

Currently, `DebuggerStats::ReportStatistics()` calls
`Module::GetSymtab(/*can_create=*/false)`, but then the latter calls
`SymbolFile::GetSymtab()`. This will load symbols if haven't yet. See
stacktrace below.

The problem is that `DebuggerStats::ReportStatistics` should be
read-only. This is especially important because it reports stats for
symtab parsing/indexing time, which could be affected by the reporting
itself if it's not read-only.

This patch fixes this problem by adding an optional parameter
`SymbolFile::GetSymtab(bool can_create = true)` and receiving the
`false` value passed down from `Module::GetSymtab(/*can_create=*/false)`
when the call is initiated from `DebuggerStats::ReportStatistics()`.

---

Notes about the following stacktrace:
1. This can be reproduced. Create a helloworld program on **macOS** with
dSYM, add `settings set target.preload-symbols false` to `~/.lldbinit`,
do `lldb a.out`, then `statistics dump`.
2. `ObjectFile::GetSymtab` has `llvm::call_once`. So the fact that it
called into `ObjectFileMachO::ParseSymtab` means that the symbol table
is actually being parsed.

```
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = step over
    frame #0: 0x0000000124c4d5a0 LLDB`ObjectFileMachO::ParseSymtab(this=0x0000000111504e40, symtab=0x0000600000a05e00) at ObjectFileMachO.cpp:2259:44
  * frame #1: 0x0000000124fc50a0 LLDB`lldb_private::ObjectFile::GetSymtab()::$_0::operator()(this=0x000000016d35c858) const at ObjectFile.cpp:761:9
    frame #5: 0x0000000124fc4e68 LLDB`void std::__1::__call_once_proxy[abi:v160006]<std::__1::tuple<lldb_private::ObjectFile::GetSymtab()::$_0&&>>(__vp=0x000000016d35c7f0) at mutex:652:5
    frame #6: 0x0000000198afb99c libc++.1.dylib`std::__1::__call_once(unsigned long volatile&, void*, void (*)(void*)) + 196
    frame #7: 0x0000000124fc4dd0 LLDB`void std::__1::call_once[abi:v160006]<lldb_private::ObjectFile::GetSymtab()::$_0>(__flag=0x0000600003920080, __func=0x000000016d35c858) at mutex:670:9
    frame #8: 0x0000000124fc3cb0 LLDB`void llvm::call_once<lldb_private::ObjectFile::GetSymtab()::$_0>(flag=0x0000600003920080, F=0x000000016d35c858) at Threading.h:88:5
    frame #9: 0x0000000124fc2bc4 LLDB`lldb_private::ObjectFile::GetSymtab(this=0x0000000111504e40) at ObjectFile.cpp:755:5
    frame #10: 0x0000000124fe0a28 LLDB`lldb_private::SymbolFileCommon::GetSymtab(this=0x0000000104865200) at SymbolFile.cpp:158:39
    frame #11: 0x0000000124d8fedc LLDB`lldb_private::Module::GetSymtab(this=0x00000001113041a8, can_create=false) at Module.cpp:1027:21
    frame #12: 0x0000000125125bdc LLDB`lldb_private::DebuggerStats::ReportStatistics(debugger=0x000000014284d400, target=0x0000000115808200, options=0x000000014195d6d1) at Statistics.cpp:329:30
    frame #13: 0x0000000125672978 LLDB`CommandObjectStatsDump::DoExecute(this=0x000000014195d540, command=0x000000016d35d820, result=0x000000016d35e150) at CommandObjectStats.cpp:144:18
    frame #14: 0x0000000124f29b40 LLDB`lldb_private::CommandObjectParsed::Execute(this=0x000000014195d540, args_string="", result=0x000000016d35e150) at CommandObject.cpp:832:9
    frame #15: 0x0000000124efbd70 LLDB`lldb_private::CommandInterpreter::HandleCommand(this=0x0000000141b22f30, command_line="statistics dump", lazy_add_to_history=eLazyBoolCalculate, result=0x000000016d35e150, force_repeat_command=false) at CommandInterpreter.cpp:2134:14
    frame #16: 0x0000000124f007f4 LLDB`lldb_private::CommandInterpreter::IOHandlerInputComplete(this=0x0000000141b22f30, io_handler=0x00000001419b2aa8, line="statistics dump") at CommandInterpreter.cpp:3251:3
    frame #17: 0x0000000124d7b5ec LLDB`lldb_private::IOHandlerEditline::Run(this=0x00000001419b2aa8) at IOHandler.cpp:588:22
    frame #18: 0x0000000124d1e8fc LLDB`lldb_private::Debugger::RunIOHandlers(this=0x000000014284d400) at Debugger.cpp:1225:16
    frame #19: 0x0000000124f01f74 LLDB`lldb_private::CommandInterpreter::RunCommandInterpreter(this=0x0000000141b22f30, options=0x000000016d35e63c) at CommandInterpreter.cpp:3543:16
    frame #20: 0x0000000122840294 LLDB`lldb::SBDebugger::RunCommandInterpreter(this=0x000000016d35ebd8, auto_handle_events=true, spawn_thread=false) at SBDebugger.cpp:1212:42
    frame #21: 0x0000000102aa6d28 lldb`Driver::MainLoop(this=0x000000016d35ebb8) at Driver.cpp:621:18
    frame #22: 0x0000000102aa75b0 lldb`main(argc=1, argv=0x000000016d35f548) at Driver.cpp:829:26
    frame #23: 0x0000000198858274 dyld`start + 2840
```

# Changes in this PR top of the above

Fix a [test
failure](https://github.com/llvm/llvm-project/pull/136236#issuecomment-2819772879)
in `TestStats.py`. The original version of the added test checks that
all modules have symbol count zero when `target.preload-symbols ==
false`. The test failed on macOS. Due to various reasons, on macOS,
symbols can be loaded for dylibs even with that setting, but not for the
main module. For now, the fix of the test is to limit the assertion to
only the main module. The test now passes on macOS. In the future, when
we have a way to control a specific list of plug-ins to be loaded, there
may be a configuration that this test can use to assert that all modules
have symbol count zero.

Apply a minor renaming of statistics, per the
[suggestion](https://github.com/llvm/llvm-project/pull/136226#issuecomment-2825080275)
in #136226 after merge.


  Commit: e28616a22af81c1e24aa8026992560799d2c0170
      https://github.com/llvm/llvm-project/commit/e28616a22af81c1e24aa8026992560799d2c0170
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M .github/workflows/commit-access-greeter.yml

  Log Message:
  -----------
  workflows/commit-access-greeter: Add pull-request read permissions (#137268)

This is now needed in order to list the pull requests for a user. I'm
not sure what changed but this didn't used to be necessary.


  Commit: f0c61d2242bbc7576ca5e4137a5ea8f63e4859a9
      https://github.com/llvm/llvm-project/commit/f0c61d2242bbc7576ca5e4137a5ea8f63e4859a9
  Author: YunQiang Su <syq at debian.org>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.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
    A llvm/test/CodeGen/AArch64/nofpclass.ll
    A llvm/test/CodeGen/Mips/nofpclass.ll

  Log Message:
  -----------
  CodeGen: Add ISD::AssertNoFPClass (#135946)

It is used to mark a value that we are sure that it is not some fcType.
The examples include:
  * An arguments of a function is marked with nofpclass
  * Output value of an intrinsic can be sure to not be some type

So that the following operation can make some assumptions.

---------

Co-authored-by: Your Name <you at example.com>


  Commit: fb01f19f3cf6b3317983b06a7dbf5ed143072990
      https://github.com/llvm/llvm-project/commit/fb01f19f3cf6b3317983b06a7dbf5ed143072990
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    M lldb/test/API/tools/lldb-dap/repl-mode/TestDAP_repl_mode_detection.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h

  Log Message:
  -----------
  [lldb][lldb-dap] fix repeating commands in repl mode (#135008)

Fixes #131589
Add a new parameter to the RunCommands functions to control the echoing of
commands
---------

Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Walter Erquinigo <a20012251 at gmail.com>


  Commit: 7a424276dee30154ec84b7494ef6040e10684a4e
      https://github.com/llvm/llvm-project/commit/7a424276dee30154ec84b7494ef6040e10684a4e
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrConditionalCompare.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/CodeGen/X86/apx/ccmp.ll
    R llvm/test/CodeGen/X86/apx/optimize-compare-ccmp.mir
    M llvm/test/CodeGen/X86/optimize-compare.mir

  Log Message:
  -----------
  Revert "[X86][APX] Support peephole optimization with CCMP instruction (#129994)" (#136796)

This reverts commit 7ae75851b2e1570662261c97c13cfc65357c283d.

There is a problem with peephole optimization for CCMP instruction. See
the example below:
C source code:
```
  if (a > 2 || (b && (a == 2))) { … }
```
MIR before peephole optimization:
```
  TEST8rr %21:gr8, %21:gr8, implicit-def $eflags // b
  CCMP32ri %30:gr32, 2, 0, 5, implicit-def $eflags, implicit $eflags // a == 2
  CCMP32ri %30:gr32, 3, 0, 5, implicit-def $eflags, implicit $eflags // a > 2 (transformed to a < 3)
  JCC_1 %bb.6, 2, implicit $eflags
  JMP_1 %bb.3
```
Inputs:
```
  a = 1, b = 0.
```
With the inputs above, the expected behavior is to jump to %bb.6 BB.
After TEST8rr instruction being executed with b(%21) == 0, the ZF bit is
set to 1 in eflags, so the eflags doesn't satisfy SCC condition in the
following CCMP32ri instruction (for a==2 condition) which skips compare
a(%30) with 2 and set flags in its payload to 0x202 (ZF = 0). The eflags
satisfies the SCC condition in the 2nd CCMP32ri instruction which
compares a(%30) with 3. It sets CF to 1 in eflags and the JCC
instruction jumps to %bb.6 BB.

But after adding CCMP support, peephole optimization eliminates the 2nd
CCMP32ri instruction and updates the condition of JCC instruction to
"BE" from "B". With the same inputs, JCC instruction falls through to
the next instruction. It's not expected and the 2nd CCMP32ri should not
be eliminated.
```
  TEST8rr %21:gr8, %21:gr8, implicit-def $eflags // b
  CCMP32ri %30:gr32, 2, 0, 5, implicit-def $eflags, implicit $eflags  // a == 2
  JCC_1 %bb.6, 6, implicit $eflags
  JMP_1 %bb.3
```


  Commit: 462bf4746fd6dcb004ecc9c450b0e45a00101297
      https://github.com/llvm/llvm-project/commit/462bf4746fd6dcb004ecc9c450b0e45a00101297
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and-xor-or.ll

  Log Message:
  -----------
  [InstCombine] Refactor the code for folding logicop and sext/zext. NFC. (#137132)

This refactoring is for more easily adding the code to preserve disjoint
or in the PR https://github.com/llvm/llvm-project/pull/136815.

Both casts must have one use for folding logicop and sext/zext when the
src type differ to avoid creating an extra instruction. If the src type
of casts are the same, only one of the casts needs to have one use. This
PR also adds more tests for the same src type.


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

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp

  Log Message:
  -----------
  [NVPTX][NFC] Refactoring and cleanup in NVPTXISelLowering (#137222)


  Commit: 4652b69b0a512ff248b08cfa7ba9547860d1cc10
      https://github.com/llvm/llvm-project/commit/4652b69b0a512ff248b08cfa7ba9547860d1cc10
  Author: Ian Wood <ianwood2024 at u.northwestern.edu>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix partial fuse by collapse (#136326)

Similar to `FoldWithProducerReshapeOpByCollapsing`,
`FoldReshapeWithGenericOpByCollapsing` needs to be able to handle
partial fusion of a reshape by collapsing. This means that the source of
the generated `expand_shape` op (aka the collapsed linalg op) might not
match the type of the original `collapse_shape` op. This change instead
replaces the original linalg op with the new `expand_shape` op which is
guaranteed to be the same type.

Signed-off-by: Ian Wood <ianwood2024 at u.northwestern.edu>


  Commit: 82f1f5e5d4104fa276386f4840eacef9c44becce
      https://github.com/llvm/llvm-project/commit/82f1f5e5d4104fa276386f4840eacef9c44becce
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Correctly identify include guards (#137112)

Fix #136814


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

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
    M lldb/test/API/tools/lldb-dap/stackTrace/main.c

  Log Message:
  -----------
  [lldb] Re-enable TestDAP_stackTrace on Windows

It's unclear why this test has been disabled on Windows. Remove the
unistd.h header and try re-enabling it.


  Commit: 6d99d1a4a93564ab7a128c269b2c55dcbd4f9570
      https://github.com/llvm/llvm-project/commit/6d99d1a4a93564ab7a128c269b2c55dcbd4f9570
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Added a target for the CF dialect C API (#137146)


  Commit: 3b58a60086cb755fe40cb90a73d27a83d44ce766
      https://github.com/llvm/llvm-project/commit/3b58a60086cb755fe40cb90a73d27a83d44ce766
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Allow forming pointers to fields of extern globals (#137211)

This should be fine as long as we're not reading from it.

Note that this regresses
CXX/special/class.init/class.inhctor.init/p1.cpp, which used to work
fine with the bytecode interpreter.

That's because this code now fails:

```c++
  struct Param;
  struct A {
    constexpr A(Param);
    int a;
  };

  struct B : A { B(); using A::A; int b = 2; };
  struct Wrap1 : B { constexpr Wrap1(); };
  struct Wrap2 : Wrap1 {};
  extern const Wrap2 b;

  struct Param {
    constexpr Param(int c) : n(4 * b.a + b.b + c) {}
    int n;
  };
```
and reports that the Param() constructor is never a valid constant
expression. But that's true and the current interpeter should report
that as well. It also fails when calling at compile time.


  Commit: 38ad9266b6705818544c03856eeef8335961dc22
      https://github.com/llvm/llvm-project/commit/38ad9266b6705818544c03856eeef8335961dc22
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Clarify the behavior of select with FP poison-generating flags (#137131)

RFC link:
https://discourse.llvm.org/t/rfc-clarify-the-behavior-of-select-with-fp-poison-generating-flags/85974

Actually, it does not conflict with the definition of FMF if we
interpret a select as `applyFMF(select cond, applyFMF(TrueArm),
applyFMF(FalseArm))`.


  Commit: 9c2190eb5dacfb7991f616c83a9e87740c1c6d49
      https://github.com/llvm/llvm-project/commit/9c2190eb5dacfb7991f616c83a9e87740c1c6d49
  Author: T-Tie <t_tttie at 163.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add support for Ziccamoc (#136694)

Support for Ziccamoc is added in this pr.
Specification link:
https://drive.google.com/file/d/12QKRm92cLcEk8-5J9NI91m0fAQOxqNAq/view

---------

Co-authored-by: Tie <Tie at llvm.com>


  Commit: 46f91173c5cd0b7aadeb1bc462217a020567d20e
      https://github.com/llvm/llvm-project/commit/46f91173c5cd0b7aadeb1bc462217a020567d20e
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [CodeGen] Fix -Wunused-variable in SelectionDAG.cpp (NFC)

/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7502:17:
 error: unused variable 'NoFPClass' [-Werror,-Wunused-variable]
    FPClassTest NoFPClass = static_cast<FPClassTest>(N2->getAsZExtVal());
                ^
1 error generated.


  Commit: 71329c6da1cd467f23b63e4a2956420f45b2cee9
      https://github.com/llvm/llvm-project/commit/71329c6da1cd467f23b63e4a2956420f45b2cee9
  Author: David Green <david.green at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/sub1.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add test coverage for sub1.ll. NFC


  Commit: 8c2233b304dcdac0a6edb61a3cc5f9cb97c382bc
      https://github.com/llvm/llvm-project/commit/8c2233b304dcdac0a6edb61a3cc5f9cb97c382bc
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir][vector] Update docs + add tests (#137144)

This is a small follow-on for #133721:
* Renamed `getRealVectorRank` as `getEffectiveVectorRankForXferOp` (to
  emphasise that this method was written specifically for transfer Ops).
* Marginally tweaked the description for
  `getEffectiveVectorRankForXferOp` (mostly to highlight the two edge
  cases being covered).
* Added tests for cases when the element type (of the shaped type) is a
  vector.
* Unified the naming (and the order) of arguments in tests with the
  surrounding tests (e.g. `%vec_to_write` -> `%arg1`). Mostly for
  consistency (it would be good to use self-documenting names like
  `%vec_to_write` throughout).


  Commit: 205d399f3026ad766a63fd20becc1476469cfa69
      https://github.com/llvm/llvm-project/commit/205d399f3026ad766a63fd20becc1476469cfa69
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libcxx] [test] Clarify the condition for long double hex formatting (#135334)

This test currently hardcodes which environments have got 80 bit long
doubles on x86_64 with a suitable printf formatting; convert the
architecture check into a check specifically for 80 bit long doubles.

Not all x86_64 configurations do have 80 bit long doubles (e.g. 
Android doesn't), and i386 configurations can also have 80 bit long
doubles, compatible with this test.

Also clarify the exact reasons for why specific OSes such as FreeBSD are
skipped for these tests, even though they have 80 bit long doubles.


  Commit: 5eca2ddeba6d05f0b1cf2193d56d059502122d00
      https://github.com/llvm/llvm-project/commit/5eca2ddeba6d05f0b1cf2193d56d059502122d00
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Program.cpp

  Log Message:
  -----------
  [clang][bytecode] Don't diagnose const extern reads in CPCE mode (#137285)

They might become constexpr later.


  Commit: ac3dec7bbe6ef7ea5ed60648c3ac1d4c90bd4962
      https://github.com/llvm/llvm-project/commit/ac3dec7bbe6ef7ea5ed60648c3ac1d4c90bd4962
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/test/Driver/fsanitize.c

  Log Message:
  -----------
  [NFC][Driver] Add missing `-resource-dir` into test (#137289)


  Commit: 79316f9f518dad7ae9235aeab27cd4ceb4a35985
      https://github.com/llvm/llvm-project/commit/79316f9f518dad7ae9235aeab27cd4ceb4a35985
  Author: YAMAMOTO Takashi <yamamoto at midokura.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/Module.h

  Log Message:
  -----------
  [IR] Fix comments on module getLargeDataThreshold/setLargeDataThreshold (NFC) (#137283)


  Commit: 2168455ef4cdbec9df3b63900fe9b316154187cf
      https://github.com/llvm/llvm-project/commit/2168455ef4cdbec9df3b63900fe9b316154187cf
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/test/tools/llvm-split/AMDGPU/address-taken-externalize-with-call.ll
    M llvm/test/tools/llvm-split/AMDGPU/large-kernels-merging-weak_odr.ll
    M llvm/test/tools/llvm-split/AMDGPU/large-kernels-merging.ll
    A llvm/test/tools/llvm-split/AMDGPU/preserve-globals.ll

  Log Message:
  -----------
  [AMDGPU][SplitModule] Do not create empty modules (#135761)

Skip creating a module if no function is going to be imported.
Also includes a change so that if the first partition is empty (which
can happen),
we import global with non-local linkage into the first non-empty
partition, instead
of P0 all the time.

I thought we'd need to change users of the SplitModule callback so they
can deal with less modules
than the number requested, but no. We already return only 1 module in
some cases and
it seems to be handled just fine.

Fixes SWDEV-523146


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

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Fix the check for Windows vs ccache (#137238)

Only the host OS matters for how to interact with ccache, not the target
OS that we may be cross compiling for.

This mistake seems to have been present all since support for ccache on
Windows was added in
a4425cc9146059618b3b7e927639b60a7c3301bc.


  Commit: 7aa8ece256e937d266bb66936cbe99d379c0f77f
      https://github.com/llvm/llvm-project/commit/7aa8ece256e937d266bb66936cbe99d379c0f77f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [Driver][CFI] Allow CFI with minimal runtime (#137103)

It was introduced with original "minimal runtime"
patch without explanation:
https://reviews.llvm.org/D36810#:~:text=if%20(-,NonTrappingCfi,-)

Note, the same commit contains `cfi_check_fail` handler,
which can not be reached with `-fsanitize-trap=cfi`.

This patch makes CFI min runtime behavior consistent with UBSAN:
`-fsanitize-trap=` ignores `-fsanitize-minimal-runtime`,
`-fno-sanitize-trap=` with `-fsanitize-minimal-runtime` compiles and
link
minimal runtime.


  Commit: a9788e3a86cab64ae92dd7d041718b0722f43c3a
      https://github.com/llvm/llvm-project/commit/a9788e3a86cab64ae92dd7d041718b0722f43c3a
  Author: Marco Elver <elver at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp

  Log Message:
  -----------
  Thread Safety Analysis: Test: Minor style fix

Factored out from https://github.com/llvm/llvm-project/pull/137133

NFC.


  Commit: 86cca005a1a160b4fe681c535c3f00984239259a
      https://github.com/llvm/llvm-project/commit/86cca005a1a160b4fe681c535c3f00984239259a
  Author: Quinton Miller <nicetas.c at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/lib/IR/Core.cpp
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/tools/llvm-c-test/echo.cpp

  Log Message:
  -----------
  [llvm-c] Add `LLVMConstDataArray` and `LLVMGetRawDataValues` (#129440)

Resolves #129439.

The addition to `echo.ll` is for testing `ConstantArray`, because every
other array in that file is in fact a `ConstantDataArray` and now takes
the new code path in `echo.cpp`.


  Commit: ada4ad9d1f5580476918d490cb51382714cb2973
      https://github.com/llvm/llvm-project/commit/ada4ad9d1f5580476918d490cb51382714cb2973
  Author: Josep Pinot <jsp.pinot at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M openmp/runtime/src/kmp_taskdeps.cpp
    M openmp/runtime/src/kmp_tasking.cpp
    A openmp/runtime/test/tasking/omp_record_replay_deps_multi_succ.cpp

  Log Message:
  -----------
  [OpenMP] Fix taskgraph dependency tracking, memory access, and initialization (#136837)

This commit resolves multiple issues in the OpenMP taskgraph implementation:
- Fix a potential use of uninitialized is_taskgraph and tdg fields when a task is created outside of a taskgraph construct.
- Fix use of task ID field when accessing the taskgraph’s record_map.
- Fix resizing and copying of the successors array when its capacity is exceeded.

Fixes memory management flaws, invalid memory accesses, and uninitialized data risks in taskgraph operations.


  Commit: dadea967915db7ac33963c3874097e4b1a961ca8
      https://github.com/llvm/llvm-project/commit/dadea967915db7ac33963c3874097e4b1a961ca8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/test/Assembler/amdgcn-intrinsic-attributes.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.wavefrontsize.ll

  Log Message:
  -----------
  AMDGPU: Add range to wavefrontsize intrinsic declaration (#136303)


  Commit: 911cb60975b1b8d2dc695e3e57c2e4c0db303e12
      https://github.com/llvm/llvm-project/commit/911cb60975b1b8d2dc695e3e57c2e4c0db303e12
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxx/include/__type_traits/rank.h

  Log Message:
  -----------
  [libc++] Use __array_rank in Clang versions without any known bugs (#136103)

There was a bug in the implementation of `__array_rank` until LLVM 20
which prevented us from using the builtin. Since the bug has been fixed
now we can enable the use and remove the generic implementation in a few
releases.


  Commit: c4d44ecb98896d1b0919ce064eefa8cae286f55d
      https://github.com/llvm/llvm-project/commit/c4d44ecb98896d1b0919ce064eefa8cae286f55d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Use early returns in basic_string::operator= (#137145)

This makes the code a lot easier to read.


  Commit: ec936b3186e3512a9297c5a12b58d627ef1a1b32
      https://github.com/llvm/llvm-project/commit/ec936b3186e3512a9297c5a12b58d627ef1a1b32
  Author: Fangyi Zhou <me at fangyi.io>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.h
    M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    A clang/test/Analysis/PR57270.cpp
    M clang/test/Analysis/container-modeling.cpp
    M clang/test/Analysis/dump_egraph.cpp
    M clang/test/Analysis/explain-svals.cpp
    M clang/test/Analysis/explain-svals.m

  Log Message:
  -----------
  [Clang][analyzer] Replace Stmt* with ConstCFGElementRef in SymbolConjured (#128251)

This PR changes the `Stmt *` field in `SymbolConjured` with
`CFGBlock::ConstCFGElementRef`. The motivation is that, when conjuring a
symbol, there might not always be a statement available, causing
information to be lost for conjured symbols, whereas the CFGElementRef
can always be provided at the callsite.

Following the idea, this PR changes callsites of functions to create
conjured symbols, and replaces them with appropriate `CFGElementRef`s.

Closes #57270


  Commit: 166e5b1f0f68252f267146724fdb4ecc25dea894
      https://github.com/llvm/llvm-project/commit/166e5b1f0f68252f267146724fdb4ecc25dea894
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxx/include/__string/extern_template_lists.h
    M libcxx/include/string
    M libcxx/src/string.cpp

  Log Message:
  -----------
  [libc++][NFC] Refactor string's extern template lists (#137264)

This patch moves the functions common between our two extern template
lists into a common list and avoids some unnecessary _Uglification. This
makes the code a lot nicer to read and makes the differences between the
two lists obvious.


  Commit: 9fdb4f3537085389686fb27fd8f6d8a4bca89ab5
      https://github.com/llvm/llvm-project/commit/9fdb4f3537085389686fb27fd8f6d8a4bca89ab5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__functional/function.h
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/functional.cpp

  Log Message:
  -----------
  [libc++] Make bad_function_call::what() existence a matter of availability instead of ABI (#127697)

We're currently adding `bad_function_call::what()` behind an ABI flag,
even though adding it is not an ABI break and can be handled through
availability.


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

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll

  Log Message:
  -----------
  [LV] Strip bad FIXME in test (#137142)

See https://github.com/llvm/llvm-project/pull/130118/files#r1983745712
for context.


  Commit: e046f2050578b8cda394143fafbfb476767b836a
      https://github.com/llvm/llvm-project/commit/e046f2050578b8cda394143fafbfb476767b836a
  Author: Peng Sun <peng.sun at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/error_if_check.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Enhance error_if and verify checks for RESCALE Op (#137021)

* add verifier for rank-0 input with per-channel
* add checkErrorIfRescale to tosa validation pass that align with
TOSAv1.0
  * add LIT tests

Signed-off-by: Peng Sun <peng.sun at arm.com>


  Commit: 9c830cef3d7c2f1adfadcc0026a73ba2cdbeef05
      https://github.com/llvm/llvm-project/commit/9c830cef3d7c2f1adfadcc0026a73ba2cdbeef05
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A lldb/include/lldb/Core/DemangledNameInfo.h
    M lldb/source/Core/CMakeLists.txt
    A lldb/source/Core/DemangledNameInfo.cpp
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb] Implement TrackingOutputBuffer to track demangled name information (#131836)

This patch implements a new `TrackingOutputBuffer` which tracks where the scope/basename/arguments begin and end in the demangled string.

The idea that a function name can be decomposed into <scope, base, arguments>. The assumption is that given the ranges of those three elements and the demangled name, LLDB will be able to to reconstruct the full demangled name. The tracking of those ranges is pretty simple. We don’t ever deal with nesting, so whenever we recurse into a template argument list or another function type, we just stop tracking any positions. Once we recursed out of those, and are back to printing the top-level function name, we continue tracking the positions.

We introduce a new structure `FunctionNameInfo` that holds all this information and is stored in the new `TrackingOutputBuffer` class.

Tests are in `ItaniumDemangleTest.cpp`.

https://github.com/llvm/llvm-project/pull/131836


  Commit: f220ea2947b9c8b1e33db65b008086d47fa72af3
      https://github.com/llvm/llvm-project/commit/f220ea2947b9c8b1e33db65b008086d47fa72af3
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [lldb][Mangled] Add API to force re-demangling a Mangled object (#131836)

Add version of GetDemangledName that will force re-demangling. This is required because LLDB will SetDemangledName without going through the demangler. So we need a way to force demangling to set the m_demangled_info member when we need it.

https://github.com/llvm/llvm-project/pull/131836


  Commit: a2672250be871bdac18c1a955265a98704434218
      https://github.com/llvm/llvm-project/commit/a2672250be871bdac18c1a955265a98704434218
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/DemangledNameInfo.h
    M lldb/include/lldb/Core/Mangled.h
    M lldb/source/Core/DemangledNameInfo.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/unittests/Core/MangledTest.cpp
    M llvm/include/llvm/Demangle/Demangle.h
    M llvm/lib/Demangle/ItaniumDemangle.cpp

  Log Message:
  -----------
  [lldb][Mangled] Retrieve and cache demangled name info (#131836)

Uses the `TrackingOutputBuffer` to populate the new member `Mangled::m_demangled_info`.

`m_demangled_info` is lazily popluated by `GetDemangledInfo`. To ensure `m_demangled` and `m_demangled_info` are in-sync we clear `m_demangled_info` anytime `m_demangled` is set/cleared.

https://github.com/llvm/llvm-project/pull/131836


  Commit: 8b91b44a3be680788f914af72f38f90d35925c23
      https://github.com/llvm/llvm-project/commit/8b91b44a3be680788f914af72f38f90d35925c23
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Target/Language.h
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
    M lldb/source/Symbol/SymbolContext.cpp
    A lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionBasenameObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArgumentsObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiersObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionReturnObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionScopeObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArgumentsObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatName.test

  Log Message:
  -----------
  [lldb][Format] Introduce new frame-format variables for function parts (#131836)

Adds new frame-format variables and implements them in the CPlusPlusLanguage plugin.

We use the `DemangledNameInfo` type to retrieve the necessary part of the demangled name.

https://github.com/llvm/llvm-project/pull/131836


  Commit: d555b9f9a01705097edf2434cf897e351095e5c9
      https://github.com/llvm/llvm-project/commit/d555b9f9a01705097edf2434cf897e351095e5c9
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Target/Language.h
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
    A lldb/source/Plugins/Language/CPlusPlus/LanguageCPlusPlusProperties.td
    A lldb/test/Shell/Settings/TestCxxFrameFormat.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatMixedLanguages.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatObjC.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatRecursive.test

  Log Message:
  -----------
  [lldb][CPlusPlus] Add plugin.cplusplus.display.function-name-format setting (#131836)

Adds the new `plugin.cplusplus.display.function-name-format` setting and makes the `${function.name-with-args}` query it for formatting the function name.

One caveat is that the setting can't itself be set to `${function.name-with-args}` because that would cause infinite recursion and blow the stack. I added an XFAILed test-case for it and will address it in a follow-up patch.

https://github.com/llvm/llvm-project/pull/131836


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll

  Log Message:
  -----------
  [InstCombine] Drop integral/non-integral check prefixes from test (NFC)

The behavior is not affected by non-integral pointers. Keep the
RUN lines but drop the prefixes.


  Commit: 34660eb60ee6401d9e7ce6dd37552c46eb760620
      https://github.com/llvm/llvm-project/commit/34660eb60ee6401d9e7ce6dd37552c46eb760620
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/test/ubsan/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt] Don't exclude ubsan-asan tests on Windows/x86_64 (#137171)

This removes a leftover workaround from
00f3f6e296d49eb261e1ad47868a50122bfc111e from 2016. Currently the tests
seem to work fine on x86_64 in both MSVC and mingw configurations with
this workaround removed.

(On aarch64, asan isn't functional at all; this workaround used to hide
that issue when running "check-ubsan", but the issue is apparent if
running all tests with "check-compiler-rt" anyway.)


  Commit: 655933070219f2b6f3a457c7e5af7edd4b5291b4
      https://github.com/llvm/llvm-project/commit/655933070219f2b6f3a457c7e5af7edd4b5291b4
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake

  Log Message:
  -----------
  [compiler-rt] Only include asan on x86 architectures on Windows (#137173)

This avoids building asan when targeting Windows on armv7 or aarch64. It
is possible to build asan successfully for those configurations (since
5ea9dd8c7076270695a1d90b9c73718e7d95e0bf and
0c391133c9201ef29273554a1505ef855ce17668), but asan isn't functional
there.

This change skips building asan for targets other than x86_32 and
x86_64.

By excluding asan from the build, we fix the "check-ubsan" target for
armv7 and aarch64 Windows. If asan is included in the build, an
ubsan-asan configuration gets added to the tests, and as asan isn't
functional for these targets, it produces a lot of test failures even
when just trying to run "check-ubsan".


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

  Changed paths:
    M compiler-rt/test/lit.common.configured.in

  Log Message:
  -----------
  [compiler-rt] [test] Look for the right file name suffix for arm targets (#137174)

Compiler-rt libraries on arm use "arm" or "armhf" as suffix, not the
full exact arch name like "armv7".

This matches what was done for the build system in
8e11bede3a6ac11ebcc05c82fac39899feaf9534, to match the names that Clang
expects (in getArchNameForCompilerRTLib in Clang).

This fixes building a large number of the compiler-rt tests for
Windows/armv7.


  Commit: 2de001da389f4729020a11e61ba571a6be8dcc71
      https://github.com/llvm/llvm-project/commit/2de001da389f4729020a11e61ba571a6be8dcc71
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [compiler-rt] Detect arm hardfloat targets via __ARM_PCS_VFP (#137175)

This makes sure that COMPILER_RT_ARMHF_TARGET is set properly for
targets without a specific "armhf" target name, such as armv7 windows.

This fixes the builtins test comparesf2_test.c on Windows on armv7.


  Commit: 3e56f5f41843204b6e612362542b77110f8f8188
      https://github.com/llvm/llvm-project/commit/3e56f5f41843204b6e612362542b77110f8f8188
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/test/profile/instrprof-api.c
    M compiler-rt/test/profile/instrprof-reset-counters.c

  Log Message:
  -----------
  [compiler-rt] [test] Adjust profile tests to allow arm_aapcs_vfpcc (#137176)

This fixes these tests for Windows on armv7.


  Commit: 5a645109c3a965dcaab08e3485f2fa505e44cde3
      https://github.com/llvm/llvm-project/commit/5a645109c3a965dcaab08e3485f2fa505e44cde3
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/DemangledNameInfo.h

  Log Message:
  -----------
  [lldb] Remove redundant DemangledNameInfo::operator==

This wasn't defined correctly and was unused. And it was causing a CI
build failure:
```
/home/buildbot/buildbot-root/cross-project-tests-sie-ubuntu-dwarf5/llvm-project/lldb/include/lldb/Core/DemangledNameInfo.h: In function ‘bool lldb_private::operator==(const lldb_private::DemangledNameInfo&, const lldb_private::DemangledNameInfo&)’:
/home/buildbot/buildbot-root/cross-project-tests-sie-ubuntu-dwarf5/llvm-project/lldb/include/lldb/Core/DemangledNameInfo.h:60:25: error: ‘const struct lldb_private::DemangledNameInfo’ has no member named ‘QualifiersRange’
   60 |                     lhs.QualifiersRange) ==
      |                         ^~~~~~~~~~~~~~~
/home/buildbot/buildbot-root/cross-project-tests-sie-ubuntu-dwarf5/llvm-project/lldb/include/lldb/Core/DemangledNameInfo.h:62:25: error: ‘const struct lldb_private::DemangledNameInfo’ has no member named ‘QualifiersRange’
   62 |                     lhs.QualifiersRange);
      |                         ^~~~~~~~~~~~~~~
111.469 [1284/7/3896] Building CXX object tools/lldb/source/Expression/CMakeFiles/lldbExpression.dir/ObjectFileJIT.cpp.o
111.470 [1284/6/3897] Building CXX object tools/lldb/source/Expression/CMakeFiles/lldbExpression.dir/Materializer.cpp.o
111.492 [1284/5/3898] Building CXX object tools/lldb/source/Expression/CMakeFiles/lldbExpression.dir/REPL.cpp.o
111.496 [1284/4/3899] Building CXX object tools/lldb/source/Expression/CMakeFiles/lldbExpression.dir/UserExpression.cpp.o
111.695 [1284/3/3900] Building CXX object tools/lldb/source/Commands/CMakeFiles/lldbCommands.dir/CommandObjectTarget.cpp.o
112.944 [1284/2/3901] Linking CXX shared library lib/libclang.so.21.0.0git
113.098 [1284/1/3902] Linking CXX shared library lib/libclang-cpp.so.21.0git
```


  Commit: 211b51e4713d814d6fa894f4fc309a364c5642ce
      https://github.com/llvm/llvm-project/commit/211b51e4713d814d6fa894f4fc309a364c5642ce
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/DynamicAllocator.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpBlock.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/test/AST/ByteCode/literals.cpp

  Log Message:
  -----------
  [clang][bytecode] Propagate IsVolatile bit to subobjects (#137293)

For
```c++
  struct S {
    constexpr S(int=0) : i(1) {}
    int i;
  };
  constexpr volatile S vs;
```

reading from `vs.i` is not allowed, even though `i` is not volatile
qualified. Propagate the IsVolatile bit down the hierarchy, so we know
reading from `vs.i` is a volatile read.


  Commit: 5bad5d84a15a4f36b8ed5b33dde924683bcc9ea1
      https://github.com/llvm/llvm-project/commit/5bad5d84a15a4f36b8ed5b33dde924683bcc9ea1
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFrameInfo.h
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    A llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    A llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    A llvm/test/CodeGen/AMDGPU/vgpr-blocks-funcinfo.mir
    M llvm/unittests/Target/AMDGPU/CMakeLists.txt
    A llvm/unittests/Target/AMDGPU/LiveRegUnits.cpp

  Log Message:
  -----------
  Reland [AMDGPU] Support block load/store for CSR #130013 (#137169)

Add support for using the existing SCRATCH_STORE_BLOCK and
SCRATCH_LOAD_BLOCK instructions for saving and restoring callee-saved
VGPRs. This is controlled by a new subtarget feature, block-vgpr-csr. It
does not include WWM registers - those will be saved and restored
individually, just like before. This patch does not change the ABI.

Use of this feature may lead to slightly increased stack usage, because
the memory is not compacted if certain registers don't have to be
transferred (this will happen in practice for calling conventions where
the callee and caller saved registers are interleaved in groups of 8).
However, if the registers at the end of the block of 32 don't have to be
transferred, we don't need to use a whole 128-byte stack slot - we can
trim some space off the end of the range.

In order to implement this feature, we need to rely less on the
target-independent code in the PrologEpilogInserter, so we override
several new methods in SIFrameLowering. We also add new pseudos,
SI_BLOCK_SPILL_V1024_SAVE/RESTORE.

One peculiarity is that both the SI_BLOCK_V1024_RESTORE pseudo and the
SCRATCH_LOAD_BLOCK instructions will have all the registers that are not
transferred added as implicit uses. This is done in order to inform
LiveRegUnits that those registers are not available before the restore
(since we're not really restoring them - so we can't afford to scavenge
them). Unfortunately, this trick doesn't work with the save, so before
the save all the registers in the block will be unavailable (see the
unit test).

This was reverted due to failures in the builds with expensive checks
on, now fixed by always updating LiveIntervals and SlotIndexes in
SILowerSGPRSpills.


  Commit: 194da37b71a07f9959623231a5fa9fd1b11187cd
      https://github.com/llvm/llvm-project/commit/194da37b71a07f9959623231a5fa9fd1b11187cd
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    A llvm/test/CodeGen/Mips/Fast-ISel/div-imm.ll

  Log Message:
  -----------
  [Mips] Do not emit instruction teq if divisor is non-zero immediate value in FastISel implementation (#135768)

Add a check before emitting the teq instruction to check whether the
divisor is a non-zero immediate value.

Fix #130629.


  Commit: d9bab3349ad86850634f0b135ef2a0450cca75bd
      https://github.com/llvm/llvm-project/commit/d9bab3349ad86850634f0b135ef2a0450cca75bd
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [mlir][OpenMP] add verifier and tests for cancel taskgroup (#137154)


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

  Changed paths:
    M compiler-rt/lib/tysan/tysan.cpp
    A compiler-rt/test/tysan/derrived_default_constructor.cpp
    A compiler-rt/test/tysan/inherited_member.cpp

  Log Message:
  -----------
  [TySan] Fix false positives with derived classes (#126260)

Fixes issue #125079 as well as another case I discovered while trying to
build LLVM with TySan.


  Commit: 6171e4b34b1c85c42baa31cb17dad1799f414688
      https://github.com/llvm/llvm-project/commit/6171e4b34b1c85c42baa31cb17dad1799f414688
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.h
    M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    R clang/test/Analysis/PR57270.cpp
    M clang/test/Analysis/container-modeling.cpp
    M clang/test/Analysis/dump_egraph.cpp
    M clang/test/Analysis/explain-svals.cpp
    M clang/test/Analysis/explain-svals.m

  Log Message:
  -----------
  Revert "[Clang][analyzer] replace Stmt* with ConstCFGElementRef in SymbolConjured" (#137304)

Reverts llvm/llvm-project#128251

ASAN bots reported some errors:
https://lab.llvm.org/buildbot/#/builders/55/builds/10398
Reverting for investigation.

```
Failed Tests (6):
  Clang :: Analysis/loop-widening-ignore-static-methods.cpp
  Clang :: Analysis/loop-widening-notes.cpp
  Clang :: Analysis/loop-widening-preserve-reference-type.cpp
  Clang :: Analysis/loop-widening.c
  Clang :: Analysis/loop-widening.cpp
  Clang :: Analysis/this-pointer.cpp
Testing Time: 411.55s
Total Discovered Tests: 118563
  Skipped          :     33 (0.03%)
  Unsupported      :   2015 (1.70%)
  Passed           : 116291 (98.08%)
  Expectedly Failed:    218 (0.18%)
  Failed           :      6 (0.01%)
FAILED: CMakeFiles/check-all /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/CMakeFiles/check-all 
cd /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan && /usr/bin/python3 /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/./bin/llvm-lit -sv --param USE_Z3_SOLVER=0 /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/utils/mlgo-utils /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/mlir/test /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/clang/test /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/utils/lit /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/test
ninja: build stopped: subcommand failed.
```

```
/home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/clang -cc1 -internal-isystem /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/lib/clang/21/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-max-loop 4 -analyzer-config widen-loops=true -verify -analyzer-config eagerly-assume=false /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/test/Analysis/loop-widening.c # RUN: at line 1
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/clang -cc1 -internal-isystem /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/lib/clang/21/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-max-loop 4 -analyzer-config widen-loops=true -verify -analyzer-config eagerly-assume=false /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/test/Analysis/loop-widening.c
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/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/clang -cc1 -internal-isystem /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/lib/clang/21/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-max-loop 4 -analyzer-config widen-loops=true -verify -analyzer-config eagerly-assume=false /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/test/Analysis/loop-widening.c
1.	<eof> parser at end of file
2.	While analyzing stack: 
	#0 Calling nested_loop_inner_widen
 #0 0x0000c894cca289cc llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:804:13
 #1 0x0000c894cca23324 llvm::sys::RunSignalHandlers() /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/lib/Support/Signals.cpp:106:18
 #2 0x0000c894cca29bbc SignalHandler(int, siginfo_t*, void*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/lib/Support/Unix/Signals.inc:0:3
 #3 0x0000f6898da4a8f8 (linux-vdso.so.1+0x8f8)
 #4 0x0000f6898d377608 (/lib/aarch64-linux-gnu/libc.so.6+0x87608)
 #5 0x0000f6898d32cb3c raise (/lib/aarch64-linux-gnu/libc.so.6+0x3cb3c)
 #6 0x0000f6898d317e00 abort (/lib/aarch64-linux-gnu/libc.so.6+0x27e00)
 #7 0x0000c894c5e77fec __sanitizer::Atexit(void (*)()) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp:168:10
 #8 0x0000c894c5e76680 __sanitizer::Die() /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_termination.cpp:52:5
 #9 0x0000c894c5e69650 Unlock /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/../sanitizer_common/sanitizer_mutex.h:250:16
#10 0x0000c894c5e69650 ~GenericScopedLock /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/../sanitizer_common/sanitizer_mutex.h:386:51
#11 0x0000c894c5e69650 __hwasan::ScopedReport::~ScopedReport() /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/hwasan_report.cpp:54:5
#12 0x0000c894c5e68de0 __hwasan::(anonymous namespace)::BaseReport::~BaseReport() /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/hwasan_report.cpp:476:7
#13 0x0000c894c5e66b74 __hwasan::ReportTagMismatch(__sanitizer::StackTrace*, unsigned long, unsigned long, bool, bool, unsigned long*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/hwasan_report.cpp:1091:1
#14 0x0000c894c5e52cf8 Destroy /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/../sanitizer_common/sanitizer_common.h:532:31
#15 0x0000c894c5e52cf8 ~InternalMmapVector /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/../sanitizer_common/sanitizer_common.h:642:56
#16 0x0000c894c5e52cf8 __hwasan::HandleTagMismatch(__hwasan::AccessInfo, unsigned long, unsigned long, void*, unsigned long*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/hwasan.cpp:245:1
#17 0x0000c894c5e551c8 __hwasan_tag_mismatch4 /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/hwasan/hwasan.cpp:764:1
#18 0x0000c894c5e6a2f8 __interception::InterceptFunction(char const*, unsigned long*, unsigned long, unsigned long) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/compiler-rt/lib/interception/interception_linux.cpp:60:0
#19 0x0000c894d166f664 getBlock /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:217:45
#20 0x0000c894d166f664 getCFGElementRef /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:230:59
#21 0x0000c894d166f664 clang::ento::ExprEngine::processCFGBlockEntrance(clang::BlockEdge const&, clang::ento::NodeBuilderWithSinks&, clang::ento::ExplodedNode*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:2570:45
#22 0x0000c894d15f3a1c hasGeneratedNodes /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:333:37
#23 0x0000c894d15f3a1c clang::ento::CoreEngine::HandleBlockEdge(clang::BlockEdge const&, clang::ento::ExplodedNode*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:319:20
#24 0x0000c894d15f2c34 clang::ento::CoreEngine::dispatchWorkItem(clang::ento::ExplodedNode*, clang::ProgramPoint, clang::ento::WorkListUnit const&) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:220:7
#25 0x0000c894d15f2398 operator-> /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/libcxx_install_hwasan/include/c++/v1/__memory/unique_ptr.h:267:101
#26 0x0000c894d15f2398 clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>)::$_0::operator()(unsigned int) const /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:140:12
#27 0x0000c894d15f14b4 clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:165:7
#28 0x0000c894d0ebb9dc release /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:232:9
#29 0x0000c894d0ebb9dc ~IntrusiveRefCntPtr /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:196:27
#30 0x0000c894d0ebb9dc ExecuteWorkList /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:192:5
#31 0x0000c894d0ebb9dc RunPathSensitiveChecks /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:772:7
#32 0x0000c894d0ebb9dc (anonymous namespace)::AnalysisConsumer::HandleCode(clang::Decl*, unsigned int, clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, llvm::DenseMapInfo<clang::Decl const*, void>>*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:741:5
#33 0x0000c894d0eb6ee4 begin /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:0:0
#34 0x0000c894d0eb6ee4 begin /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/ADT/DenseSet.h:187:45
#35 0x0000c894d0eb6ee4 HandleDeclsCallGraph /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:516:29
#36 0x0000c894d0eb6ee4 runAnalysisOnTranslationUnit /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:584:5
#37 0x0000c894d0eb6ee4 (anonymous namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:647:3
#38 0x0000c894d18a7a38 clang::ParseAST(clang::Sema&, bool, bool) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/Parse/ParseAST.cpp:0:13
#39 0x0000c894ce81ed70 clang::FrontendAction::Execute() /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1231:10
#40 0x0000c894ce6f2144 getPtr /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/Support/Error.h:278:42
#41 0x0000c894ce6f2144 operator bool /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/include/llvm/Support/Error.h:241:16
#42 0x0000c894ce6f2144 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1058:23
#43 0x0000c894cea718cc operator-> /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/libcxx_install_hwasan/include/c++/v1/__memory/shared_ptr.h:635:12
#44 0x0000c894cea718cc getFrontendOpts /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/include/clang/Frontend/CompilerInstance.h:307:12
#45 0x0000c894cea718cc clang::ExecuteCompilerInvocation(clang::CompilerInstance*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:301:14
#46 0x0000c894c5e9cf28 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/tools/driver/cc1_main.cpp:294:15
#47 0x0000c894c5e92a9c ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/tools/driver/driver.cpp:223:12
#48 0x0000c894c5e902ac clang_main(int, char**, llvm::ToolContext const&) /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/tools/driver/driver.cpp:0:12
#49 0x0000c894c5eb2e34 main /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/clang/tools/driver/clang-driver.cpp:17:3
#50 0x0000f6898d3184c4 (/lib/aarch64-linux-gnu/libc.so.6+0x284c4)
#51 0x0000f6898d318598 __libc_start_main (/lib/aarch64-linux-gnu/libc.so.6+0x28598)
#52 0x0000c894c5e52a30 _start (/home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/clang+0x6512a30)
/home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/clang/test/Analysis/Output/loop-widening.c.script: line 2: 2870204 Aborted                 /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/clang -cc1 -internal-isystem /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/lib/clang/21/include -nostdsysteminc -analyze -analyzer-constraints=range -setup-static-analyzer -analyzer-checker=core,unix.Malloc,debug.ExprInspection -analyzer-max-loop 4 -analyzer-config widen-loops=true -verify -analyzer-config eagerly-assume=false /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/clang/test/Analysis/loop-widening.c
```


  Commit: a4d1a9d6d5c44d37b926e675e6f707eb35b601b0
      https://github.com/llvm/llvm-project/commit/a4d1a9d6d5c44d37b926e675e6f707eb35b601b0
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Remove unused variables in SILowerSGPRSpills.cpp (NFC)

/llvm-project/llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp:172:25:
error: unused variable 'RI' [-Werror,-Wunused-variable]
  const SIRegisterInfo *RI = ST.getRegisterInfo();
                        ^
1 error generated.


  Commit: 6738cfe0a40af2754000346ff090ebb2115ce15f
      https://github.com/llvm/llvm-project/commit/6738cfe0a40af2754000346ff090ebb2115ce15f
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    A clang/test/CodeGenCXX/cxx20-module-initializer-pacbti.cpp

  Log Message:
  -----------
  Mark CXX module initializer with PACBTI attributes (#133716)

The CXX module initializer function, which is called at program startup,
needs to be tagged with Pointer Authentication and Branch Target
Identification marks whenever relevant.

Before this patch, in CPUs set up for PACBTI execution, the function
wasn't protected with return address signing and no BTI instruction was
inserted at the start of it, thus leading to an execution fault.

This patch fixes the issue by marking the function with the function
attributes related to PAC and BTI if relevant.


  Commit: c792b25e47e00dbf2cd9654bf806fe5f9de6e44e
      https://github.com/llvm/llvm-project/commit/c792b25e47e00dbf2cd9654bf806fe5f9de6e44e
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/docs/GlobalISel/MIRPatterns.rst
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/pattern-errors.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/pattern-parsing.td
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp

  Log Message:
  -----------
  [GlobalISel] Add `combine` action for C++ combine rules (#135941)

Adds a `combine` action (DAG operator) which allows for easy definition of
combine rule that only match one or more instructions, and defer all remaining
match/apply logic to C++ code.

This avoids the need for split match/apply function in such cases. One function
can do the trick as long as it returns `true` if it changed any code.

This is implemented as syntactic sugar over match/apply. The combine rule is
just a match pattern BUT every C++ pattern inside is treated as an "apply" function.
This makes it fit seamlessly with the current backend.

Fixes #92410


  Commit: da14f6d4b9d8c2b1fde37cd766688ce5e26b2984
      https://github.com/llvm/llvm-project/commit/da14f6d4b9d8c2b1fde37cd766688ce5e26b2984
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb] Fix MangledTest build failure

No equality operator was specified. Define one locally.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll

  Log Message:
  -----------
  [LLVM][InstCombine] Enable constant folding for SVE add,and,eor,fadd,fdiv,fsub,orr & sub intrinsics. (#136849)

This is the subset of binops (mul and fmul are already enabled) whose
behaviour fully aligns with the equivalent SVE intrinsic. The omissions
are integer divides and shifts that are defined to return poison for
values where the intrinsics have a defined result. These will be covered
in a seperate PR.


  Commit: b4e259291326176602c55db2dbf8697ff3bca6e9
      https://github.com/llvm/llvm-project/commit/b4e259291326176602c55db2dbf8697ff3bca6e9
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add verifier checks for Gather (#137204)

This adds verifier checks for the gather op
to make sure the shapes of inputs and output
are consistent with respect to spec.

---------

Signed-off-by: Tai Ly <tai.ly at arm.com>
Co-authored-by: Luke Hutton <luke.hutton at arm.com>


  Commit: 2d00c73003a6c5e9fd468afcf271b505d4f80f27
      https://github.com/llvm/llvm-project/commit/2d00c73003a6c5e9fd468afcf271b505d4f80f27
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    A clang/test/CodeGenCXX/fake-use-musttail.cpp

  Log Message:
  -----------
  [Clang][CodeGen] Emit fake uses before musttail calls (#136867)

Fixes the issue reported following the merge of #118026.

When a valid `musttail` call is made, the function it is made from must
return immediately after the call; if there are any cleanups left in the
function, then an error is triggered. This is not necessary for fake
uses however - it is perfectly valid to simply emit the fake use
"cleanup" code before the tail call, and indeed LLVM will automatically
move any fake uses following a tail call to come before the tail call.

Therefore, this patch specifically choose to handle fake use cleanups
when a musttail call is present by simply emitting them immediately
before the call.


  Commit: d775b911c90e631f5cc332c07474f7121564e25b
      https://github.com/llvm/llvm-project/commit/d775b911c90e631f5cc332c07474f7121564e25b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose pseudo dtor calls before C++20 (#137303)


  Commit: 317763580fa92a05ba04f4a04677124acb958ea3
      https://github.com/llvm/llvm-project/commit/317763580fa92a05ba04f4a04677124acb958ea3
  Author: Fangyi Zhou <me at fangyi.io>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp

  Log Message:
  -----------
  [clang][analyzer][NFC] Add a helper for conjuring symbols at call events (#137182)

Per suggestion in

https://github.com/llvm/llvm-project/pull/128251#discussion_r2055916229,
adding a new helper function in `SValBuilder` to conjure a symbol when
given a `CallEvent`.

Tested manually (with assertions) that the `LocationContext *` obtained
from the `CallEvent` are identical to those passed in the original
argument.


  Commit: 2d1b5a269b85c1a6174c1988f43acbb7bc1ba8f2
      https://github.com/llvm/llvm-project/commit/2d1b5a269b85c1a6174c1988f43acbb7bc1ba8f2
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
    M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb][lldb-dap] Redirect LLDB's messages to the right output category. (#137002)

Based on the DAP specification.
The output categories stdout and stderr should only be used for the
debuggee's stdout and stderr.

```jsonc
 /**
     * The output category. If not specified or if the category is not
     * understood by the client, `console` is assumed.
     * Values:
     * 'console': Show the output in the client's default message UI, e.g. a
     * 'debug console'. This category should only be used for informational
     * output from the debugger (as opposed to the debuggee).
     * 'important': A hint for the client to show the output in the client's UI
     * for important and highly visible information, e.g. as a popup
     * notification. This category should only be used for important messages
     * from the debugger (as opposed to the debuggee). Since this category value
     * is a hint, clients might ignore the hint and assume the `console`
     * category.
     * 'stdout': Show the output as normal program output from the debuggee.
     * 'stderr': Show the output as error program output from the debuggee.
     * 'telemetry': Send the output to telemetry instead of showing it to the
     * user.
     * etc.
     */
    category?: 'console' | 'important' | 'stdout' | 'stderr' | 'telemetry' | string;
```
What I am not sure if error should use the important category ?

---------

Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>


  Commit: accee2b5538eedae297201d1a2d66ddefd4c0cc1
      https://github.com/llvm/llvm-project/commit/accee2b5538eedae297201d1a2d66ddefd4c0cc1
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/include/math.yaml
    M libc/src/math/CMakeLists.txt
    A libc/src/math/atanhf16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/atanhf16.cpp
    M libc/src/math/generic/common_constants.cpp
    M libc/src/math/generic/common_constants.h
    M libc/src/math/generic/explogxf.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/atanhf16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/atanhf16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add atanhf16 C23 math function. (#132612)

Implementation of atanhf16 function for 16-bit inputs.

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


  Commit: 2dc6e98169baeb1f73036da0ea50fd828d8323d0
      https://github.com/llvm/llvm-project/commit/2dc6e98169baeb1f73036da0ea50fd828d8323d0
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/extend-variable-liveness.c

  Log Message:
  -----------
  Revert "[Clang] Enable -fextend-lifetimes at -Og (#118026)"

Reverted following several issues appearing related to fake uses, reported
on the github PR.

This reverts commit a9dff35ad251cd20376ab25b26d1e5394e18ff4c.


  Commit: 5ff277462dd717d0c52a9a8517f624b0b484e45a
      https://github.com/llvm/llvm-project/commit/5ff277462dd717d0c52a9a8517f624b0b484e45a
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/stdfix.rst
    M libc/include/stdfix.yaml
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/macros/null_check.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/idivk.cpp
    A libc/src/stdfix/idivk.h
    A libc/src/stdfix/idivlk.cpp
    A libc/src/stdfix/idivlk.h
    A libc/src/stdfix/idivlr.cpp
    A libc/src/stdfix/idivlr.h
    A libc/src/stdfix/idivr.cpp
    A libc/src/stdfix/idivr.h
    A libc/src/stdfix/idivuk.cpp
    A libc/src/stdfix/idivuk.h
    A libc/src/stdfix/idivulk.cpp
    A libc/src/stdfix/idivulk.h
    A libc/src/stdfix/idivulr.cpp
    A libc/src/stdfix/idivulr.h
    A libc/src/stdfix/idivur.cpp
    A libc/src/stdfix/idivur.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/IdivTest.h
    A libc/test/src/stdfix/idivk_test.cpp
    A libc/test/src/stdfix/idivlk_test.cpp
    A libc/test/src/stdfix/idivlr_test.cpp
    A libc/test/src/stdfix/idivr_test.cpp
    A libc/test/src/stdfix/idivuk_test.cpp
    A libc/test/src/stdfix/idivulk_test.cpp
    A libc/test/src/stdfix/idivulr_test.cpp
    A libc/test/src/stdfix/idivur_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Implement `idivfx` functions in LLVM libc (#133005)

This PR implements the following 8 functions along with the tests.

```c++
int idivr(fract, fract);
long int idivlr(long fract, long fract);
int idivk(accum, accum);
long int idivlk(long accum, long accum);

unsigned int idivur(unsigned fract, unsigned fract);
unsigned long int idivulr(unsigned long fract, unsigned long fract);
unsigned int idivuk(unsigned accum, unsigned accum);
unsigned long int idivulk(unsigned long accum, unsigned long accum);
```

ref: https://www.iso.org/standard/51126.html

Fixes #129125

---------

Signed-off-by: krishna2803 <kpandey81930 at gmail.com>


  Commit: 320ec7fa7f2ca9385e355d3e031e601a9e331e3e
      https://github.com/llvm/llvm-project/commit/320ec7fa7f2ca9385e355d3e031e601a9e331e3e
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M bolt/docs/CMakeLists.txt
    M bolt/docs/doxygen.cfg.in
    M clang-tools-extra/docs/CMakeLists.txt
    M clang-tools-extra/docs/doxygen.cfg.in
    M clang/docs/CMakeLists.txt
    M clang/docs/doxygen.cfg.in
    M flang/docs/CMakeLists.txt
    M flang/docs/doxygen.cfg.in
    M lldb/docs/doxygen.cfg.in
    M llvm/docs/CMake.rst
    M llvm/docs/CMakeLists.txt
    M llvm/docs/doxygen.cfg.in
    M llvm/utils/release/build-docs.sh
    M mlir/docs/CMakeLists.txt
    M mlir/docs/doxygen.cfg.in
    M openmp/docs/CMakeLists.txt
    M openmp/docs/doxygen.cfg.in
    M openmp/runtime/doc/doxygen/config
    M polly/docs/CMakeLists.txt
    M polly/docs/doxygen.cfg.in

  Log Message:
  -----------
  [Documentation] Always use SVG for dot-generated doxygen images. (#136843)

Despite our attempt (build-docs.sh)
to build the documentation with SVG,
it still uses PNG https://llvm.org/doxygen/classllvm_1_1StringRef.html,

and that renders terribly on any high dpi display.

SVG leads to smasller installation and works fine
on all browser (that has been true for _a while_
https://caniuse.com/svg), so this patch just unconditionally build all
dot graphs as SVG in all subprojects and remove the option.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/C/C23/n2607.c
    M clang/test/C/drs/dr1xx.c
    M clang/test/Parser/typeof.c
    M clang/test/Sema/assign.c
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/block-return.c
    M clang/test/Sema/builtins-bpf.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/builtins-overflow.c
    M clang/test/Sema/enable_if.c
    M clang/test/Sema/implicit-decl.c
    M clang/test/Sema/overloadable.c
    M clang/test/Sema/sizeless-1.c
    M clang/test/Sema/typedef-retain.c
    M clang/test/Sema/varargs-x86-64.c
    A clang/test/Sema/warn-default-const-init.c
    M clang/test/Sema/warn-unused-function.c
    M clang/test/SemaObjC/message.m
    M clang/test/SemaOpenCL/cl20-device-side-enqueue.cl
    M clang/test/SemaOpenCL/invalid-block.cl
    M clang/test/SemaOpenMP/atomic-capture-const-no-crash.c

  Log Message:
  -----------
  [C] Warn on uninitialized const objects (#137166)

Unlike C++, C allows the definition of an uninitialized `const` object.
If the object has static or thread storage duration, it is still
zero-initialized, otherwise, the object is left uninitialized. In either
case, the code is not compatible with C++.

This adds a new diagnostic group, `-Wdefault-const-init-unsafe`, which
is on by default and diagnoses any definition of a `const` object which
remains uninitialized.

It also adds another new diagnostic group, `-Wdefault-const-init` (which
also enabled the `unsafe` variant) that diagnoses any definition of a
`const` object (including ones which are zero-initialized). This
diagnostic is off by default.

Finally, it adds `-Wdefault-const-init` to `-Wc++-compat`. GCC diagnoses
these situations under this flag.

Fixes #19297


  Commit: 8c7a2ce01a77c96028fe2c8566f65c45ad9408d3
      https://github.com/llvm/llvm-project/commit/8c7a2ce01a77c96028fe2c8566f65c45ad9408d3
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
    A llvm/test/CodeGen/AArch64/sme-new-zt0-function.ll
    M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
    M llvm/test/Verifier/sme-attributes.ll
    M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp

  Log Message:
  -----------
  [AArch64][SME] Allow spills of ZT0 around SME ABI routines again (#136726)

In #132722 spills of ZT0 were disabled around all SME ABI routines to
avoid a case where ZT0 is spilled before ZA is enabled (resulting in a
crash).

It turns out that the ABI does not promise that routines will preserve
ZT0 (however in practice they do), so generally disabling ZT0 spills for
ABI routines is not correct.

The case where a crash was possible was "aarch64_new_zt0" functions with
ZA disabled on entry and a ZT0 spill around __arm_tpidr2_save. In this
case, ZT0 will be undefined at the call to __arm_tpidr2_save, so this
patch avoids the ZT0 spill by marking the callsite with
"aarch64_zt0_undef". This attribute only applies to callsites and marks
that at the point the call is made ZT0 is not defined, so does not need
preserving.


  Commit: 12a31658ea36cda74157c6b4e6b6c031e39a19c0
      https://github.com/llvm/llvm-project/commit/12a31658ea36cda74157c6b4e6b6c031e39a19c0
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/profile_pro_fp_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [MLIR][TOSA] Fix Conv3D bias dim check (#137296)

verifyConvOpErrorIf() assumes output channel is the 4th dimension of the
output type but this is wrong for conv3d which now uses that verifier.
Use rank - 1 which works accross the operations using this verifier
(conv2d, conv3d and depthwise_conv3d).


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

  Changed paths:
    M llvm/lib/Linker/IRMover.cpp

  Log Message:
  -----------
  [IRMover] Remove unnecessary pointer bitcast (NFC)


  Commit: 715b1d59ec45dba361030d5413007635722c794f
      https://github.com/llvm/llvm-project/commit/715b1d59ec45dba361030d5413007635722c794f
  Author: AdityaK <hiraditya at msn.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/tools/opt/optdriver.cpp

  Log Message:
  -----------
  [NFC] Clarify the syntax of passes flag (#136175)


  Commit: 9147569c7fc996555af81916ce81a53ad7625d7d
      https://github.com/llvm/llvm-project/commit/9147569c7fc996555af81916ce81a53ad7625d7d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    A lldb/test/API/functionalities/reverse-execution/TestReverseExecutionNotSupported.py

  Log Message:
  -----------
  [lldb][test] Rename reverse-execution/TestReverseContinueNotSupported.py

Otherwise `lldb-dotest` fails with:
```
Traceback (most recent call last):
  File "/Users/jonas/Git/llvm-worktrees/llvm-project/lldb/test/API/dotest.py", line 8, in <module>
    lldbsuite.test.run_suite()
  File "/Users/jonas/Git/llvm-worktrees/llvm-project/lldb/packages/Python/lldbsuite/test/dotest.py", line 1063, in run_suite
    visit("Test", dirpath, filenames)
  File "/Users/jonas/Git/llvm-worktrees/llvm-project/lldb/packages/Python/lldbsuite/test/dotest.py", line 701, in visit
    raise Exception("Found multiple tests with the name %s" % name)
Exception: Found multiple tests with the name TestReverseContinueNotSupported.py
```


  Commit: 63a2b0bd3dcb1eb77333d7b21e6086f94a5f540e
      https://github.com/llvm/llvm-project/commit/63a2b0bd3dcb1eb77333d7b21e6086f94a5f540e
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [mlir][tosa] Support unranked input/weight tensors for convolution ops (#134856)

This commit ensures that convolution operators including: conv2d,
depthwise_conv2d, transpose_conv2d and conv3d, can have unranked
input/weight operands.

In order to support operands with unranked tensors, the tablegen
definition was relaxed. The relaxation of tensor type will later be
checked by the validation pass, should the user wish to use it.

Signed-off-by: Luke Hutton <luke.hutton at arm.com>


  Commit: 1ff931ea5bf80be82f65c2f0df2ccbb610f6728c
      https://github.com/llvm/llvm-project/commit/1ff931ea5bf80be82f65c2f0df2ccbb610f6728c
  Author: Pawan Nirpal <pawan.anil.nirpal at intel.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/isel-fp-to-sint-x87.ll
    A llvm/test/CodeGen/X86/isel-sint-to-fp-x87.ll

  Log Message:
  -----------
  [X86][NFC] Add sitofp and fptosi tests for x87 mode (#136860)

Add SDAG and GlobalISel runs as precommit testcases for sitofp and 
fptosi in x87 mode.


  Commit: ade502a8c46b8393e022b4eabcdd445af91a451c
      https://github.com/llvm/llvm-project/commit/ade502a8c46b8393e022b4eabcdd445af91a451c
  Author: lntue <lntue at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/asin.cpp
    A libc/src/math/generic/asin_utils.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/asin_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/asin_test.cpp

  Log Message:
  -----------
  [libc][math] Implement double precision asin correctly rounded for all rounding modes. (#134401)

Main algorithm:

The Taylor series expansion of `asin(x)` is:
```math
\begin{align*}
  asin(x) &= x + x^3 / 6 + 3x^5 / 40 + ... \\
       &= x \cdot P(x^2) \\
       &= x \cdot P(u) &\text{, where } u = x^2.
\end{align*}
```
For the fast path, we perform range reduction mod 1/64 and use degree-7
(minimax + Taylor) polynomials to approximate `P(x^2)`.

When `|x| >= 0.5`, we use the transformation:
```math
  u = \frac{1 + x}{2}
```
and apply half-angle formula to reduce `asin(x)` to:
```math
\begin{align*}
  asin(x) &= sign(x) \cdot \left( \frac{\pi}{2} - 2 \cdot asin(\sqrt{u}) \right) \\
       &= sign(x) \cdot \left( \frac{\pi}{2} - 2 \cdot \sqrt{u} \cdot P(u) \right).
\end{align*}
```
Since `0.5 <= |x| <= 1`, `|u| <= 0.5`. So we can reuse the polynomial
evaluation of `P(u)` when `|x| < 0.5`.

For the accurate path, we redo the computations in 128-bit precision
with degree-15 (minimax + Taylor) polynomials to approximate `P(u)`.


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

  Changed paths:
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/test/Fir/convert-to-llvm-target.fir
    M flang/test/Fir/target-rewrite-integer.fir

  Log Message:
  -----------
  [flang] Use correct int extension flags for C-ABI calls on aarch64 (#137105)

The AArch64 procedure call standard does not mandate that the callee
extends the return value. Clang does not add signext to functions
returning i8 or i16 on linux aarch64, but flang does.

This means that runtime routines returning i8's will have signext on the
callsite/declaration, but not on the implementation, and the call site
will assume the return value has already been sign extended when it has
not. This showed up in a test case calling MINVAL on an array of
INTEGER*1.

Adjust our integer extension flags to match clang and aarch64pcs on
linux. The behavior on Darwin should be preserved. This is listed on the
apple developer guide as a divergence from aarch64pcs.


  Commit: ee2aba7cc6359f7657db2ab6723e834b94ac9306
      https://github.com/llvm/llvm-project/commit/ee2aba7cc6359f7657db2ab6723e834b94ac9306
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  AMDGPU: Use poison in some lowering contexts (#137325)

This replaces most of the places that use undef. I left alone
the cases that require additional thought.


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

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/minimumnum-maximumnum-reductions.ll

  Log Message:
  -----------
  [LV] Add tests for maximumnum/minimumnum reductions.

Add reduction tests with maximumnum/minimumnum intrinsics.


  Commit: 9f94e362475c9531f78df8ac1d407fd2b73efe3b
      https://github.com/llvm/llvm-project/commit/9f94e362475c9531f78df8ac1d407fd2b73efe3b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll

  Log Message:
  -----------
  [X86] vector-shuffle-combining-ssse3.ll - add tests showing the failure to merge logical shifts with non-uniform shift amounts into shuffles


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

  Changed paths:
    M flang/module/iso_c_binding.f90

  Log Message:
  -----------
  [flang] Change c_intmax_t to 64 bit to correspond to intmax_t in C (#137208)

gcc, clang, and other C compiles define intmax_t to be 64 bit. Change
flang's definition of c_intmax_t to be compatible.

Fixes #128609


  Commit: 9cbbb74d370c09e13b8412f21dccb7d2c4afc6a4
      https://github.com/llvm/llvm-project/commit/9cbbb74d370c09e13b8412f21dccb7d2c4afc6a4
  Author: Anutosh Bhat <andersonbhat491 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lld/wasm/Config.h
    M lld/wasm/Driver.cpp
    M lld/wasm/InputChunks.cpp
    M lld/wasm/MarkLive.cpp
    M lld/wasm/OutputSections.cpp
    M lld/wasm/Symbols.cpp
    M lld/wasm/Symbols.h
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/Writer.cpp

  Log Message:
  -----------
  [wasm-ld] Refactor WasmSym from static globals to per-link context (#134970)

Towards
#https://github.com/llvm/llvm-project/issues/134809#issuecomment-2787206873

This change moves WasmSym from a static global struct to an instance
owned by Ctx, allowing it to be reset cleanly between linker runs. This
enables safe support for multiple invocations of wasm-ld within the same
process

Changes done 

- Converted WasmSym from a static struct to a regular struct with
instance members.

- Added a std::unique_ptr<WasmSym> wasmSym field inside Ctx.

- Reset wasmSym in Ctx::reset() to clear state between links.

- Replaced all WasmSym:: references with ctx.wasmSym->.

- Removed global symbol definitions from Symbols.cpp that are no longer
needed.

Clearing wasmSym in ctx.reset() ensures a clean slate for each link
invocation, preventing symbol leakage across runs—critical when using
wasm-ld/lld as a reentrant library where global state can cause subtle,
hard-to-debug errors.

---------

Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>


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

  Changed paths:
    M flang/test/Lower/OpenACC/acc-serial.f90
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [flang][openacc] Fix wait clause printer (#137263)

wait clause printer is failing with case like: 

```
!$acc serial device_type(nvidia) wait
!$acc end serial
```


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

  Changed paths:
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Frontend/ASTMerge.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp

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

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


  Commit: 63d5e64f1e729613157683a149b9141e80e0b0c9
      https://github.com/llvm/llvm-project/commit/63d5e64f1e729613157683a149b9141e80e0b0c9
  Author: Raghu Maddhipatla <7686592+raghavendhra at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/allocate04.f90

  Log Message:
  -----------
  [Flang] [Semantics] [OpenMP] Add semantic checks for ALLOCATE directive (#123421)

Add following semantic checks for ALLOCATE directive as per OpenMP 6.0
standard.

- List item in ALLOCATE directive must not be a dummy argument
- List item in ALLOCATE directive must not have POINTER attribute
- List item in ALLOCATE directive must not be a associate name


  Commit: 9062a38d5d15d74f8019a30b8a0012747dfad6a8
      https://github.com/llvm/llvm-project/commit/9062a38d5d15d74f8019a30b8a0012747dfad6a8
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll

  Log Message:
  -----------
  [RISCV] Add codegen support for ri.vinsert.v.x and ri.vextract.x.v (#136708)

These instructions are included in XRivosVisni. They perform a scalar
insert into a vector (with a potentially non-zero index) and a scalar
extract from a vector (with a potentially non-zero index) respectively.
They're very analogous to vmv.s.x and vmv.x.s respectively.

The instructions do have a couple restrictions:
1) Only constant indices are supported w/a uimm5 format.
2) There are no FP variants.

One important property of these instructions is that their throughput
and latency are expected to be LMUL independent.


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

  Changed paths:
    M llvm/lib/Linker/IRMover.cpp

  Log Message:
  -----------
  [IRMover] Remove Visited set in type mapping (NFC) (#137329)

LLVM no longer supports recursive types, so the Visited set is
unnecessary.


  Commit: bdc523f31f359f0641031100e299fd387ae606ef
      https://github.com/llvm/llvm-project/commit/bdc523f31f359f0641031100e299fd387ae606ef
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp

  Log Message:
  -----------
  LowerMatrixIntrinsics: Use use_empty instead of hasNUses(0) (#137334)


  Commit: 346792aafb483a53fb5e3274298d85bc2dde4a35
      https://github.com/llvm/llvm-project/commit/346792aafb483a53fb5e3274298d85bc2dde4a35
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M offload/DeviceRTL/CMakeLists.txt

  Log Message:
  -----------
  [Offload] Override linker for device build (#137246)

Summary:
Override the default linker in case the user is passing it separately.
This requires `lld` but it always did. This will be fixed *properly*
when https://github.com/llvm/llvm-project/pull/136729 lands.

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


  Commit: 4ea2278e392c148f195b81443bb6fd7a38a73827
      https://github.com/llvm/llvm-project/commit/4ea2278e392c148f195b81443bb6fd7a38a73827
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  SLPVectorizer: Use use_empty instead of hasNUses(0) (#137336)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll

  Log Message:
  -----------
  [VPlan] Replace ExtractFromEnd with Extract(Last|Penultimate)Element (NFC). (#137030)

ExtractFromEnd only has 2 uses, extracting the last and penultimate
elements. Replace it with 2 separate opcodes, removing the need to
materialize and handle a constant argument.

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


  Commit: 50a767add148601a1494760d02e237fe5cc57555
      https://github.com/llvm/llvm-project/commit/50a767add148601a1494760d02e237fe5cc57555
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp

  Log Message:
  -----------
  ARM: Use use_empty instead of hasNUses(0) (#137337)


  Commit: 6b3289faeb201bb906dca3bc7a3e991456c45636
      https://github.com/llvm/llvm-project/commit/6b3289faeb201bb906dca3bc7a3e991456c45636
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp

  Log Message:
  -----------
  ARM: Remove unnecessary use_empty check (#137338)

The previous statement removed all uses.


  Commit: 38078b222f679fd9a6c8407ae78dbccae7cb4012
      https://github.com/llvm/llvm-project/commit/38078b222f679fd9a6c8407ae78dbccae7cb4012
  Author: Yang Zaizhou <91008302+Mxfg-incense at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M flang/docs/FortranForCProgrammers.md

  Log Message:
  -----------
  [flang][docs] Fix typo in array description (#135908)

@klausler I think there's an extra "can" here that should be changed to
"one"


  Commit: 3ce2d1e6a1fde05604a09b70f7bf99bffa1329ad
      https://github.com/llvm/llvm-project/commit/3ce2d1e6a1fde05604a09b70f7bf99bffa1329ad
  Author: bubblepipe <30717258+bubblepipe at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Transforms/CSE.cpp

  Log Message:
  -----------
  [mlir] Fix typo in CSE transform (#137341)

"Replace all uses, but do not _remote_ the operation yet" should be
"Replace all uses, but do not _remove_ the operation yet".


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

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/Lanai/LanaiInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/Mips/MicroMipsInstrInfo.td
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrP10.td
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/VE/VEInstrInfo.td
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td

  Log Message:
  -----------
  [SelectionDAG][Targets] Replace atomic_load_8/atomic_load_16 with atomic_load_*ext_8/atomic_load_*ext_16 where possible. (#137279)

isAnyExtLoad/isZExtLoad/isSignExtLoad are able to emit predicate checks
from tablegen now so we should use them.

The next step would be to add isNonExtLoad versions and migrate all
remaining uses of atomic_load_8/16/32/64 to that.


  Commit: bd4a7aa64a79ee62b81f13ba7c45697ace386220
      https://github.com/llvm/llvm-project/commit/bd4a7aa64a79ee62b81f13ba7c45697ace386220
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [Offload] Deprecate `openmp` and `offload` projects builds (#136314)

Summary:
These are compiler runtimes are currently have weird support for
projects / runtimes. We should depcrate this to where the only expected
configuration is via a runtimes build. If the user wants a custom setup
they can still use the standalone build.

I remember there were some concerens around the OpenMP module file for
`flang`. Were those resolved?

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


  Commit: 7ff3d3bd1d5b0c9096377bf4c89d0de043dec805
      https://github.com/llvm/llvm-project/commit/7ff3d3bd1d5b0c9096377bf4c89d0de043dec805
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/utils/generate-test-checks.py

  Log Message:
  -----------
  [mlir][utils] Update generate-test-checks.py (use SSA names) (#136819)

This patch updates generate-test-checks.py to preserve original SSA
names (capitalized) when generating LIT variable names for function
arguments (i.e. for `CHECK-SAME` lines). This improves readability and
helps maintain consistency between the input MLIR and the expected
FileCheck/LIT output.

For example, given the following function:

```mlir
func.func @example(
    %input: memref<4x6x3xf32>,
    %filter: memref<1x3x8xf32>,
    %output: memref<4x2x8xf32>) {

  linalg.conv_1d_nwc_wcf
    {dilations = dense<1> : tensor<1xi64>, strides = dense<3> : tensor<1xi64>}
    ins(%input, %filter : memref<4x6x3xf32>, memref<1x3x8xf32>)
    outs(%output : memref<4x2x8xf32>)

  return
}
```

The generated output becomes:

```mlir
// CHECK-LABEL: func.func @conv1d_nwc_4x2x8_memref(
// CHECK-SAME:      %[[INPUT:.*]]: memref<4x6x3xf32>,
// CHECK-SAME:      %[[FILTER:.*]]: memref<1x3x8xf32>,
// CHECK-SAME:      %[[OUTPUT:.*]]: memref<4x2x8xf32>) {
// CHECK:         linalg.conv_1d_nwc_wcf
// CHECK:           {dilations = dense<1> : tensor<1xi64>, strides = dense<3> : tensor<1xi64>}
// CHECK:           ins(%[[INPUT]], %[[FILTER]] : memref<4x6x3xf32>, memref<1x3x8xf32>)
// CHECK:           outs(%[[OUTPUT]] : memref<4x2x8xf32>)
// CHECK:         return
// CHECK:       }
```

By contrast, the current version of the script would generate:

```mlir
// CHECK-LABEL: func.func @conv1d_nwc_4x2x8_memref(
// CHECK-SAME:      %[[VAL_0:.*]]: memref<4x6x3xf32>,
// CHECK-SAME:      %[[VAL_1:.*]]: memref<1x3x8xf32>,
// CHECK-SAME:      %[[VAL_2:.*]]: memref<4x2x8xf32>) {
// CHECK:         linalg.conv_1d_nwc_wcf
// CHECK:           {dilations = dense<1> : tensor<1xi64>, strides = dense<3> : tensor<1xi64>}
// CHECK:           ins(%[[VAL_0]], %[[VAL_1]] : memref<4x6x3xf32>, memref<1x3x8xf32>)
// CHECK:           outs(%[[VAL_2]] : memref<4x2x8xf32>)
// CHECK:         return
// CHECK:       }
```


  Commit: 51dc0cc7a43a4aef98a62bae93e758083f92b6f4
      https://github.com/llvm/llvm-project/commit/51dc0cc7a43a4aef98a62bae93e758083f92b6f4
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/Makefile
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/TestDAP_stackTraceMissingModule.py
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/main.c
    M lldb/tools/lldb-dap/Handler/SourceRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp

  Log Message:
  -----------
  [lldb-dap] Handle stack frames without a module (#136777)

* Fix error in lldb-dap when the stack trace contains a frame without a
module by simply showing the first 32 assembly instructions after the PC.
* Adds a test with a simple example that triggers this case.


  Commit: 480f1a4980de4d1a3691329bbe0b5b9e4321a3f3
      https://github.com/llvm/llvm-project/commit/480f1a4980de4d1a3691329bbe0b5b9e4321a3f3
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/Makefile
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/TestDAP_source_x86.py
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/main.c
    M lldb/tools/lldb-dap/JSONUtils.cpp

  Log Message:
  -----------
  [lldb-dap] fix wrong assembly line number x64 (#136486)

Fix wrong assembly line number calculation that assumes the instruction
size is `GetAddressByteSize() / 2`

Fixes #136495


  Commit: ea443eeb2ab8ed49ffb783c2025fed6629a36f10
      https://github.com/llvm/llvm-project/commit/ea443eeb2ab8ed49ffb783c2025fed6629a36f10
  Author: Justin Cai <justincai.lps at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/Cuda.h
    A clang/include/clang/Basic/OffloadArch.h
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/Cuda.cpp
    A clang/lib/Basic/OffloadArch.cpp

  Log Message:
  -----------
  [Clang][NFC] Move OffloadArch enum to a generic location (#137070)

Currently, the OffloadArch enum is defined Cuda.h. This PR moves the
definition to a more generic location in OffloadArch.h/cpp.


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

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

  Log Message:
  -----------
  [NFC] move comment back to where it belongs.

It appears that OpenMP changes caused this comment to get moved away
from where it was intended, so this patch puts it back next to the
multiversioning code, as intended.


  Commit: a0aa5f8933043c0939c3a8f301fed655be2a3732
      https://github.com/llvm/llvm-project/commit/a0aa5f8933043c0939c3a8f301fed655be2a3732
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/Handler/RestartRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h

  Log Message:
  -----------
  [lldb-dap] Refactoring lldb-dap 'launch' request to use typed RequestHandler<>. (#133624)

This converts a number of json::Value's into well defined types that are
used throughout lldb-dap and updates the 'launch' command to use the new
well defined types.

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: cf766f521049d8fa3bccb956daf6689fca54754b
      https://github.com/llvm/llvm-project/commit/cf766f521049d8fa3bccb956daf6689fca54754b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  InlineFunction: Use use_empty instead of hasNUses(0) (#137347)


  Commit: a214084ae48aea726a09c483d09b447787646cc5
      https://github.com/llvm/llvm-project/commit/a214084ae48aea726a09c483d09b447787646cc5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  BypassSlowDivision: Use use_empty instead of hasNUses(0) (#137345)


  Commit: 119910a8f819f2f665f10fe3674f0c4edc3e0a8d
      https://github.com/llvm/llvm-project/commit/119910a8f819f2f665f10fe3674f0c4edc3e0a8d
  Author: Augie Fackler <augie at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [bazel] catch BUILD files up to d555b9f9a01705097edf2434cf897e351095e5c9 in lldb


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

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/commands/process/reverse-continue/TestReverseContinueNotSupported.py

  Log Message:
  -----------
  [lldb] Fix error that lead Windows to think it could reverse execute (#137351)

The new test added in https://github.com/llvm/llvm-project/pull/132783
was failing on Windows because it created a new error to say it did not
support the feature, but then returned the existing, default constructed
error. Which was a success value.

This also changes the GDBRemote error message to the same phrasing used
in all the other places so we don't have to special case any platform.


  Commit: 559a50c5f0b71d5ba91650fe9122f046403808ed
      https://github.com/llvm/llvm-project/commit/559a50c5f0b71d5ba91650fe9122f046403808ed
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  SimplifyIndVar: Use use_empty instead of hasNUses(0) (#137346)


  Commit: 91865ac9ba08d142646f1bc6fa7f1ba0b39841ef
      https://github.com/llvm/llvm-project/commit/91865ac9ba08d142646f1bc6fa7f1ba0b39841ef
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp

  Log Message:
  -----------
  Use isa instead of !dyn_cast (#137344)


  Commit: 00e3885bf5497b4c0e53375fd91e4e196a8af697
      https://github.com/llvm/llvm-project/commit/00e3885bf5497b4c0e53375fd91e4e196a8af697
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A lldb/test/API/commands/process/reverse-continue/TestReverseContinueCommandNotSupported.py
    R lldb/test/API/commands/process/reverse-continue/TestReverseContinueNotSupported.py

  Log Message:
  -----------
  [lldb] Rename reverse-continue/TestReverseContinueNotSupported.py (NFC) (#137262)

Rename this test because another test by the same name already exists:
reverse-execution/TestReverseContinueNotSupported.py.

Having multiple tests of the same name breaks running any test with:
`lldb-dotest -p <TestName>`.

This tests reverse continue _commands_, and so the rename adds
"Commands" to the test name (TestReverseContinueCommandNotSupported.py)


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

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
    A lldb/test/API/tools/lldb-dap/console/minidump.yaml
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h

  Log Message:
  -----------
  [lldb] Emit diagnostics as "important" output (#137280)

Handle diagnostics events from the debugger (i.e. asynchronous errors
and warnings) in the lldb-dap event handler and emit them as "important"
output.


  Commit: c4b7bd9ff26dd432287200c39b0421960a4b402d
      https://github.com/llvm/llvm-project/commit/c4b7bd9ff26dd432287200c39b0421960a4b402d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb] Fix a warning

This patch fixes:

  lldb/tools/lldb-dap/DAP.cpp:975:34: error: format specifies type
  'long long' but the argument has type 'rep' (aka 'long')
  [-Werror,-Wformat]


  Commit: 070a4ae2f9bcf6967a7147ed2972f409eaa7d3a6
      https://github.com/llvm/llvm-project/commit/070a4ae2f9bcf6967a7147ed2972f409eaa7d3a6
  Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
    M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
    M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/test/Shell/Commands/command-statistics-dump.test
    M lldb/unittests/Symbol/LocateSymbolFileTest.cpp

  Log Message:
  -----------
  Add symbol locator time for each module in statistics (#134563)

In statistics, add locate time for each module in statistics, we time
the PluginManager::LocateExecutableSymbolFile and
PluginManager::LocateExecutableObjectFile call, save the duration for
the succeeded symbol locator plugin in the Module class as a map.
New key being added:
Module level: "_symbolLocatorTime_"
Summary level: "_totalSymbolLocatorTime_"
which would be a map of symbol_locator_plugin_name to time.

Sample statistic dump output after this change:

```
Command: statistics dump
===============Output===============
{
  "commands": {
    "command container add": 1,
    "command script add": 51,
    "command script import": 59,
    "statistics dump": 1,
    "target create": 1,
    "type summary add": 36,
    "type synthetic add": 21
  },
  "memory": {
    "strings": {
      "bytesTotal": 2801664,
      "bytesUnused": 1704256,
      "bytesUsed": 1097408
    }
  },
  "modules": [
    {
      "debugInfoByteSize": 244927,
      "debugInfoEnabled": true,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0.61934599999999995,
      "debugInfoParseTime": 0.00033100000000000002,
      "identifier": 94868115726768,
      "path": "/home/hyubo/.cache/llvm-debuginfod/client/llvmcache-720c9a0f5ba8b460a1524a25597226f0fa551f71-c4crasher",
      "symbolLocatorTime": {
        "debuginfod": 1.4547020000000002
      },
      "symbolTableIndexTime": 0.0035370000000000002,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.0055040000000000002,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "720C9A0F-5BA8-B460-A152-4A25597226F0-FA551F71"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868111142256,
      "path": "[vdso](0x00007ffd41c59000)",
      "symbolLocatorTime": {
        "debuginfod": 0.80597700000000005
      },
      "symbolTableIndexTime": 2.8e-05,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.00037300000000000001,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "4D1F38BD-BD34-DFB3-C9A5-B49A2A912219-AC713763"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868116162096,
      "path": "/usr/local/fbcode/platform010/lib/libc.so.6",
      "symbolLocatorTime": {
        "debuginfod": 0.286356
      },
      "symbolTableIndexTime": 0.0091780000000000004,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.081841999999999998,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "ACE9DF01-8872-3A35-6D14-3C92527EF739-4BE32C75"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868111990032,
      "path": "/usr/local/fbcode/platform010/lib/libm.so.6",
      "symbolLocatorTime": {
        "debuginfod": 0.63356699999999999
      },
      "symbolTableIndexTime": 0.0023960000000000001,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.021706,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "85932B54-0DE7-4FC1-23B0-FB09AD1A5A61-8E1098B7"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868116399488,
      "path": "/usr/local/fbcode/platform010/lib/libmvec.so.1",
      "symbolLocatorTime": {
        "debuginfod": 0.66705099999999995
      },
      "symbolTableIndexTime": 0.00053700000000000004,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.0034429999999999999,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "4537CA22-8E6E-495B-7A03-FC2CEDCAD71C-8A7B2067"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868111778368,
      "path": "/usr/local/fbcode/platform010/lib/libatomic.so.1",
      "symbolLocatorTime": {
        "debuginfod": 0.83268299999999995
      },
      "symbolTableIndexTime": 0.000243,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.0026640000000000001,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--",
      "uuid": "F90F9111-BBD1-C2A9-972A-34EB75ABE62E-3BDED9CF"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868116403264,
      "path": "/usr/local/fbcode/platform010/lib/libgcc_s.so.1",
      "symbolLocatorTime": {
        "debuginfod": 0.58871499999999999
      },
      "symbolTableIndexTime": 0.000292,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.0033,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--",
      "uuid": "1C715A92-40BE-BE95-E148-1B401749BAB8-15D09F9D"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868113225328,
      "path": "/usr/local/fbcode/platform010/lib/libstdc++.so.6",
      "symbolLocatorTime": {
        "debuginfod": 0.76993400000000001
      },
      "symbolTableIndexTime": 0.042455,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.081374000000000002,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--",
      "uuid": "C9DAEE53-F607-981B-6BED-F2042833BFC7-71A1E66C"
    },
    {
      "debugInfoByteSize": 0,
      "debugInfoEnabled": false,
      "debugInfoHadIncompleteTypes": false,
      "debugInfoHadVariableErrors": false,
      "debugInfoIndexLoadedFromCache": false,
      "debugInfoIndexSavedToCache": false,
      "debugInfoIndexTime": 0,
      "debugInfoParseTime": 0,
      "identifier": 94868113600960,
      "path": "/usr/local/fbcode/platform010/lib/ld.so",
      "symbolLocatorTime": {
        "debuginfod": 0.48382199999999997
      },
      "symbolTableIndexTime": 0.00054799999999999998,
      "symbolTableLoadedFromCache": false,
      "symbolTableParseTime": 0.0057219999999999997,
      "symbolTableSavedToCache": false,
      "symbolTableStripped": false,
      "triple": "x86_64--linux",
      "uuid": "CCA86CF4-E4FF-42C8-7056-2F7D8B83AEE0-530B4095"
    }
  ],
  "targets": [
    {
      "breakpoints": [],
      "dyldPluginName": "dump-modulelist-dyld",
      "expressionEvaluation": {
        "failures": 0,
        "successes": 0
      },
      "frameVariable": {
        "failures": 0,
        "successes": 0
      },
      "mismatchCoredumpModuleCount": 0,
      "moduleIdentifiers": [
        94868115726768,
        94868111142256,
        94868116162096,
        94868111990032,
        94868116399488,
        94868111778368,
        94868116403264,
        94868113225328,
        94868113600960
      ],
      "signals": [
        {
          "SIGABRT": 1
        }
      ],
      "sourceMapDeduceCount": 0,
      "sourceRealpathAttemptCount": 0,
      "sourceRealpathCompatibleCount": 0,
      "stopCount": 1,
      "summaryProviderStatistics": [],
      "targetCreateTime": 4.1999999999999998e-05,
      "totalBreakpointResolveTime": 0,
      "totalSharedLibraryEventHitCount": 0
    }
  ],
  "totalDebugInfoByteSize": 244927,
  "totalDebugInfoEnabled": 1,
  "totalDebugInfoIndexLoadedFromCache": 0,
  "totalDebugInfoIndexSavedToCache": 0,
  "totalDebugInfoIndexTime": 0.61934599999999995,
  "totalDebugInfoParseTime": 0.00033100000000000002,
  "totalModuleCount": 9,
  "totalModuleCountHasDebugInfo": 1,
  "totalModuleCountWithIncompleteTypes": 0,
  "totalModuleCountWithVariableErrors": 0,
  "totalSymbolLocatorTime": {
    "debuginfod": 6.5228070000000002
  },
  "totalSymbolTableIndexTime": 0.059214000000000003,
  "totalSymbolTableParseTime": 0.205928,
  "totalSymbolTableStripped": 0,
  "totalSymbolTablesLoadedFromCache": 0,
  "totalSymbolTablesSavedToCache": 0,
  "transcript": [
    {
      "command": "symsrv",
      "commandArguments": "",
      "commandName": "symsrv",
      "durationInSeconds": 0.00069099999999999999,
      "error": "",
      "output": "",
      "timestampInEpochSeconds": 1744934015
    },
    {
      "command": "settings set symbols.enable-external-lookup true",
      "commandArguments": "symbols.enable-external-lookup true",
      "commandName": "settings set",
      "durationInSeconds": 4.1999999999999998e-05,
      "error": "",
      "output": "",
      "timestampInEpochSeconds": 1744934015
    },
    {
      "command": "settings insert-before plugin.symbol-locator.debuginfod.server-urls 0 https://our.intern.facebook.com/intern/debuginfod",
      "commandArguments": "plugin.symbol-locator.debuginfod.server-urls 0 https://our.intern.facebook.com/intern/debuginfod",
      "commandName": "settings insert-before",
      "durationInSeconds": 5.5999999999999999e-05,
      "error": "",
      "output": "",
      "timestampInEpochSeconds": 1744934015
    },
    {
      "command": "target create --core \"/var/tmp/cores/c4crasher.crasher.1576894\"",
      "commandArguments": "--core \"/var/tmp/cores/c4crasher.crasher.1576894\"",
      "commandName": "target create",
      "durationInSeconds": 6.7297630000000002,
      "error": "",
      "output": "Core file '/var/tmp/cores/c4crasher.crasher.1576894' (x86_64) was loaded.\n",
      "timestampInEpochSeconds": 1744934017
    },
    {
      "command": "fbpaste statistics dump",
      "commandArguments": "statistics dump",
      "commandName": "fbpaste",
      "timestampInEpochSeconds": 1744934055
    },
    {
      "command": "statistics dump",
      "commandArguments": "",
      "commandName": "statistics dump",
      "timestampInEpochSeconds": 1744934055
    }
  ]
}

```

Co-authored-by: George Hu <georgehuyubo at gmail.com>


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

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll

  Log Message:
  -----------
  [NVPTX] Remove 'param' variants of nvvm.ptr.* intrinics (#137065)

After #136008 these intrinsics are no longer inserted by the
compiler and can be upgraded to addrspacecasts.


  Commit: bc716a755a9bd0e5f0b5de0da0ffcc77374690db
      https://github.com/llvm/llvm-project/commit/bc716a755a9bd0e5f0b5de0da0ffcc77374690db
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
    M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
    M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/test/Shell/Commands/command-statistics-dump.test
    M lldb/unittests/Symbol/LocateSymbolFileTest.cpp

  Log Message:
  -----------
  Revert "Add symbol locator time for each module in statistics (#134563)"

This reverts commit 070a4ae2f9bcf6967a7147ed2972f409eaa7d3a6.

Multiple buildbot failures have been reported:
https://github.com/llvm/llvm-project/pull/134563

The build fails with:

  lldb/source/Target/Statistics.cpp:75:39: error: use of undeclared
  identifier 'num_symbols_loaded'


  Commit: 683c3b8b7ea824427c177aa17db95f75d47a3d6b
      https://github.com/llvm/llvm-project/commit/683c3b8b7ea824427c177aa17db95f75d47a3d6b
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Allocate Feature Bits for Zilsd/Zclsd/Zcmp (#135197)

As proposed in https://github.com/riscv-non-isa/riscv-c-api-doc/pull/104

No real compiler-rt implementation, as these are not exposed by Linux.


  Commit: 60a1f5a8a00c12a34a8283d7a3cb5b0596c7fd91
      https://github.com/llvm/llvm-project/commit/60a1f5a8a00c12a34a8283d7a3cb5b0596c7fd91
  Author: Gaurav Verma <48321602+xintin at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir] added gpu.shuffle mode UP support (#137300)

Added support for `gpu.shuffle` mode `UP`

Signed-off-by: xintin <gaurav.verma at amd.com>


  Commit: 3e4e365fac0503d9fcd9bb34ee1c27bf17d95e3a
      https://github.com/llvm/llvm-project/commit/3e4e365fac0503d9fcd9bb34ee1c27bf17d95e3a
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    R llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-sm6_5.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-sm6_6.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.5.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.6.ll
    M llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs.ll
    M llvm/test/CodeGen/DirectX/ShaderFlags/res-may-alias-0.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.6.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.7.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.8.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.6.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.7.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-valver1.8.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-0.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-1.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision.ll

  Log Message:
  -----------
  [DirectX] Fix shader flag version-checking logic to match DXC (#136787)

This PR primarily fixes the version-checking logic of the shader flags
`ResMayNotAlias` and `Max64UAVs` to correctly match DXC's behavior.

Primary changes:

- The logic for determining the presence of UAVs for the
`ResMayNotAlias` shader flag checked against the DXIL Version when it
should have been checking against the DXIL Validator Version. (See DXC:
[DxilShaderFlags.cpp#L484](https://github.com/microsoft/DirectXShaderCompiler/blob/f19b5da54170210e3cbc7f080be3f080abc52505/lib/DXIL/DxilShaderFlags.cpp#L484))

- The logic for counting UAVs for the `Max64UAVs` shader flag checked
against the DXIL Version when it should have been checking against the
DXIL Validator Version. (See DXC:
[DxilModule.cpp#L327](https://github.com/microsoft/DirectXShaderCompiler/blob/f19b5da54170210e3cbc7f080be3f080abc52505/lib/DXIL/DxilModule.cpp#L327))

- Tests have been modified to test the corrected behaviors for these two
flags

Additional changes included for consistency:

- The logic for setting `UseNativeLowPrecision` now checks against
Shader Model version instead of DXIL version to be consistent with the
code comments from DXC
([DxilShaderFlags.h#L280](https://github.com/microsoft/DirectXShaderCompiler/blob/f19b5da54170210e3cbc7f080be3f080abc52505/include/dxc/DXIL/DxilShaderFlags.h#L280)).

- An additional test has been added to ensure that the module flag
"dx.nativelowprec" set to 0 does not apply the `UseNativeLowPrecision`
shader flag

- Related shader flag tests were renamed to be more consistent, and some
comments were edited for clarification

- Add obj2yaml tests for the `Max64UAVs` shader flag


  Commit: 77f8335a07e65f88a2c2925f175f48c458911cee
      https://github.com/llvm/llvm-project/commit/77f8335a07e65f88a2c2925f175f48c458911cee
  Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
    M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
    M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/test/Shell/Commands/command-statistics-dump.test
    M lldb/unittests/Symbol/LocateSymbolFileTest.cpp

  Log Message:
  -----------
  Add symbol locator time for each module in statistics (#137379)

Identical PR to: https://github.com/llvm/llvm-project/pull/134563
Previous PR was approved and landed but broke the build due to bad
merge.
Manually resolve the merge conflict and try to land again.

Co-authored-by: George Hu <georgehuyubo at gmail.com>


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

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/namespace.cpp

  Log Message:
  -----------
  [CIR] Fix calling defined functions (#137271)

Until now our function symbol lookup has been assuming that the function
did not exist and creating a definition for it. This caused us to create
a duplicate definition if we ever tried to call a function that was
already defined.

This change fixes that by adding handling for trying to look up existing
global definitions before creating a new one.


  Commit: 0383e545d1f6a5ccd1fc8177c9a9e52f5809c4f3
      https://github.com/llvm/llvm-project/commit/0383e545d1f6a5ccd1fc8177c9a9e52f5809c4f3
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    A compiler-rt/test/ubsan_minimal/TestCases/icall.c

  Log Message:
  -----------
  [NFC][CFI] Add minimal runtime test for CFI (#137245)

It's in UBSAN dir, as diagnostic runtime for CFI,
full or minimal is UBSAN.


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

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

  Log Message:
  -----------
  [CIR][NFC] Fix a build warning in CIRGenCall.cpp (#137366)

We have been getting a warning about a default statement in a fully
covered switch statement. This change fixes that by removing the
default, updating all paths to return a value rather than depending on a
local variable which is returned immediately after the switch, and
adding an llvm_unreachable for non-enum values.


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

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

  Log Message:
  -----------
  [VPlan] Use replaceSuccessor/replacePredecessor in insertBlock (NFC).

Use replaceSuccessor/replacePredecessor in
insertBlockAfter/insertBlockBefore. This preserves the predecessor
order, which in turns is needed to not invalidate existing phi recipes.

At the moment this is NFC, but enables additional uses in the future.


  Commit: 012cf4ff60cb9f452bdc3777b6fc2a8a9915e64c
      https://github.com/llvm/llvm-project/commit/012cf4ff60cb9f452bdc3777b6fc2a8a9915e64c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [NFC][CFI] Fix test from #137245 (#137390)

For #137245


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

  Changed paths:
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

  Log Message:
  -----------
  [HLSL][RootSignature] Add parsing of DescriptorRangeFlags (#136775)

- Defines `parseDescriptorRangeFlags` to establish a pattern of how
flags will be parsed
- Add corresponding unit tests

Part four of implementing #126569


  Commit: 5c197236ed7eea010a4697706e2472145a7c0c61
      https://github.com/llvm/llvm-project/commit/5c197236ed7eea010a4697706e2472145a7c0c61
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py

  Log Message:
  -----------
  [lldb-dap] Fix broken tests with commanEscapePrefix="" (#137384)

* Fix broken tests that use commanEscapePrefix="", in my case
`TestDAP_stackTraceMissingModule.test_missingModule`


  Commit: 61d78d0c089d0e2bff994c5b3c353d22d4d8c1c7
      https://github.com/llvm/llvm-project/commit/61d78d0c089d0e2bff994c5b3c353d22d4d8c1c7
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Correctly handle C# where clause (#137295)

Fix #74947


  Commit: 3c4dff3ac6884b85fe93fe512c5bdaf014738c45
      https://github.com/llvm/llvm-project/commit/3c4dff3ac6884b85fe93fe512c5bdaf014738c45
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [NFC][OpenACC] addDeviceType to init/shutdown ops (#137372)

As a first step of attempting to make for a 'better' interface to
lowering to the OpenACC dialect, this patch adds a helper function to
InitOp and ShutdownOp to make adding a device-type clause easier.


  Commit: 881f6de812632bdbf835aaf8d6a792ff5d93764c
      https://github.com/llvm/llvm-project/commit/881f6de812632bdbf835aaf8d6a792ff5d93764c
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/Sema/TreeTransform.h
    M 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] Lower 'wait' clause for compute/data constructs (#137359)

The 'wait' clause is a bit complicated, and is laid out awkwardly in the
IR addative functions, so this patch has to do a little bit of work to
do that (mostly the 'devnum' work).

Otherwise, this is very similar to how num_gangs works, with the
additional complexity of the 'empty' wait being represented differently
as well, but this is similar to how 'async' and a few others work as
well.


  Commit: b60ee399787cb2a5f50d21932db3492cc4ff0d34
      https://github.com/llvm/llvm-project/commit/b60ee399787cb2a5f50d21932db3492cc4ff0d34
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinHeaders.def
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsARM.def
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    R clang/test/CodeGen/arm-former-microsoft-intrinsics-header-warning.c
    R clang/test/CodeGen/arm-former-microsoft-intrinsics.c
    M clang/test/CodeGen/arm-microsoft-intrinsics.c
    R clang/test/CodeGen/arm64-former-microsoft-intrinsics-header-warning.c
    R clang/test/CodeGen/arm64-former-microsoft-intrinsics.c
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    M clang/test/CodeGen/builtins-arm-microsoft.c
    M clang/test/Headers/Inputs/include/stdint.h
    M clang/test/Headers/ms-intrin.cpp

  Log Message:
  -----------
  Revert "[clang][ARM][AArch64] Define intrinsics guarded by __has_builtin on all platforms" (#137374)

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

It breaks MSVC.

---------

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


  Commit: a3b6423d506f1340782db62d23fb0d1a845a9411
      https://github.com/llvm/llvm-project/commit/a3b6423d506f1340782db62d23fb0d1a845a9411
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb-dap] Mitigate a build error on Windows. (#137388)

When building with MSVC 2019 using `std::future<llvm::Error>` causes a
compile time build error.

```
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\include\future(196): error C2248: 'llvm::Error::Error': cannot access protected member declared in class 'llvm::Error'

C:\work\main\llvm-project\llvm\include\llvm/Support/Error.h(181): note: see declaration of 'llvm::Error::Error'

C:\work\main\llvm-project\llvm\include\llvm/Support/FormatVariadicDetails.h(20): note: see declaration of 'llvm::Error'

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\include\future(193): note: while compiling class template member function 'std::_Associated_state<_Ty>::_Associated_state(std::_Deleter_base<_Ty> *)'

        with

        [

            _Ty=llvm::Error

        ]

C:\work\main\llvm-project\lldb\tools\lldb-dap\DAP.cpp(854): note: see reference to class template instantiation 'std::future<llvm::Error>' being compiled
```

To work around this, swapping to a lldb::SBError for now.


  Commit: be7ef6c52b1942a738a2cab4304bb204f28dc00b
      https://github.com/llvm/llvm-project/commit/be7ef6c52b1942a738a2cab4304bb204f28dc00b
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/MachineLICM.cpp
    A llvm/test/CodeGen/SystemZ/pr122315.ll

  Log Message:
  -----------
  [MachineLICM] Recognize registers clobbered at EH landing pad entry (#122446)

EH landing pad entry implicitly clobbers target-specific exception
pointer and exception selector registers. The post-RA MachineLICM pass
needs to take these into account when deciding whether to hoist an
instruction out of the loop that initializes one of these registers.

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


  Commit: 9f7a58791c12652b60381aaa3401831ca35313c3
      https://github.com/llvm/llvm-project/commit/9f7a58791c12652b60381aaa3401831ca35313c3
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb-dap] Fix formatting chrono::seconds warning. (#137371)

Updated the format to use `llvm::formatv` instead of printf style
format.


  Commit: 695769971dc6ff6734dacacff07f4f473508e37a
      https://github.com/llvm/llvm-project/commit/695769971dc6ff6734dacacff07f4f473508e37a
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/Handler/StepOutRequestHandler.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h

  Log Message:
  -----------
  [lldb-dap] Migrating the 'stepOut' request to use typed RequestHandler. (#137362)

This moves the 'stepOut' request to the typed RequestHandler.


  Commit: 488eeb3ae508221f8e476bbc9d2e9f014542862e
      https://github.com/llvm/llvm-project/commit/488eeb3ae508221f8e476bbc9d2e9f014542862e
  Author: Emre Kultursay <emrekultursay at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Host/linux/AbstractSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/source/Host/linux/AbstractSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/tools/lldb-server/lldb-platform.cpp
    M lldb/unittests/Host/SocketTest.cpp

  Log Message:
  -----------
  Fix connecting via abstract socket (#136466)

Commit 82ee31f and Commit 2e893124 added socket sharing, but only for
unix domain sockets. That broke Android, which uses unix-abstract
sockets.


  Commit: bd96fa778809d70e688d27cae2f7667b2aed69c0
      https://github.com/llvm/llvm-project/commit/bd96fa778809d70e688d27cae2f7667b2aed69c0
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M llvm/include/llvm/Demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [ItaniumDemangle][NFC] Add getter to ObjCProtoName::getProtocol

And remove now redunant friend declaration.

For some reason this was failing to build on one of the MSVC bots after
https://github.com/llvm/llvm-project/pull/131836:
```
FAILED: tools/lldb/source/Plugins/ExpressionParser/Clang/CMakeFiles/lldbPluginExpressionParserClang.dir/ClangExpressionParser.cpp.obj

ccache C:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1441~1.341\bin\Hostx64\x64\cl.exe  /nologo /TP -DCLANG_BUILD_STATIC -DGTEST_HAS_RTTI=0 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\source\Plugins\ExpressionParser\Clang -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\source\Plugins\ExpressionParser\Clang -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\include -IC:\Python312\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\..\clang\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\..\clang\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\source -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\source -D__OPTIMIZE__ /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -wd4251 -wd4275 -w14062 -we4238 /Gw /O2 /Ob2  -MD   -wd4018 -wd4068 -wd4150 -wd4201 -wd4251 -wd4521 -wd4530 -wd4589  /EHs-c- /GR- -UNDEBUG -std:c++17 /showIncludes /Fotools\lldb\source\Plugins\ExpressionParser\Clang\CMakeFiles\lldbPluginExpressionParserClang.dir\ClangExpressionParser.cpp.obj /Fdtools\lldb\source\Plugins\ExpressionParser\Clang\CMakeFiles\lldbPluginExpressionParserClang.dir\lldbPluginExpressionParserClang.pdb /FS -c C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\source\Plugins\ExpressionParser\Clang\ClangExpressionParser.cpp

C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(667): error C2248: 'llvm::itanium_demangle::ObjCProtoName::Protocol': cannot access private member declared in class 'llvm::itanium_demangle::ObjCProtoName'

C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(615): note: see declaration of 'llvm::itanium_demangle::ObjCProtoName::Protocol'

C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(613): note: see declaration of 'llvm::itanium_demangle::ObjCProtoName'
```

It's not quite clear to me why this wasn't compiling but either way this
is cleaner.


  Commit: f9d4e7ef8b656952d3abcc4c5b2634bbf4cb93fe
      https://github.com/llvm/llvm-project/commit/f9d4e7ef8b656952d3abcc4c5b2634bbf4cb93fe
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Sink.cpp

  Log Message:
  -----------
  [NFC][Sink] Change runtime checks to asserts (#137354)

Candidate block for sinking must be dominated by current location. This
is true based on how the candidate block was selected. Runtime checks
are not necessary and has been changed to an assertion.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: a1decfef3f75286398699573ddf801ec3805e1ee
      https://github.com/llvm/llvm-project/commit/a1decfef3f75286398699573ddf801ec3805e1ee
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [HLSL][NFC] Rename getBindingMap to getResourceMap and update pass name (#137256)

The DXILResourceMap stores more information about resource instances
than just their binding.


  Commit: 290ba281e819d60be4903436cbc07efc12e22d4c
      https://github.com/llvm/llvm-project/commit/290ba281e819d60be4903436cbc07efc12e22d4c
  Author: Ely Ronnen <elyronnen at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Target/StackFrame.cpp
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/Makefile
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/TestDAP_stackTraceDisassemblyDisplay.py
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/main.c
    M lldb/tools/lldb-dap/Handler/StackTraceRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h

  Log Message:
  -----------
  [lldb-dap] Show assembly depending on `stop-disassembly-display` settings (#136494)

Show assembly code when the source code for a frame is not available in
the debugger machine

Edit: this functionality will work only when using
`stop-disassembly-display = no-source` in the settings

Fix #136492

After the fix:

[Screencast From 2025-04-20
18-00-30.webm](https://github.com/user-attachments/assets/1ce41715-cf4f-42a1-8f5c-6196b9d685dc)


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

  Changed paths:
    M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

  Log Message:
  -----------
  [HLSL][RootSignature] Add parsing of remaining Descriptor Table params (#137038)

- defines the special values for `DESCRIPTOR_RANGE_OFFSET_APPEND` and
`unbounded` for the `offset` and `numDescriptors` parameters
respectively

- adds these parmaters to the `DescriptorClause` struct and the params
struct

- plugs in parsing of `numDescriptors` and `offset` into
`parseDescriptorTableClauseParams`

- defines the `unbounded` enum keyword for the lexer to expose to the
parser

- adds corresponding unit tests

Part 5 of #126569


  Commit: 8cd628f4729814975656121a39417b8b4843a0a3
      https://github.com/llvm/llvm-project/commit/8cd628f4729814975656121a39417b8b4843a0a3
  Author: kevkevin <oapallikunnel at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/include/fuzzer/FuzzedDataProvider.h

  Log Message:
  -----------
  doc: get rid of redundant TODO tag in FuzzedDataProvider.h (#137395)

'list.size()' is determined at runtime, so using static_assert on it as
suggested by the TODO comment is not feasible and produces the following
error when done:

error: static assertion expression is not an integral constant
expression

initially referenced in https://github.com/bitcoin/bitcoin/pull/32024

Co-authored-by: Chand-ra <chandrapratap376 at gmail.com>


  Commit: b571aa49b1e07908b22bba3494461799e2f5c493
      https://github.com/llvm/llvm-project/commit/b571aa49b1e07908b22bba3494461799e2f5c493
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp

  Log Message:
  -----------
  [lldb][NFC] Add missing newline between function definitions


  Commit: 157dfcf5314895efbc57783aec7062854e999c36
      https://github.com/llvm/llvm-project/commit/157dfcf5314895efbc57783aec7062854e999c36
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [libc][bazel] Fix BUILD.bazel after 5ff2774. (#137404)

Add a missing dependency to __support_macros_null_check.


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

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

  Log Message:
  -----------
  [gn] port 9c830cef3d7c2f


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

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn

  Log Message:
  -----------
  [gn] port d555b9f9a017050 (LanguageCPlusPlusProperties tblgen)


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

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [TableGen][SelectionDAG][GISel][RISCV] Support IsNonExtLoad for IsAtomic PatFrags. (#137401)

Use it for RISC-V as a demonstration. Other targets will follow.


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

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-config/BUILD.gn

  Log Message:
  -----------
  [gn] port 08efca9c2c2b


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

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 5bad5d84a15a


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

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

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


  Commit: 935bc84158e933239047de69b9edc77969b5c70c
      https://github.com/llvm/llvm-project/commit/935bc84158e933239047de69b9edc77969b5c70c
  Author: Emre Kultursay <emrekultursay at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-server/lldb-platform.cpp

  Log Message:
  -----------
  Fix Windows build (#137414)

Windows doesn't have domain sockets, so we must properly #ifdef the code
that touches DomainSocket. Fixes the windows build break introduced by
Commit
https://github.com/llvm/llvm-project/commit/488eeb3ae508221f8e476bbc9d2e9f014542862e


  Commit: 6c78dedc14e7431aa0dd92b9dd8d35bed3e0ed7d
      https://github.com/llvm/llvm-project/commit/6c78dedc14e7431aa0dd92b9dd8d35bed3e0ed7d
  Author: Emre Kultursay <emrekultursay at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/unittests/Host/SocketTest.cpp

  Log Message:
  -----------
  Skip tests if socket name is longer than 107 bytes (#137405)

To fix the test failures introduced in Commit 488eeb3


  Commit: 6e47937eed35caecd80ff24cba9bb26259b7e8c1
      https://github.com/llvm/llvm-project/commit/6e47937eed35caecd80ff24cba9bb26259b7e8c1
  Author: Alan Li <me at alanli.org>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [MLIR][ROCDL] Lower `gpu.subgroup_size` to `wavefrontsize` (#137360)


  Commit: 9799746feae7c9eee89ea42a782b4b7efe343262
      https://github.com/llvm/llvm-project/commit/9799746feae7c9eee89ea42a782b4b7efe343262
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp

  Log Message:
  -----------
  [mlir] Fix a warning

This patch fixes:

  mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp:170:5:
  error: default label in switch which covers all enumeration values
  [-Werror,-Wcovered-switch-default]


  Commit: 58aa92243634221c7cff55ad4bcaf1846b1902c4
      https://github.com/llvm/llvm-project/commit/58aa92243634221c7cff55ad4bcaf1846b1902c4
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Correcting the types for launch and attach requests. (#137365)

There were a few types that were incorrectly specified in the
lldb-dap/package.json. The 'timeout' field was set to 'string' but is
interpreted as an integer number of seconds and 'args' for launch is
handled as an array of strings, not a single string.

Also added a type for the '*Commands' for the items in the arrays.


  Commit: 0f73e89db798a96d3b5ad888e3e208c70eaf59a1
      https://github.com/llvm/llvm-project/commit/0f73e89db798a96d3b5ad888e3e208c70eaf59a1
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/test/ubsan_minimal/CMakeLists.txt
    M compiler-rt/test/ubsan_minimal/TestCases/icall.c
    M compiler-rt/test/ubsan_minimal/lit.common.cfg.py
    M compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in

  Log Message:
  -----------
  [NFC][CFI] Fix test from #137245 (#137420)

Check if arch supports CFI.

For #137245


  Commit: 5137587fb1dc878e2dca31c4b929a3ca99f70ace
      https://github.com/llvm/llvm-project/commit/5137587fb1dc878e2dca31c4b929a3ca99f70ace
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb][test] MangledTest: don't use designated initializers

It's a C++20 feature and is causing some buildbots to fail:
```
FAILED: tools/lldb/unittests/Core/CMakeFiles/LLDBCoreTests.dir/MangledTest.cpp.obj
ccache C:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\cl.exe  /nologo /TP -DGTEST_HAS_RTTI=0 -DLLVM_BUILD_STATIC -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\unittests\Core -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\include -IC:\Python312\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\llvm\..\clang\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\build\tools\lldb\..\clang\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\source -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\third-party\unittest\googletest\include -IC:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\third-party\unittest\googlemock\include -D__OPTIMIZE__ /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj /permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -wd4251 -wd4275 -w14062 -we4238 /Gw /O2 /Ob2  -MD   -wd4018 -wd4068 -wd4150 -wd4201 -wd4251 -wd4521 -wd4530 -wd4589  /EHs-c- /GR- -UNDEBUG -std:c++17 /showIncludes /Fotools\lldb\unittests\Core\CMakeFiles\LLDBCoreTests.dir\MangledTest.cpp.obj /Fdtools\lldb\unittests\Core\CMakeFiles\LLDBCoreTests.dir\ /FS -c C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(416): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(415): error C7556: cannot mix designated-initializers with non-designated-initializers
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(418): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(423): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(422): error C7556: cannot mix designated-initializers with non-designated-initializers
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(424): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(429): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(428): error C7556: cannot mix designated-initializers with non-designated-initializers
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(431): error C7555: use of designated initializers requires at least '/std:c++20'
C:\buildbot\as-builder-10\lldb-x-aarch64\llvm-project\lldb\unittests\Core\MangledTest.cpp(436): error C7555: use of designated initializers requires at least '/std:c++20'

```


  Commit: cfc5baf6e6fc083fdbb584534a3fb8ea289752d2
      https://github.com/llvm/llvm-project/commit/cfc5baf6e6fc083fdbb584534a3fb8ea289752d2
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Sema/riscv-interrupt-attr-qci.c
    A clang/test/Sema/riscv-interrupt-attr-sifive.c
    M clang/test/Sema/riscv-interrupt-attr.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.cpp
    M llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/sifive-interrupt-attr-err.ll
    A llvm/test/CodeGen/RISCV/sifive-interrupt-attr.ll
    A llvm/test/MC/RISCV/xsfmclic-invalid.s
    A llvm/test/MC/RISCV/xsfmclic-valid.s
    A llvm/test/MC/RISCV/xsfsclic-invalid.s
    A llvm/test/MC/RISCV/xsfsclic-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] SiFive CLIC Support (#132481)

This Change adds support for two SiFive vendor attributes in clang:
- "SiFive-CLIC-preemptible"
- "SiFive-CLIC-stack-swap"

These can be given together, and can be combined with "machine", but
cannot be combined with any other interrupt attribute values.

These are handled primarily in RISCVFrameLowering:
- "SiFive-CLIC-stack-swap" entails swapping `sp` with `sf.mscratchcsw`
  at function entry and exit, which holds the trap stack pointer.
- "SiFive-CLIC-preemptible" entails saving `mcause` and `mepc` before
  re-enabling interrupts using `mstatus`. To save these, `s0` and `s1`
  are first spilled to the stack, and then the values are read into
  these registers. If these registers are used in the function, their
  values will be spilled a second time onto the stack with the generic
  callee-saved-register handling. At the end of the function interrupts
  are disabled again before `mepc` and `mcause` are restored.

This Change also adds support for the following two experimental
extensions, which only contain CSRs:
- XSfsclic - for SiFive's CLIC Supervisor-Mode CSRs
- XSfmclic - for SiFive's CLIC Machine-Mode CSRs

The latter is needed for interrupt support.

The CFI information for this implementation is not correct, but I'd
prefer to correct this in a follow-up. While it's unlikely anyone wants
to unwind through a handler, the CFI information is also used by
debuggers so it would be good to get it right.

Co-authored-by: Ana Pazos <apazos at quicinc.com>


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

  Changed paths:
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/Telemetry.h
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Telemetry.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/unittests/Core/TelemetryTest.cpp

  Log Message:
  -----------
  [LLDB][Telemetry] Collect telemetry from client when allowed. (#129728)

This patch is slightly different from other impl in that we dispatch
client-telemetry via a different helper method. This is to make it
easier for vendor to opt-out (simply by overriding the method to do
nothing). There is also a configuration option to disallow collecting
client telemetry.

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>


  Commit: 367b91a6f866f23d48f789272c52f79391469aef
      https://github.com/llvm/llvm-project/commit/367b91a6f866f23d48f789272c52f79391469aef
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M compiler-rt/test/ubsan_minimal/CMakeLists.txt
    M compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in

  Log Message:
  -----------
  [NFC][CFI] Fix setup of UBSAN_TEST_HAS_CFI (#137424)

For #137245


  Commit: a8b2c96d00c408d10eba011facf6121b2ce72c06
      https://github.com/llvm/llvm-project/commit/a8b2c96d00c408d10eba011facf6121b2ce72c06
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
    M mlir/test/Target/LLVMIR/omptarget-constant-alloca-raise.mlir
    M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug-var-1.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug.mlir
    M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-target-inside-task.mlir
    M mlir/test/Target/LLVMIR/omptarget-threadprivate-device-lowering.mlir
    M mlir/test/Target/LLVMIR/openmp-target-generic-spmd.mlir
    M mlir/test/Target/LLVMIR/openmp-target-launch-device.mlir
    M mlir/test/Target/LLVMIR/openmp-target-nesting-in-host-ops.mlir
    M mlir/test/Target/LLVMIR/openmp-target-spmd.mlir
    M mlir/test/Target/LLVMIR/openmp-target-use-device-nested.mlir
    M mlir/test/Target/LLVMIR/openmp-task-target-device.mlir

  Log Message:
  -----------
  [NFC][MLIR][OpenMP] Modify tests to have allocas in the correct address space for AMDGPU


  Commit: 9bf702337d86727b48adcc00a60159b1650591dc
      https://github.com/llvm/llvm-project/commit/9bf702337d86727b48adcc00a60159b1650591dc
  Author: Stanley Winata <68087699+raikonenfnu at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

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

  Log Message:
  -----------
  [mlir][linalg] fix indexOp folder to work in genericOp build with createOrFold (#137427)

Currently in torch-mlir, indexOp folder is segfaulting when we call
createOrFold in a genericOp builder. (*this)->getParentOp ended up with
null which is causing the issue.

This is seen in poolSizeCalculator.getPoolSize
being called from createAvgPoolValueCountIncludePadFalseCase. link:

https://github.com/llvm/torch-mlir/blob/80a3dfddd341c72ab9bd6c6688b872bf3a5e4ddb/lib/Conversion/TorchToLinalg/Pooling.cpp#L918-L921

---------

Signed-off-by: Stanley Winata <stanley.winata at amd.com>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 58d60a4df92d57941f6d47d46bd5025fe6298c93
      https://github.com/llvm/llvm-project/commit/58d60a4df92d57941f6d47d46bd5025fe6298c93
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/lifetimes.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose destroying already dead locals (#137357)


  Commit: 1c8e5e223fdbb7ce2752d9c30b72519b37376d8c
      https://github.com/llvm/llvm-project/commit/1c8e5e223fdbb7ce2752d9c30b72519b37376d8c
  Author: Stanley Winata <68087699+raikonenfnu at users.noreply.github.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp

  Log Message:
  -----------
  [mlir][gpu] Fix breaking constructor from GPUSubgroupSizeToROCDL (#137439)

This PR addressed a bug from llvm/llvm-project#137360. which was using
GPUSubgroupSizeToROCDL to patterns function that do not have a valid
constructor for it. This is causing compilation error below:

error: constructor inherited by 'GPUSubgroupSizeOpToROCDL' from base
class 'ConvertOpToLLVMPattern<mlir::gpu::SubgroupSizeOp>' is implicitly
deleted

Signed-off-by: Stanley Winata <stanley.winata at amd.com>


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

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

  Log Message:
  -----------
  [bazel] add missing dep after a74e4ac9d52029f9c9fe80654acd9fdd34d2a4cd


  Commit: ef87c3421c188fb17bf2d25c61d6a58b9f758bf5
      https://github.com/llvm/llvm-project/commit/ef87c3421c188fb17bf2d25c61d6a58b9f758bf5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/lifetimes.cpp

  Log Message:
  -----------
  [clang][bytecode] Check for dummy pointers when calling pseudo dtors (#137437)


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

  Changed paths:
    M clang/www/cxx_dr_status.html

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


  Commit: b81947e589a7960b3f8f7c4403fe24319565266e
      https://github.com/llvm/llvm-project/commit/b81947e589a7960b3f8f7c4403fe24319565266e
  Author: vporpo <vporpodas at google.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Constant.h
    M llvm/include/llvm/SandboxIR/Value.h
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement ConstantDataVector member functions (#136200)

Mirroring LLVM IR.


  Commit: a50269e9991a9b50790cd556eb2bc1417f7e7407
      https://github.com/llvm/llvm-project/commit/a50269e9991a9b50790cd556eb2bc1417f7e7407
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/PrimType.h
    M clang/test/AST/ByteCode/cxx11-pedantic.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose dynamic_cast before C++20 (#137442)

Emit a CCE diagnostic.


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

  Changed paths:
    M cmake/Modules/CMakePolicy.cmake
    M llvm/cmake/modules/TableGen.cmake
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  [CMake] Do not set CMP0116 explicitly to old (#90385)

CMP0116 was originally set to old to get rid of warnings. However, this
behavior is now set to new by default with the minimum CMake version
that LLVM requires so does not produce any warnings, and setting it
explicitly to old does produce a warning in newer CMake versions. Due to
these reasons, remove this check for now.

Splitting off from removing the CMP0114 check just in case something
breaks.

Partially fixes #83727.


  Commit: 12d1cb1347128a49153d7b5ecd6923c0184519d3
      https://github.com/llvm/llvm-project/commit/12d1cb1347128a49153d7b5ecd6923c0184519d3
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and-xor-or.ll

  Log Message:
  -----------
  [InstCombine] Preserve disjoint or after folding casted bitwise logic (#136815)

Optimize
`or disjoint (zext/sext a) (zext/sext b))`
to
`(zext/sext (or disjoint a, b))`
without losing disjoint.

Confirmed here: https://alive2.llvm.org/ce/z/kQ5fJv.


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

  Changed paths:
    M cmake/Modules/CMakePolicy.cmake
    M llvm/cmake/modules/TableGen.cmake
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  Revert "[CMake] Do not set CMP0116 explicitly to old (#90385)"

This reverts commit ab405fb6e9ff9202ca722f632b945d4b84c653f5.

This caused quite a few buildbot failures that need further
investigation.


  Commit: 3bc125490aee0bd4ce508e76265839c798fdc398
      https://github.com/llvm/llvm-project/commit/3bc125490aee0bd4ce508e76265839c798fdc398
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    R llvm/test/CodeGen/AMDGPU/assert-wrong-alloca-addrspace.ll
    M llvm/test/CodeGen/AMDGPU/lower-indirect-lds-references.ll
    M llvm/test/Transforms/InstCombine/alloca-in-non-alloca-as.ll
    M llvm/test/Transforms/OpenMP/custom_state_machines.ll
    M llvm/test/Transforms/OpenMP/custom_state_machines_pre_lto.ll
    M llvm/test/Transforms/OpenMP/spmdization.ll
    M llvm/test/Transforms/OpenMP/spmdization_constant_prop.ll
    M llvm/test/Transforms/OpenMP/spmdization_indirect.ll
    A llvm/test/Verifier/AMDGPU/alloca.ll

  Log Message:
  -----------
  [AMDGPU][Verifier] Check address space of `alloca` instruction (#135820)

This PR updates the `Verifier` to enforce that `alloca` instructions on
AMDGPU must be in AS5. This prevents hitting a misleading backend error
like "unable to select FrameIndex," which makes it look like a backend
bug when it's actually an IR-level issue.


  Commit: b8f5e3c573577a388f2674a88901faf760bca8a6
      https://github.com/llvm/llvm-project/commit/b8f5e3c573577a388f2674a88901faf760bca8a6
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose PointerToIntegral casts (#137444)

Always emit the diagnostic, but permit the cast.


  Commit: 4eb66f7462d0ea89f9354df1fcb63cdb614adc28
      https://github.com/llvm/llvm-project/commit/4eb66f7462d0ea89f9354df1fcb63cdb614adc28
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/test/AST/ByteCode/cxx11-pedantic.cpp

  Log Message:
  -----------
  [clang][bytecode] Allow memory leaks before C++20 (#137445)

The expression allocating the memory wasn't valid in the first place.
This matches the diagnostic behavior of the current interpreter.


  Commit: 0af26149e2b26064cf5df4e02dd6535e124ac707
      https://github.com/llvm/llvm-project/commit/0af26149e2b26064cf5df4e02dd6535e124ac707
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp

  Log Message:
  -----------
  [clang-format][NFC] Use UnwrappedLineParser::eof() whenever possible


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

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

  Log Message:
  -----------
  [SelectionDAG] Use getExtLoadVP in PromoteIntRes_VP_LOAD. NFC


  Commit: 2ae9a74bf1421950bd404fec099b1f9998093916
      https://github.com/llvm/llvm-project/commit/2ae9a74bf1421950bd404fec099b1f9998093916
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [CodeGen] Use `TRI::regunits()` (NFC) (#137356)


  Commit: 3e1e4062e1e95031c32c0ed9786647ef1a4141aa
      https://github.com/llvm/llvm-project/commit/3e1e4062e1e95031c32c0ed9786647ef1a4141aa
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/fabs.ll

  Log Message:
  -----------
  [InstCombine] Preserve signbit semantics of NaN with fold to fabs (#136648)

As per the LangRef and IEEE 754-2008 standard, the sign bit of NaN is
preserved if there is no floating-point operation being performed.
See also
https://github.com/llvm/llvm-project/commit/862e35e25a68502433da0a8d0819448ff5745339
for reference.

Alive2: https://alive2.llvm.org/ce/z/QYtEGj
Closes https://github.com/llvm/llvm-project/issues/136646


  Commit: 21fb19f3b5d572f608e959af895d781b9b24fbbd
      https://github.com/llvm/llvm-project/commit/21fb19f3b5d572f608e959af895d781b9b24fbbd
  Author: Anutosh Bhat <andersonbhat491 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/DeviceOffload.cpp
    M clang/lib/Interpreter/DeviceOffload.h
    M clang/lib/Interpreter/Interpreter.cpp

  Log Message:
  -----------
  [clang-repl] : Fix clang-repl crash with --cuda flag (#136404)

`clang-repl --cuda` was previously crashing with a segmentation fault,
instead of reporting a clean error
```
(base) anutosh491 at Anutoshs-MacBook-Air bin % ./clang-repl --cuda
#0 0x0000000111da4fbc llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/local/libexec/llvm-20/lib/libLLVM.dylib+0x150fbc)
#1 0x0000000111da31dc llvm::sys::RunSignalHandlers() (/opt/local/libexec/llvm-20/lib/libLLVM.dylib+0x14f1dc)
#2 0x0000000111da5628 SignalHandler(int) (/opt/local/libexec/llvm-20/lib/libLLVM.dylib+0x151628)
#3 0x000000019b242de4 (/usr/lib/system/libsystem_platform.dylib+0x180482de4)
#4 0x0000000107f638d0 clang::IncrementalCUDADeviceParser::IncrementalCUDADeviceParser(std::__1::unique_ptr<clang::CompilerInstance, std::__1::default_delete<clang::CompilerInstance>>, clang::CompilerInstance&, llvm::IntrusiveRefCntPtr<llvm::vfs::InMemoryFileSystem>, llvm::Error&, std::__1::list<clang::PartialTranslationUnit, std::__1::allocator<clang::PartialTranslationUnit>> const&) (/opt/local/libexec/llvm-20/lib/libclang-cpp.dylib+0x216b8d0)
#5 0x0000000107f638d0 clang::IncrementalCUDADeviceParser::IncrementalCUDADeviceParser(std::__1::unique_ptr<clang::CompilerInstance, std::__1::default_delete<clang::CompilerInstance>>, clang::CompilerInstance&, llvm::IntrusiveRefCntPtr<llvm::vfs::InMemoryFileSystem>, llvm::Error&, std::__1::list<clang::PartialTranslationUnit, std::__1::allocator<clang::PartialTranslationUnit>> const&) (/opt/local/libexec/llvm-20/lib/libclang-cpp.dylib+0x216b8d0)
#6 0x0000000107f6bac8 clang::Interpreter::createWithCUDA(std::__1::unique_ptr<clang::CompilerInstance, std::__1::default_delete<clang::CompilerInstance>>, std::__1::unique_ptr<clang::CompilerInstance, std::__1::default_delete<clang::CompilerInstance>>) (/opt/local/libexec/llvm-20/lib/libclang-cpp.dylib+0x2173ac8)
#7 0x000000010206f8a8 main (/opt/local/libexec/llvm-20/bin/clang-repl+0x1000038a8)
#8 0x000000019ae8c274 
Segmentation fault: 11
```


The underlying issue was that the `DeviceCompilerInstance` (used for
device-side CUDA compilation) was never initialized with a `Sema`, which
is required before constructing the `IncrementalCUDADeviceParser`.


https://github.com/llvm/llvm-project/blob/89687e6f383b742a3c6542dc673a84d9f82d02de/clang/lib/Interpreter/DeviceOffload.cpp#L32


https://github.com/llvm/llvm-project/blob/89687e6f383b742a3c6542dc673a84d9f82d02de/clang/lib/Interpreter/IncrementalParser.cpp#L31

Unlike the host-side `CompilerInstance` which runs `ExecuteAction`
inside the Interpreter constructor (thereby setting up Sema), the
device-side CI was passed into the parser uninitialized, leading to an
assertion or crash when accessing its internals.

To fix this, I refactored the `Interpreter::create` method to include an
optional `DeviceCI` parameter. If provided, we know we need to take care
of this instance too. Only then do we construct the
`IncrementalCUDADeviceParser`.


  Commit: cc0bdb38ee6976c24e5e3dcb2b3fd190a4ae7112
      https://github.com/llvm/llvm-project/commit/cc0bdb38ee6976c24e5e3dcb2b3fd190a4ae7112
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormatMixedLanguages.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArgumentsObjC.test

  Log Message:
  -----------
  [lldb][test] Skip Objective-C FrameFormat tests on Windows

This were failing on Windows CI with errors like:
```
22: (lldb) bt
23: * thread #1, stop reason = breakpoint 1.1
24:  frame #0: 0x00007ff7c5e41000 TestFrameFormatFunctionFormattedArgumentsObjC.test.tmp.objc.out`func at main.m:2
25:  frame #1: 0x00007ff7c5e4101c TestFrameFormatFunctionFormattedArgumentsObjC.test.tmp.objc.out`bar + 12 at main.m:3
26:  frame #2: 0x00007ff7c5e4103c TestFrameFormatFunctionFormattedArgumentsObjC.test.tmp.objc.out`main + 16 at main.m:5
27:  custom-frame '()'
     !~~~~~~~~~~~       error: no match expected
28:  custom-frame '(__formal=<unavailable>)'
```


  Commit: e6f7e3418eb8519d6cf12da8576ad75aac6b307b
      https://github.com/llvm/llvm-project/commit/e6f7e3418eb8519d6cf12da8576ad75aac6b307b
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormat.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  [lldb][test] Fix/XFAIL FrameFormat tests on Windows

All of these were failing on Windows CI. Some are failing because
breakpoints on template functions can't be set by name. Others are
failing because of slight textual differences. Most are failing because
we can't track components of a mangled name from PDB, so XFAIL those.


  Commit: 571e024d007280b3871d06db7e0bea3172c24c55
      https://github.com/llvm/llvm-project/commit/571e024d007280b3871d06db7e0bea3172c24c55
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/Sink.cpp

  Log Message:
  -----------
  [Sink][NFC] Move all checks for unsafe instructions into one function (#137398)

Move check for instruction that is unsafe to sink into isSafeToMove
function.

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 58430692fc15545e4e74103033498ba0464785f1
      https://github.com/llvm/llvm-project/commit/58430692fc15545e4e74103033498ba0464785f1
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll
    A llvm/test/Transforms/CodeExtractor/input-value-debug.ll
    M llvm/test/Transforms/HotColdSplit/transfer-debug-info.ll
    M llvm/unittests/Transforms/Utils/CodeExtractorTest.cpp

  Log Message:
  -----------
  [CodeExtractor] Improve debug info for input values. (#136016)

If we use `CodeExtractor` to extract the block1 into a new function,

```
define void @foo() !dbg !2 {
entry:
  %1 = alloca i32, i64 1, align 4
  %2 = alloca i32, i64 1, align 4
  #dbg_declare(ptr %1, !8, !DIExpression(), !1)
  br label %block1

block1:
  store i32 1, ptr %1, align 4
  store i32 2, ptr %2, align 4
  #dbg_declare(ptr %2, !10, !DIExpression(), !1)
  ret void
}
```

it will look like the extracted function shown below (with some
irrelevent details removed).

```
define internal void @extracted(ptr %arg0, ptr %arg1) { 
newFuncRoot:
  br label %block1

block1:
  store i32 1, ptr %arg0, align 4
  store i32 2, ptr %arg1, align 4
  ret void
}
```

You will notice that it has replaced the usage of values that were in
the parent function (%1 and %2) with the arguments to the new function.
But it did not do the same thing with `#dbg_declare` which was simply
dropped because its location pointed to a value outside of the new
function. Similarly arg0 is without any debug record, although the value
that it replaced had one and we could materialize one for it based on
that.

This is not just a theoretical limitations. `CodeExtractor` is used to
create functions that implement many of the `OpenMP` constructs in
`OMPIRBuilder`. As a result of these limitations, the debug information
is missing from the created functions.

This PR tries to address this problem. It iterates over the input to the
extracted function and looks at their debug uses. If they were present
in the new function, it updates their location. Otherwise it materialize
a similar usage in the new function.

Most of these changes are localized in `fixupDebugInfoPostExtraction`.
Only other change is to propagate function inputs and the replacement
values to it.

---------

Co-authored-by: Tim Gymnich <tim at gymni.ch>
Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>


  Commit: b9e32749d273a957e60170d6e7ef205fd1fb1834
      https://github.com/llvm/llvm-project/commit/b9e32749d273a957e60170d6e7ef205fd1fb1834
  Author: David Green <david.green at arm.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-trivial-arith.mir
    M llvm/test/CodeGen/AArch64/sub1.ll

  Log Message:
  -----------
  [GlobalISel] Clear nsw flags when converting sub to add. (#137288)

As shown in https://alive2.llvm.org/ce/z/PVwcTL we need to clear the nsw
flags too when converting a sub to a add if the constant is INT_MIN.

Fixes #137254


  Commit: 5d91d12d9172a66698c2ecc71778abd5a97df359
      https://github.com/llvm/llvm-project/commit/5d91d12d9172a66698c2ecc71778abd5a97df359
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll

  Log Message:
  -----------
  [X86] getFauxShuffleMask - generalise logical shifts to work with non-uniform shift amounts (#137349)

Still doesn't help pre-AVX2 targets which might have lowered SHL to a MUL by that point.


  Commit: 76545d7ddf5a6a928398c1fbff496d868cb35ce1
      https://github.com/llvm/llvm-project/commit/76545d7ddf5a6a928398c1fbff496d868cb35ce1
  Author: David Green <david.green at arm.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/test/CodeGen/AArch64/copyprop.mir

  Log Message:
  -----------
  [AArch64] Correctly detect X reg from W reg in isCopyImpl (#137348)

The MachineCopyPropagation pass was incorrectly removing copy (ORRWrs)
instruction that appeared to be a nop. The instruction should not have
been marked as a copy though, the code was incorrectly assuming that
w29 - w0 + x0 == x29, but as x29 is fp it was out of order with the other
registers.

Fixes an issue reported on #129889.


  Commit: 1b2671f10d7735c43d3e6c344477d4060f69d17d
      https://github.com/llvm/llvm-project/commit/1b2671f10d7735c43d3e6c344477d4060f69d17d
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/unittests/Transforms/Utils/CodeExtractorTest.cpp

  Log Message:
  -----------
  Remove a debugging message left in a unit test. (#137451)

This should fix the regression reported in
https://github.com/llvm/llvm-project/pull/136016#issuecomment-2831987288


  Commit: 7581aa1d8e66453845aae584aeda99b3f5fc9646
      https://github.com/llvm/llvm-project/commit/7581aa1d8e66453845aae584aeda99b3f5fc9646
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormat.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatRecursive.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasenameObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArgumentsObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiersObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturnObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScopeObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArgumentsObjC.test

  Log Message:
  -----------
  [lldb][test] Make sure we compile FrameFormat tests with DWARF

These don't make sense for PDB on Windows


  Commit: 8a5bc9e340f88d2651fe743d6b7a820ecd839516
      https://github.com/llvm/llvm-project/commit/8a5bc9e340f88d2651fe743d6b7a820ecd839516
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormat.test

  Log Message:
  -----------
  [lldb][test] Un-XFAIL TestCxxFrameFormat.test for now

This was XPASSing on the linux-win remote CI jobs.
Since we're now compiling with DWARF (not PDB), lets see if these pass
on Windows again.


  Commit: 28293ea023c1aeeed3bff0e2d06feacc9bc365cd
      https://github.com/llvm/llvm-project/commit/28293ea023c1aeeed3bff0e2d06feacc9bc365cd
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  [lldb][test] XFAIL FrameFormat tests on Windows again

These are failing for various reasons on CI, most likely due to us
requiring the Microsoft mangler. So XFAIL these.


  Commit: bb1765179e1fe7d671edf92eba22da2ed4173848
      https://github.com/llvm/llvm-project/commit/bb1765179e1fe7d671edf92eba22da2ed4173848
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/ARC/ARCTargetMachine.cpp
    M llvm/lib/Target/ARC/ARCTargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp
    M llvm/lib/Target/BPF/BPFTargetTransformInfo.h
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
    M llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
    M llvm/lib/Target/Mips/MipsTargetMachine.cpp
    M llvm/lib/Target/Mips/MipsTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/VE/VETargetMachine.cpp
    M llvm/lib/Target/VE/VETargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
    M llvm/lib/Target/XCore/XCoreTargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Simplify implementation (NFCI) (#136674)

Replace "concept based polymorphism" with simpler PImpl idiom.

This pursues two goals:
* Enforce static type checking. Previously, target implementations hid
base class methods and type checking was impossible. Now that they
override the methods, the compiler will complain on mismatched
signatures.
* Make the code easier to navigate. Previously, if you asked your
favorite LSP server to show a method (e.g. `getInstructionCost()`), it
would show you methods from `TTI`, `TTI::Concept`, `TTI::Model`,
`TTIImplBase`, and target overrides. Now it is two less :)

There are three commits to hopefully simplify the review.

The first commit removes `TTI::Model`. This is done by deriving
`TargetTransformInfoImplBase` from `TTI::Concept`. This is possible
because they implement the same set of interfaces with identical
signatures.

The first commit makes `TargetTransformImplBase` polymorphic, which
means all derived classes should `override` its methods. This is done in
second commit to make the first one smaller. It appeared infeasible to
extract this into a separate PR because the first commit landed
separately would result in tons of `-Woverloaded-virtual` warnings (and
break `-Werror` builds).

The third commit eliminates `TTI::Concept` by merging it with the only
derived class `TargetTransformImplBase`. This commit could be extracted
into a separate PR, but it touches the same lines in
`TargetTransformInfoImpl.h` (removes `override` added by the second
commit and adds `virtual`), so I thought it may make sense to land these
two commits together.

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


  Commit: d59163092dfa7ec94391121ffdcb7b9b0e58f3b4
      https://github.com/llvm/llvm-project/commit/d59163092dfa7ec94391121ffdcb7b9b0e58f3b4
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/vector-ext.cpp
    A clang/test/CIR/CodeGen/vector.cpp
    A clang/test/CIR/IR/invalid-vector-zero-size.cir
    A clang/test/CIR/IR/invalid-vector.cir
    A clang/test/CIR/IR/vector.cir

  Log Message:
  -----------
  [CIR] Upstream initial support for fixed size VectorType (#136488)

This change adds the initial support for VectorType

Issue #136487


  Commit: e71c8ea3cc73c8f7b0382468f355a254166d3a72
      https://github.com/llvm/llvm-project/commit/e71c8ea3cc73c8f7b0382468f355a254166d3a72
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/OSTargets.h

  Log Message:
  -----------
  [Driver] Fix _XOPEN_SOURCE definition on Solaris (#137141)

Since commit 613a077b05b8352a48695be295037306f5fca151, `flang` doesn't
build any longer on Solaris/amd64:
```
flang/lib/Evaluate/intrinsics-library.cpp:225:26:
error: address of overloaded function 'acos' does not match required type '__float128 (__float128)'
  225 |       FolderFactory<F, F{std::acos}>::Create("acos"),
      |                          ^~~~~~~~~
```
That patch led to the version of `quadmath.h` deep inside `/usr/gcc/<N>`
to be found, thus `HAS_QUADMATHLIB` is defined. However, the `struct
HostRuntimeLibrary<__float128, LibraryVersion::Libm>` template is
guarded by `_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600`, while
`clang` only predefines `_XOPEN_SOURCE=500`.

This code dates back to commit 0c1941cb055fcf008e17faa6605969673211bea3
back in 2012. Currently, this is long obsolete and `gcc` prefefines
`_XOPEN_SOURCE=600` instead since GCC 4.6 back in 2011.

This patch follows that.

Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`.


  Commit: 41f7a85317f4f345895395697f9129b10f1802b3
      https://github.com/llvm/llvm-project/commit/41f7a85317f4f345895395697f9129b10f1802b3
  Author: Koakuma <koachan at protonmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/test/CodeGen/SPARC/cttz.ll

  Log Message:
  -----------
  [SPARC] Promote i32 CTTZ when we have VIS3

CTTZ can be implemented in terms of CTLZ, for which there's a native
instruction in VIS3.
Promote i32 CTTZ in that case so that the native instruction gets used.

Reviewers: rorth, brad0, s-barannikov

Reviewed By: s-barannikov

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


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

  Changed paths:
    M clang/test/CMakeLists.txt
    M clang/test/Driver/clang_f_opts.c
    A clang/test/Driver/clang_f_opts_withspaces.c
    A clang/test/Driver/darwin-header-search-libcxx-2.cpp
    M clang/test/Driver/darwin-header-search-libcxx.cpp
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in

  Log Message:
  -----------
  [clang] Split out and disable tests that break relative rpaths (#137411)

These two tests copy the clang binary into the test tree and assume it
will run from a new location. This is incompatible with relative rpath
values, which is what you typically get in a dylib developer build.
Disable these tests if shared libraries are involved. Another way to
make these tests work would be to update the loader search path
environment variables, but it is difficult to do that portably.


  Commit: f5a30f111dc4ad6422863722eb708059a68a9d5c
      https://github.com/llvm/llvm-project/commit/f5a30f111dc4ad6422863722eb708059a68a9d5c
  Author: Losy001 <64610343+Losy001 at users.noreply.github.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M clang/lib/AST/MicrosoftMangle.cpp
    A clang/test/CodeGenCXX/mangle-ms-matrix.cpp

  Log Message:
  -----------
  [Clang][MicrosoftMangle] Implement mangling for ConstantMatrixType (#134930)

This pull request implements mangling for ConstantMatrixType, allowing
matrices to be used on Windows.

Related issues: #53158, #127127

This example code:
```cpp
#include <typeinfo>
#include <stdio.h>

typedef float Matrix4 __attribute__((matrix_type(4, 4)));

int main()
{
  printf("%s\n", typeid(Matrix4).name());
}
```
Outputs this:
```
struct __clang::__matrix<float,4,4>
```


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

  Changed paths:
    M clang/lib/AST/MicrosoftMangle.cpp

  Log Message:
  -----------
  [clang] Fix unused variable warning in MS mangler from constant matrix patch


  Commit: 3f5dc586efd751b0e9d9abb8f5e38f11df76fede
      https://github.com/llvm/llvm-project/commit/3f5dc586efd751b0e9d9abb8f5e38f11df76fede
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormat.test

  Log Message:
  -----------
  [lldb][test] XFAIL TestCxxFrameFormat.test for Windows target

Fails on Windows CI:
```
|            10: (lldb) break set -l 3
| check:30'0     ~~~~~~~~~~~~~~~~~~~~~~
|            11: error: No selected frame to use to find the default file.
| check:30'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|            12: error: No file supplied and no default file available.
| check:30'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|            13: (lldb) exit
```

This passes fine when compiling on Windows for Linux targets.


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

  Changed paths:
    M cmake/Modules/CMakePolicy.cmake
    M llvm/cmake/modules/TableGen.cmake
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  Reland "[CMake] Do not set CMP0116 explicitly to old (#90385)"

This reverts commit fa65a228f4b46346e69e9b95805a8bcfa8483a60.

This relands commit ab405fb6e9ff9202ca722f632b945d4b84c653f5.

There was an issue where CMake versions <3.23.0 would not properly parse
dep files, causing the build to file. This patch fixes that by just
making CMake versions <3.23.0 use the fallback behavior.


  Commit: 419a2cb218245b90ace9e0a460d94057e7091002
      https://github.com/llvm/llvm-project/commit/419a2cb218245b90ace9e0a460d94057e7091002
  Author: sallto <68823230+sallto at users.noreply.github.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/Transforms/Inline/byval-align.ll
    M llvm/test/Transforms/Inline/byval-with-non-alloca-addrspace.ll
    M llvm/test/Transforms/Inline/byval.ll
    M llvm/test/Transforms/Inline/inline-deferred-instsimplify.ll
    M llvm/test/Transforms/Inline/inline-tail.ll

  Log Message:
  -----------
  [Inliner] Preserve alignment of byval arguments (#137455)

Previously the inliner always produced a memcpy with alignment 1 for src
and destination, leading to potentially suboptimal Codegen.

Since the Src ptr alignment is only available through the CallBase it
has to be passed to HandleByValArgumentInit. Dst Alignment is already
known so it doesn't have to be passed along.

If there is no specified Src Alignment my changes cause the ptr to have
no align data attached instead of align 1 as before (see
inline-tail.ll), I believe this is fine but since I'm a first time
contributor, please confirm.

My changes are already covered by 4 existing regression tests, so I did
not add any additional ones.

The example from #45778 now results in:
```C
opt -S -passes=inline,instcombine,sroa,instcombine test.ll

define dso_local i32 @test(ptr %t) {
entry:
  %.sroa.0.0.copyload = load ptr, ptr %t, align 8       # this used to be align 1 in the original issue
  %arrayidx.i = getelementptr inbounds nuw i8, ptr %.sroa.0.0.copyload, i64 24
  %0 = load i32, ptr %arrayidx.i, align 4
  ret i32 %0
}
```

Fixes #45778.


  Commit: 165acd3734b0bd04c5ae01f62cf01b5240606410
      https://github.com/llvm/llvm-project/commit/165acd3734b0bd04c5ae01f62cf01b5240606410
  Author: Quinton Miller <nicetas.c at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
    M llvm/tools/llvm-c-test/debuginfo.c

  Log Message:
  -----------
  [LLVM-C] Support debug info for enumerators of arbitrary sizes (#76735)

Since `LLVMDIBuilderCreateEnumerator` only supports up to 64 bits, this
PR adds a new `LLVMDIBuilderCreateEnumeratorOfArbitraryPrecision`
function that takes an arbitrary number of words, based on
`LLVMConstIntOfArbitraryPrecision`. This allows even larger enumeration
types to represent their values exactly. (It seems LLVM should already
support i128 enums since 13.0.0.)


  Commit: ae07f48913faa44ea050e4e0602d0aa62449d942
      https://github.com/llvm/llvm-project/commit/ae07f48913faa44ea050e4e0602d0aa62449d942
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Correctly handle C# new modifier (#137430)

Fix #75815


  Commit: d403c70ff31830bf5311be11b51363ae98d06068
      https://github.com/llvm/llvm-project/commit/d403c70ff31830bf5311be11b51363ae98d06068
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [clang-format] Annotate tok::star in a*b*c as BinaryOperator (#137433)

Fix #137400


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

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

  Log Message:
  -----------
  [VPlan] Don't added separate vector latch block (NFC).

Simplify initial VPlan construction by not creating a separate
vector.latch block, which isn't needed and will get folded away later.
This has been suggested as independent clean-up multiple times.


  Commit: fd3ca29fa00de35e7f99839a71d7a0d87f87a584
      https://github.com/llvm/llvm-project/commit/fd3ca29fa00de35e7f99839a71d7a0d87f87a584
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/util.py
    A llvm/utils/lit/tests/Inputs/googletest-prefix/DummySubDir/test_one.py
    A llvm/utils/lit/tests/Inputs/googletest-prefix/lit.cfg
    A llvm/utils/lit/tests/googletest-prefix.py

  Log Message:
  -----------
  [lit] Support GoogleTest test discovery through prefixes, too (#137423)


  Commit: 8ba3a232d1985a75cf771f8832e911b6f8abe86b
      https://github.com/llvm/llvm-project/commit/8ba3a232d1985a75cf771f8832e911b6f8abe86b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/LiveDebugVariables.cpp
    M llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/ObjCopy/COFF/COFFWriter.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
    M llvm/lib/ObjCopy/XCOFF/XCOFFWriter.cpp
    M llvm/lib/ObjCopy/wasm/WasmObjcopy.cpp
    M llvm/lib/ObjectYAML/COFFEmitter.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp

  Log Message:
  -----------
  [llvm] Use llvm::copy (NFC) (#137470)


  Commit: fda8b751bd676190251721cb4840e82dd378f3fb
      https://github.com/llvm/llvm-project/commit/fda8b751bd676190251721cb4840e82dd378f3fb
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTableExecutorEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [llvm] Use llvm::copy_if (NFC) (#137480)


  Commit: 8210cdd764cb0b334f2bc205b316e94480c47c88
      https://github.com/llvm/llvm-project/commit/8210cdd764cb0b334f2bc205b316e94480c47c88
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveVariables.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVSupport.cpp
    M llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
    M llvm/lib/Support/GraphWriter.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/tools/llvm-config/llvm-config.cpp
    M llvm/unittests/IR/DataLayoutTest.cpp
    M llvm/unittests/Support/Path.cpp

  Log Message:
  -----------
  [llvm] Use llvm::replace (NFC) (#137481)


  Commit: 654c00aaf380f737465d4420b046ea0b2b6a86c4
      https://github.com/llvm/llvm-project/commit/654c00aaf380f737465d4420b046ea0b2b6a86c4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/lib/IR/AsmWriter.cpp

  Log Message:
  -----------
  [IR] Use llvm::interleaved (NFC) (#137482)


  Commit: 4c1dc85e265fb55612d589415dd439edac5f1545
      https://github.com/llvm/llvm-project/commit/4c1dc85e265fb55612d589415dd439edac5f1545
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp

  Log Message:
  -----------
  [TableGen] Use llvm::interleaved (NFC) (#137483)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fp-round.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/pr116153.ll
    M llvm/test/CodeGen/X86/pr91005.ll
    M llvm/test/CodeGen/X86/vector-llrint-f16.ll
    M llvm/test/CodeGen/X86/vector-lrint-f16.ll

  Log Message:
  -----------
  [X86] Avoid zero extend i16 when inserting fp16 (#126194)


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

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  [CI] Fix command not found error in monolithic-linux (#137486)

When editing the premerge.yaml file it seems like I left some extra yaml
in there that ended up in the run section of one of the steps that ended
up throwing the error.


  Commit: 6c3373534305a2ce23dd939344dd0a387a09fe88
      https://github.com/llvm/llvm-project/commit/6c3373534305a2ce23dd939344dd0a387a09fe88
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Allow `Zicsr`/`Zifencei` to duplicate with `g` (#136842)

This matches GCC and we supported it in LLVM 17/18.

Fixes #136803


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

  Changed paths:
    M .github/workflows/pr-code-format.yml

  Log Message:
  -----------
  [Github] Remove invalid comment from pr-code-format.yaml

The comment was originally added in
b3af755254599f474601d0d7b7374dcc36af279a, but
2898c3e0bbf904c68efb194525bcdfeedb3014c2 greatly simplified things
making the previous comment invalid. We no longer need to look at
diffing main versus the PR and whether we are doing a two dot or three
dot diff as we are just diffing the merge commit.


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

  Changed paths:
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/test/CodeGen/X86/avx512fp16-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/Preprocessor/x86_target_features.c
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/test/CodeGen/X86/avx512fp16-combine-shuffle-fma.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-vfmac-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-vfmulc-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc.ll
    M llvm/test/CodeGen/X86/avx512fp16-cvt-ph-w-vl-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-cvt.ll
    M llvm/test/CodeGen/X86/avx512fp16-fma-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-fmaxnum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminnum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fp-logic.ll
    M llvm/test/CodeGen/X86/avx512fp16-frem.ll
    M llvm/test/CodeGen/X86/avx512fp16-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-machine-combiner.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/avx512fp16-rndscale.ll
    M llvm/test/CodeGen/X86/avx512fp16-unsafe-fp-math.ll
    M llvm/test/CodeGen/X86/avx512fp16vl-fma-intrinsics.ll
    M llvm/test/CodeGen/X86/fp-round-with-concat-vector-undef-elem.ll
    M llvm/test/CodeGen/X86/fp16-libcalls.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16-fma.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16vl-fma.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16vl.ll
    M llvm/test/CodeGen/X86/vec-strict-cmp-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-256-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-512-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-512-fp16.ll
    M llvm/test/CodeGen/X86/vec_fabs.ll
    M llvm/test/CodeGen/X86/vec_fcopysign.ll
    M llvm/test/CodeGen/X86/vec_fneg.ll

  Log Message:
  -----------
  [X86][AVX512FP16] Decouple AVX512VL and AVX512DQ from AVX512FP16 (#137450)

Fixes: #136209


  Commit: 4f71e1ebfc6e1ee8aa783387a363f83d51eeca10
      https://github.com/llvm/llvm-project/commit/4f71e1ebfc6e1ee8aa783387a363f83d51eeca10
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [AMDGPU] Use llvm::count_if (NFC) (#137492)


  Commit: 9c356b233cf0abb81d8ef656823441881eba0651
      https://github.com/llvm/llvm-project/commit/9c356b233cf0abb81d8ef656823441881eba0651
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [Utils] Use llvm::partition (NFC) (#137494)


  Commit: 60641e0abd3357511182c641756ae8b219fe46fa
      https://github.com/llvm/llvm-project/commit/60641e0abd3357511182c641756ae8b219fe46fa
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

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

  Log Message:
  -----------
  [ADT] Use llvm::partition_point (NFC) (#137495)


  Commit: 2e230f5685391bd07bd2ef41dfdc832df86d4181
      https://github.com/llvm/llvm-project/commit/2e230f5685391bd07bd2ef41dfdc832df86d4181
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-26 (Sat, 26 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [llvm] Use llvm::interleaved (NFC) (#137496)


  Commit: 031101c66f152a1885ece1d7620071cb049edf51
      https://github.com/llvm/llvm-project/commit/031101c66f152a1885ece1d7620071cb049edf51
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose delete of non-heap-allocated blocks (#137475)

With std::allocator::deallocate() calls


  Commit: e43d64ebe92ed0f61d6ba70d83eb9fc25b717548
      https://github.com/llvm/llvm-project/commit/e43d64ebe92ed0f61d6ba70d83eb9fc25b717548
  Author: MingYan <99472920+NexMing at users.noreply.github.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll

  Log Message:
  -----------
  [RISCV] Sink vp.splat operands of VP intrinsic. (#133245)

This patch introduces a `vp.splat` matching method for VP support by
sinking the `vp.splat` operand of VP operations back into the same basic
block as the VP operation, facilitating the generation of .vx
instructions to reduce vector register pressure.

---------

Co-authored-by: yanming <ming.yan at terapines.com>


  Commit: edb05c405e4358a3f753c23bb9e2decd41b11f8f
      https://github.com/llvm/llvm-project/commit/edb05c405e4358a3f753c23bb9e2decd41b11f8f
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/VE/CMakeLists.txt

  Log Message:
  -----------
  [VE] Add missing dependency on TargetParser

Resolves a link failure in shared library debug build:
```
ld.lld: error: undefined symbol: llvm::Triple::isArch64Bit() const
>>> referenced by BasicTTIImpl.h:626 (../llvm/include/llvm/CodeGen/BasicTTIImpl.h:626)
>>>               lib/Target/VE/CMakeFiles/LLVMVECodeGen.dir/VETargetMachine.cpp.o:(llvm::BasicTTIImplBase<llvm::VETTIImpl>::shouldBuildRelLookupTables() const)
```


  Commit: d605a0d70e3c2f53209c4320c2b6a9a9d86c8227
      https://github.com/llvm/llvm-project/commit/d605a0d70e3c2f53209c4320c2b6a9a9d86c8227
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestCxxFrameFormat.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatObjC.test
    M lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  [lldb][test] FrameFormat tests: Specify filename when setting breakpoints

Try to work around following error on some of the Linux CI:
```
            8: (lldb) settings set -f frame-format "custom-frame '${function.basename}'\n"
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:50'1                                          ?                                       possible intended match
            9: (lldb) break set -l 5
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~
           10: error: No selected frame to use to find the default file.
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           11: error: No file supplied and no default file available.
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           12: (lldb) exit
check:50'0     ~~~~~~~~~~~~
```


  Commit: d8e81756b35f9379a9b1f9ed7537f406c856399d
      https://github.com/llvm/llvm-project/commit/d8e81756b35f9379a9b1f9ed7537f406c856399d
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt

  Log Message:
  -----------
  [libc][stdfix] Fix riscv entrypoints for idivfx (#137499)

Fixes a typo in riscv entrypoints that caused buildbot failures.

https://lab.llvm.org/buildbot/#/builders/196/builds/7352

Signed-off-by: krishna2803 <kpandey81930 at gmail.com>


  Commit: e9a34e42369eb4278fdd73105eeb25ff7a4d96c6
      https://github.com/llvm/llvm-project/commit/e9a34e42369eb4278fdd73105eeb25ff7a4d96c6
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximumnum.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimumnum.ll
    A llvm/test/CodeGen/RISCV/rvv/fmaximumnum-sdnode.ll
    A llvm/test/CodeGen/RISCV/rvv/fminimumnum-sdnode.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/fminimumnum.ll

  Log Message:
  -----------
  [RISCV] Support vectorizing FMINIMUMNUM and FMAXIMUMNUM (#135727)

RISC-V V extension support vfmax and vfmin, which follow IEEE754-2019.
We can use them directly.


  Commit: d1adb0b8cd64607ef64d8bebc3197964a06de73a
      https://github.com/llvm/llvm-project/commit/d1adb0b8cd64607ef64d8bebc3197964a06de73a
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Interpreter/OptionValue.h
    M lldb/include/lldb/Interpreter/OptionValueArch.h
    M lldb/include/lldb/Interpreter/OptionValueArray.h
    M lldb/include/lldb/Interpreter/OptionValueBoolean.h
    M lldb/include/lldb/Interpreter/OptionValueChar.h
    M lldb/include/lldb/Interpreter/OptionValueDictionary.h
    M lldb/include/lldb/Interpreter/OptionValueEnumeration.h
    M lldb/include/lldb/Interpreter/OptionValueFileColonLine.h
    M lldb/include/lldb/Interpreter/OptionValueFileSpec.h
    M lldb/include/lldb/Interpreter/OptionValueFileSpecList.h
    M lldb/include/lldb/Interpreter/OptionValueFormat.h
    M lldb/include/lldb/Interpreter/OptionValueFormatEntity.h
    M lldb/include/lldb/Interpreter/OptionValueLanguage.h
    M lldb/include/lldb/Interpreter/OptionValuePathMappings.h
    M lldb/include/lldb/Interpreter/OptionValueProperties.h
    M lldb/include/lldb/Interpreter/OptionValueRegex.h
    M lldb/include/lldb/Interpreter/OptionValueSInt64.h
    M lldb/include/lldb/Interpreter/OptionValueString.h
    M lldb/include/lldb/Interpreter/OptionValueUInt64.h
    M lldb/include/lldb/Interpreter/OptionValueUUID.h
    M lldb/include/lldb/Target/PathMappingList.h
    M lldb/source/Interpreter/OptionValueArch.cpp
    M lldb/source/Interpreter/OptionValueArray.cpp
    M lldb/source/Interpreter/OptionValueDictionary.cpp
    M lldb/source/Interpreter/OptionValueEnumeration.cpp
    M lldb/source/Interpreter/OptionValueFileColonLine.cpp
    M lldb/source/Interpreter/OptionValueFileSpecList.cpp
    M lldb/source/Interpreter/OptionValueFormat.cpp
    M lldb/source/Interpreter/OptionValueFormatEntity.cpp
    M lldb/source/Interpreter/OptionValueLanguage.cpp
    M lldb/source/Interpreter/OptionValuePathMappings.cpp
    M lldb/source/Interpreter/OptionValueProperties.cpp
    M lldb/source/Target/PathMappingList.cpp
    M lldb/test/API/commands/settings/TestSettings.py

  Log Message:
  -----------
  Complete ToJSON for OptionValues (#137375)

Completes the ToJSON function for `OptionValue` types and make the interface function pure virtual

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 9b39c82bfd7e228acbc53ef8e374d40b0a7f2b3f
      https://github.com/llvm/llvm-project/commit/9b39c82bfd7e228acbc53ef8e374d40b0a7f2b3f
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/pr107950.ll

  Log Message:
  -----------
  [RISCV][NFC] Remove attributes in pr107950.ll (#137500)

There exists some stale experimental features and the llc complains
it.

We can simply remove these attributes and add the desired features
in `-mattr`.


  Commit: 7670af5a274b801adf83fcc0c7c4011e0be0bc91
      https://github.com/llvm/llvm-project/commit/7670af5a274b801adf83fcc0c7c4011e0be0bc91
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/source/Commands/CommandObjectDisassemble.cpp
    M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp

  Log Message:
  -----------
  [lldb][lldb-dap] Respect x86 disassembly flavor setting (#134722)

Ensure the disassembly respects the "target.x86-disassembly-flavor"
setting for x86 and x86_64 targets.

Depends on #134626

---------

Signed-off-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 4149ec9970f10dc5f4bdc92563cad6229c8fa3ea
      https://github.com/llvm/llvm-project/commit/4149ec9970f10dc5f4bdc92563cad6229c8fa3ea
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp

  Log Message:
  -----------
  [MLIR] Remove redundant verifier code in arith::ConstantOp

This is already checked by the `AllTypesMatch` traits defined in ODS.


  Commit: ee4b34cf3292382b153ba777fa1092858bea13f5
      https://github.com/llvm/llvm-project/commit/ee4b34cf3292382b153ba777fa1092858bea13f5
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/TestDAP_stackTraceDisassemblyDisplay.py

  Log Message:
  -----------
  [NFC][lldb] Fix unresolved test in buildbot lldb-aarch64-windows (#137516)

object indexing causes key error.

Initial commit #290ba2


  Commit: e7313421f1ad2e269a55e1f31280936d8d5395a3
      https://github.com/llvm/llvm-project/commit/e7313421f1ad2e269a55e1f31280936d8d5395a3
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Ptr/IR/MemorySpaceInterfaces.td
    M mlir/lib/Dialect/Ptr/IR/PtrAttrs.cpp
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp

  Log Message:
  -----------
  [mlir][ptr] Switch `LogicalResult` to `bool` in `MemorySpaceAttrInterrface` (#137513)

This patch switches the return type in `MemorySpaceAttrInterface`
methods from `LogicalResult` to `bool`. As `is*` methods are predicates.

Users of the `MemorySpaceAttrInterface` API must note that, if
`emitError` is non-null and the result of a `is*` method is `false`,
then an error was likely emitted. To avoid the emission of an error the
user can pass a default constructed `emitError`.


  Commit: 2c1d4b0404187f0162d3b2df64dae062e53c3c79
      https://github.com/llvm/llvm-project/commit/2c1d4b0404187f0162d3b2df64dae062e53c3c79
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [Github] Install sccache from apt repo in CI container (#137491)

This patch installs sccache using apt-get in the CI container build
process rather than manually downloading it from github releases. This
makes things quite a bit simpler and means we are not manually handling
things like hash/signature verification. This is only possible now that
we are using ubuntu 24.04 by default.


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

  Changed paths:
    A .ci/all_requirements.txt
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh

  Log Message:
  -----------
  [CI] Hash pin CI python deps (#137489)

The CI scripts install some python dependencies primarily for testing
this patch moves these over to a single requirements file that also hash
pins everything using pip-compile to conform to best security and
reproducibility practices.


  Commit: cbd32833fb17b678171a49fce7f98dfd305261a4
      https://github.com/llvm/llvm-project/commit/cbd32833fb17b678171a49fce7f98dfd305261a4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp

  Log Message:
  -----------
  [AMDGPU] Simplify PrintField::printField (NFC) (#137502)

We can use "constexpr if" to combine the two variants of functions.


  Commit: 49eb7d0485bc2d9887f8cdf386aa6adaa39e8a57
      https://github.com/llvm/llvm-project/commit/49eb7d0485bc2d9887f8cdf386aa6adaa39e8a57
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/PassInstrumentation.h
    M llvm/include/llvm/IR/PassManagerInternal.h

  Log Message:
  -----------
  [IR] Simplify isRequired and passIsRequiredImpl (NFC) (#137503)

We can use "constexpr if" to combine the two variants of functions.


  Commit: 8c73fee407291b1d769b6f22ba5c0d3d9eac5a0b
      https://github.com/llvm/llvm-project/commit/8c73fee407291b1d769b6f22ba5c0d3d9eac5a0b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/PassSupport.h

  Log Message:
  -----------
  [PassSupport] Simplify callDefaultCtor (NFC) (#137504)

We can use "constexpr if" to combine the two variants of functions.


  Commit: 1395e0a3ec8b9d21d5112339e9315a9742764f75
      https://github.com/llvm/llvm-project/commit/1395e0a3ec8b9d21d5112339e9315a9742764f75
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h

  Log Message:
  -----------
  [Scalar] Simplify addPass and createFunctionToLoopPassAdaptor (NFC) (#137505)

We can use "constexpt if" to combine the two variants of functions.


  Commit: 95b2e234f97a4153574ec51fb44e27b072439a90
      https://github.com/llvm/llvm-project/commit/95b2e234f97a4153574ec51fb44e27b072439a90
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Pass/AnalysisManager.h

  Log Message:
  -----------
  [mlir] Simplify PreservedAnalyses::isInvalidated (NFC) (#137506)

We can use "constexpr if" to combine the two variants of functions.


  Commit: a1bcc8f757ff70e3504c7cca1219a474c55325d1
      https://github.com/llvm/llvm-project/commit/a1bcc8f757ff70e3504c7cca1219a474c55325d1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose heap-allocated array elem pointers... (#137523)

...  as "pointer to subobject".


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

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] Support the Module Event (#137380)

The module event indicates that some information about a module has
changed. The event is supported by the Emacs and Visual Studio DAP
clients. This PR adds support for emitting the event from lldb-dap.

Fixes #137058


  Commit: e045d55dd51bfa6ee4ef29d518393cb57b4dc0c4
      https://github.com/llvm/llvm-project/commit/e045d55dd51bfa6ee4ef29d518393cb57b4dc0c4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/records.cpp

  Log Message:
  -----------
  [clang][bytecode] Check for global decls in destructors (#137525)

Destructors can't be called on global variables.


  Commit: 7904298c794913489202467599c7eacc860dd6d7
      https://github.com/llvm/llvm-project/commit/7904298c794913489202467599c7eacc860dd6d7
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [clang][bytecode] Don't ignore discarded ArraySubScriptExprs (#137526)

We need to evaluate them since the index might be out of bounds.


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

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Make lldb-dap.executable-path machine specific (#137485)

Change the scope [1] of lldb-dap.executable-path to
"machine-overridable":

> Machine specific settings that can be overridden by workspace or
> folder settings.

Practically speaking, this means that the path won't be synced across
machines and "(Not synced)" will show up next to the setting. I believe
it doesn't make sense to sync this setting (and I remember a bug report
where this caused trouble when using VS Code remotely), plus it matches
what clangd does for its corresponding setting. The extension has logic
to find the binary in your path or with `xcrun` which in most cases
should do the right thing and prevent you from having to override this
setting.

[1]
https://code.visualstudio.com/api/references/contribution-points#Configuration-property-schema


  Commit: 72bc0525d88c2df4a2c370ad8a11de8d0fdd52bf
      https://github.com/llvm/llvm-project/commit/72bc0525d88c2df4a2c370ad8a11de8d0fdd52bf
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    A llvm/test/CodeGen/AMDGPU/wwm-reg-shift-down-gfx11plus.mir

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] update wwm reg sorting check condition (#135053)

We currently just need to shift down 32bit wwm registers. 

Previous check condition mistakenly select 16bit registers in true16
mode. Update check condition to skip the 16bit register in wmm reg
sorting


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

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

  Log Message:
  -----------
  [LV] Remove LoopVectorizationLegality from InnerLoopVectorizer (NFC).

a51e28278 removed the last real use of Legal in InnerLoopVectorizer. Now
that it isn't used any longer, remove it to avoid new users being
introduced.


  Commit: 1f56716a7eb42be67b9e42d11d95b622fdb605e5
      https://github.com/llvm/llvm-project/commit/1f56716a7eb42be67b9e42d11d95b622fdb605e5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [llvm] Use hash_combine_range with ranges (NFC) (#137530)


  Commit: 89b3de6cfefcf643c0cb51d61eaa5b6639a4a01c
      https://github.com/llvm/llvm-project/commit/89b3de6cfefcf643c0cb51d61eaa5b6639a4a01c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/utils/TableGen/OptionParserEmitter.cpp

  Log Message:
  -----------
  [llvm] Use llvm::interleaved (NFC) (#137531)


  Commit: 52fcb076c01c907467814345f5ebdb7b6f140ba1
      https://github.com/llvm/llvm-project/commit/52fcb076c01c907467814345f5ebdb7b6f140ba1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/lib/DebugInfo/LogicalView/Core/LVSupport.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp

  Log Message:
  -----------
  [llvm] Use llvm::transform (NFC) (#137532)


  Commit: 3170599fd4de02b5417223ff0d16776d2fe6af69
      https://github.com/llvm/llvm-project/commit/3170599fd4de02b5417223ff0d16776d2fe6af69
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [Support] Simplify yamlizeMappingEnumInput (NFC) (#137537)

We can use "constexpr if" to combine the two variants of functions.


  Commit: f4d3a0cb6a4d2e60ec969b5b5f94baefd7904bf9
      https://github.com/llvm/llvm-project/commit/f4d3a0cb6a4d2e60ec969b5b5f94baefd7904bf9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [TableGen] Simplify insertBits (NFC) (#137538)

We can use "constexpr if" to combine the two variants of functions.


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

  Changed paths:
    M lldb/tools/debugserver/source/DNBTimer.h

  Log Message:
  -----------
  [debugserver] Migrate DNBTimer away from PThreadMutex (NFC) (#137540)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
DNBTimer away from that class in preparation for removing PThreadMutex.


  Commit: 0755e024fcfc9313d866ed5432133f8755901c95
      https://github.com/llvm/llvm-project/commit/0755e024fcfc9313d866ed5432133f8755901c95
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/DNBLog.cpp

  Log Message:
  -----------
  [debugserver] Migrate DNBLog away from PThreadMutex (NFC) (#137541)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
DNBLog away from that class in preparation for removing PThreadMutex.


  Commit: 503ebad14cd9d147ae9aae27f935ff450a685748
      https://github.com/llvm/llvm-project/commit/503ebad14cd9d147ae9aae27f935ff450a685748
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThreadList.h

  Log Message:
  -----------
  [debugserver] Migrate MachThreadList away from PThreadMutex (NFC) (#137542)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
MachThreadList away from that class in preparation for removing
PThreadMutex.


  Commit: 33a0a786f2002cf1b0a13a8984d0933e7dc048d7
      https://github.com/llvm/llvm-project/commit/33a0a786f2002cf1b0a13a8984d0933e7dc048d7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/MachThread.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThread.h

  Log Message:
  -----------
  [debugserver] Migrate MachThread away from PThreadMutex (NFC) (#137543)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
MachThread away from PThreadMutex in preparation for removing it.


  Commit: 10f379e68660af931e367dba988ef2e3a1073bf5
      https://github.com/llvm/llvm-project/commit/10f379e68660af931e367dba988ef2e3a1073bf5
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  [lldb][test] TestFrameFormat: set breakpoints by name

Without this for some reason Linux PR CI was failing with:
```
 (lldb) settings set -f frame-format "custom-frame '${function.basename}'\n"
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:50'1                                          ?                                       possible intended match
            9: (lldb) break set -l 5 -f main.cpp
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           10: Breakpoint 1: no locations (pending).
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           11: WARNING: Unable to resolve breakpoint to any actual locations.
check:50'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


  Commit: 4ca8f65b6c4fd554783848f77094622b9f9ea776
      https://github.com/llvm/llvm-project/commit/4ca8f65b6c4fd554783848f77094622b9f9ea776
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [Support] Simplify setDefaultImpl (NFC) (#137528)

We can use "constexpr if" to combine the two variants of functions.


  Commit: ebbe970c86c99eeee5e480346847dbe6bcb1c95e
      https://github.com/llvm/llvm-project/commit/ebbe970c86c99eeee5e480346847dbe6bcb1c95e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

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

  Log Message:
  -----------
  [Support] Simplify mapOptionalWithContext (NFC) (#137529)

We can use "constexpt if" to combine the two variants of functions.

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: fcd066412624a80ef2bacbe83c5aef99240083e2
      https://github.com/llvm/llvm-project/commit/fcd066412624a80ef2bacbe83c5aef99240083e2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp

  Log Message:
  -----------
  [AMDGPU] Simplify GetMember...::Get (NFC) (#137536)

We can use "constexpr if" to combine the two variants of functions.


  Commit: 08beaa868ecc4846755f8679a68e79f4642b268b
      https://github.com/llvm/llvm-project/commit/08beaa868ecc4846755f8679a68e79f4642b268b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/RegAllocPBQP.h

  Log Message:
  -----------
  [CodeGen] Use OwningArrayRef in NodeMetadata (NFC) (#137539)


  Commit: 16e5c3ddadaa8d25698a71c0308b1d0ca887d11f
      https://github.com/llvm/llvm-project/commit/16e5c3ddadaa8d25698a71c0308b1d0ca887d11f
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-04-27 (Sun, 27 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] An assortment of small enhancements (#135329)

This PR implements various small enhancements to
alpha.webkit.RetainPtrCtorAdoptChecker:
 - Detect leaks from [[X alloc] init] when ARC is disabled.
 - Detect leaks from calling Create, Copy, and other +1 CF functions.
 - Recognize [allocX() init] pattern where allocX is a C/C++ function.
 - Recognize _init in addition to init as an init function.
 - Recognize [[[X alloc] init] autorelease].
 - Recognize CFBridgingRelease.
 - Support CF_RETRUNS_RETAINED on out arguments of a C function.
- Support returning +1 object in Create, Copy, and other +1 functions or
+1 selectors.
 - Support variadic Create, Copy, and other +1 C/C++ functions.

To make these enhancements, this PR introduces new visit functions for
ObjCMessageExpr, ReturnStmt, VarDecl, and BinaryOperator. These
functions look for a specific construct mentioned above and adds an
expression such as [[X alloc] init] or CreateX to a DenseSet
CreateOrCopyFnCall when the expression does not result in leaks. When
the code to detect leaks such as the one in visitObjCMessageExpr later
encounters this expression, it can bail out early if the expression is
in the set.


  Commit: cf035e8abbf50efc9ea64c8bf4cdcb7133255a08
      https://github.com/llvm/llvm-project/commit/cf035e8abbf50efc9ea64c8bf4cdcb7133255a08
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/MachThread.h

  Log Message:
  -----------
  [lldb] Add missing include


  Commit: b15adefefffb23fc5de7e26892b22a8716a53621
      https://github.com/llvm/llvm-project/commit/b15adefefffb23fc5de7e26892b22a8716a53621
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/DNBTimer.h

  Log Message:
  -----------
  [lldb] Add missing include


  Commit: 834d4260a042cd33e6346256aab66eca7390e83b
      https://github.com/llvm/llvm-project/commit/834d4260a042cd33e6346256aab66eca7390e83b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/PBQP/Math.h

  Log Message:
  -----------
  [CodeGen] Use OwningArrayRef in PBQP::Vector (NFC) (#137548)


  Commit: c3858e55f457cd5c918df7c8ec9cff587e7b100a
      https://github.com/llvm/llvm-project/commit/c3858e55f457cd5c918df7c8ec9cff587e7b100a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/test/Integration/GPU/CUDA/concurrent-kernels.mlir

  Log Message:
  -----------
  [MLIR] Fix test run line: use `env` to set environment variable


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

  Changed paths:
    M lldb/tools/debugserver/source/RNBRemote.cpp
    M lldb/tools/debugserver/source/RNBRemote.h

  Log Message:
  -----------
  [debugserver] Migrate RNBRemote away from PThreadMutex (NFC) (#137547)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
RNBRemote away from PThreadMutex in preparation for removing it.


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp

  Log Message:
  -----------
  [alpha.webkit.RetainPtrCtorAdoptChecker] Check nullity before calling IgnoreParenCasts. (#137556)


  Commit: 25b05e0b234fe4d26f9717bf505566892479bee6
      https://github.com/llvm/llvm-project/commit/25b05e0b234fe4d26f9717bf505566892479bee6
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/Pass/PassOptions.h

  Log Message:
  -----------
  [mlir] Simplify functions with "constexpr if" (NFC) (#137551)

We can use "constexpr if" to combine the two variants of functions.


  Commit: 5cfd81b0cc9f92f3d4903f4e7b97769fe7b565b9
      https://github.com/llvm/llvm-project/commit/5cfd81b0cc9f92f3d4903f4e7b97769fe7b565b9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/MemorySSAUpdater.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/TailDuplicator.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Transforms/Scalar/ADCE.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/FlattenCFG.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [llvm] Use range constructors of *Set (NFC) (#137552)


  Commit: 89f3dc9074d9672cd8ff49deccf8d9cd1be6ec7d
      https://github.com/llvm/llvm-project/commit/89f3dc9074d9672cd8ff49deccf8d9cd1be6ec7d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/MachProcess.h
    M lldb/tools/debugserver/source/MacOSX/MachProcess.mm

  Log Message:
  -----------
  [debugserver] Migrate MachProcess away from PThreadMutex (NFC) (#137553)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
MachProcess away from PThreadMutex in preparation for removing it.


  Commit: 3eab094c457c03539854398b47f3f20d85323f5c
      https://github.com/llvm/llvm-project/commit/3eab094c457c03539854398b47f3f20d85323f5c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/ByteProvider.h

  Log Message:
  -----------
  [CodeGen] Use llvm::is_detected (NFC) (#137561)


  Commit: e13b79cc14237a8a1c4533d435d6ccd519e5a364
      https://github.com/llvm/llvm-project/commit/e13b79cc14237a8a1c4533d435d6ccd519e5a364
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/Metadata.h

  Log Message:
  -----------
  [IR] Use llvm::is_detected (NFC) (#137562)


  Commit: d1e85a0ea0992962b749eb5f57058f900f752dcc
      https://github.com/llvm/llvm-project/commit/d1e85a0ea0992962b749eb5f57058f900f752dcc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/lib/Analysis/SliceAnalysis.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir] Use range constructors of *Set (NFC) (#137563)


  Commit: ed3c8702a2582d4a8bbd9a292f6a191c0a656775
      https://github.com/llvm/llvm-project/commit/ed3c8702a2582d4a8bbd9a292f6a191c0a656775
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp

  Log Message:
  -----------
  [ASTMatchers] Use llvm::is_detected (NFC) (#137560)


  Commit: d3d856ad84698fa4ec66177d00558b2f5b438d3b
      https://github.com/llvm/llvm-project/commit/d3d856ad84698fa4ec66177d00558b2f5b438d3b
  Author: Owen Rodley <orodley at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/LLJITWithThinLTOSummaries.cpp
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/ProfileData/MemProf.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp

  Log Message:
  -----------
  Clean up external users of GlobalValue::getGUID(StringRef) (#129644)

See https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801
for context.

This is a non-functional change which just changes the interface of
GlobalValue, in preparation for future functional changes. This part
touches a fair few users, so is split out for ease of review. Future
changes to the GlobalValue implementation can then be focused purely on
that class.

This does the following:

* Rename GlobalValue::getGUID(StringRef) to
  getGUIDAssumingExternalLinkage. This is simply making explicit at the
  callsite what is currently implicit.
* Where possible, migrate users to directly calling getGUID on a
  GlobalValue instance.
* Otherwise, where possible, have them call the newly renamed
  getGUIDAssumingExternalLinkage, to make the assumption explicit.


There are a few cases where neither of the above are possible, as the
caller saves and reconstructs the necessary information to compute the
GUID themselves. We want to migrate these callers eventually, but for
this first step we leave them be.


  Commit: c6cec7bd9cef993b377903b88375e00badcbf11b
      https://github.com/llvm/llvm-project/commit/c6cec7bd9cef993b377903b88375e00badcbf11b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/PBQP/Math.h

  Log Message:
  -----------
  [CodeGen] Make hash_value a non-friend function (NFC) (#137564)

We can implement hash_value with publicly available methods of Vector.


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

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

  Log Message:
  -----------
  [gn] port 7afbffb5c2e4


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare.ll

  Log Message:
  -----------
  [RISCV] Widen i1 AnyOf reductions (#134898)

With EVL tail folding an AnyOf reduction will end up emitting an i1
vp.merge.

Unfortunately due to RVV not containing any tail undisturbed mask
instructions, an i1 vp.merge will get expanded to a lengthy sequence:

```asm
  vsetvli a1, zero, e64, m1, ta, ma
  vid.v v10                        
  vmsltu.vx v10, v10, a0           
  vmand.mm v9, v9, v10             
  vmandn.mm v8, v8, v9             
  vmand.mm v9, v0, v9              
  vmor.mm v0, v9, v8               
```

This addresses this by matching this specific AnyOf pattern in
RISCVCodegenPrepare and widening it from i1 to i8, which will end up
producing a single masked i8 vor.vi inside the loop:

```llvm
loop:                                                                      
  %phi = phi <vscale x 4 x i1> [ zeroinitializer, %entry ], [ %rec, %loop ]
  %cmp = icmp ...                                                                                          
  %rec = call <vscale x 4 x i1> @llvm.vp.merge(%cmp, true, %phi, %evl)     
```

```llvm
loop:                                                                      
  %phi = phi <vscale x 4 x i8> [ zeroinitializer, %entry ], [ %rec, %loop ]
  %cmp = icmp ...                             
  %rec = call <vscale x 4 x i8> @llvm.vp.merge(%cmp, true, %phi, %evl)     
  %trunc = trunc <vscale x 4 x i8> %rec to <vscale x 4 x i1>               
```

I ended up adding this in RISCVCodegenPrepare instead of the
LoopVectorizer itself since it would have required adding a target hook.

It may also be possible to generalize this to other i1 vp.merges in
future.

Normally the trunc will be sunk outside of the loop. But it also doesn't
check to see if all the non-phi users of the vp.merge are outside of the
loop: If there are in-loop users this still seems to be profitable, see
the test diff in `@widen_anyof_rdx_use_in_loop`

Fixes #132180


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Use correct constructor when cloning VPWidenIntrinsicRecipe without underlying CallInst (#137493)

I noticed this when working on a patch downstream, and I don't think
this is an issue upstream yet.

But if a VPWidenIntrinsicRecipe is created without an underlying
CallInst, e.g. in createEVLRecipe, it will crash if you try to clone it
because it assumes the CallInst always exists.

This fixes it by using the CallInst-less constructor in this case.


  Commit: a129ca7f178e5cb26735f4ceb82f0c92ea43ca1b
      https://github.com/llvm/llvm-project/commit/a129ca7f178e5cb26735f4ceb82f0c92ea43ca1b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/Analysis/ThreadSafety.cpp

  Log Message:
  -----------
  [Analysis] Remove has_arg_iterator_range (NFC) (#137568)

The last use was removed by:

  commit f8afb8fdedae04ad2670857c97925c439d47d862
  Author: Aaron Puchert <aaron.puchert at sap.com>
  Date:   Fri Apr 29 22:12:21 2022 +0200


  Commit: c21531895a5d5e6ffc349d6e229d71dd1463860a
      https://github.com/llvm/llvm-project/commit/c21531895a5d5e6ffc349d6e229d71dd1463860a
  Author: halbi2 <hehiralbi at gmail.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    A clang/test/SemaCXX/ptrauth-triviality.cpp

  Log Message:
  -----------
  [clang] Fix and test triviality of __ptrauth types (#137474)

Address-discriminated __ptrauth types do not have unique object
representations so they are not trivially comparable. Test all other
trivialities too even though they are not incorrect.

Fixes #137473


  Commit: ed95624e208e5bf7c3eeadfccee0fb6060a4ca98
      https://github.com/llvm/llvm-project/commit/ed95624e208e5bf7c3eeadfccee0fb6060a4ca98
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/Sema/TreeTransform.h

  Log Message:
  -----------
  [clang][NFC] Convert `StmtDiscardKind` to a scoped enum


  Commit: 096c20c0b1284ccf3d3af106a026450403bc288f
      https://github.com/llvm/llvm-project/commit/096c20c0b1284ccf3d3af106a026450403bc288f
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/Sema/TypeLocBuilder.h

  Log Message:
  -----------
  [clang][NFC] Convert enums in TypeLocBuilder into constants


  Commit: 55651e743b413af8787aa526de63d8c26c4a718b
      https://github.com/llvm/llvm-project/commit/55651e743b413af8787aa526de63d8c26c4a718b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Tooling/Inclusions/Stdlib/StandardLibrary.cpp
    M clang/unittests/Analysis/FlowSensitive/SimplifyConstraintsTest.cpp

  Log Message:
  -----------
  [clang] Use range constructors of *Set (NFC) (#137574)


  Commit: 268f0d4ebe47d73c361f8f2bce051d58994a33bc
      https://github.com/llvm/llvm-project/commit/268f0d4ebe47d73c361f8f2bce051d58994a33bc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h

  Log Message:
  -----------
  [ASTMatchers] Simplify isDefaultedHelper (NFC) (#137571)

We can use "constexpt if" to combine the two variants of functions.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: a28f65752d2a77dac4c9c7cd6179ae73c12c7032
      https://github.com/llvm/llvm-project/commit/a28f65752d2a77dac4c9c7cd6179ae73c12c7032
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    A mlir/test/Target/LLVMIR/nvvm/cvt_fp6x2.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Add support for f6x2 conversion (#136537)

This patch adds the `cvt.to.fp6x2` NVVM dialect Op for conversions into
the f6x2 types, `e2m3x2` and `e3m2x2`.

For more information, see PTX ISA:
https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt


  Commit: 576be7b19f91ad3a3a44e66a398575b8c417bfe5
      https://github.com/llvm/llvm-project/commit/576be7b19f91ad3a3a44e66a398575b8c417bfe5
  Author: Sushant Gokhale <sgokhale at nvidia.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll

  Log Message:
  -----------
  [AArch64][SVE] Generate asrd instruction for positive pow-2 divisors … (#137151)

…when SVE is available

Currently,
```
sdiv(x, y)  --> cmlt + usra + sshr                , where y is positive pow-2 integer
sdiv(x, y)  --> cmlt + usra + sshr + neg     , where y is negative pow-2 integer
```

Patch aims to transform this into
```
sdiv(x, y)  --> ptrue + asrd                 , where y is positive pow-2 integer
sdiv(x, y)  --> ptrue + asrd + subr     ,  where y is negative pow-2 integer
```


  Commit: a764358a9d86e9169bea895c8efbb61cc37ec788
      https://github.com/llvm/llvm-project/commit/a764358a9d86e9169bea895c8efbb61cc37ec788
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Serialization/ASTCommon.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp

  Log Message:
  -----------
  [clang][NFC] Convert DeclUpdateKind to scoped enum


  Commit: 98eeedd4a100600dd91cda14e0096483403c408b
      https://github.com/llvm/llvm-project/commit/98eeedd4a100600dd91cda14e0096483403c408b
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/Linkage.h

  Log Message:
  -----------
  [clang][NFC] Convert `NumLVComputationKindBits` to a constant


  Commit: f3a61f61eef53ecc0b59d14c52396df4f47ee5e8
      https://github.com/llvm/llvm-project/commit/f3a61f61eef53ecc0b59d14c52396df4f47ee5e8
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Lookup.h
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaLookup.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `LookupResult::AmbiguityKind` to scoped enum


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

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

  Log Message:
  -----------
  [SelectionDAG] Reduce code duplication between getStore, getTruncStore, and getIndexedStore. (#137435)

Create an extra overload of getStore that can handle of the 3 types of
stores. This is similar to how getLoad/getExtLoad/getIndexLoad is
structure.


  Commit: 3579fc003dcb7879c2d500dedb850f9ba0169bef
      https://github.com/llvm/llvm-project/commit/3579fc003dcb7879c2d500dedb850f9ba0169bef
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCSectionCOFF.h
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCParser/ELFAsmParser.cpp
    M llvm/lib/MC/MCParser/MCAsmParserExtension.cpp
    M llvm/lib/MC/MCSectionCOFF.cpp
    M llvm/test/CodeGen/X86/constructor.ll
    M llvm/test/CodeGen/X86/ctor-priority-coff.ll
    M llvm/test/CodeGen/X86/data-section-prefix.ll
    M llvm/test/CodeGen/X86/dtor-priority-coff.ll
    M llvm/test/CodeGen/X86/global-sections.ll
    M llvm/test/CodeGen/X86/mingw-comdats.ll
    M llvm/test/CodeGen/X86/text-section-prefix.ll
    M llvm/test/MC/COFF/global_ctors_dtors.ll
    A llvm/test/MC/COFF/section-unique.s

  Log Message:
  -----------
  [COFF] Preserve UniqueID used to create MCSectionCOFF (#123869)

This UniqueID can be used later to create associative section.
e.g. A .pseudo_probe associated to the section of the corresponding
function.


  Commit: ee29afe1e56d911f2fde54f5de141f4c4a0a1feb
      https://github.com/llvm/llvm-project/commit/ee29afe1e56d911f2fde54f5de141f4c4a0a1feb
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Lookup.h
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/utils/ClangVisualizers/clang.natvis

  Log Message:
  -----------
  [clang][NFC] Convert LookupResultKind to scoped enum


  Commit: 41112db5a5a7806b27de9b6a460894b82036b41a
      https://github.com/llvm/llvm-project/commit/41112db5a5a7806b27de9b6a460894b82036b41a
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h

  Log Message:
  -----------
  [clang][NFC] Remove old commented out code

`CheckedConversionKind` was converted to a scoped enum quite a while ago.


  Commit: 936e5284652e6a2c4f15e2659deaa3034446a013
      https://github.com/llvm/llvm-project/commit/936e5284652e6a2c4f15e2659deaa3034446a013
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-27 (Sun, 27 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp

  Log Message:
  -----------
  [mlir] Fix a warning

This patch fixes:

  mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp:1304:3: error: default
  label in switch which covers all enumeration values
  [-Werror,-Wcovered-switch-default]


  Commit: b10296eff0c26497aac01b96d57a5dffacebec67
      https://github.com/llvm/llvm-project/commit/b10296eff0c26497aac01b96d57a5dffacebec67
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAttr.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::PragmaClangSectionKind` to scoped enum


  Commit: 4f96ce414bcc35ec7e3d8bec18f6a4d7a4c4632a
      https://github.com/llvm/llvm-project/commit/4f96ce414bcc35ec7e3d8bec18f6a4d7a4c4632a
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAttr.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::PragmaClangSectionAction` to scoped enum


  Commit: 6f6af49938bfd0b1649f25064fd9619552f82b23
      https://github.com/llvm/llvm-project/commit/6f6af49938bfd0b1649f25064fd9619552f82b23
  Author: i-ky <gl.ivanovsky at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/docs/CommandGuide/lit.rst

  Log Message:
  -----------
  Clarify `lit`'s definition of failure and conditions when it exits with exit code 1 (#136190)

Documentation of when `lit` exits with code 1 is out of date.

It is no longer just "FAIL or XPASS", there are more failure types:

https://github.com/llvm/llvm-project/blob/b30100b87f24847afd6407b4939a184ebcf16ef9/llvm/utils/lit/lit/Test.py#L51-L55

Exit code can also be affected by `--ignore-fail` option:

https://github.com/llvm/llvm-project/blob/b30100b87f24847afd6407b4939a184ebcf16ef9/llvm/utils/lit/lit/main.py#L154-L162

This PR extracts a clear definition of "failure" from the description of
`--report-failures-only` option:

https://github.com/llvm/llvm-project/blob/b30100b87f24847afd6407b4939a184ebcf16ef9/llvm/docs/CommandGuide/lit.rst?plain=1#L194-L196
...puts it into "Test Status Results" section and references it when
describing exit codes and `--ignore-fail` option.


  Commit: 21444e37ab3fa1a62e6113c85954e3f98ee48698
      https://github.com/llvm/llvm-project/commit/21444e37ab3fa1a62e6113c85954e3f98ee48698
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::PragmaMsStackAction` to scoped enum


  Commit: ab680c55c724ba894269fb687464961a2066c17f
      https://github.com/llvm/llvm-project/commit/ab680c55c724ba894269fb687464961a2066c17f
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  Revert "[clang][NFC] Convert `Sema::PragmaMsStackAction` to scoped enum"

This reverts commit bd2a3f8d90368288a73dd2ef1926f714acd9eff3.


  Commit: 34845ac35a31ccfb4f28bbd76c4a3442b0dee3d2
      https://github.com/llvm/llvm-project/commit/34845ac35a31ccfb4f28bbd76c4a3442b0dee3d2
  Author: tangaac <tangyan01 at loongson.cn>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/lasx/widen-shuffle-mask.ll
    M llvm/test/CodeGen/LoongArch/lsx/widen-shuffle-mask.ll

  Log Message:
  -----------
  [LoongArch] Try to widen shuffle mask (#136081)


  Commit: c2d47a912f9bef427ff249f6e6ebfab89ac37902
      https://github.com/llvm/llvm-project/commit/c2d47a912f9bef427ff249f6e6ebfab89ac37902
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAttr.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::PragmaOptionsAlignKind` to scoped enum


  Commit: 0cd3fd4c5c636311f044c395ccd7f02b8039fca8
      https://github.com/llvm/llvm-project/commit/0cd3fd4c5c636311f044c395ccd7f02b8039fca8
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    A llvm/test/CodeGen/RISCV/add-imm64-to-sub.ll

  Log Message:
  -----------
  [RISCV][test] Add (add x, C) -> (sub x, -C) tests


  Commit: f5ba3d0c6d413e46fa962be80cfb37857e35b9ab
      https://github.com/llvm/llvm-project/commit/f5ba3d0c6d413e46fa962be80cfb37857e35b9ab
  Author: Andrew Savonichev <andrew.savonichev at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/Type.cpp
    M clang/test/CodeGenCXX/visibility.cpp

  Log Message:
  -----------
  [clang] Fix computeTypeLinkageInfo for dependent member pointers (#136689)

MemberPointerType may refer to a dependent class (qualifier), for
which getMostRecentCXXRecordDecl returns NULL. It seems that the
compiler never executed this code path before patch #136128 where the
issue was reported.

LIT tests 74 and 75 are reduced from Chromium and LLVM libc test
harness as reported in #136128.

Function member (test74):

    MemberPointerType 'type-parameter-0-0 (type-parameter-0-1::*)(void)' dependent
    |-TemplateTypeParmType 'type-parameter-0-1' dependent depth 0 index 1
    `-FunctionProtoType 'type-parameter-0-0 (void)' dependent cdecl
      `-TemplateTypeParmType 'type-parameter-0-0' dependent depth 0 index 0

Template parameter (test75):

    MemberPointerType 'type-parameter-0-1 type-parameter-0-0::*' dependent
    |-TemplateTypeParmType 'type-parameter-0-0' dependent depth 0 index 0
    `-TemplateTypeParmType 'type-parameter-0-1' dependent depth 0 index 1


  Commit: dae63e2c0ff1b7d64e186fe72e06a80ef895402c
      https://github.com/llvm/llvm-project/commit/dae63e2c0ff1b7d64e186fe72e06a80ef895402c
  Author: Andrew Savonichev <andrew.savonichev at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/Decl.cpp
    M clang/test/CodeGenCXX/visibility.cpp

  Log Message:
  -----------
  Reland [clang] Handle instantiated members to determine visibility (#136128) (#136689)

As reported in issue #103477, visibility of instantiated member
functions used to be ignored when calculating visibility of a
specialization.

This patch modifies `getLVForClassMember` to look up for a source
template for an instantiated member, and changes `mergeTemplateLV` to
apply it.

A similar issue was reported in #31462, but it seems that `extern`
declaration with visibility prevents the function from being emitted
as hidden. This behavior seems correct, even though GCC emits it as
with default visibility instead.

Both tests from #103477 and #31462 are added as LIT tests `test72` and
`test73` respectively.


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/test/Transforms/InstCombine/cast_ptr.ll

  Log Message:
  -----------
  [InstCombine] Support ptrtoint of gep folds for chain of geps (#137323)

Support the ptrtoint(gep null, x) -> x and ptrtoint(gep inttoptr(x), y)
-> x+y folds for the case where there is a chain of geps that ends in
null or inttoptr. This avoids some regressions from #137297.
    
While here, also be a bit more careful about edge cases like pointer to
vector splats and mismatched pointer and index size.


  Commit: 59fbb9e7751b36bbca1064abb6c21ce59c038a70
      https://github.com/llvm/llvm-project/commit/59fbb9e7751b36bbca1064abb6c21ce59c038a70
  Author: David Green <david.green at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/fix-shuffle-vector-be-rev.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/neon-bitcast.ll
    M llvm/test/CodeGen/AArch64/shuffle-extend.ll
    M llvm/test/CodeGen/AArch64/vector-fcvt.ll

  Log Message:
  -----------
  [AArch64] Add tablegen patterns for i8 and i16 vector insert/extract pairs (#136091)

An i8 and i16 vector extract/insert has to go via a i32 to make sure the
types are legal. This patch adds patterns for extract from a i8/i16
vector, inserted into a i16/i32 vector. This avoids the round trip via a
GPR which can limit performance.


  Commit: 60b3a5b7e7db40ec74d3c4839a3fae8b73d98851
      https://github.com/llvm/llvm-project/commit/60b3a5b7e7db40ec74d3c4839a3fae8b73d98851
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/builtin-constant-p.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix two small builtin_constant_p cases (#137587)

Only accept string literals if we're pointing to the first index and do
accept complex literals.


  Commit: fcb1a481cec002f4e505d165cfba85d8b5986a57
      https://github.com/llvm/llvm-project/commit/fcb1a481cec002f4e505d165cfba85d8b5986a57
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/docs/use/formatting.rst

  Log Message:
  -----------
  [lldb][docs] Document new frame-format variables (#137522)

Documents https://github.com/llvm/llvm-project/pull/131836


  Commit: e665d95426a454b8f4a04252b815e6366491dfad
      https://github.com/llvm/llvm-project/commit/e665d95426a454b8f4a04252b815e6366491dfad
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Plugins/Language/CPlusPlus/LanguageCPlusPlusProperties.td

  Log Message:
  -----------
  [lldb] Highlight basenames in backtraces (#137301)

Also changes the PC value color so it doesn't visually clash with the
function names

Before:
<img width="1510" alt="Screenshot 2025-04-25 at 10 38 58 AM"
src="https://github.com/user-attachments/assets/1ec35ba3-a3d9-4e5b-bac9-fc738bfe6d25"
/>

After:
![Screenshot 2025-04-25 at 4 34
27 PM](https://github.com/user-attachments/assets/3de6e778-ff97-4f47-b361-360e4bbfaede)


  Commit: b55fa20d838cff48d060b8f211795bc8b84c265b
      https://github.com/llvm/llvm-project/commit/b55fa20d838cff48d060b8f211795bc8b84c265b
  Author: lorenzo chelini <l.chelini at icloud.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Async/Passes.h
    M mlir/include/mlir/Dialect/Async/Passes.td
    M mlir/lib/Dialect/Async/Transforms/AsyncParallelFor.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCounting.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCountingOpt.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp

  Log Message:
  -----------
  [MLIR][NFC] Retire let constructor for Async (#137461)

let constructor is legacy (do not use in tree!) since the tableGen
backend emits most of the glue logic to build a pass.

Note: The following constructor has been retired:

```cpp
std::unique_ptr<Pass> createAsyncParallelForPass(bool asyncDispatch,
                                                 int32_t numWorkerThreads,
                                                 int32_t minTaskSize);
```

To update your codebase, replace it with the new options-based API:

```cpp
AsyncParallelForPassOptions options{/*asyncDispatch=*/, /*numWorkerThreads=*/, /*minTaskSize=*/};
createAsyncParallelForPass(options);
```


  Commit: af329725d4d70cb79f34c40061d04995afedc605
      https://github.com/llvm/llvm-project/commit/af329725d4d70cb79f34c40061d04995afedc605
  Author: Peng Sun <peng.sun at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/dynamic_extension.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Enhance verify checks for PAD Op (#137177)

* add padding shape verification
 * add and update LIT test

Signed-off-by: Peng Sun <peng.sun at arm.com>


  Commit: 2319a1eb8112ee7d2f5338f7d2fadd0a893a3cb6
      https://github.com/llvm/llvm-project/commit/2319a1eb8112ee7d2f5338f7d2fadd0a893a3cb6
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/CodeGen/RISCV/add-imm64-to-sub.ll

  Log Message:
  -----------
  [RISCV] Select (add x, C) -> (sub x, -C) if -C cheaper to materialize (#137309)

RV64 only. For 32-bit constants, a negated constant is never cheaper.

This change is similar to how #120221 selects inverted bitwise instructions.


  Commit: 5f704f929d0d0d2f3438c951492212d6816b439c
      https://github.com/llvm/llvm-project/commit/5f704f929d0d0d2f3438c951492212d6816b439c
  Author: Karthika Devi C <quic_kartc at quicinc.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M polly/include/polly/Support/ScopHelper.h
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/IslExprBuilder.cpp
    M polly/lib/CodeGen/IslNodeBuilder.cpp
    M polly/lib/CodeGen/LoopGenerators.cpp
    M polly/lib/Support/ScopHelper.cpp

  Log Message:
  -----------
  [RemoveDI][Polly] Migrate to adapt to the new DebugRecord format in more areas (#135935)

Some of the changes in the patch include:

1. Using iterators instead of instruction pointers when applicable.
2. Modifying Polly functions to accept iterators instead of inst
pointers.
3. Updating API usages such as use begin instead of front.


  Commit: ec6b61943009ed695bdf268bf5a8bf448085df1e
      https://github.com/llvm/llvm-project/commit/ec6b61943009ed695bdf268bf5a8bf448085df1e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/DNBLog.cpp

  Log Message:
  -----------
  [lldb][DNB] Add missing include

On the buildbots:
```
user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/tools/debugserver/source/DNBLog.cpp
/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/tools/debugserver/source/DNBLog.cpp:66:15: error: no type named 'recursive_mutex' in namespace 'std'
  static std::recursive_mutex g_LogThreadedMutex;
         ~~~~~^
/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/tools/debugserver/source/DNBLog.cpp:67:8: error: no member named 'lock_guard' in namespace 'std'
  std::lock_guard<std::recursive_mutex> guard(g_LogThreadedMutex);
  ~~~~~^
/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/tools/debugserver/source/DNBLog.cpp:67:24: error: no member named 'recursive_mutex' in namespace 'std'
  std::lock_guard<std::recursive_mutex> guard(g_LogThreadedMutex);
                  ~~~~~^
```


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/test/Transforms/LoopVectorize/outer-loop-inner-latch-successors.ll

  Log Message:
  -----------
  [VPlan] Invert condition if needed when creating inner regions. (#132292)

As pointed out by @iamlouk in
https://github.com/llvm/llvm-project/pull/129402, the current code
doesn't handle latches with different successor orders correctly.
Introduce a `NOT`, if needed.

Depends on  https://github.com/llvm/llvm-project/pull/129402

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


  Commit: be7cf63b4a402ebc5b1dacc6579a693c92e1328e
      https://github.com/llvm/llvm-project/commit/be7cf63b4a402ebc5b1dacc6579a693c92e1328e
  Author: Virginia Cangelosi <virginia.cangelosi at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/SMEInstrFormats.td

  Log Message:
  -----------
  [AArch64] Add FPCR register usages to mop4 instructions (#135641)

Ensure all floating mop4 instructions implicitly use FPCR


  Commit: 1f69d6354a4b088bda5ee62c31411a75eead8b0c
      https://github.com/llvm/llvm-project/commit/1f69d6354a4b088bda5ee62c31411a75eead8b0c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  [InstCombine] Preserve the sign bit of NaN in `SimplifyDemandedUseFPClass` (#137287)

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

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

Note: To avoid regression in
`ret_nofpclass_nopositives_copysign_nnan_flag`, the second commit takes
FMF into account.


  Commit: 8506980d30fd2faf41518f24e985f820609a7bd0
      https://github.com/llvm/llvm-project/commit/8506980d30fd2faf41518f24e985f820609a7bd0
  Author: Lucas Duarte Prates <lucas.prates at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/CMakeLists.txt

  Log Message:
  -----------
  [Analysis] Ensure use of strict fp exceptions in ConstantFolding (#136139)

To perform constant folding in math operations, the implementation of
the ConstantFolding Analysis relies on the use of the math functions
from the host's libm. In particular, it relies on checking the value of
errno and IEEE exceptions to determine when an operation is safe to be
constant-folded.

On some platforms, such as BSD or Darwin, math library functions don't
set errno, so the ConstantFolding check depends only on the value of
IEEE exceptions. As the FP exception behaviour is set to `ignore` by
default, the compiler can perform optimisations that would get in the
way of such checks being performed correctly.

This patch sets the FP exception behaviour to `strict` when compiling
the `ConstantFolding.cpp` source file, ensuring the value of IEEE
exceptions can be reliably used by its implementation.


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

  Changed paths:
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py

  Log Message:
  -----------
  [lldb][lldb-dap] Disable launch tests that rely on get_stdout()

This appears not to work on Windows.

See https://github.com/llvm/llvm-project/issues/137599.


  Commit: 6ba1a62a6c512e32bf85f21b59b2c8e507d1a72e
      https://github.com/llvm/llvm-project/commit/6ba1a62a6c512e32bf85f21b59b2c8e507d1a72e
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/MC/RISCV/xandesperf-invalid.s
    A llvm/test/MC/RISCV/xandesperf-rv64-invalid.s
    A llvm/test/MC/RISCV/xandesperf-rv64-valid.s
    A llvm/test/MC/RISCV/xandesperf-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Andes XAndesperf (Andes Performance) extension. (#135110)

The spec can be found at:
https://github.com/andestech/andes-v5-isa/releases/tag/ast-v5_4_0-release.

This patch only supports assembler.

Relocation and fixup for the branch and gp-implied instructions will be
added in a later patch.


  Commit: a0c4876eede8e68de22dc5296b037556c7cca981
      https://github.com/llvm/llvm-project/commit/a0c4876eede8e68de22dc5296b037556c7cca981
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/fcmp-fadd-select.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    M llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll

  Log Message:
  -----------
  [InstCombine] Fix ninf propagation for fcmp+sel -> minmax (#136433)

Proof: https://alive2.llvm.org/ce/z/nCrvfr
Closes https://github.com/llvm/llvm-project/issues/136430


  Commit: 6ae4030d4cfc1b994be8e100ef72707ff570c89d
      https://github.com/llvm/llvm-project/commit/6ae4030d4cfc1b994be8e100ef72707ff570c89d
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/CMakeLists.txt

  Log Message:
  -----------
  Revert "[Analysis] Ensure use of strict fp exceptions in ConstantFolding (#136139)"

This reverts commit 8506980d30fd2faf41518f24e985f820609a7bd0, multiple buildbot failures reported.


  Commit: 2085119887397c4333d70e32a543fe32116756ce
      https://github.com/llvm/llvm-project/commit/2085119887397c4333d70e32a543fe32116756ce
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-cancel.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Convert omp.cancel parallel to LLVMIR (#137192)

Support for other constructs will follow in subsequent PRs.


  Commit: 32059ce1210da09ed3abfe3ff257b11897251650
      https://github.com/llvm/llvm-project/commit/32059ce1210da09ed3abfe3ff257b11897251650
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Stop using Function in InterpBuiltin (#137597)

Prepare for the ultimate removal of Function instances for builtin
functions.


  Commit: cebf86eb1de163faaf5f9781f6bbded70dc1f9f0
      https://github.com/llvm/llvm-project/commit/cebf86eb1de163faaf5f9781f6bbded70dc1f9f0
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  [lldb][Format] Make function name frame-format variables work without debug-info (#137408)

This patch makes the frame-format variables introduced in
https://github.com/llvm/llvm-project/pull/131836 also work when no
debug-info is available. Previously, we assumed `sc.function` was
available, but without debug-info we might only have `sc.symbol`. We
don't really need the `sc.function` apart from when formatting
arguments.

For the function arguments case I added a fallback that will just print
the arguments we get from the demangler (which is what LLDB does for
stacktraces with no debug-info anyway). Ideally we'd have a separate
`FormatEntity::Entry::Type::FunctionArguments` that will just print the
arguments from the demangler and have something like the following in
the `plugin.cplusplus.display.function-name-format`:
```
{ ${function.formatted-arguments} || ${function.arguments} }
```
I.e., when we can't format the arguments, print the ones from the
demangler. But we currently don't have the `||` operator in the
frame-format language yet.


  Commit: 5147b83ee684470a8c903e2f05561abfb644ab28
      https://github.com/llvm/llvm-project/commit/5147b83ee684470a8c903e2f05561abfb644ab28
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M flang/include/flang/Lower/ConvertExprToHLFIR.h
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp

  Log Message:
  -----------
  [flang][Lower][nfc] vector subscript lhs first element to helper (#137456)

This encapsulates implementation details of hlfir.elemental_addr inside
of ConvertExprToHLFIR instead of leaking to OpenMP code.

Requested here:
https://github.com/llvm/llvm-project/pull/133892#issuecomment-2821559394


  Commit: 0b6d71fe10d46741a6f50c17b3fc795fd82e27b7
      https://github.com/llvm/llvm-project/commit/0b6d71fe10d46741a6f50c17b3fc795fd82e27b7
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::TUFragmentKind` to scoped enum


  Commit: 475531b884a1a203af6367df35f1722fe2383e06
      https://github.com/llvm/llvm-project/commit/475531b884a1a203af6367df35f1722fe2383e06
  Author: Lakshay Kumar <lakshayk at nvidia.com>
  Date:   2025-04-28 (Mon, 28 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 fixed (#136868)

[llvm-exegesis][AArch64] Recommit: Disable pauth and ldgm as unsupported instructions.

Skipping AUT and LDGM opcode variants which currently throws "illegal
instruction".

Last pull request
[#132346](https://github.com/llvm/llvm-project/pull/132346) got reviewed
and merged but builder bot got failed. This was due to undefined
`PR_PAC_SET_ENABLED_KEYS` utilized were not defined in x86 arch,
resulting in build failure.

This is followup to merge the changes with following changes to fixup
the build failure.

Changes: 
- Fixed up the problem with arch specific check for `prctl` library
import
- Defining `PR_PAC_SET_ENABLED_KEYS` if undefined.


  Commit: cf17ee1d3a7ec78dbd922b3eb3944ac49cb78737
      https://github.com/llvm/llvm-project/commit/cf17ee1d3a7ec78dbd922b3eb3944ac49cb78737
  Author: Alexander Kornienko <alexfh at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/test/CodeGenCXX/nullptr.cpp

  Log Message:
  -----------
  [CodeGen] Fix handling of nullptr in initializers (#137364)

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


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

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/LoopVectorize/minimumnum-maximumnum-reductions.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/reduce-maximumnum-minimumnum.ll

  Log Message:
  -----------
  [IVDescriptors] Support reductions with minimumnum/maximumnum. (#137335)

Add a new reduction recurrence kind for reductions with
minimumnum/maximumnum. Such reductions can be vectorized without
nsz/nnans, same as reductions with maximum/minimum intrinsics.

Note that a new reduction kind is needed to make sure partial reductions
are also combined with minimumnum/maximumnum.

Note that the final reduction to a scalar value is performed with
vector.reduce.fmin/fmax. This should be fine, as the results of the
partial reductions with maximumnum/minimumnum silences any sNaNs.

In-loop and reductions in SLP are not supported yet, as there's no
reduction version of maximumnum/minimumnum yet and fmax may be
incorrect.

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


  Commit: dd87127f4e579d9c13480b40a79860d19a5891f1
      https://github.com/llvm/llvm-project/commit/dd87127f4e579d9c13480b40a79860d19a5891f1
  Author: John Brawn <john.brawn at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AArch64/bf16_fast_math.ll
    M llvm/test/CodeGen/AArch64/f16-instructions.ll
    M llvm/test/CodeGen/AArch64/fmla.ll
    M llvm/test/CodeGen/AArch64/fp16_fast_math.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    A llvm/test/CodeGen/ARM/bf16_fast_math.ll
    M llvm/test/CodeGen/ARM/fp16_fast_math.ll
    M llvm/test/CodeGen/Thumb2/bf16-instructions.ll

  Log Message:
  -----------
  [DAGCombiner] Eliminate fp casts if we have the right fast math flags (#131345)

When floating-point operations are legalized to operations of a higher
precision (e.g. f16 fadd being legalized to f32 fadd) then we get
narrowing then widening operations between each operation. With the
appropriate fast math flags (nnan ninf contract) we can eliminate these
casts.


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/test/CodeGen/AArch64/neon-mov.ll

  Log Message:
  -----------
  [LLVM][GlobalISel] Ensure G_{F}CONSTANT only store references to scalar Constant{Int,FP}. (#137319)


  Commit: 12a4ec6b1af8a50d31ee91093666e0fa455a4c35
      https://github.com/llvm/llvm-project/commit/12a4ec6b1af8a50d31ee91093666e0fa455a4c35
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaObjC.cpp

  Log Message:
  -----------
  [clang][NFC] Convert `Sema::FormatStringType` to scoped enum


  Commit: 73d90ec8257488deaf6cc9b00dc778b109d5dfc0
      https://github.com/llvm/llvm-project/commit/73d90ec8257488deaf6cc9b00dc778b109d5dfc0
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Consider non-profitable trees with only phis, gathers, splits and small nodes with reuses

Improves compile time for non-profitable cases.
Fixes #135965


  Commit: e086d7b1464ad091ae849cb907f8647c8439cb66
      https://github.com/llvm/llvm-project/commit/e086d7b1464ad091ae849cb907f8647c8439cb66
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Don't create function frames for builtin calls (#137607)

They don't have local variables etc. so don't create frames for them.


  Commit: 959905a5adca4dc697160f8cbab302fefe610034
      https://github.com/llvm/llvm-project/commit/959905a5adca4dc697160f8cbab302fefe610034
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/Opcodes.td

  Log Message:
  -----------
  [clang][bytecode] Don't create Function instances for builtins (#137618)

Now that we don't use them anymore in InterpBuiltin.cpp and we don't
create frames for them anymore anyway, just don't create Function
instances.


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

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/runtime-verification.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix memory leak in `runtime-verification.mlir` (#137591)

This fixes the test when running with ASAN.


  Commit: 1a32613dacac8de3f41be5e75ea1f70cba87dd0f
      https://github.com/llvm/llvm-project/commit/1a32613dacac8de3f41be5e75ea1f70cba87dd0f
  Author: David Stuttard <david.stuttard at amd.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.h
    M llvm/test/CodeGen/AMDGPU/amdpal-cs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-es.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-gs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-ls.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-vs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal.ll
    M llvm/test/CodeGen/AMDGPU/elf-notes.ll
    M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
    A llvm/test/CodeGen/AMDGPU/pal-metadata-3.6.ll
    M llvm/test/CodeGen/AMDGPU/wave_dispatch_regs.ll

  Log Message:
  -----------
  [AMDGPU] Update pal metadata for v3.6 and fix v3.0 (#135196)

Update entry_point for all pal versions below 3.6.
3.6 and above removes entry_point.


  Commit: 98b895da30c03b7061b8740d91c0e7998e69d091
      https://github.com/llvm/llvm-project/commit/98b895da30c03b7061b8740d91c0e7998e69d091
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp

  Log Message:
  -----------
  [SystemZ] Fix compile time regression in adjustInliningThreshold(). (#137527)

Instead of always iterating over all GlobalVariable:s in the Module to
find the case where both Caller and Callee is using the same GV heavily,
first scan Callee (only if less than 200 instructions) for all GVs used
more than 10 times, and then do the counting for the Caller for just
those relevant GVs.

The limit of 200 instructions makes sense as this aims to inline a
relatively small function using a GV +10 times. 

This resolves the compile time problem with zig where it is on main
(compared to removing the heuristic) a 380% increase, but with this
change <0.5% increase (total user compile time with opt).

Fixes #134714.


  Commit: abfb2ce2f57fc02e222936aeb602681add752d9b
      https://github.com/llvm/llvm-project/commit/abfb2ce2f57fc02e222936aeb602681add752d9b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [OpenACC][NFCI] Implement 'helpers' for all of the clauses I've used so far (#137396)

As a follow up to 3c4dff3ac6884b85fe93fe512c5bdaf014738c45 I audited all
uses of 'process clause and use additive methods', and added explicit
functions to the construct to make it easier for the next project to
attempt to use this mechanism (vs construct all operands/etc in advance,
then add all at once).

I've only done ones that I have attempted to use so far(as a catch-up,
so no var-list clauses, and no constructs that can't be used without a
var-list, and no loop, and no compound constructs). I intend to do those
"as I go" with the lowering of each of those things instead.

---------

Co-authored-by: Andy Kaylor <akaylor at nvidia.com>


  Commit: 642453c6bab896f792fa86a61837ea32ae46ae48
      https://github.com/llvm/llvm-project/commit/642453c6bab896f792fa86a61837ea32ae46ae48
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP] Mark atomic clauses as unique (#137460)

The current implementation of the ATOMIC construct handles these clauses
individually, and this change does not have an observable effect. At the
same time these clauses are unique as per the OpenMP spec, and this
patch reflects that in the OMP.td file.


  Commit: 357090851945472b0be82b4364f4b0c6e76ca4c8
      https://github.com/llvm/llvm-project/commit/357090851945472b0be82b4364f4b0c6e76ca4c8
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/flat-offset-bug.ll
    M llvm/test/CodeGen/AMDGPU/lds-misaligned-bug.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.dec.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.inc.ll
    M llvm/test/CodeGen/AMDGPU/load-select-ptr.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
    M llvm/test/CodeGen/AMDGPU/si-triv-disjoint-mem-access.ll
    M llvm/test/CodeGen/AMDGPU/waitcnt-vscnt.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Auto generate check lines for some codegen tests (#137534)

Make preparation for #137488.


  Commit: 064f9d03f23597495953f080d9aee415b0aab2e7
      https://github.com/llvm/llvm-project/commit/064f9d03f23597495953f080d9aee415b0aab2e7
  Author: jyli0116 <yu.li at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/test/CodeGen/AArch64/targetattr.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a510.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a710.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a715.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a725.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x2.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x4.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x925.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-512tvb.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n2.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3ae.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M llvm/lib/Target/AArch64/AArch64Processors.td

  Log Message:
  -----------
  [AArch64] Add FEAT_FPAC to supported CPUs (#137330)

Added FEAT_FPAC onto supported AArch64 CPUs which don't have it under
the processor description.


  Commit: ba420d8122239592a1fb7ad6efd2c186aecfdef5
      https://github.com/llvm/llvm-project/commit/ba420d8122239592a1fb7ad6efd2c186aecfdef5
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.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/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Transforms/Utils/LowerAtomic.cpp
    M llvm/test/Assembler/atomic.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/InstCombine/atomicrmw.ll
    M llvm/test/Transforms/LowerAtomic/atomic-load.ll

  Log Message:
  -----------
  [llvm] Add support for llvm IR atomicrmw fminimum/fmaximum instructions (#136759)

This patch adds support for LLVM IR atomicrmw `fmaximum` and `fminimum`
instructions.

These mirror the `llvm.maximum.*` and `llvm.minimum.*` instructions, but
are atomic and use IEEE754 2019 handling for NaNs, which is different to
`fmax` and `fmin`. See:
     https://llvm.org/docs/LangRef.html#llvm-minimum-intrinsic
for more details.

Future changes will allow this LLVM IR to be lowered to specialised
assembler instructions on suitable targets, such as AArch64.


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

  Changed paths:
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Preamble.h
    M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
    M clang-tools-extra/modularize/ModularizeUtilities.cpp
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/ChainedIncludesSource.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/tools/clang-import-test/clang-import-test.cpp
    M clang/unittests/Analysis/MacroExpansionContextTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/CodeGen/TestCompiler.h
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Lex/HeaderSearchTest.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 lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [clang] Hide the `TargetOptions` pointer from `CompilerInvocation` (#106271)

This PR hides the reference-counted pointer that holds `TargetOptions`
from the public API of `CompilerInvocation`. This gives
`CompilerInvocation` an exclusive control over the lifetime of this
member, which will eventually be leveraged to implement a copy-on-write
behavior.

There are two clients that currently share ownership of that pointer:

* `TargetInfo` - This was refactored to hold a non-owning reference to
`TargetOptions`. The options object is typically owned by the
`CompilerInvocation` or by the new `CompilerInstance::AuxTargetOpts` for
the auxiliary target. This needed a bit of care in `ASTUnit::Parse()` to
keep the `CompilerInvocation` alive.
* `clangd::PreambleData` - This was refactored to exclusively own the
`TargetOptions` that get moved out of the `CompilerInvocation`.


  Commit: 258e1438c23c20cfe5c4908633401ab0adf4a364
      https://github.com/llvm/llvm-project/commit/258e1438c23c20cfe5c4908633401ab0adf4a364
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    A clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt

  Log Message:
  -----------
  [OpenACC][CIR][NFC] Refactor to move 'loop' emit into its own file

The 'loop' emit for OpenACC is particularly complicated/involved, so it
makes sense to be in its own file. This patch splits it out into its own
file, as well as the clause emitter code (as loop is going to require
    that).


  Commit: 3f46af98caa2d0c3b8dcde02f0cc08fde03376c9
      https://github.com/llvm/llvm-project/commit/3f46af98caa2d0c3b8dcde02f0cc08fde03376c9
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll

  Log Message:
  -----------
  [RISCV] Support Push/Pop with Xqci (#134191)

The `qc.c.mienter` and `qc.c.mienter.nest` instructions, broadly only
save the argument and temporary registers. The exceptions are that they
also save `fp` (`s0`) to construct a frame chain from the signal handler
to the frame below, and they also save `ra`. They are designed this way
so that (if needed) push and pop instructions can be used to save the
callee-saved registers.

This patch implements this optimisation, constructing the following
rather than a long sequence of `sw` and `lw` instructions for saving the
callee-saved registers:

```asm
  qc.c.mienter
  qc.cm.push {ra, s0-sN}, -M
  ...
  qc.cm.pop {ra, s0-sN}, M
  qc.c.mileaveret
```

There are some carefully-worked-out details here, especially around CFI
information. For any register saved by both `qc.c.mienter(.nest)` and
the push (which is `ra` and `s0` at most), we point the CFI information
at the version saved by `qc.c.mienter(.nest)`. This ensures the CFI
points at the same `fp` copy as a frame pointer unwinder would find.


  Commit: 343c784f18bb244242bcfd5bcff00daf197537a4
      https://github.com/llvm/llvm-project/commit/343c784f18bb244242bcfd5bcff00daf197537a4
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    A llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_promote.s
    R llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err-fake16.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_promote.s
    R llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err-fake16.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s

  Log Message:
  -----------
  [AMDGPU][True16][MC] add fake16 error and promote test (#135984)

This is a NFC patch.

Added error and promote test for fake16 flow. This includes two part:
1. "*vop1_t16_err-fake16.s" is renamed to "*vop1_fake16_err.s"
2. added missing "fake16-promote.s" and other "*fake16_err.s" files

These tests are about promoting the instruction encoding to 64 bits if
the used registers are not encodable in the 32-bit form.


  Commit: 6b973f2baf66b05397d6caff3f29dbefabd5a214
      https://github.com/llvm/llvm-project/commit/6b973f2baf66b05397d6caff3f29dbefabd5a214
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h

  Log Message:
  -----------
  [clang] Remove FEM_Indeterminable (#137247)

Remove FEM_Indeterminable as it is unused and cannot be stored safely in
an unsigned bitfield


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

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/pack-dynamic-inner-tile.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix memory leak in `pack-dynamic-inner-tile.mlir` (#137589)

This fixes the test when running with ASAN.


  Commit: 1b5cd1dfb3b9597a2a04f25e04143f218ebf5459
      https://github.com/llvm/llvm-project/commit/1b5cd1dfb3b9597a2a04f25e04143f218ebf5459
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/nested-simd.f90

  Log Message:
  -----------
  [Flang][OpenMP] Permit loop construct in simd regions (#137020)

Simdizable constructs are permitted in a simd region. The loop construct
is a simdizable construct.

Also fixes the TODO corresponding to this.


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

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_index_dense.mlir

  Log Message:
  -----------
  [mlir][sparse_tensor] Fix memory leak in `sparse_index_dense.mlir` (#137454)


  Commit: a6f4a54891979c7c6d3c9e01598827da8b413f4f
      https://github.com/llvm/llvm-project/commit/a6f4a54891979c7c6d3c9e01598827da8b413f4f
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp

  Log Message:
  -----------
  [Clang][NFC] Const correctness fix for range based for loop (#137431)

Static analysis flagged that we did not make const a item declaration
b/c we did not modify it all during the loop.


  Commit: d7e631c7cd6d9c13b9519991ec6becf08bc6b8aa
      https://github.com/llvm/llvm-project/commit/d7e631c7cd6d9c13b9519991ec6becf08bc6b8aa
  Author: Jan Górski <jan.a.gorski at wp.pl>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/test/CodeGen/RISCV/atomic-load-zext.ll

  Log Message:
  -----------
  [RISCV] Remove `AND` mask generated by `( zext  ( atomic_load ) )` by replacing the load with `zextload` for orderings not stronger then monotonic. (#136502)

Extends changes from
[ff687af](https://github.com/llvm/llvm-project/commit/ff687af04f5b0e85305250587b524cb0b3849aa0).
Fixes https://github.com/llvm/llvm-project/issues/131476.

This patch adds a DAG combine to replace an `AND` of an `ATOMIC_LOAD`
with a full-bit mask (e.g. `0xFF`, `0xFFFF`, etc.) which is generated as
a result of `(zext (atomic_load))`, by a zero-extended load, provided
the atomic operation is monotonic or weaker.


  Commit: c52fdbe697eb0eee2484c5bf1aeb17d678430830
      https://github.com/llvm/llvm-project/commit/c52fdbe697eb0eee2484c5bf1aeb17d678430830
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix ia32_addcarry/subborrow (#137642)

RHS is followed by another Pointer.


  Commit: 41ab76bf0aafb35d6d023429560b44637dfb8de6
      https://github.com/llvm/llvm-project/commit/41ab76bf0aafb35d6d023429560b44637dfb8de6
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/DNBTimer.h

  Log Message:
  -----------
  Revert "[debugserver] Migrate DNBTimer away from PThreadMutex (NFC) (#137540)"

This reverts commit ae71055e6664caf7f74f2e21fb76513bef22a099.


  Commit: f8724bd873878df81720bdec8b7a9a24f2a40a03
      https://github.com/llvm/llvm-project/commit/f8724bd873878df81720bdec8b7a9a24f2a40a03
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/records.cpp

  Log Message:
  -----------
  [clang][bytecode] Check live-ness when calling dtors (#137645)

We can't call a destructor on a dead pointer.


  Commit: ac40bc7d5f52db38fa3cbb9e2599dd4272dc2409
      https://github.com/llvm/llvm-project/commit/ac40bc7d5f52db38fa3cbb9e2599dd4272dc2409
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h

  Log Message:
  -----------
  Revert "[clang] Remove FEM_Indeterminable" (#137654)

Reverts llvm/llvm-project#137247


  Commit: 7ee0097b486b31be8b9a1750b2cd47580efd9587
      https://github.com/llvm/llvm-project/commit/7ee0097b486b31be8b9a1750b2cd47580efd9587
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.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/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Transforms/Utils/LowerAtomic.cpp
    M llvm/test/Assembler/atomic.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/InstCombine/atomicrmw.ll
    M llvm/test/Transforms/LowerAtomic/atomic-load.ll

  Log Message:
  -----------
  Revert "[llvm] Add support for llvm IR atomicrmw fminimum/fmaximum instructions" (#137657)

Reverts llvm/llvm-project#136759 due to bad interaction with c792b25e4


  Commit: 0cd20537c697672bf0e7789b19bac63eb04f50f8
      https://github.com/llvm/llvm-project/commit/0cd20537c697672bf0e7789b19bac63eb04f50f8
  Author: Victor Lomuller <victor at codeplay.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    A llvm/test/CodeGen/SPIRV/extensions/unused-but-allowed-SPV_INTEL_arbitrary_precision_integers.ll

  Log Message:
  -----------
  [SPIRV] Stop unconditionally emitting SPV_INTEL_arbitrary_precision_integers when allowed (#137167)

When the SPV_INTEL_arbitrary_precision_integers extension is allowed to
be used, the backend will unconditionnally add it to the module used
extensions.

The patch prevent SPV_INTEL_arbitrary_precision_integers from being
declared if unneeded.


  Commit: 76d83e62508548b5f43baa482f74d24886efb763
      https://github.com/llvm/llvm-project/commit/76d83e62508548b5f43baa482f74d24886efb763
  Author: Victor Lomuller <victor at codeplay.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/test/CodeGen/SPIRV/transcoding/OpGenericCastToPtr.ll

  Log Message:
  -----------
  [SPIRV] Correctly map OpGenericCastToPtrExplicit builtins (#137189)

The __spirv_GenericCastToPtrExplicit_To* builtins and its equivalent
OpenCL builtins (to_global, to_local and to_private) were mapped to
OpGenericCastToPtr instead of OpGenericCastToPtrExplicit.

The patch now uses OpGenericCastToPtrExplicit for these builtins.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/Mips/MicroMipsInstrInfo.td
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrP10.td
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/Sparc/SparcInstr64Bit.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/VE/VEInstrInfo.td
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
    M llvm/lib/Target/X86/X86InstrCompiler.td

  Log Message:
  -----------
  [Targets] Migrate from atomic_load_8/16/32/64 to atomic_load_nonext_8/16/32/64. NFC (#137428)

This makes them more consistent with the checks performed by regular loads. We can't simply add IsNonExtLoad to the existing atomic_load_8/16/32/64 as that would affect out of tree targets.


  Commit: 0d567994570becad7022524bfb50b78b03c04ced
      https://github.com/llvm/llvm-project/commit/0d567994570becad7022524bfb50b78b03c04ced
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp

  Log Message:
  -----------
  [SPIRV] Use the range constructor of SmallPtrSet (NFC) (#137583)


  Commit: 044ff78adcf6e5c6848ea8a8bb9dec2f4a32066c
      https://github.com/llvm/llvm-project/commit/044ff78adcf6e5c6848ea8a8bb9dec2f4a32066c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [TableGen] Simplify a string comparison (NFC) (#137584)


  Commit: 9f2bcc7a663dc36c3cd0b3d6c3616d9661a03c0f
      https://github.com/llvm/llvm-project/commit/9f2bcc7a663dc36c3cd0b3d6c3616d9661a03c0f
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/DNBTimer.h

  Log Message:
  -----------
  [debugserver] Migrate DNBTimer away from PThreadMutex (NFC) (#137540)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
DNBTimer away from that class in preparation for removing PThreadMutex.


  Commit: 2b57ebb50b6d418e70382e655feaa619b558e254
      https://github.com/llvm/llvm-project/commit/2b57ebb50b6d418e70382e655feaa619b558e254
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M libcxx/utils/ci/Dockerfile

  Log Message:
  -----------
  [libc++][CI] Improves updating Docker image. (#134497)

This makes it easier to build a new Docker image in the CI. Since the
new image is not used automatically it's safe to commit these changes
directly to main. Then use a PR to test the new image.


  Commit: b25b51eb639da2e726c95bef00409e0d3913435d
      https://github.com/llvm/llvm-project/commit/b25b51eb639da2e726c95bef00409e0d3913435d
  Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fptosi-sat-vector-128.ll
    M llvm/test/CodeGen/X86/fptoui-sat-vector-128.ll
    M llvm/test/CodeGen/X86/mmx-fold-zero.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll

  Log Message:
  -----------
  [InlineSpiller] Check rematerialization before folding operand (#134015)

Current implementation tries to fold the operand before
rematerialization because it can reduce one register usage. But if there
is a physical register available we can still rematerialize it without
causing high register pressure.

This patch do this check to find the better choice. Then we can produce

    xorps %xmm1, %xmm1
    ucomiss %xmm1, %xmm0

instead of 

    ucomiss LCPI0_1(%rip), %xmm0


  Commit: e44f7760fa6f9f2d70831a6e9bf9f8472d285f4d
      https://github.com/llvm/llvm-project/commit/e44f7760fa6f9f2d70831a6e9bf9f8472d285f4d
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp

  Log Message:
  -----------
  [CIR][NFC] Fix an unused variable warning (#137466)

This fixes a warning where a variable assigned in 'if' statement wasn't referenced again.


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

  Changed paths:
    M lld/MachO/InputFiles.cpp
    A lld/test/MachO/reexport-with-rpath.s

  Log Message:
  -----------
  [lld-macho]Fix bug in finding "chained" re-exported libs. (#135241)

Details:
When we have the following scenario:

- lib_a re-exports lib_b
- lib_b re-exports @rpath/lib_c
  + lib_b contains LC_RPATH

Previously, lld-macho cannot find lib_c because it was attempting to
resolve the '@rpath' from lib_b (which had no LC_RPATH defined). The
change here is to also consider all the LC_RPATH rom lib_b when trying
to find lib_c.

Inspired by real-life example when linking with
libXCTestSwiftSupport.dylib (which re-exports XCTest, which re-exports
XCTestCore)


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

  Changed paths:
    M lld/test/MachO/reexport-with-rpath.s

  Log Message:
  -----------
  [lld-macho]Added missing commit from PR/135241 (#137672)


  Commit: 4e4c6d7e273a91d230389b98c280c9dbde0f6c32
      https://github.com/llvm/llvm-project/commit/4e4c6d7e273a91d230389b98c280c9dbde0f6c32
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/source/Core/FormatEntity.cpp

  Log Message:
  -----------
  [lldb/Format] Make progress count show thousands separators (NFC) (#137446)

This patch changes the progress count formatting show thousands
separator making it easier to read big numbers.

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


  Commit: acaf403c6397dc0fcd8f0988bd057b4d5ee2460f
      https://github.com/llvm/llvm-project/commit/acaf403c6397dc0fcd8f0988bd057b4d5ee2460f
  Author: Krzysztof Pszeniczny <kpszeniczny at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp

  Log Message:
  -----------
  [SampleProfile] Fix UB in Demangler invocation. (#137659)

Currently the backing buffer of a `std::vector<char>` is passed[1] to
`Demangler.getFunctionBaseName`. However, deeply inside the call stack
`OutputBuffer::grow` will call[2] `std::realloc` if it needs to grow the
buffer, leading to UB.

The demangler APIs specify[3] that "`Buf` and `N` behave like the second
and third parameters to `__cxa_demangle`" and the docs for the latter
say[4] that the output buffer must be allocated with `malloc` (but can
also be `NULL` and will then be realloced accordingly).

Note: PR #135863 changed this from a stack array to a `std::vector` and
increased the size to 65K, but this can still lead to a crash if the
demangled name is longer than that - yes, I'm surprised that a >65K-long
function name happens in practice...

[1]:
https://github.com/llvm/llvm-project/blob/d7e631c7cd6d9c13b9519991ec6becf08bc6b8aa/llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp#L744
[2]:
https://github.com/llvm/llvm-project/blob/d7e631c7cd6d9c13b9519991ec6becf08bc6b8aa/llvm/include/llvm/Demangle/Utility.h#L50
[3]:
https://github.com/llvm/llvm-project/blob/d7e631c7cd6d9c13b9519991ec6becf08bc6b8aa/llvm/include/llvm/Demangle/Demangle.h#L92-L93
[4]:
https://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.3/a01696.html


  Commit: 46fd2b94affdb4727a2a0757d3de269989428df0
      https://github.com/llvm/llvm-project/commit/46fd2b94affdb4727a2a0757d3de269989428df0
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/source/PThreadEvent.cpp
    M lldb/tools/debugserver/source/PThreadEvent.h

  Log Message:
  -----------
  [debugserver] Migrate PThreadEvent away from PThreadMutex (NFC) (#137554)

The debugserver code predates modern C++, but with C++11 and later
there's no need to have something like PThreadMutex. This migrates
PThreadEvent away from PThreadMutex in preparation for removing it.


  Commit: 64737ceb9a2060db940e4562fe04887e73f7a65c
      https://github.com/llvm/llvm-project/commit/64737ceb9a2060db940e4562fe04887e73f7a65c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Bump the version to 0.2.12


  Commit: 561a21f18c7a58e04e83a342f5e4c3afc585700c
      https://github.com/llvm/llvm-project/commit/561a21f18c7a58e04e83a342f5e4c3afc585700c
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    A clang/test/CodeGenHLSL/builtins/clamp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    A clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf.hlsl
    A clang/test/CodeGenHLSL/builtins/max-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    A clang/test/CodeGenHLSL/builtins/min-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl

  Log Message:
  -----------
  [HLSL] Put tests for compatibility overloads for 'clamp', 'isinf', 'min', and 'max' in own files (#137004)

Put tests for compatibility overloads for 'clamp', 'isinf', 'min', and
'max' in own files which guarantee hlsl version 202x.
Closes #133277


  Commit: 45411ac8953e61513bfe7767dc0fb34356f1fc33
      https://github.com/llvm/llvm-project/commit/45411ac8953e61513bfe7767dc0fb34356f1fc33
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid diagnosing std::array initializations for modernize-use-designated-initializers (#134774)

**Edit:**
I suggest we avoid diagnosing initializers for `std::array` type. The
fixit provided is incorrect as observed in **#133715.** The only
workaround would require C99-style array designators which don’t really
align with the purpose of this check. This would also generate extra
compiler warnings.

Fixes #133715


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

  Changed paths:
    M llvm/lib/ProfileData/MemProf.cpp

  Log Message:
  -----------
  [MemProf][NFC] Hoist size computation out of the loop for v3 (#137479)

Similar to the suggestion in #137394. In this case apply it to the current binary format (v3).


  Commit: 9d77a3fa1a4a68a533090266662863d32e9d5717
      https://github.com/llvm/llvm-project/commit/9d77a3fa1a4a68a533090266662863d32e9d5717
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/debugserver/debugserver.xcodeproj/project.pbxproj
    M lldb/tools/debugserver/source/CMakeLists.txt
    M lldb/tools/debugserver/source/DNB.cpp
    M lldb/tools/debugserver/source/DNBError.cpp
    M lldb/tools/debugserver/source/DNBTimer.h
    M lldb/tools/debugserver/source/MacOSX/MachException.cpp
    M lldb/tools/debugserver/source/MacOSX/MachException.h
    M lldb/tools/debugserver/source/MacOSX/MachTask.h
    R lldb/tools/debugserver/source/PThreadMutex.cpp
    R lldb/tools/debugserver/source/PThreadMutex.h

  Log Message:
  -----------
  [debugserver] Remove PThreadMutex (NFC) (#137555)

Now that all uses of PThreadMutex have been migrated to their C++
equivalent, this PR removes PThreadMutex itself.


  Commit: 6d7edbb59dfa267ea33a1acf8e3c9785084b2d52
      https://github.com/llvm/llvm-project/commit/6d7edbb59dfa267ea33a1acf8e3c9785084b2d52
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/RegAllocPBQP.h

  Log Message:
  -----------
  Revert "[CodeGen] Use OwningArrayRef in NodeMetadata (NFC)" (#137684)

Reverts llvm/llvm-project#137539

This breaks the MSan buildbot. Please either fix the build or merge this
revert.


  Commit: 0193a04ce106d5bfb99679ac4023b9ad5ff87c8a
      https://github.com/llvm/llvm-project/commit/0193a04ce106d5bfb99679ac4023b9ad5ff87c8a
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp

  Log Message:
  -----------
  stage


  Commit: efd46bc1efb18180366798134164dc9f87a6c79d
      https://github.com/llvm/llvm-project/commit/efd46bc1efb18180366798134164dc9f87a6c79d
  Author: Douglas <Douglas.Gliner at sony.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/test/CodeGen/lifetime-sanitizer.c
    M clang/test/CodeGenCXX/lifetime-sanitizer.cpp

  Log Message:
  -----------
  [sanitizer] Allow use-after-scope front-end argument to take effect with -fsanitize=kernel-address (#137015)

Allow `-f[no]-sanitize-address-use-after-scope` to take effect under
kernel-address sanitizer (`-fsanitize=kernel-address`). `use-after-scope` is
now enabled by default under kernel-address sanitizer.

Previously, users may have enabled `use-after-scope` checks for kernel-address
sanitizer via `-mllvm -asan-use-after-scope=true`. While this may have worked
for optimization levels > O0, the required lifetime intrinsics to allow for
`use-after-scope` detection were not emitted under O0. This commit ensures
the required lifetime intrinsics are emitted under O0 with kernel-address
sanitizer.


  Commit: 043b04acff53f3c3b2dd0d6eeb8c2127a229ac72
      https://github.com/llvm/llvm-project/commit/043b04acff53f3c3b2dd0d6eeb8c2127a229ac72
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-28 (Mon, 28 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/early_exit_costs.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/masked-op-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    A llvm/test/Transforms/LoopVectorize/X86/cost-model-i386.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
    M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr55096-scalarize-add.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
    M llvm/test/Transforms/LoopVectorize/if-reduction.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/loop-form.ll
    M llvm/test/Transforms/LoopVectorize/outer-loop-inner-latch-successors.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/select-reduction-start-value-may-be-undef-or-poison.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll

  Log Message:
  -----------
  Reapply "[VPlan] Fold NOT into predicate of wide compares." (#130347)

This reverts commit 8dd160f4767f971572eac065c8650d9202ff5bf9.

The recommit contains an adjustment to planContainsAdditionalSimplifications,
which considers changes to the original predicate for compares.

Original commit message:

Add simplification to fold negation into a compare, if the negation is
the only user of the compare. This removes a number of redundant
negations.

Alive2 Proofs for FPCMP test changes:  https://alive2.llvm.org/ce/z/WGDz9U

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


  Commit: abec9ff47da4fd8b614d0338203b2e3663c36aaf
      https://github.com/llvm/llvm-project/commit/abec9ff47da4fd8b614d0338203b2e3663c36aaf
  Author: Sirish Pande <sirpande at amd.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/ScopedNoAliasAA.h
    M llvm/lib/Analysis/ScopedNoAliasAA.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/test/CodeGen/AMDGPU/lower-kernel-and-module-lds.ll
    M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-merge.ll
    A llvm/test/CodeGen/AMDGPU/lower-lds-with-alias-scope.ll
    A llvm/test/CodeGen/AMDGPU/lower-lds-with-noalias.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-single-var-unambiguous.ll

  Log Message:
  -----------
  [AMDGPU] Correctly merge noalias scopes during lowering of LDS data. (#131664)

Currently, if there is already noalias metadata present on loads and
stores, lower module lds pass is generating a more conservative aliasing
set. This results in inhibiting scheduling intrinsics that would have
otherwise generated a better pipelined instruction.

The fix is not to always intersect already existing noalias metadata
with noalias created for lowering of LDS. But to intersect only if
noalias scopes are from the same domain, otherwise concatenate exising
noalias sets with LDS noalias.

There a few patches that have come for scopedAA in the past. Following
three should be enough background information.
https://reviews.llvm.org/D91576
https://reviews.llvm.org/D108315
https://reviews.llvm.org/D110049

Essentially, after a pass that might change aliasing info, one should
check if that pass results in change number of MayAlias or ModRef using
the following:
`opt -S -aa-pipeline=basic-aa,scoped-noalias-aa -passes=aa-eval
-evaluate-aa-metadata -print-all-alias-modref-info -disable-output`


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

  Changed paths:
    M libc/include/assert.h.def

  Log Message:
  -----------
  [libc] Update assert for C23 (#137402)

Previously the assert macro took one argument named "e", but this led to
possible errors if the caller had commas in their input. C23 changed the
definition of assert to use `__VA_ARGS__` to ensure comma cases are
handled properly. This patch doesn't introduce the enforcement function
mentioned in the standard update, though that may be done in a followup.

Fixes #136184


  Commit: 95795ab7dc3029e64e0a0a7893b95f4bfab667f1
      https://github.com/llvm/llvm-project/commit/95795ab7dc3029e64e0a0a7893b95f4bfab667f1
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/Linker/IRMover.cpp

  Log Message:
  -----------
  Linker: Remove dropTriviallyDeadConstantArrays().

By calling this function after every link, we introduce quadratic
behavior during full LTO links that primarily affects links involving
large numbers of constant arrays, such as the full LTO part of a
ThinLTO link which will involve large numbers of vtable constants.
Removing this call resulted in a 1.3x speedup in the indexing phase
of a large internal Google binary.

This call was originally introduced to reduce memory consumption during
full LTO (see commit dab999d54f39af3ebb6a23e850dbc9742016fac8), but it
doesn't seem to be the case that this helps any more. I ran 3 stage2
links of clang with full LTO and ThinLTO with and without this change
and measured the max RSS. The results were as follows (all in KB):

```
FullLTO before 22362512 22383524 22387456
         after 22383496 22365356 22364352
ThinLTO before  4391404  4478192  4383468
         after  4399220  4363100  4417688
```

As you can see, any max RSS differences are in the noise.

Reviewers: nikic, teresajohnson

Reviewed By: teresajohnson, nikic

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


  Commit: f9ee5ce605f94d905d3112fd0923a5fd23e48dd3
      https://github.com/llvm/llvm-project/commit/f9ee5ce605f94d905d3112fd0923a5fd23e48dd3
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h

  Log Message:
  -----------
  [clang][SPIR-V] Fix OpenCL addrspace mapping when using non-zero default AS (#137187)

Based on feedback from https://github.com/llvm/llvm-project/pull/136753,
remove the dummy values for OpenCL and make them match the zero default
AS map.

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


  Commit: 882bae9f430e7d70246145839d41d95e40a7319a
      https://github.com/llvm/llvm-project/commit/882bae9f430e7d70246145839d41d95e40a7319a
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/test/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/include/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/complex/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Make top section of BUILD.bazel files more uniform. (#137689)

Make sure all BUILD.bazel files under llvm-libc are specifying
package-level default_visibility and licenses.

Add top-level license notice and comment to new BUILD.bazel for
complex.h functions.


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

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

  Log Message:
  -----------
  [clang] Make the `AnalyzerOptions` reference count non-intrusive (#137680)

This PR makes `CompilerInvocation` the sole owner of the
`AnalyzerOptions` instance. Clients can no longer become co-owners by
doing something like this:

```c++
void shareOwnership(CompilerInvocation &CI) {
  IntrusiveRefCntPtr Shared = &CI.getAnalyzerOpts();
}
```

The motivation for this is given here:
https://github.com/llvm/llvm-project/pull/133467#issuecomment-2762065443


  Commit: c8b3d79961834e62e15e8350cb35a5bd7fafae50
      https://github.com/llvm/llvm-project/commit/c8b3d79961834e62e15e8350cb35a5bd7fafae50
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    A llvm/test/CodeGen/DirectX/metadata-stripping.ll

  Log Message:
  -----------
  [DXIL] Remove incompatible metadata types when preparing DXIL. (#136386)

This PR introduces a Metadata Node Kind allowlist. The purpose is to
prevent newer Metadata Node Kinds to be used and inserted into the
outputted DXIL module. Only the metadata kinds that are accepted in the
DXIL Validator are on the allowlist. The Github DXC validator doesn't
support these newer Metadata Node Kinds, so we need to filter them out.

We introduce this restrictive allowlist into LLVM and strip all metadata
that isn't found in the list.

The accompanying test would add the `llvm.loop.mustprogress` metadata
node kind, but thanks to the allowlist, filters it out, and so the
whitelist is proven to work.
The test also has two separate metadata kinds that are on the allowlist,
and remain after the DXIL Prepare pass.


  Commit: cd116ee29e3f9e449f544de73769c0d8b8c0da94
      https://github.com/llvm/llvm-project/commit/cd116ee29e3f9e449f544de73769c0d8b8c0da94
  Author: ivangarcia44 <36650061+ivangarcia44 at users.noreply.github.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td

  Log Message:
  -----------
  Add examples for reinterpret_cast and subview operators to show their behavior in relation to their input memref underlying memory and view (#135244)

While working on #134845 I was trying to understand the difference of
how the reinterpret_cast and subview operators see the input memref, but
it was not clear to me.

I did a couple of experiments in which I learned that the subview takes
into account the view of the input memref to create the view of the
output memref, while the reinterpret_cast just uses the underlying
memory of the input memref.

I thought it would help future readers to see these two experiements as
examples in the documentation to quickly figure out the difference
between these two operators.

@matthias-springer
@joker-eph
@sahas3
@Hanumanth04
@dixinzhou
@rafaelubalmw

---------

Co-authored-by: Ivan Garcia <igarcia at vdi-ah2ddp-178.dhcp.mathworks.com>


  Commit: 31bd7a507152555ddb9dc4a90532d4f06b00ca8f
      https://github.com/llvm/llvm-project/commit/31bd7a507152555ddb9dc4a90532d4f06b00ca8f
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/sifive-interrupt-attr.ll

  Log Message:
  -----------
  [RISCV] XFAIL SiFive Interrupt Test


  Commit: 82a1d5078d3e3a1dff70601f8817c220a1f453ab
      https://github.com/llvm/llvm-project/commit/82a1d5078d3e3a1dff70601f8817c220a1f453ab
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.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] Add dense math half-precision floating-point outer-product accumulate to DMR instructions (#133272)

This patch adds the following Dense Math Facility 16-bit half-precision
floating-point calculation instructions: dmxvf16gerx2, dmxvf16gerx2pp,
dmxvf16gerx2pn, dmxvf16gerx2np, dmxvf16gerx2nn, pmdmxvf16gerx2,
pmdmxvf16gerx2pp, pmdmxvf16gerx2pn, pmdmxvf16gerx2np, pmdmxvf16gerx2nn,
along with their corresponding intrinsics and tests.


  Commit: 86b7ce949779a6b4809bcc4b73e41abb1f3aabfa
      https://github.com/llvm/llvm-project/commit/86b7ce949779a6b4809bcc4b73e41abb1f3aabfa
  Author: David Green <david.green at arm.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/test/Analysis/CostModel/RISCV/shuffle-interleave.ll

  Log Message:
  -----------
  [CostModel] Remove some negative costs. (#135533)

The cost model in the past returned -1 for unknown costs, but over time
this has largely been removed. This cleans up some of the uses that have
remained. It uses 0/free for the cost of an insert and 1/basic for the
cost of anything that is unknown.


  Commit: dfdc50be8e5dcc2fb574d530e95420540200cc19
      https://github.com/llvm/llvm-project/commit/dfdc50be8e5dcc2fb574d530e95420540200cc19
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [mlir][acc] Remove declare attribute verification (#137676)

The part that verifies the declare attributes are preserved in the
verifier can fail easily during the FIR lowering pipeline. For example,
during FIR lowering to FIRCG, fir.declare can be removed. Thus, any
fir.declare that has acc.declare attributes will cause a verifier
failure. Since the declare attribute only existed to simplify the effort
of locating acc declare enter and exit points, which can be easily
replaced by a def-use chain traversal, we are considering removing the
verification of declare attributes in this MR.

Example:

```  
%1 = fir.alloca !fir.array<10xf32> {bindc_name = "arr", uniq_name = "_QMmmFsubEarr"}                                                                                                                                  
%2 = fir.shape %c10 : (index) -> !fir.shape<1>
%3 = fir.declare %1(%2) {acc.declare = #acc.declare<dataClause =  acc_create>, uniq_name = "_QMmmFsubEarr"} : (!fir.ref<!fir.array<10xf32>>, !fir.shape<1>) -> !fir.ref<!fir.array<10xf32>>
%4 = acc.create varPtr(%3 : !fir.ref<!fir.array<10xf32>>) -> !fir.ref<!fir.array<10xf32>> {name = "arr"}
%5 = acc.declare_enter dataOperands(%4 : !fir.ref<!fir.array<10xf32>>) 
```

the acc.declare_enter itself is enough to identify when the data region
starts.


  Commit: 9ea5254f77ae5d5fe8e81f8e39b5d461cc95e9dc
      https://github.com/llvm/llvm-project/commit/9ea5254f77ae5d5fe8e81f8e39b5d461cc95e9dc
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [flang][OpenACC][OpenMP] Separate implementations of ATOMIC constructs (#137517)

The OpenMP implementation of the ATOMIC construct will change in the
near future to accommodate atomic conditional-update and conditional-
update-capture operations. This patch separates the shared implemen-
tations to avoid interfering with OpenACC.


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

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/AST/HLSL/PackedStruct.hlsl
    M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
    M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BoolVector.hlsl
    M clang/test/CodeGenHLSL/builtins/AppendStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/ConsumeStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/cbuffer.hlsl
    M clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl
    M clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/sret_output.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl

  Log Message:
  -----------
  [HLSL] Treat classes and structs as packed by default (#137391)

Fixes #121010.


  Commit: 59978b21ad9c65276ee8e14f26759691b8a65763
      https://github.com/llvm/llvm-project/commit/59978b21ad9c65276ee8e14f26759691b8a65763
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h

  Log Message:
  -----------
  [sanitizer_common] Remove interceptors for deprecated struct termio (#137403)

This struct will be removed from glibc-2.42 and has been deprecated for
a very long time.

Fixes #137321


  Commit: e12ff331f14c766904c930054bcc94527f220212
      https://github.com/llvm/llvm-project/commit/e12ff331f14c766904c930054bcc94527f220212
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp

  Log Message:
  -----------
  [CIR] Standardize element type name between Array and Vector Types (#137465)

Standardize the element type name


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h

  Log Message:
  -----------
  [VPlan] Create initial skeleton before creating regions. (NFC)

Move out the logic to prepare for vectorization to a separate transform,
before creating loop regions. This was discussed as follow-up
in https://github.com/llvm/llvm-project/pull/136455.

This just moves the existing code around slightly  and will simplify
follow-up patches to include the exiting edges during initial VPlan
construction.


  Commit: 51bbebb6677bb0ea14ca62cc140492965c2a6e19
      https://github.com/llvm/llvm-project/commit/51bbebb6677bb0ea14ca62cc140492965c2a6e19
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/safe-with-dep-distance-non-power-of-2.ll

  Log Message:
  -----------
  [LAA] Add tests with non-power-of-2 store-load forward distance (#136710)


  Commit: 4fa0f1d166b6b39a80dd0b8eb820122ccc410c43
      https://github.com/llvm/llvm-project/commit/4fa0f1d166b6b39a80dd0b8eb820122ccc410c43
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/.vscodeignore
    A lldb/tools/lldb-dap/llvm-logo.png
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Adding an icon to the lldb-dap package. (#137695)

This shows up in the extension UI and in the VSCode extension
marketplace.

I used the llvm/llvm-www/blob/main/img/LLVMWyvernSmall.png for the
image.

Here is what this looks like locally: 
<img width="1020" alt="Screenshot 2025-04-28 at 12 30 33 PM"
src="https://github.com/user-attachments/assets/cd615161-06db-4a37-8f8a-df65ca620a67"
/>


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

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py

  Log Message:
  -----------
  [lldb] Disable TestDAP_attachByPortNum

This test is flaky and creating a lot of noise in CI.
See https://github.com/llvm/llvm-project/issues/137660


  Commit: 7d4e6ff2169998e43f5072e022e34c6e0324e123
      https://github.com/llvm/llvm-project/commit/7d4e6ff2169998e43f5072e022e34c6e0324e123
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Bump the version to 0.2.13


  Commit: 88f8637d22ffcaf2b4ca6189ef2f604a81f2c8c5
      https://github.com/llvm/llvm-project/commit/88f8637d22ffcaf2b4ca6189ef2f604a81f2c8c5
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    R llvm/test/Analysis/LoopAccessAnalysis/safe-with-dep-distance-non-power-of-2.ll

  Log Message:
  -----------
  Revert "[LAA] Add tests with non-power-of-2 store-load forward distance (#136710)"

This reverts commit 51bbebb6677bb0ea14ca62cc140492965c2a6e19 to fix
buildbots https://lab.llvm.org/buildbot/#/builders/137/builds/17662


  Commit: b509f7cca58c8db060eebea6fb5b28c3d0b3727b
      https://github.com/llvm/llvm-project/commit/b509f7cca58c8db060eebea6fb5b28c3d0b3727b
  Author: Alexander Kornienko <alexfh at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def

  Log Message:
  -----------
  Revise CK_NullToPointer comment

This addresses a post-commit review comment in https://github.com/llvm/llvm-project/pull/137364#discussion_r2064772853.


  Commit: a5024cd0d7b735d6c3dcb00159bcab37236d261a
      https://github.com/llvm/llvm-project/commit/a5024cd0d7b735d6c3dcb00159bcab37236d261a
  Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Dialect/LLVMIR/module-roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/module-flags.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [MLIR][LLVM] More on CG Profile: support null function entries (#137269)


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

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/safe-with-dep-distance-non-power-of-2.ll

  Log Message:
  -----------
  [LAA] Add tests with non-power-of-2 store-load forward distance (#136710)


  Commit: b111da97e81f32fe0fb89f8daa2e7516909a8797
      https://github.com/llvm/llvm-project/commit/b111da97e81f32fe0fb89f8daa2e7516909a8797
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [NFC][asan] Try to deflake asan_lsan_deadlock test (#137718)

10s looks not enough. With highly parallel test
execution on VMs it's very possible that Asan
report will have no enough time to produce output.

I can reproduce locally 1s is not always enough,
but likely my workstation is faster then buildbot.

Additionally, don't use puts/CHECK to validate
timeout. We can exit with 0 and it should violate
"not" expectation.

Follow up to #131756.


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

  Changed paths:
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/SemaOpenACC/combined-construct.cpp
    M clang/test/SemaOpenACC/loop-construct.cpp

  Log Message:
  -----------
  [OpenACC]Reimplement 'for' loop checks for a loop construct

The 'loop' construct has some pretty strict checks as to what the for
loop associated with it has to look like. The previous implementation
was a little convoluted and missed implementing the 'condition'
checking.  Additionally, it did a bad job double-diagnosing with
templates.

This patch rewrites it in a way that does a much better job with the
double-diagnosing, and proeprly implements some checks for the
'condition' of the for loop.


  Commit: 0e07478a5ea7df42a7ec0536b0dfd591e421d844
      https://github.com/llvm/llvm-project/commit/0e07478a5ea7df42a7ec0536b0dfd591e421d844
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/linkage-spec.cpp

  Log Message:
  -----------
  [CIR] Implement lowering for LinkageSpecDecl (#137634)

Like the NamespaceDecl, this is just emitted as a decl-context, where
all its internal declarations get emitted for it. The incubator doesn't
seem to have any good tests for this, so I wrote what I could think of
as a half-decent test for this one, though the lowering doesn't manage
whether these should be mangled, so the test is mostly just for
spot-checking purposes.

I'm implementing this as it will make writing further tests for future
features a little easier.


  Commit: afdc4b1526d41ff48ae4aa5efd230cd4f9d1c430
      https://github.com/llvm/llvm-project/commit/afdc4b1526d41ff48ae4aa5efd230cd4f9d1c430
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lld/test/wasm/Inputs/start-lib1.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Don't mark `--start-lib`/`--end-lib` files as live (#137714)

Without this change files in `--start-lib`/`--end-lib` groups were being
marked as live, which means there static constructors were being
included in the link.


  Commit: 47de54e9a2cb2b8433f53e751e1c3413fcd7aa78
      https://github.com/llvm/llvm-project/commit/47de54e9a2cb2b8433f53e751e1c3413fcd7aa78
  Author: Wanyi <wanyi at meta.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py

  Log Message:
  -----------
  [lldb-dap] Fix TestDap_attach.py flakiness (#137278)

# Summary
This patch makes the `request_attach` wait for events `process` and
`initialized` just like `request_launch`. This ensure the DAP session
can move forward somewhat correctly.

Recently `TestDap_attach.test_terminate_commands` became flaky.
It's hitting:
```
lldbsuite/test/tools/lldb-dap/dap_server.py", line 350, in send_recv
    raise ValueError(desc)
ValueError: no response for "disconnect"
```
I took a look at the DAP msg from that test case and noticed:
- It's not using the regular attaching, instead it's using the
`attachCommands` to launch debug the binary and it will stop at entry.
- The `initialized` event returned after the `disconnect` request. Which
means lldb-dap didn't really get ready yet.

### NOTE
The `dap_server.py` is doing things to mimic the VSCode (or other dap
clients) but it had some assumptions. For example, it's still missing
the `configurationDone` request and response because it relies on a
continue action to trigger the `configurationDone` request.

# Test Plan
```
./bin/llvm-lit -va /Users/wanyi/llvm-upstream/llvm-project/lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
./bin/llvm-lit -va /Users/wanyi/llvm-upstream/llvm-project/lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
```

To test the `wait_for_events` timeout case
```
events = self.wait_for_events(["process", "initialized", "fake", "event"], 1)
if events:
    raise ValueError(f'no events {",".join(events)} found for within timeout 1')
```
Observed
<img width="696" alt="image"
src="https://github.com/user-attachments/assets/bc97c0ef-d91f-4561-8272-4d36f5f5d4e6"
/>

### Also
Looks like some test cases should be re-enabled in
https://github.com/llvm/llvm-project/commit/0b8dfb5762fdc350c5071c9eeffd4f7e4d495e98
But only comments was removed. The skip statements survived the change.


  Commit: bdfa1ec01f81dc2cf164372d783d3c9d5afaf1e5
      https://github.com/llvm/llvm-project/commit/bdfa1ec01f81dc2cf164372d783d3c9d5afaf1e5
  Author: Ivan Tadeu Ferreira Antunes Filho <antunesi at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lld/test/MachO/reexport-with-rpath.s

  Log Message:
  -----------
  [lld-macho] Fix test to  write to correct test dir location  (#137708)

(follow-up to #135241).


  Commit: dd2a1590c34d250b70de6d9a4a11b9a13aacb8ac
      https://github.com/llvm/llvm-project/commit/dd2a1590c34d250b70de6d9a4a11b9a13aacb8ac
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-declare-globals.f90

  Log Message:
  -----------
  [flang][acc] Generate constructors and destructors for common blocks (#137691)


  Commit: 11291e213b74b9aac65264e6649bee0c309d2912
      https://github.com/llvm/llvm-project/commit/11291e213b74b9aac65264e6649bee0c309d2912
  Author: Christopher Bate <cbate at nvidia.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

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

  Log Message:
  -----------
  [mlir] NFC: fix typo in `#nvvm.target` Tablegen record name (#137621)


  Commit: b95cc91aafe8097e58ccbfde969e08ea8fa63aec
      https://github.com/llvm/llvm-project/commit/b95cc91aafe8097e58ccbfde969e08ea8fa63aec
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [flang][acc] Remove an unused variable (#137731)

Fixes what https://github.com/llvm/llvm-project/pull/137691 introduced.


  Commit: 2ce6333a41a68c89866d4075527bd43ce8fd3b6c
      https://github.com/llvm/llvm-project/commit/2ce6333a41a68c89866d4075527bd43ce8fd3b6c
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Fix lldb ODR issue (#137729)

In 42622c79592b98b899d787c89db11cea1b540b96, depending on the entire
utility library resulted in the lldb binary having more symbols that it
needs, duplicating those in liblldb, leading to odr violations. Now
instead we just expose the Host library's headers, which happens to be
enough for this to compile and link, referencing the symbols from
liblldb


  Commit: a9a891029d2fa81b3f33d2430f2cc4cdfe426e99
      https://github.com/llvm/llvm-project/commit/a9a891029d2fa81b3f33d2430f2cc4cdfe426e99
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [bazel] Fix layering check violation (#137734)

I broke this in 2ce6333a41a68c89866d4075527bd43ce8fd3b6c since I only
tested with a toolchain that doesn't support layering checks


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

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

  Log Message:
  -----------
  [TableGen] Use StringRef::empty() instead of comparing to an empty string. NFC (#137673)


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

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [SelectionDAG][PowerPC] Remove setTruncatingStore from StoreSDNode. (#137667)

Mutating a node after it has been created isn't a good idea. After
e17f07c4debbe76f5ebcdeeda619e7438700e2ad, we have a version of setStore
that can create a truncating indexed store. Use that instead of
MorphNodeTo+setTruncatingStore in PowerPC.

Unfortunately, if we return the newly created node, DAGCombiner will
visit the node and change the constant. To prevent this, we use
DCI.CombineTo and avoid adding the new node to the worklist.


  Commit: 82ab35961f62c8019f3b0129da42c42287a557b0
      https://github.com/llvm/llvm-project/commit/82ab35961f62c8019f3b0129da42c42287a557b0
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Fix machine-overridable scope (#137723)

My previous commit was a bit sloppy, I didn't spot that
`lldb-dap.executable-path` already had a scope and I didn't consider
that `lldb-dap.log-path` should have the same scope.

This PR addresses both:

 - Fix duplicate scope for `lldb-dap.executable-path`.
 - Change scope of `lldb-dap.log-path` to `machine-overridable` too.


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

  Changed paths:
    M clang/include/clang/Sema/SemaOpenACC.h

  Log Message:
  -----------
  [OpenACC][NFC] Fix GCC7 build after fec003a18a8b5b

A GCC 7 requirement on the completeness of types before using them in a
variant means we need a constructor for these (or define them outside the
current thing).  This patch should fix the build, as reported by
@kewen12


  Commit: 4def437cdc0e7e58d066731af69133052dac694b
      https://github.com/llvm/llvm-project/commit/4def437cdc0e7e58d066731af69133052dac694b
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M flang/docs/Extensions.md

  Log Message:
  -----------
  [flang][NFC] Fixed a typo in Exensions.md (#137738)

Fixed a small typo regarding F'2023 15.5.2.5 paragraph number.


  Commit: 5d0e26e571c08dc4c0b2a25ed6c9f845f054fa76
      https://github.com/llvm/llvm-project/commit/5d0e26e571c08dc4c0b2a25ed6c9f845f054fa76
  Author: Koakuma <koachan at protonmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M compiler-rt/lib/builtins/clzdi2.c

  Log Message:
  -----------
  [compiler-rt] Make sure __clzdi2 doesn't call itself recursively on sparc64 (#136737)

On 64-bit platforms, libgcc doesn't ship with __clzsi2, so __builtin_clz
gets lowered to __clzdi2. A check already exists for GCC, but as of
commit 8210ca019839fc5430b3a95d7caf5c829df3232a clang also lowers
__builtin_clz to __clzdi2 on sparc64.

Update the check so that building __clzdi2 with clang/sparc64 also
works.


  Commit: 1fc0a1401ac2fb092cf413b27e73c413a5d74c52
      https://github.com/llvm/llvm-project/commit/1fc0a1401ac2fb092cf413b27e73c413a5d74c52
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.ll

  Log Message:
  -----------
  [LV][AArch64] Add test for fp128 fmuladd reduction.(NFC) (#137576)

This patch add the test for the fmuladd reduction to show the test
change/fail for the cost model change.

Note that without the fp128 load and trunc, there is no failure.

Pre-commit test for #113903.


  Commit: d913ea307e32aa1412b67d02f2f76a5f2083f2e8
      https://github.com/llvm/llvm-project/commit/d913ea307e32aa1412b67d02f2f76a5f2083f2e8
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll

  Log Message:
  -----------
  [msan] Implement support for avx512fp16.mask.{add/sub/mul/div/max/min}.sh.round (#137441)

This adds a handler, visitGenericScalarHalfwordInst, which works for
mask.{add/sub/mul/div/max/min}.sh.round.

Updates the tests in https://github.com/llvm/llvm-project/pull/136260


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Factor out isUnrolled() helper in VPWidenIntOrFpInductionRecipe. NFC (#137635)

Split off from #129508, this generalizes getSplatVFValue and
getLastUnrolledPartOperand so they don't need changed if another operand
is added.


  Commit: 4e175b889669b430113ce0216e0ee1fe7884889c
      https://github.com/llvm/llvm-project/commit/4e175b889669b430113ce0216e0ee1fe7884889c
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/sifive-interrupt-attr.ll

  Log Message:
  -----------
  [RISCV] Fix Defs/Uses for SiFive CLIC Support (#137724)

The expensive checks bots found issues with #132481, due to not setting
defs/uses correctly. In 31bd7a507152 I added verify flags, so that the
failure is reproduced without requiring expensive checks, and xfailed
the test.

This change:
- Ensures that registers are correctly marked as defs/uses.
- Removes the xfail.
- Leaves the tests with `-verify-machineinstrs` which should have been
present originally.


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

  Changed paths:
    M lldb/include/lldb/Core/FormatEntity.h

  Log Message:
  -----------
  [lldb] Rely on operator== for std::vector (NFC)

Rely on operator== for std::vector instead of comparing the elements in
the vector element by element,


  Commit: 7ce0f5a9cc37345fee801736bded83081b61571b
      https://github.com/llvm/llvm-project/commit/7ce0f5a9cc37345fee801736bded83081b61571b
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/lib/Frontend/FrontendActions.cpp
    A clang/test/Modules/emit-module-interface-pcm-input.cpp

  Log Message:
  -----------
  [clang][modules] Validate input file format for GenerateModuleInterfaceAction (#132692) (#137711)

Fixes #132692.

`clang -cc1` crashes when generating a module interface with
`emit-module-interface` or `emit-reduced-module-interface` using an
input file which is already a precompiled module (`.pcm`) file.
This commit adds validation for the input file format and Clang will now
emit an error message instead of crashing.


  Commit: 15579a8e72589b4fdf45c8f5bca52e58dcc9ce1d
      https://github.com/llvm/llvm-project/commit/15579a8e72589b4fdf45c8f5bca52e58dcc9ce1d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    A clang/test/AST/ByteCode/dynalloc-limits.cpp

  Log Message:
  -----------
  [clang][bytecode] Check array sizes against step limit (#137679)


  Commit: 2f1ef1d18334629bf7c6be1951092f3974b40f0e
      https://github.com/llvm/llvm-project/commit/2f1ef1d18334629bf7c6be1951092f3974b40f0e
  Author: Bob Wilson <bob.wilson at apple.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/HeaderInclude.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    M clang/test/Preprocessor/print-header-json.c
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [Clang] Add new -header-include-filtering=direct-per-file option (#137087)

This adds a new filtering option to be used along with the
-header-include-format=json option. The existing "only-direct-system"
filtering option is missing some things:
- It does not show module imports.
- It does not show includes of non-system headers. This new
"direct-per-file" filtering has a separate entry in the JSON output for
each non-system source file, showing the direct includes and imports
from that file. You can use this to see uses of non-system headers, and
also find the paths through non-system headers that lead up to module
imports and system headers. Modules are identified here by their
modulemap files.


  Commit: bbbb178a35265a11d2e595233f17d4103135764a
      https://github.com/llvm/llvm-project/commit/bbbb178a35265a11d2e595233f17d4103135764a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [mlir] Fix a warning

This patch fixes:

  mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp:2905:17: error: unused
  variable 'var' [-Werror,-Wunused-variable]

  mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp:2908:42: error: unused
  variable 'dataClauseOptional' [-Werror,-Wunused-variable]


  Commit: 93145004b4d3bea40485ddf56977c80344c5d687
      https://github.com/llvm/llvm-project/commit/93145004b4d3bea40485ddf56977c80344c5d687
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-28 (Mon, 28 Apr 2025)

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

  Log Message:
  -----------
  [Support] Construct SmallVector with ArrayRef (NFC) (#137586)


  Commit: d1bb8d6a5c4a36490298ca75d144805179cc3b40
      https://github.com/llvm/llvm-project/commit/d1bb8d6a5c4a36490298ca75d144805179cc3b40
  Author: Hemang Gadhavi <hemang.gadhavi at ibm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Host/linux/Support.h
    A lldb/include/lldb/Host/posix/Support.h
    M lldb/source/Host/CMakeLists.txt
    M lldb/source/Host/aix/Host.cpp
    M lldb/source/Host/linux/Host.cpp
    M lldb/source/Host/linux/Support.cpp
    A lldb/source/Host/posix/Support.cpp
    M lldb/source/Plugins/Process/AIX/NativeProcessAIX.h
    M lldb/source/Plugins/Process/Linux/IntelPTCollector.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.h
    M lldb/source/Plugins/Process/Linux/Perf.cpp
    M lldb/source/Plugins/Process/Linux/Procfs.cpp
    M lldb/unittests/Host/CMakeLists.txt
    R lldb/unittests/Host/linux/HostTest.cpp
    R lldb/unittests/Host/linux/SupportTest.cpp
    A lldb/unittests/Host/posix/HostTest.cpp
    A lldb/unittests/Host/posix/SupportTest.cpp
    M lldb/unittests/Process/Linux/ProcfsTests.cpp

  Log Message:
  -----------
  [lldb][AIX] get host info for AIX (#134354)

This PR is in reference to porting LLDB on AIX.

Link to discussions on llvm discourse and github:

1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601

- Added changes to make the common host support functions under
`Host/posix` for unix-like system.
Also, created the `unittests/Host/posix/` to test the hostInfo & support
functions for unix-like system.
- Added changes to get the host information for AIX. (GetProcessInfo()) 
(Information like : executable path, arch, process status etc.)


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

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

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


  Commit: 0ddb5794b7b47481ed713af0add392de324d5cd2
      https://github.com/llvm/llvm-project/commit/0ddb5794b7b47481ed713af0add392de324d5cd2
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Disasm.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Remove base casts before doing memcpy (#137754)

We have to copy the entire thing, not just one of the bases.


  Commit: da7099290cea7d11b83da01adda8afeb3bcd5362
      https://github.com/llvm/llvm-project/commit/da7099290cea7d11b83da01adda8afeb3bcd5362
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  Revert "[lldb][Format] Make function name frame-format variables work without debug-info" (#137757)

Reverts llvm/llvm-project#137408

This change broke `lldb/test/Shell/Unwind/split-machine-functions.test`.

The test binary has a symbol named `_Z3foov.cold` and the test expects
the backtrace to print the name of the cold part of the function like
this:

```
# SPLIT: frame #1: {{.*}}`foo() (.cold) +
```
but now it gets

```
frame #1: 0x000055555555514f split-machine-functions.test.tmp`foo() + 12
```


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

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb] Use early returns in TypeSystemClang::IsPossibleDynamicType (#137630)

Remove a couple of levels of indentation before I need to add another
one to fix a bug.


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

  Changed paths:
    M lldb/include/lldb/Symbol/Block.h
    M lldb/source/Symbol/Block.cpp

  Log Message:
  -----------
  [lldb] Remove Function null checks in Block.cpp (#137611)

As of #117683, Blocks are always enclosed in a function, so these checks
never fail. We can't change the signature of
`CalculateSymbolContextFunction` as it's an abstract function (and some
of its implementations can return nullptr), but we can create a
different function that we can call when we know we're dealing with a
block.


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

  Changed paths:
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/ValueObject/ValueObject.cpp

  Log Message:
  -----------
  [lldb] Make ValueObject::Dereference less aggressive (#137311)

The function was always trying to dereference both the synthetic and
non-synthetic view of the object. This is wrong as the caller should be
able to determine which view of the object it wants to access, as is
done e.g. for child member access.

This patch removes the nonsynthetic->synthetic fallback, which is the
more surprising path, and fixes the callers to try both versions of the
object (when appropriate). I also snuck in simplification of the member
access code path because it was possible to use the same helper function
for that, and I wanted to be sure I understand the logic correctly.

I've left the synthetic->nonsynthetic fallback in place. I think we may
want to keep that one as we often have synthetic child providers for
pointer types. They usually don't provide an explicit dereference
operation but I think users would expect that a dereference operation on
those objects would work. What we may want to do is to try the
*synthetic* operation first in this case, so that the nonsynthetic case
is really a fallback.

---------

Co-authored-by: Ilia Kuklin <kuklin.iy at mail.ru>


  Commit: e43e8ec7afbdf8b90204060b725d6990829b80a1
      https://github.com/llvm/llvm-project/commit/e43e8ec7afbdf8b90204060b725d6990829b80a1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__type_traits/is_convertible.h
    R libcxx/include/__type_traits/is_nothrow_convertible.h
    M libcxx/include/module.modulemap.in
    M libcxx/include/type_traits

  Log Message:
  -----------
  [libc++] Remove dead implementation of is_nothrow_convertible and merge the remaining code into is_convertible.h (#137717)

We can use the `__is_nothrow_convertible` builtin unconditionally now,
which makes the implementation very simple, so there isn't much of a
need to keep a separate header around.


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

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

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


  Commit: ace8ceab736f7e265b206b583d218a7554bee864
      https://github.com/llvm/llvm-project/commit/ace8ceab736f7e265b206b583d218a7554bee864
  Author: Jack Styles <jack.styles at arm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/test/Driver/arm-features.c
    M clang/test/Driver/arm-mfpu.c
    M clang/test/Preprocessor/arm-target-features.c

  Log Message:
  -----------
  [ARM][Driver] Ensure NEON is enabled and disabled correctly (#137595)

In #130623 support was added for `+nosimd` in the clang driver.
Following this PR, it was discovered that, if NEON is disabled in the
command line, it did not disable features that depend on this, such as
Crypto or AES. To achieve this, This PR does the following:
- Ensure that disabling NEON (e.g., via +nosimd) also disables dependent
features like Crypto and AES.
- Update the driver to automatically enable NEON when enabling features
that require it (e.g., AES).

This fixes inconsistent behavior where features relying on NEON could be
enabled without NEON itself being active, or where disabling NEON left
dependent features incorrectly enabled.


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

  Changed paths:
    M lldb/unittests/Host/posix/HostTest.cpp

  Log Message:
  -----------
  [lldb] Skip some Host::GetProcessInfo tests for macos

Some of the tests moved in #134354 do not currently pass on a mac. Disable
them.

The test for testing process priority also does not build on a mac.  I'm not
moving it (back) to the linux, since it's "almost" fine -- we'd just need to
implement the RLIMIT_NICE logic differently. I'm not doing that now since
(apart from linux) there are no systems which are able to retrieve the process
priority.


  Commit: ff66d34286b07ba864029776d097e66306cc53ef
      https://github.com/llvm/llvm-project/commit/ff66d34286b07ba864029776d097e66306cc53ef
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp

  Log Message:
  -----------
  [Driver] Simplify string comparisons (NFC) (#137756)


  Commit: ffcca5112b653b35cafc68a01e654dcdc5a84ff4
      https://github.com/llvm/llvm-project/commit/ffcca5112b653b35cafc68a01e654dcdc5a84ff4
  Author: Mallikarjuna Gouda <mgouda at mips.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/Mips.td
    A llvm/lib/Target/Mips/MipsScheduleI6400.td
    A llvm/test/tools/llvm-mca/Mips/i6400.s

  Log Message:
  -----------
  [MIPS] Add Scheduling model for MIPS i6400 and i6500 CPUs (#132704)

Add scheduling model for the MIPS i6400 and i6500, an in-order MIPS64R6
processor.

i6400 and i6500 share same instruction latencies.

CPU has following pipelines
  - Two ALUs
  - Multiply and Divide unit (MDU)
  - Branch Unit (CTU)
  - Load/Store Unit (LSU)
  - Short Floating-point Unit and
  - Long Floating-point Unit
 
Latency information is available at:
https://mips.com/wp-content/uploads/2025/03/MIPS_I6500-F_Data_Sheet_Rev1.10_3-17-2025.pdf


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

  Changed paths:
    M mlir/test/Integration/Dialect/MemRef/print-memref.mlir

  Log Message:
  -----------
  [mlir][memref] Fix memory leaks in `print-memref.mlir` (#137590)

This fixes the test when running with ASAN.


  Commit: 86d8e8d9a617461eb4dae7b49e9a4a59a35024e7
      https://github.com/llvm/llvm-project/commit/86d8e8d9a617461eb4dae7b49e9a4a59a35024e7
  Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    A llvm/include/llvm/CodeGen/PEI.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/test/CodeGen/AArch64/aarch64-large-stack-spbump.mir
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir

  Log Message:
  -----------
  [CodeGen][NewPM] Port "PrologEpilogInserter" to NPM (#130550)


  Commit: 980d027a3f2fbce173ad813a3f01bb51c2c2bc4b
      https://github.com/llvm/llvm-project/commit/980d027a3f2fbce173ad813a3f01bb51c2c2bc4b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/unions.cpp

  Log Message:
  -----------
  [clang][bytecode] Allow This pointers in CPCE mode (#137761)

The outermost function doesn't have a This pointers, but inner calls
can. This still doesn't match the diagnostic output of the current
interpreter properly, but it's closer I think.


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

  Changed paths:
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/pr87407-trunc-with-intrinsic.ll

  Log Message:
  -----------
  [LV] Fix MinBWs in WidenIntrinsic case (#137005)

There is a bug in the computation and handling of MinBWs in the case of
VPWidenIntrinsicRecipe: a crash is observed in
VPlanTransforms::truncateToMinimalBitwidths due to a mismatch between
the number of recipes processed and the number of entries in MinBWs. Fix
handling of calls in llvm::computeMinimumValueSizes, and handle
VPWidenIntrinsicRecipe in truncateToMinimalBitwidths, fixing the bug.

Fixes #87407.


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

  Changed paths:
    M llvm/test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks-convergent.ll

  Log Message:
  -----------
  [LAA] Improve convergent tests (#136758)

LoopAccessAnalysis has code for handling function calls where the
function is marked with the 'convergent' attribute, but the test
coverage is insufficient. Fix this by adding a test showing the case of
no-runtime-checks adapted from LoopDistribute, and clean up the existing
test with runtime-checks. Also regenerate the test file with
UpdateTestChecks.


  Commit: 4bf356bbd25ef5950de92b9e66cc8a2d3af583d9
      https://github.com/llvm/llvm-project/commit/4bf356bbd25ef5950de92b9e66cc8a2d3af583d9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Start implementing builtin_is_within_lifetime (#137765)


  Commit: 76aa471698437af49ceda30280bf0fd7d33b4d34
      https://github.com/llvm/llvm-project/commit/76aa471698437af49ceda30280bf0fd7d33b4d34
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/Mips.td
    R llvm/lib/Target/Mips/MipsScheduleI6400.td
    R llvm/test/tools/llvm-mca/Mips/i6400.s

  Log Message:
  -----------
  Revert "[MIPS] Add Scheduling model for MIPS i6400 and i6500 CPUs (#132704)" (#137767)

This reverts commit ffcca5112b653b35cafc68a01e654dcdc5a84ff4.


  Commit: 64b5bc876aef6db89c38cf5dc76eebec38187234
      https://github.com/llvm/llvm-project/commit/64b5bc876aef6db89c38cf5dc76eebec38187234
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/docs/use/formatting.rst
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LanguageCPlusPlusProperties.td
    A lldb/test/Shell/Settings/TestFrameFormatFunctionSuffix.test

  Log Message:
  -----------
  [lldb][Format] Add function.suffix frame-format variable (#137763)

This patch adds another frame-format variable (currently only
implemented in the CPlusPlus language plugin) that represents the
"suffix" of a function. The name is derived from the `DotSuffix` node of
LLVM's Itanium demangler.

For a function name such as `int foo() (.cold)`, the suffix would be
`(.cold)`.


  Commit: 252b095b32c1571ee89f75828fdf2b4036ffc2a7
      https://github.com/llvm/llvm-project/commit/252b095b32c1571ee89f75828fdf2b4036ffc2a7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb][test] Add more test-cases to MangledTest


  Commit: 3d47bc9d25af0d2525c9f52b5fad6af6c88ce7e3
      https://github.com/llvm/llvm-project/commit/3d47bc9d25af0d2525c9f52b5fad6af6c88ce7e3
  Author: TatWai Chong <tatwai.chong at arm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add error if and level checks for COND_IF & WHILE_LOOP (#136194)

Error if checks: verify whether the same length and type between input
list, output list, and control-flow blocks.

Level_checks: verify whether the nested depth exceeds MAX_NESTING.


  Commit: 014ab736dc741f24c007f9861e24b31faba0e1e7
      https://github.com/llvm/llvm-project/commit/014ab736dc741f24c007f9861e24b31faba0e1e7
  Author: Carlos Galvez <carlosgalvezp at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy] Do not pass any file when listing checks in run_clang_ti… (#137286)

…dy.py

Currently, run_clang_tidy.py does not correctly display the list of
checks picked up from the top-level .clang-tidy file. The reason for
that is that we are passing an empty string as input file.

However, that's not how we are supposed to use clang-tidy to list
checks. Per
https://github.com/llvm/llvm-project/commit/65eccb463df7fe511c813ee6a1794c80d7489ff2,
we simply should not pass any file at all - the internal code of
clang-tidy will pass a "dummy" file if that's the case and get the
.clang-tidy file from the current working directory.

Fixes #136659

Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>


  Commit: bb9fa77c8410e539d1eefdfe76c192db44bdc520
      https://github.com/llvm/llvm-project/commit/bb9fa77c8410e539d1eefdfe76c192db44bdc520
  Author: Jack Styles <jack.styles at arm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/test/Driver/arm-features.c

  Log Message:
  -----------
  [ARM][Driver] Fix i8mm feature string (#137771)

#137595 changed the behaviour for SIMD on ARM to ensure it is enabled
and disabled correctly depending on the options used by the user. In
this, the functionality to disable all features that depend on SIMD was
added. However, there was a spelling error for the i8mm feature, which
caused the `+nosimd` command to fail.

This fixes the error, and allows the command to work again.


  Commit: 8961f3ee758f18f3c5c707b76406afbe6238ef7e
      https://github.com/llvm/llvm-project/commit/8961f3ee758f18f3c5c707b76406afbe6238ef7e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/oddsubvector.ll
    M llvm/test/CodeGen/X86/setcc-lowering.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.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-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/vselect-pcmp.ll

  Log Message:
  -----------
  [X86] shouldReduceLoadWidth - don't split loads if we can freely reuse full width legal binop (#129695)

Currently shouldReduceLoadWidth is very relaxed about when loads can be
split to avoid extractions from the original full width load - resulting
in many cases where the number of memory operations notably increases,
replacing the cost of a extract_subvector for additional loads.

This patch adjusts the 256/512-bit vector load splitting metric to
detect cases where ANY use of the full width load is be used directly -
in which case we will now reuse that load for smaller types, unless we'd
need to extract an upper subvector / integer element - i.e. we now
correctly treat (extract_subvector cst, 0) as free.

We retain the existing logic of never splitting loads if all uses are
extract+stores but we improve this by peeking through bitcasts while
looking for extract_subvector/store chains.

This required a number of fixes - shouldReduceLoadWidth now needs to
peek through bitcasts UP the use-chain to find final users (limited to
hasOneUse cases to reduce complexity). It also exposed an issue in
isTargetCanonicalConstantNode which assumed that a load of vector
constant data would always extract, which is no longer the case.


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

  Changed paths:
    M llvm/lib/Analysis/VectorUtils.cpp

  Log Message:
  -----------
  [VectorUtils] Improve computeMinimumValueSizes (NFC) (#137692)

The Worklist used by computeMinimumValueSizes is wastefully a
Value-vector, when the top of the loop attempts to cast the popped value
to an Instruction anyway. Improve the algorithm by cutting this wasteful
work, refining the type of Worklist, Visited, and Roots from
Value-vectors to Instruction-vectors.


  Commit: 4609b6a3e76e604463bab2a303c6da737f303237
      https://github.com/llvm/llvm-project/commit/4609b6a3e76e604463bab2a303c6da737f303237
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M libclc/amdgcn/lib/SOURCES
    R libclc/amdgcn/lib/math/fmax.cl
    R libclc/amdgcn/lib/math/fmin.cl
    A libclc/clc/include/clc/math/clc_fmax.h
    A libclc/clc/include/clc/math/clc_fmin.h
    A libclc/clc/include/clc/shared/binary_decl_with_scalar_second_arg.inc
    A libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
    M libclc/clc/lib/amdgcn/SOURCES
    A libclc/clc/lib/amdgcn/math/clc_fmax.cl
    A libclc/clc/lib/amdgcn/math/clc_fmin.cl
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/math/clc_fmax.cl
    A libclc/clc/lib/generic/math/clc_fmin.cl
    M libclc/clc/lib/r600/SOURCES
    A libclc/clc/lib/r600/math/clc_fmax.cl
    A libclc/clc/lib/r600/math/clc_fmin.cl
    M libclc/generic/lib/math/fmax.cl
    M libclc/generic/lib/math/fmin.cl
    M libclc/r600/lib/SOURCES
    R libclc/r600/lib/math/fmax.cl
    R libclc/r600/lib/math/fmin.cl

  Log Message:
  -----------
  [libclc] Move fmin & fmax to CLC library (#134218)

This is an alternative to #128506 which doesn't attempt to change the
codegen for fmin and fmax on their way to the CLC library.

The amdgcn and r600 custom definitions of fmin/fmax are now converted to
custom definitions of __clc_fmin and __clc_fmax.

For simplicity, the CLC library doesn't provide vector/scalar versions
of these builtins. The OpenCL layer wraps those up to the vector/vector
versions.

The only codegen change is that non-standard vector/scalar overloads of
fmin/fmax have been removed. We were currently (accidentally,
presumably) providing overloads with mixed elment types such as
fmin(double2, float), fmax(half4, double), etc. The only vector/scalar
overloads in the OpenCL spec are those with scalars of the same element
type as the vector in the first argument.


  Commit: 082598a64d1f3d583c7ae979681df90f9f9c0f63
      https://github.com/llvm/llvm-project/commit/082598a64d1f3d583c7ae979681df90f9f9c0f63
  Author: Victor Lomuller <victor at codeplay.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/pointers/generic_cast_to_ptr_explicit.ll

  Log Message:
  -----------
  [SPIRV] Add intrinsic for OpGenericCastToPtrExplicit (#137626)

The patch adds an intrinsic to encode OpGenericCastToPtrExplicit and the
associated lowering logic.


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

  Changed paths:
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul_u-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul_u-idempotency.ll

  Log Message:
  -----------
  [NFC][InstCombine][AArch64] Remove SVE mul idempotency tests.

They have been subsumed into the SVE binop simplification tests.


  Commit: e33cf4b0782bdbe74258baaa70057fdbec847a1d
      https://github.com/llvm/llvm-project/commit/e33cf4b0782bdbe74258baaa70057fdbec847a1d
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

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

  Log Message:
  -----------
  [TableGen][NFC] Refactor/deduplicate emitAction. (#137434)

Currently there is a fair amount of code duplication in various parts of
emitAction. This patch factors out commonality among CCAssignToReg,
CCAssignToRegAndStack, CCAssignToRegWithShadow, and CCAssignToStack.

`XXXGenCallingConv.inc` are identical before and after this patch for
all targets.


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll

  Log Message:
  -----------
  [NFC][InstCombine][AArch64] Add simplify tests for reversed SVE intrinsics.

Add missing tests for fdivr, fsubr, sdivr, subr & udivr.
Add test case to demonstrate incorrect poison propagation.


  Commit: 89c5c3ba38492de8163c344d076733b32d522727
      https://github.com/llvm/llvm-project/commit/89c5c3ba38492de8163c344d076733b32d522727
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

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

  Log Message:
  -----------
  [MLIR][IR] Add assert to Operation::moveBefore (NFC) (#137772)

This commit adds an assert to `Operation::moveBefore` which ensures that
moving of operations without a parent block is detected early on. This
case otherwise runs into a segfault, as it's assumed that there is an
parent block.


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

  Changed paths:
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-m-forms-no-active-lanes.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-cmp.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-to-u-form.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsics-combine-to-u-forms.ll

  Log Message:
  -----------
  [NFC][InstCombine][AArch64] Refactor SVE intrinsics tests.

Only test a single element type because the combines are not sensitive
to them. Extend coverage to cover the majority of SVE merging
intrinsics.


  Commit: ebeae6402d9682bae94119c1ad2a1dce4c51d08d
      https://github.com/llvm/llvm-project/commit/ebeae6402d9682bae94119c1ad2a1dce4c51d08d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    M lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test

  Log Message:
  -----------
  Reland "[lldb][Format] Make function name frame-format variables work without debug-info" (#137757)

This reverts commit da7099290cea7d11b83da01adda8afeb3bcd5362.

Same as the original PR. The failing test-case was resolved in https://github.com/llvm/llvm-project/pull/137763


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Misc/warning-flags-enabled.c
    A clang/test/Sema/implicit-int-enum-conversion.c

  Log Message:
  -----------
  [C] Add new -Wimplicit-int-enum-cast to -Wc++-compat (#137658)

This introduces a new diagnostic group to diagnose implicit casts from
int to an enumeration type. In C, this is valid, but it is not
compatible with C++.

Additionally, this moves the "implicit conversion from enum type to
different enum type" diagnostic from `-Wenum-conversion` to a new group
`-Wimplicit-enum-enum-cast`, which is a more accurate home for it.
`-Wimplicit-enum-enum-cast` is also under `-Wimplicit-int-enum-cast`, as
it is the same incompatibility (the enumeration on the right-hand is
promoted to `int`, so it's an int -> enum conversion).

Fixes #37027


  Commit: bd6addc032b1ea764494e2de135b5b2c46ee6aca
      https://github.com/llvm/llvm-project/commit/bd6addc032b1ea764494e2de135b5b2c46ee6aca
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/CMakeLists.txt
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    A llvm/lib/Target/X86/X86SuppressAPXForReloc.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/apx/add.ll
    M llvm/test/CodeGen/X86/apx/and.ll
    M llvm/test/CodeGen/X86/apx/compress-evex.mir
    M llvm/test/CodeGen/X86/apx/dec.ll
    M llvm/test/CodeGen/X86/apx/flags-copy-lowering.ll
    M llvm/test/CodeGen/X86/apx/flags-copy-lowering.mir
    M llvm/test/CodeGen/X86/apx/imul.ll
    M llvm/test/CodeGen/X86/apx/inc.ll
    M llvm/test/CodeGen/X86/apx/neg.ll
    M llvm/test/CodeGen/X86/apx/or.ll
    A llvm/test/CodeGen/X86/apx/reloc.mir
    M llvm/test/CodeGen/X86/apx/shl.ll
    M llvm/test/CodeGen/X86/apx/shr.ll
    M llvm/test/CodeGen/X86/apx/sub.ll
    A llvm/test/CodeGen/X86/apx/tls.ll
    M llvm/test/CodeGen/X86/apx/xor.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll

  Log Message:
  -----------
  [X86][APX] Suppress EGPR/NDD instructions for relocations (#136660)

Suppress EGPR/NDD instructions for relocations to avoid APX relocation
types emitted. This is to keep backward compatibility with old version
of linkers without APX support. The use case is to try APX features with
LLVM + old built-in linker on RHEL9 OS which is expected to be EOL in
2032.
If there are APX relocation types, the old version of linkers would
raise "unsupported relocation type" error. Example:
```
$ llvm-mc -filetype=obj -o got.o -triple=x86_64-unknown-linux got.s
$ ld got.o -o got.exe
ld: got.o: unsupported relocation type 0x2b
...

$ cat got.s
...
movq foo at GOTPCREL(%rip), %r16

$ llvm-objdump -dr got.o
...
1: d5 48 8b 05 00 00 00 00       movq    (%rip), %r16
0000000000000005:  R_X86_64_CODE_4_GOTPCRELX    foo-0x4
```


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

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [IR] Add matchers for remaining FP min/max intrinsics (NFC). (#137612)

Add dedicated matchers for minimum,maximum,minimumnum and maximumnum
intrinsics, similar for the existing matchers for maxnum and minnum.

As suggested in https://github.com/llvm/llvm-project/pull/137335.

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


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

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

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


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-vector.mir
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll

  Log Message:
  -----------
  [GlobalISel] Fix miscompile when narrowing vector loads/stores to non-byte-sized types (#136739)

LegalizerHelper::reduceLoadStoreWidth does not work for non-byte-sized
types, because this would require (un)packing of bits across byte
boundaries.

Precommit tests: #134904


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/Mangle.cpp
    A clang/test/AST/ast-crash-dump-mangled-name-json.m

  Log Message:
  -----------
  Fix crash with -ast-dump=json (#137324)

When given an invalid Objective-C extension, Clang would crash when
trying to emit the mangled name of the method to the JSON dump output.

Fixes #137320


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

  Changed paths:

  Log Message:
  -----------
  Fix crash with -ast-dump=json (#137324)

When given an invalid Objective-C extension, Clang would crash when
trying to emit the mangled name of the method to the JSON dump output.

Fixes #137320


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/Sema/decl-hidden-in-c++.c

  Log Message:
  -----------
  [C] Diagnose declarations hidden in C++ (#137368)

This introduces a new diagnostic, -Wc++-hidden-decl, which is grouped
under -Wc++-compat, that diagnoses declarations which are valid in C but
invalid in C++ due to the type being at the wrong scope. e.g.,
```
  struct S {
    struct T {
      int x;
    } t;
  };

  struct T t; // Valid C, invalid C++
```
This is implementing the other half of #21898


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h

  Log Message:
  -----------
  [VPlan] Use correct non-FMF constructor in VPInstructionWithType createNaryOp (#137632)

Currently if we try to create a VPInstructionWithType without a FMF via
VPBuilder::createNaryOp we will use the constructor that asserts
`assert(isFPMathOp() && "this op can't take fast-math flags");`.

This fixes it by checking if FMFs have a value, similar to the other
createNaryOp overloads.

This is needed by #129508


  Commit: 24661001281da09aa6c5c12e4f2552c9d06a8e88
      https://github.com/llvm/llvm-project/commit/24661001281da09aa6c5c12e4f2552c9d06a8e88
  Author: Rohit Aggarwal <44664450+rohitaggarwal007 at users.noreply.github.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

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

  Log Message:
  -----------
  [X86] Add new #134979 test cases for gather scalar (#137416)

We are adding new test cases to see the transformation impact due to #134979.

These are similar to previous commit #688c3ffb057a87b86c6c1e77040418adf511efbb.

Handling struct with two member and different vector factor.

---------

Co-authored-by: Rohit Aggarwal <Rohit.Aggarwal at amd.com>


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

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp

  Log Message:
  -----------
  [LAA] Prefer set-contains over set-count (NFC) (#136749)

Improve code by preferring {SmallSet,SmallPtrSet}::contains() over the
count() function, when used in a boolean context.


  Commit: 78d95cc54455755eaac43d956baed6a3612bc72c
      https://github.com/llvm/llvm-project/commit/78d95cc54455755eaac43d956baed6a3612bc72c
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    A libclc/clc/include/clc/math/clc_fract.h
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/math/clc_fract.cl
    A libclc/clc/lib/generic/math/clc_fract.inc
    M libclc/generic/include/clc/math/fract.h
    R libclc/generic/include/clc/math/fract.inc
    M libclc/generic/lib/math/fract.cl
    R libclc/generic/lib/math/fract.inc

  Log Message:
  -----------
  [libclc] Move fract to the CLC library (#137785)

The builtin was already vectorized so there's no difference to codegen
for non-SPIR-V targets.


  Commit: 1e31f4b5eb96de3080810340c9083138a34587b8
      https://github.com/llvm/llvm-project/commit/1e31f4b5eb96de3080810340c9083138a34587b8
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/r600.languageOptsOpenCL.cl

  Log Message:
  -----------
  [AMDGPU] Support the OpenCL generic addrspace feature by default (#137636)

This feature should be supported on AMDGCN architectures with flat
addressing.


  Commit: 837d5a740f120eb077aa8808809c057fa38d91f3
      https://github.com/llvm/llvm-project/commit/837d5a740f120eb077aa8808809c057fa38d91f3
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    R libclc/clc/include/clc/math/unary_builtin.inc
    M libclc/clc/lib/generic/math/clc_ceil.cl
    M libclc/clc/lib/generic/math/clc_fabs.cl
    M libclc/clc/lib/generic/math/clc_floor.cl
    M libclc/clc/lib/generic/math/clc_rint.cl
    M libclc/clc/lib/generic/math/clc_round.cl
    M libclc/clc/lib/generic/math/clc_trunc.cl
    M libclc/generic/lib/math/acos.cl
    M libclc/generic/lib/math/acosh.cl
    M libclc/generic/lib/math/acospi.cl
    M libclc/generic/lib/math/asin.cl
    M libclc/generic/lib/math/asinh.cl
    M libclc/generic/lib/math/asinpi.cl
    M libclc/generic/lib/math/atan.cl
    M libclc/generic/lib/math/atanh.cl
    M libclc/generic/lib/math/atanpi.cl
    M libclc/generic/lib/math/ceil.cl
    M libclc/generic/lib/math/fabs.cl
    M libclc/generic/lib/math/floor.cl
    M libclc/generic/lib/math/log1p.cl
    M libclc/generic/lib/math/rint.cl
    M libclc/generic/lib/math/round.cl
    M libclc/generic/lib/math/trunc.cl

  Log Message:
  -----------
  [libclc][NFC] Remove unary_builtin.inc (#137656)

We had two ways of achieving the same thing. This commit removes
unary_builtin.inc in favour of the approach combining gentype.inc with
unary_def.inc.

There is no change to the codegen for any target.


  Commit: 4560ff8740c58745506c7797ec1076fd83dd7345
      https://github.com/llvm/llvm-project/commit/4560ff8740c58745506c7797ec1076fd83dd7345
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M lldb/test/Shell/Settings/TestFrameFormatFunctionSuffix.test

  Log Message:
  -----------
  [lldb][test] Skip TestFrameFormatFunctionSuffix.test on Windows

We skip/xfail the other FrameFormat tests on Windows already. The number
of different buildbot configurations out there targetting Windows makes
it hard to make this test portable. If we want to test this on Windows
we should probably just make a dedicated test for it.


  Commit: f02c93d707c0f36a696a5ec71131cba95a30c045
      https://github.com/llvm/llvm-project/commit/f02c93d707c0f36a696a5ec71131cba95a30c045
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/apx/tls.ll

  Log Message:
  -----------
  [X86] Remove LLD command in LIT test (#137794)

The test introduced in #136660, may be failed as ld.lld command not
found.


  Commit: cc0cf7253967af4aa3dce2a5de186f766564747b
      https://github.com/llvm/llvm-project/commit/cc0cf7253967af4aa3dce2a5de186f766564747b
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/dxc_I.test

  Log Message:
  -----------
  [HLSL] Allow non `.hlsl` files as source files (#137378)

Changes the driver to assume input file with an unknown extension are
HLSL source files instead of object files.

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


  Commit: 6695976d16d02d72afc249bb5b46d267c1eee458
      https://github.com/llvm/llvm-project/commit/6695976d16d02d72afc249bb5b46d267c1eee458
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/offsetof_macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/jmp_buf.h
    M libc/include/setjmp.yaml
    M libc/src/setjmp/CMakeLists.txt
    A libc/src/setjmp/linux/CMakeLists.txt
    A libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
    M libc/src/setjmp/setjmp_impl.h
    A libc/src/setjmp/siglongjmp.cpp
    A libc/src/setjmp/siglongjmp.h
    A libc/src/setjmp/sigsetjmp.h
    A libc/src/setjmp/sigsetjmp_epilogue.h
    M libc/src/setjmp/x86_64/CMakeLists.txt
    M libc/src/setjmp/x86_64/setjmp.cpp
    A libc/src/setjmp/x86_64/sigsetjmp.cpp
    M libc/test/src/setjmp/CMakeLists.txt
    A libc/test/src/setjmp/sigsetjmp_test.cpp

  Log Message:
  -----------
  Reland "[libc] build fix for sigsetjmp (#137047)" (#137214)

Reland `sigsetjmp` patches with build fixes.

We wrap every target replying on the epilogue library into conditional
checks.

---------

Co-authored-by: Petr Hosek <phosek at google.com>


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

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/unittests/CMakeLists.txt
    M clang/unittests/Driver/ModuleCacheTest.cpp
    M clang/unittests/Frontend/OutputStreamTest.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M clang/unittests/Parse/CMakeLists.txt

  Log Message:
  -----------
  [clang] Merge gtest binaries into AllClangUnitTests (#134196)

This reduces the size of the clang/unittests build directory by 64% and
my overall build dir size by 5%. Static linking is the real driving
factor here, but even if the default build configuration used shared
libraries, I don't see why we should be building so many unit test
binaries.

To make the project more approachable for new contributors, I'm
attempting to make the build a bit less resource-intensive. Build
directory size is a common complaint, and this is low-hanging fruit.

I've noticed that incremental builds leave behind the old, stale gtest binaries, and lit will keep running them. This mostly doesn't matter unless they use shared libraries, which will eventually stop working after successive builds. You can clean up the old test binaries with this command in the build directory:
  $ find tools/clang/unittests/ -iname '*Tests' -type f | xargs rm

... or you can simply clean the build directory in a more holistic way.

---------

Co-authored-by: Petr Hosek <phosek at google.com>


  Commit: 1433c3e997ef7cc29f460d7b2f5da813acd0cafa
      https://github.com/llvm/llvm-project/commit/1433c3e997ef7cc29f460d7b2f5da813acd0cafa
  Author: Asher Mancinelli <ashermancinelli at gmail.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp

  Log Message:
  -----------
  [flang] Remove dead functions for getting LLVM intrinsics (#137743)

In cleaning up LowLevelIntrinsics I found some uncalled functions. We
would like to remove direct calls to llvm instructions wherever possible
to make it easier on consumers of our IR to match LLVM intrinsics, so if
this code is needed again we should use the op from the llvm dialect
instead anyways.


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

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

  Log Message:
  -----------
  [SLP] Simplify tryToFindDuplicates() (NFC) (#135766)

This NFC aims to simplify the control-flow and interfaces used in tryToFindDuplicates(). The point is to make it easier to understand where decisions for scalar de-duplication are made.

In particular:
 - Limit indentation
 - Rename some variables to better match their use case
- Always give consistent outputs for VL and ReuseShuffleIndices. This makes it possible to use the same code for building gather TreeEntry everywhere. This also allows to remove the TryToFindDuplicates lambda.


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

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

  Log Message:
  -----------
  [VPlan] Remove no longer needed VP intrinsic handling in VPWidenIntrinsicRecipe::computeCost. NFCI (#137573)

Whenever calls were transformed to VP intrinsics with EVL tail folding
in #110412, this workaround was added in computeCost to avoid an
assertion when checking ICA.getArgs().

However it turned out that the actual arguments were never used and this
assertion was removed in #115983 afterwards, so it's now fine to leave
the arguments empty and use the type based cost instead.

The type based cost and value based cost are the same for these VP
intrinsics.

This was tested by adding back in the transformation code in #110412 and
checking that no assertions were still hit.


  Commit: 2e713af20e58a1ca005fcae9165fda3007c0e400
      https://github.com/llvm/llvm-project/commit/2e713af20e58a1ca005fcae9165fda3007c0e400
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.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] refine verifier for TensorDescType (#137226)

This PR updates the verifier of TensorDescType after the extension of
LayoutAttr in #132425.


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

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp

  Log Message:
  -----------
  [lldb] Remove "error:" prefix from reverse execute error messages

Errors will get "error:" prefixes automatically so this is not needed.


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

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py

  Log Message:
  -----------
  [lldb] Disable TestDAP_attach

This is also flaky. See https://github.com/llvm/llvm-project/issues/137660


  Commit: 94dc0a0e7bc723af13a0923aa102fcc4d03c82a2
      https://github.com/llvm/llvm-project/commit/94dc0a0e7bc723af13a0923aa102fcc4d03c82a2
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

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

  Log Message:
  -----------
  [NFC][AMDGPU] Drop recursive types in LowerBufferFatPointers (#137735)

Now that IRMover and the rest of LLVM don't allow recursive types, drop
support for them from the clone of the IRMover code used when lowering
buffer fat pointer operations.


  Commit: 67783eb166664cb0be9da01d1dc83178615a0575
      https://github.com/llvm/llvm-project/commit/67783eb166664cb0be9da01d1dc83178615a0575
  Author: Lucas Duarte Prates <lucas.prates at arm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/CMakeLists.txt

  Log Message:
  -----------
  Re-land: [Analysis] Ensure use of strict fp exceptions in ConstantFolding (#137652)

To perform constant folding in math operations, the implementation of
the ConstantFolding Analysis relies on the use of the math functions
from the host's libm. In particular, it relies on checking the value of
errno and IEEE exceptions to determine when an operation is safe to be
constant-folded.

On some platforms, such as BSD or Darwin, math library functions don't
set errno, so the ConstantFolding check depends only on the value of
IEEE exceptions. As the FP exception behaviour is set to `ignore` by
default, the compiler can perform optimisations that would get in the
way of such checks being performed correctly.

This patch sets the FP exception behaviour to `strict` when compiling
the `ConstantFolding.cpp` source file, ensuring the value of IEEE
exceptions can be reliably used by its implementation.

This re-lands the changes from #136139, but using the `-ftrapping-math`
compile option instead of `-ffp-exception-behavior` for GCC support.


  Commit: 3f8035961f08d160851c40f7ac1f6e441149183c
      https://github.com/llvm/llvm-project/commit/3f8035961f08d160851c40f7ac1f6e441149183c
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M flang/test/Driver/flang-ld-powerpc.f90

  Log Message:
  -----------
  [driver] return immediately in `addArchSpecificRPath` and `getArchSpecificLibPaths` on AIX (#134520)

`addArchSpecificRPath` should immediately return for AIX as AIX doesn't
support `rpath` option.
`getArchSpecificLibPaths` should return as well as we don't want
`-L/ArchSepcificLibPaths` sent to the linker on AIX.


  Commit: 7f8b00a2c45963bb92ef9d783e3542039d75291a
      https://github.com/llvm/llvm-project/commit/7f8b00a2c45963bb92ef9d783e3542039d75291a
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    A .ci/all_requirements.txt
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    M .github/CODEOWNERS
    M .github/workflows/commit-access-greeter.yml
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/pr-code-format.yml
    M .github/workflows/premerge.yaml
    M bolt/docs/CMakeLists.txt
    M bolt/docs/doxygen.cfg.in
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Passes/ProfileQualityStats.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    A bolt/test/X86/high-segments.s
    A bolt/test/X86/nobits-symbol.s
    A bolt/test/X86/profile-quality-reporting-small-binary.s
    M bolt/test/X86/profile-quality-reporting.test
    M bolt/test/link_fdata.py
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.h
    M clang-tools-extra/clang-doc/Generators.cpp
    M clang-tools-extra/clang-doc/Generators.h
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/MDGenerator.cpp
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/Serialize.h
    M clang-tools-extra/clang-doc/YAMLGenerator.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/IncludeFixerContext.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeFixer.cpp
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/InlayHints.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Preamble.h
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/SourceCode.cpp
    M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/FileIndex.cpp
    M clang-tools-extra/clangd/index/Relation.cpp
    M clang-tools-extra/clangd/index/dex/Trigram.cpp
    M clang-tools-extra/clangd/refactor/Rename.cpp
    M clang-tools-extra/clangd/refactor/tweaks/RemoveUsingNamespace.cpp
    M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/docs/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    M clang-tools-extra/docs/doxygen.cfg.in
    M clang-tools-extra/modularize/ModularizeUtilities.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
    M clang/bindings/python/clang/cindex.py
    A clang/bindings/python/tests/cindex/INPUTS/a.inc
    A clang/bindings/python/tests/cindex/INPUTS/b.inc
    A clang/bindings/python/tests/cindex/INPUTS/testfile.c
    M clang/bindings/python/tests/cindex/test_file.py
    M clang/docs/CMakeLists.txt
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/UsersManual.rst
    M clang/docs/doxygen.cfg.in
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/NonTrivialTypeVisitor.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/AST/Type.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Basic/AddressSpaces.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsSPIRV.td
    M clang/include/clang/Basic/Cuda.h
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/HeaderInclude.h
    M clang/include/clang/Basic/LangOptions.def
    A clang/include/clang/Basic/OffloadArch.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    A clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypesDetails.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Distro.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/AnalysisBasedWarnings.h
    M clang/include/clang/Sema/Lookup.h
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaARM.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/Disasm.cpp
    M clang/lib/AST/ByteCode/DynamicAllocator.cpp
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBlock.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/PrimType.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/lib/AST/ByteCode/State.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumCXXABI.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/Linkage.h
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/Randstruct.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/IntervalPartition.cpp
    M clang/lib/Analysis/ThreadSafety.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/Module.cpp
    A clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/AVR.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/TCE.h
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    A clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.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
    A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    A clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
    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/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBlocks.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGLoopInfo.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/DirectX.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/Distro.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/MultilibBuilder.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/XRayArgs.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/FormatTokenLexer.h
    M clang/lib/Format/SortJavaScriptImports.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/ASTMerge.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/ChainedIncludesSource.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Index/IndexBody.cpp
    M clang/lib/Interpreter/DeviceOffload.cpp
    M clang/lib/Interpreter/DeviceOffload.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/ParseStmtAsm.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaCUDA.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
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    A clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaSPIRV.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Sema/TypeLocBuilder.h
    M clang/lib/Serialization/ASTCommon.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ModuleManager.cpp
    M clang/lib/Serialization/MultiOnDiskHashTable.h
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/Inclusions/Stdlib/StandardLibrary.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/test/AST/ByteCode/arrays.cpp
    M clang/test/AST/ByteCode/builtin-constant-p.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    A clang/test/AST/ByteCode/builtin-object-size.cpp
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/cxx11-pedantic.cpp
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx26.cpp
    A clang/test/AST/ByteCode/dynalloc-limits.cpp
    A clang/test/AST/ByteCode/i686.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/AST/ByteCode/literals.cpp
    M clang/test/AST/ByteCode/memberpointers.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ByteCode/records.cpp
    M clang/test/AST/ByteCode/unions.cpp
    M clang/test/AST/HLSL/OutArgExpr.hlsl
    A clang/test/AST/HLSL/PackedStruct.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    A clang/test/AST/ast-crash-dump-mangled-name-json.m
    M clang/test/AST/ast-dump-recovery.cpp
    M clang/test/AST/ast-print-openacc-set-construct.cpp
    M clang/test/AST/new-unknown-type.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
    A clang/test/Analysis/Checkers/WebKit/unchecked-call-arg.cpp
    M clang/test/Analysis/Checkers/WebKit/unchecked-members.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
    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-arc.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    A clang/test/Analysis/PR135665.cpp
    M clang/test/Analysis/builtin_overflow.c
    M clang/test/Analysis/builtin_overflow_notes.c
    A clang/test/Analysis/pragma-diag-control.cpp
    M clang/test/C/C23/n2607.c
    M clang/test/C/drs/dr1xx.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/binop.cpp
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/cmp.cpp
    M clang/test/CIR/CodeGen/if.cpp
    M clang/test/CIR/CodeGen/int-to-bool.cpp
    A clang/test/CIR/CodeGen/linkage-spec.cpp
    M clang/test/CIR/CodeGen/local-vars.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    A clang/test/CIR/CodeGen/namespace.cpp
    M clang/test/CIR/CodeGen/nullptr-init.cpp
    M clang/test/CIR/CodeGen/struct.c
    M clang/test/CIR/CodeGen/struct.cpp
    A clang/test/CIR/CodeGen/typedef.c
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/CodeGen/union.c
    A clang/test/CIR/CodeGen/vector-ext.cpp
    A clang/test/CIR/CodeGen/vector.cpp
    M clang/test/CIR/CodeGenOpenACC/data.c
    M clang/test/CIR/CodeGenOpenACC/init.c
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c
    M clang/test/CIR/CodeGenOpenACC/serial.c
    M clang/test/CIR/CodeGenOpenACC/set.c
    M clang/test/CIR/CodeGenOpenACC/shutdown.c
    A clang/test/CIR/CodeGenOpenACC/wait.c
    A clang/test/CIR/IR/invalid-vector-zero-size.cir
    A clang/test/CIR/IR/invalid-vector.cir
    A clang/test/CIR/IR/stack-save-restore.cir
    M clang/test/CIR/IR/struct.cir
    A clang/test/CIR/IR/vector.cir
    M clang/test/CIR/Lowering/array.cpp
    M clang/test/CIR/Lowering/basic.cpp
    M clang/test/CIR/Lowering/func-simple.cpp
    M clang/test/CIR/Lowering/local-vars.cpp
    A clang/test/CIR/Lowering/select.cir
    A clang/test/CIR/Lowering/stack-save-restore.cir
    M clang/test/CIR/func-simple.cpp
    M clang/test/CIR/global-var-linkage.cpp
    M clang/test/CMakeLists.txt
    M clang/test/CodeGen/AArch64/gcs.c
    A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_fp8.c
    M clang/test/CodeGen/AArch64/targetattr.c
    R clang/test/CodeGen/AArch64/ubsan-handler-pass-by-ref.c
    R clang/test/CodeGen/Inputs/cuda.h
    M clang/test/CodeGen/X86/avx512fp16-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/allow-ubsan-check.c
    A clang/test/CodeGen/arm-interrupt-save-fp-attr-status-regs.c
    A clang/test/CodeGen/arm-interrupt-save-fp-attr.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/avr/avr-inline-asm-constraints.c
    M clang/test/CodeGen/avr/avr-unsupported-inline-asm-constraints.c
    A clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
    M clang/test/CodeGen/lifetime-sanitizer.c
    R clang/test/CodeGen/nvptx-surface.cu
    A clang/test/CodeGen/ptrauth-in-c-struct.c
    A clang/test/CodeGen/ptrauth-qualifier-blocks.c
    M clang/test/CodeGen/target-data.c
    R clang/test/CodeGen/ubsan-attr.cpp
    M clang/test/CodeGenCUDA/Inputs/cuda.h
    M clang/test/CodeGenCUDA/builtins-sm90.cu
    M clang/test/CodeGenCUDA/correctly-rounded-div.cu
    A clang/test/CodeGenCUDA/lambda-constexpr-capture.cu
    A clang/test/CodeGenCUDA/nvptx-surface.cu
    M clang/test/CodeGenCUDA/offloading-entries.cu
    M clang/test/CodeGenCUDA/profile-coverage-mapping.cu
    M clang/test/CodeGenCUDA/propagate-attributes.cu
    A clang/test/CodeGenCUDASPIRV/printf.cu
    A clang/test/CodeGenCXX/bpf-debug-structors.cpp
    A clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
    A clang/test/CodeGenCXX/cxx20-module-initializer-pacbti.cpp
    R clang/test/CodeGenCXX/debug-info-dtor-implicit-args.cpp
    A clang/test/CodeGenCXX/fake-use-musttail.cpp
    M clang/test/CodeGenCXX/lifetime-sanitizer.cpp
    A clang/test/CodeGenCXX/mangle-ms-matrix.cpp
    M clang/test/CodeGenCXX/mangle-template.cpp
    M clang/test/CodeGenCXX/nullptr.cpp
    M clang/test/CodeGenCXX/visibility.cpp
    A clang/test/CodeGenDirectX/unsupported_intrinsic.hlsl
    M clang/test/CodeGenHLSL/ArrayAssignable.hlsl
    M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BoolVector.hlsl
    M clang/test/CodeGenHLSL/builtins/AppendStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/ConsumeStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
    M clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl
    A clang/test/CodeGenHLSL/builtins/clamp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    A clang/test/CodeGenHLSL/builtins/faceforward.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    A clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf.hlsl
    A clang/test/CodeGenHLSL/builtins/max-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    A clang/test/CodeGenHLSL/builtins/min-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl
    M clang/test/CodeGenHLSL/cbuffer.hlsl
    M clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl
    M clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/sret_output.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl
    A clang/test/CodeGenSPIRV/Builtins/faceforward.c
    A clang/test/Driver/Xclangas.s
    M clang/test/Driver/arm-features.c
    M clang/test/Driver/arm-mfpu.c
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/clang_f_opts.c
    A clang/test/Driver/clang_f_opts_withspaces.c
    M clang/test/Driver/cxa-atexit.cpp
    A clang/test/Driver/darwin-header-search-libcxx-2.cpp
    M clang/test/Driver/darwin-header-search-libcxx.cpp
    A clang/test/Driver/dxc_I.test
    M clang/test/Driver/extend-variable-liveness.c
    M clang/test/Driver/fsanitize.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a510.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a710.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a715.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a725.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82ae.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x2.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x4.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-x925.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-512tvb.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n2.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3.c
    M clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3ae.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Driver/sanitizer-ld.c
    M clang/test/Format/lit.local.cfg
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/r600.languageOptsOpenCL.cl
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/Misc/warning-flags-enabled.c
    A clang/test/Modules/Inputs/PR137102/module.modulemap
    A clang/test/Modules/Inputs/PR137102/type_aware_destroying_new_delete.h
    A clang/test/Modules/emit-module-interface-pcm-input.cpp
    M clang/test/Modules/explicit-build.cpp
    A clang/test/Modules/type-aware-destroying-new-and-delete-modules.cpp
    M clang/test/OpenMP/for_order_messages.cpp
    A clang/test/PCH/Inputs/type_aware_destroying_new_delete.h
    A clang/test/PCH/type-aware-destroying-new-and-delete-pch.cpp
    M clang/test/Parser/cxx-concepts-requires-clause.cpp
    A clang/test/Parser/extern-template-attributes.cpp
    M clang/test/Parser/typeof.c
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/arm-target-features.c
    A clang/test/Preprocessor/print-header-crash.modulemap
    M clang/test/Preprocessor/print-header-json.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    A clang/test/Sema/aarch64-sme2p2-instrinsics/acle_sme2p2_fp8_imm.cpp
    M clang/test/Sema/arm-interrupt-attr.c
    A clang/test/Sema/arm-interrupt-save-fp-attr.c
    M clang/test/Sema/assign.c
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/attr-counted-by-late-parsed-struct-ptrs.c
    M clang/test/Sema/attr-counted-by-or-null-last-field.c
    M clang/test/Sema/attr-counted-by-or-null-late-parsed-struct-ptrs.c
    A clang/test/Sema/attr-counted-by-or-null-struct-ptrs-completable-incomplete-pointee.c
    M clang/test/Sema/attr-counted-by-or-null-struct-ptrs.c
    A clang/test/Sema/attr-counted-by-struct-ptrs-completable-incomplete-pointee.c
    M clang/test/Sema/attr-counted-by-struct-ptrs.c
    M clang/test/Sema/attr-counted-by-vla.c
    M clang/test/Sema/block-return.c
    M clang/test/Sema/builtins-bpf.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/builtins-overflow.c
    A clang/test/Sema/decl-hidden-in-c++.c
    M clang/test/Sema/enable_if.c
    M clang/test/Sema/implicit-decl.c
    A clang/test/Sema/implicit-int-enum-conversion.c
    A clang/test/Sema/implicit-void-ptr-cast.c
    M clang/test/Sema/overloadable.c
    M clang/test/Sema/ptrauth-qualifier.c
    M clang/test/Sema/riscv-interrupt-attr-qci.c
    A clang/test/Sema/riscv-interrupt-attr-sifive.c
    M clang/test/Sema/riscv-interrupt-attr.c
    M clang/test/Sema/sizeless-1.c
    M clang/test/Sema/typedef-retain.c
    M clang/test/Sema/varargs-x86-64.c
    A clang/test/Sema/warn-default-const-init.c
    M clang/test/Sema/warn-unused-function.c
    A clang/test/SemaCXX/bitfield-preferred-type-sizing.cpp
    A clang/test/SemaCXX/bug149071318.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/test/SemaCXX/constexpr-vectors-access-elements.cpp
    A clang/test/SemaCXX/cxx20-c99-designator.cpp
    M clang/test/SemaCXX/decltype.cpp
    M clang/test/SemaCXX/ptrauth-qualifier.cpp
    A clang/test/SemaCXX/ptrauth-triviality.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
    M clang/test/SemaCXX/windows-Wpadded-bitfield.cpp
    A clang/test/SemaHLSL/BuiltIns/faceforward-errors.hlsl
    A clang/test/SemaHLSL/Language/InitIncompleteArrays.hlsl
    M clang/test/SemaHLSL/Language/InitListAST.hlsl
    M clang/test/SemaObjC/message.m
    M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/combined-construct-collapse-clause.cpp
    M clang/test/SemaOpenACC/combined-construct-if-clause.c
    M clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
    M clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
    M clang/test/SemaOpenACC/combined-construct-tile-clause.cpp
    M clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
    M clang/test/SemaOpenACC/combined-construct.cpp
    M clang/test/SemaOpenACC/compute-construct-async-clause.c
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/compute-construct-if-clause.c
    M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
    M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
    M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
    M clang/test/SemaOpenACC/data-construct-async-clause.c
    M clang/test/SemaOpenACC/data-construct-copy-clause.c
    M clang/test/SemaOpenACC/data-construct-copyin-clause.c
    M clang/test/SemaOpenACC/data-construct-copyout-clause.c
    M clang/test/SemaOpenACC/data-construct-create-clause.c
    M clang/test/SemaOpenACC/data-construct-default-clause.c
    M clang/test/SemaOpenACC/data-construct-delete-clause.c
    M clang/test/SemaOpenACC/data-construct-device_type-clause.c
    M clang/test/SemaOpenACC/data-construct-no_create-clause.c
    M clang/test/SemaOpenACC/data-construct-use_device-clause.c
    M clang/test/SemaOpenACC/data-construct.cpp
    M clang/test/SemaOpenACC/init-construct.cpp
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
    M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
    M clang/test/SemaOpenACC/loop-construct.cpp
    M clang/test/SemaOpenACC/no-empty-pqr-list.cpp
    M clang/test/SemaOpenACC/routine-construct-clauses.cpp
    M clang/test/SemaOpenACC/set-construct.cpp
    M clang/test/SemaOpenACC/shutdown-construct.cpp
    M clang/test/SemaOpenACC/update-construct.cpp
    M clang/test/SemaOpenCL/cl20-device-side-enqueue.cl
    M clang/test/SemaOpenCL/invalid-block.cl
    M clang/test/SemaOpenMP/atomic-capture-const-no-crash.c
    A clang/test/SemaSPIRV/BuiltIns/faceforward-errors.c
    M clang/test/SemaSPIRV/BuiltIns/smoothstep-errors.c
    M clang/test/SemaTemplate/address_space-dependent.cpp
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
    M clang/tools/clang-format/clang-format-diff.py
    M clang/tools/clang-import-test/clang-import-test.cpp
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/driver/driver.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/AttrTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M clang/unittests/Analysis/FlowSensitive/SimplifyConstraintsTest.cpp
    M clang/unittests/Analysis/MacroExpansionContextTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/CMakeLists.txt
    M clang/unittests/CodeGen/TestCompiler.h
    M clang/unittests/Driver/ModuleCacheTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestCSharp.cpp
    M clang/unittests/Format/FormatTestJS.cpp
    M clang/unittests/Format/MacroCallReconstructorTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Frontend/ASTUnitTest.cpp
    M clang/unittests/Frontend/OutputStreamTest.cpp
    M clang/unittests/Frontend/UtilsTest.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/CMakeLists.txt
    M clang/unittests/Interpreter/ExceptionTests/InterpreterExceptionTest.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp
    M clang/unittests/Lex/HeaderSearchTest.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/CMakeLists.txt
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
    M clang/unittests/libclang/LibclangTest.cpp
    M clang/utils/ClangVisualizers/clang.natvis
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/www/cxx_dr_status.html
    M cmake/Modules/CMakePolicy.cmake
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/include/fuzzer/FuzzedDataProvider.h
    M compiler-rt/lib/asan/asan_report.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/lib/builtins/clzdi2.c
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    M compiler-rt/lib/builtins/int_lib.h
    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_common_interceptors_ioctl.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    M compiler-rt/lib/tysan/tysan.cpp
    M compiler-rt/test/asan/TestCases/asan_lsan_deadlock.cpp
    M compiler-rt/test/lit.common.configured.in
    M compiler-rt/test/profile/AIX/pgo-lto-bcdtor-function-section.test
    M compiler-rt/test/profile/instrprof-api.c
    M compiler-rt/test/profile/instrprof-reset-counters.c
    A compiler-rt/test/tsan/stack_race3.cpp
    A compiler-rt/test/tysan/derrived_default_constructor.cpp
    A compiler-rt/test/tysan/inherited_member.cpp
    M compiler-rt/test/ubsan/CMakeLists.txt
    M compiler-rt/test/ubsan_minimal/CMakeLists.txt
    A compiler-rt/test/ubsan_minimal/TestCases/icall.c
    M compiler-rt/test/ubsan_minimal/lit.common.cfg.py
    M compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in
    M flang-rt/include/flang-rt/runtime/type-info.h
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/kernel.cpp
    M flang-rt/lib/runtime/derived-api.cpp
    M flang-rt/lib/runtime/edit-input.cpp
    M flang-rt/lib/runtime/edit-output.cpp
    M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
    M flang-rt/unittests/Runtime/NumericalFormatTest.cpp
    M flang/CMakeLists.txt
    M flang/docs/CMakeLists.txt
    M flang/docs/Extensions.md
    M flang/docs/FortranForCProgrammers.md
    A flang/docs/FortranStandardsSupport.md
    M flang/docs/ModFiles.md
    A flang/docs/OpenMPSupport.md
    M flang/docs/doxygen.cfg.in
    M flang/docs/index.md
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/include/flang/Evaluate/check-expression.h
    M flang/include/flang/Lower/ConvertExprToHLFIR.h
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Optimizer/Builder/DirectivesCommon.h
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Transforms/CUFGPUToLLVMConversion.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/token-sequence.h
    M flang/include/flang/Runtime/CUDA/kernel.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/ConstantArgumentGlobalisation.cpp
    M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/token-sequence.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/rewrite-directives.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/module/iso_c_binding.f90
    A flang/test/Analysis/AliasAnalysis/alias-analysis-pack-array.fir
    M flang/test/Driver/emit-mlir.f90
    M flang/test/Driver/flang-ld-powerpc.f90
    A flang/test/Driver/m32-option.f90
    M flang/test/Fir/CUDA/cuda-gpu-launch-func.mlir
    M flang/test/Fir/CUDA/cuda-launch.fir
    M flang/test/Fir/CUDA/cuda-stream.mlir
    M flang/test/Fir/CUDA/cuda-target-rewrite.mlir
    M flang/test/Fir/OpenACC/openacc-mappable.fir
    M flang/test/Fir/convert-to-llvm-target.fir
    M flang/test/Fir/target-rewrite-integer.fir
    R flang/test/HLFIR/all-elemental.fir
    R flang/test/HLFIR/any-elemental.fir
    R flang/test/HLFIR/count-elemental.fir
    R flang/test/HLFIR/maxloc-elemental.fir
    R flang/test/HLFIR/maxval-elemental.fir
    R flang/test/HLFIR/minloc-elemental.fir
    R flang/test/HLFIR/minval-elemental.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-all.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-any.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-count.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-maxloc.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-minloc.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
    M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
    M flang/test/Lower/HLFIR/calls-f77.f90
    A flang/test/Lower/HLFIR/dummy-scope.f90
    M flang/test/Lower/HLFIR/procedure-pointer.f90
    M flang/test/Lower/Intrinsics/getpid.f90
    M flang/test/Lower/Intrinsics/time.f90
    M flang/test/Lower/OpenACC/acc-atomic-capture.f90
    M flang/test/Lower/OpenACC/acc-bounds.f90
    M flang/test/Lower/OpenACC/acc-declare-globals.f90
    M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-enter-data.f90
    M flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Lower/OpenMP/allocatable-map.f90
    M flang/test/Lower/OpenMP/array-bounds.f90
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/copyin.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/real10.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
    M flang/test/Lower/io-derived-type.f90
    M flang/test/Lower/main_location.f90
    M flang/test/Lower/parent-component.f90
    A flang/test/Parser/OpenMP/cancel.f90
    M flang/test/Parser/continuation-in-conditional-compilation.f
    M flang/test/Parser/unmatched-parens.f90
    A flang/test/Preprocessing/exponent-bug.F90
    M flang/test/Preprocessing/implicit-contin3.F90
    M flang/test/Semantics/OpenACC/acc-data.f90
    M flang/test/Semantics/OpenACC/acc-kernels.f90
    M flang/test/Semantics/OpenACC/acc-parallel.f90
    M flang/test/Semantics/OpenACC/acc-serial.f90
    A flang/test/Semantics/OpenACC/bug135810-1.f90
    A flang/test/Semantics/OpenACC/bug135810-2.f90
    M flang/test/Semantics/OpenMP/allocate04.f90
    M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
    M flang/test/Semantics/OpenMP/critical-hint-clause.f90
    M flang/test/Semantics/OpenMP/nested-simd.f90
    A flang/test/Semantics/cuf19.cuf
    M flang/test/Semantics/resolve11.f90
    M flang/test/Semantics/typeinfo01.f90
    A flang/test/Transforms/tbaa-with-dummy-scope2.fir
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/docs/headers/stdfix.rst
    M libc/fuzzing/__support/CMakeLists.txt
    R libc/fuzzing/__support/fake_heap.s
    M libc/fuzzing/__support/freelist_heap_fuzz.cpp
    M libc/hdr/CMakeLists.txt
    A libc/hdr/offsetof_macros.h
    M libc/include/assert.h.def
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/jmp_buf.h
    M libc/include/math.yaml
    M libc/include/setjmp.yaml
    M libc/include/stdfix.yaml
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/macros/null_check.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/acospif16.h
    A libc/src/math/atanhf16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/acospif16.cpp
    A libc/src/math/generic/asin.cpp
    A libc/src/math/generic/asin_utils.h
    A libc/src/math/generic/atanhf16.cpp
    M libc/src/math/generic/common_constants.cpp
    M libc/src/math/generic/common_constants.h
    M libc/src/math/generic/explogxf.h
    M libc/src/math/generic/expm1f.cpp
    M libc/src/setjmp/CMakeLists.txt
    A libc/src/setjmp/linux/CMakeLists.txt
    A libc/src/setjmp/linux/sigsetjmp_epilogue.cpp
    M libc/src/setjmp/setjmp_impl.h
    A libc/src/setjmp/siglongjmp.cpp
    A libc/src/setjmp/siglongjmp.h
    A libc/src/setjmp/sigsetjmp.h
    A libc/src/setjmp/sigsetjmp_epilogue.h
    M libc/src/setjmp/x86_64/CMakeLists.txt
    M libc/src/setjmp/x86_64/setjmp.cpp
    A libc/src/setjmp/x86_64/sigsetjmp.cpp
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/idivk.cpp
    A libc/src/stdfix/idivk.h
    A libc/src/stdfix/idivlk.cpp
    A libc/src/stdfix/idivlk.h
    A libc/src/stdfix/idivlr.cpp
    A libc/src/stdfix/idivlr.h
    A libc/src/stdfix/idivr.cpp
    A libc/src/stdfix/idivr.h
    A libc/src/stdfix/idivuk.cpp
    A libc/src/stdfix/idivuk.h
    A libc/src/stdfix/idivulk.cpp
    A libc/src/stdfix/idivulk.h
    A libc/src/stdfix/idivulr.cpp
    A libc/src/stdfix/idivulr.h
    A libc/src/stdfix/idivur.cpp
    A libc/src/stdfix/idivur.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/test/src/__support/CMakeLists.txt
    R libc/test/src/__support/fake_heap.s
    M libc/test/src/__support/freelist_heap_test.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/acospif16_test.cpp
    A libc/test/src/math/asin_test.cpp
    A libc/test/src/math/atanhf16_test.cpp
    R libc/test/src/math/performance_testing/BinaryOpSingleOutputPerf.h
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/PerfTest.h
    R libc/test/src/math/performance_testing/SingleInputSingleOutputPerf.h
    M libc/test/src/math/performance_testing/ceilf_perf.cpp
    M libc/test/src/math/performance_testing/cosf_perf.cpp
    M libc/test/src/math/performance_testing/exp10f16_perf.cpp
    M libc/test/src/math/performance_testing/exp2f16_perf.cpp
    M libc/test/src/math/performance_testing/exp2f_perf.cpp
    M libc/test/src/math/performance_testing/expf16_perf.cpp
    M libc/test/src/math/performance_testing/expf_perf.cpp
    M libc/test/src/math/performance_testing/expm1f_perf.cpp
    M libc/test/src/math/performance_testing/fabsf_perf.cpp
    M libc/test/src/math/performance_testing/floorf_perf.cpp
    M libc/test/src/math/performance_testing/fmod_perf.cpp
    M libc/test/src/math/performance_testing/fmodf128_perf.cpp
    M libc/test/src/math/performance_testing/fmodf16_perf.cpp
    M libc/test/src/math/performance_testing/fmodf_perf.cpp
    M libc/test/src/math/performance_testing/fmodl_perf.cpp
    M libc/test/src/math/performance_testing/fmul_perf.cpp
    M libc/test/src/math/performance_testing/fmull_perf.cpp
    M libc/test/src/math/performance_testing/hypot_perf.cpp
    M libc/test/src/math/performance_testing/hypotf16_perf.cpp
    M libc/test/src/math/performance_testing/hypotf_perf.cpp
    M libc/test/src/math/performance_testing/log10f_perf.cpp
    M libc/test/src/math/performance_testing/log1pf_perf.cpp
    M libc/test/src/math/performance_testing/log2f_perf.cpp
    M libc/test/src/math/performance_testing/logbf_perf.cpp
    M libc/test/src/math/performance_testing/logf_perf.cpp
    M libc/test/src/math/performance_testing/max_min_funcs_perf.cpp
    M libc/test/src/math/performance_testing/misc_basic_ops_perf.cpp
    M libc/test/src/math/performance_testing/nearbyintf_perf.cpp
    M libc/test/src/math/performance_testing/nearest_integer_funcs_perf.cpp
    M libc/test/src/math/performance_testing/rintf_perf.cpp
    M libc/test/src/math/performance_testing/roundf_perf.cpp
    M libc/test/src/math/performance_testing/sinf_perf.cpp
    M libc/test/src/math/performance_testing/sqrtf128_perf.cpp
    M libc/test/src/math/performance_testing/sqrtf_perf.cpp
    M libc/test/src/math/performance_testing/truncf_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/acospif16_test.cpp
    A libc/test/src/math/smoke/asin_test.cpp
    A libc/test/src/math/smoke/atanhf16_test.cpp
    M libc/test/src/setjmp/CMakeLists.txt
    A libc/test/src/setjmp/sigsetjmp_test.cpp
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/IdivTest.h
    A libc/test/src/stdfix/idivk_test.cpp
    A libc/test/src/stdfix/idivlk_test.cpp
    A libc/test/src/stdfix/idivlr_test.cpp
    A libc/test/src/stdfix/idivr_test.cpp
    A libc/test/src/stdfix/idivuk_test.cpp
    A libc/test/src/stdfix/idivulk_test.cpp
    A libc/test/src/stdfix/idivulr_test.cpp
    A libc/test/src/stdfix/idivur_test.cpp
    M libc/utils/MPFRWrapper/MPCommon.cpp
    M libc/utils/MPFRWrapper/MPCommon.h
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h
    M libclc/CMakeLists.txt
    M libclc/amdgcn/lib/SOURCES
    R libclc/amdgcn/lib/math/fmax.cl
    R libclc/amdgcn/lib/math/fmin.cl
    R libclc/amdgpu/lib/SOURCES_3.9
    R libclc/amdgpu/lib/SOURCES_4.0
    R libclc/amdgpu/lib/SOURCES_5.0
    R libclc/amdgpu/lib/shared/vload_half_helpers.ll
    R libclc/amdgpu/lib/shared/vstore_half_helpers.ll
    A libclc/clc/include/clc/math/clc_fmax.h
    A libclc/clc/include/clc/math/clc_fmin.h
    A libclc/clc/include/clc/math/clc_fract.h
    R libclc/clc/include/clc/math/unary_builtin.inc
    A libclc/clc/include/clc/shared/binary_decl_with_scalar_second_arg.inc
    A libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
    M libclc/clc/lib/amdgcn/SOURCES
    A libclc/clc/lib/amdgcn/math/clc_fmax.cl
    A libclc/clc/lib/amdgcn/math/clc_fmin.cl
    M libclc/clc/lib/generic/SOURCES
    M libclc/clc/lib/generic/math/clc_ceil.cl
    M libclc/clc/lib/generic/math/clc_fabs.cl
    M libclc/clc/lib/generic/math/clc_floor.cl
    A libclc/clc/lib/generic/math/clc_fmax.cl
    A libclc/clc/lib/generic/math/clc_fmin.cl
    A libclc/clc/lib/generic/math/clc_fract.cl
    A libclc/clc/lib/generic/math/clc_fract.inc
    M libclc/clc/lib/generic/math/clc_rint.cl
    M libclc/clc/lib/generic/math/clc_round.cl
    M libclc/clc/lib/generic/math/clc_trunc.cl
    M libclc/clc/lib/r600/SOURCES
    A libclc/clc/lib/r600/math/clc_fmax.cl
    A libclc/clc/lib/r600/math/clc_fmin.cl
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/generic/include/clc/clc.h
    R libclc/generic/include/clc/clcmacros.h
    M libclc/generic/include/clc/image/image.h
    M libclc/generic/include/clc/math/fract.h
    R libclc/generic/include/clc/math/fract.inc
    M libclc/generic/include/clc/shared/vload.h
    M libclc/generic/include/clc/shared/vstore.h
    M libclc/generic/lib/math/acos.cl
    M libclc/generic/lib/math/acosh.cl
    M libclc/generic/lib/math/acospi.cl
    M libclc/generic/lib/math/asin.cl
    M libclc/generic/lib/math/asinh.cl
    M libclc/generic/lib/math/asinpi.cl
    M libclc/generic/lib/math/atan.cl
    M libclc/generic/lib/math/atanh.cl
    M libclc/generic/lib/math/atanpi.cl
    M libclc/generic/lib/math/ceil.cl
    M libclc/generic/lib/math/fabs.cl
    M libclc/generic/lib/math/floor.cl
    M libclc/generic/lib/math/fmax.cl
    M libclc/generic/lib/math/fmin.cl
    M libclc/generic/lib/math/fract.cl
    R libclc/generic/lib/math/fract.inc
    M libclc/generic/lib/math/log1p.cl
    M libclc/generic/lib/math/rint.cl
    M libclc/generic/lib/math/round.cl
    M libclc/generic/lib/math/trunc.cl
    M libclc/generic/lib/shared/vload.cl
    M libclc/generic/lib/shared/vload_half.inc
    M libclc/generic/lib/shared/vstore.cl
    M libclc/generic/lib/shared/vstore_half.inc
    R libclc/ptx/lib/SOURCES_3.9
    R libclc/ptx/lib/SOURCES_4.0
    R libclc/ptx/lib/SOURCES_5.0
    R libclc/ptx/lib/shared/vload_half_helpers.ll
    R libclc/ptx/lib/shared/vstore_half_helpers.ll
    M libclc/r600/lib/SOURCES
    R libclc/r600/lib/math/fmax.cl
    R libclc/r600/lib/math/fmin.cl
    M libcxx/docs/ReleaseNotes/21.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/for_each.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__bit/countl.h
    M libcxx/include/__bit/countr.h
    M libcxx/include/__bit_reference
    M libcxx/include/__charconv/to_chars_integral.h
    M libcxx/include/__charconv/traits.h
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__hash_table
    M libcxx/include/__ranges/to.h
    M libcxx/include/__string/extern_template_lists.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/is_convertible.h
    R libcxx/include/__type_traits/is_nothrow_convertible.h
    M libcxx/include/__type_traits/rank.h
    M libcxx/include/__utility/pair.h
    M libcxx/include/algorithm
    M libcxx/include/array
    M libcxx/include/bitset
    M libcxx/include/codecvt
    M libcxx/include/condition_variable
    M libcxx/include/ios
    M libcxx/include/locale
    M libcxx/include/module.modulemap.in
    M libcxx/include/streambuf
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/system_error
    M libcxx/include/type_traits
    M libcxx/include/vector
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/functional.cpp
    M libcxx/src/string.cpp
    M libcxx/test/libcxx/algorithms/robust_against_copying_comparators.pass.cpp
    M libcxx/test/libcxx/ranges/range.utility/range.utility.conv/to.static_assert.verify.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    A libcxx/test/std/utilities/utility/pairs/pairs.pair/explicit_deduction_guides.pass.cpp
    M libcxx/test/support/test_macros.h
    M libcxx/utils/ci/Dockerfile
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M libcxxabi/test/test_demangle.pass.cpp
    M lld/COFF/MapFile.cpp
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/BPSectionOrderer.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/SymbolTable.cpp
    M lld/ELF/SymbolTable.h
    M lld/ELF/SyntheticSections.cpp
    M lld/MachO/BPSectionOrderer.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/MapFile.cpp
    M lld/include/lld/Common/BPSectionOrdererBase.inc
    A lld/test/ELF/aarch64-got-merging-icf.s
    M lld/test/ELF/icf-preemptible.s
    A lld/test/ELF/lto/aarch64-pac-got-func.ll
    A lld/test/MachO/reexport-with-rpath.s
    M lld/test/wasm/Inputs/start-lib1.s
    M lld/wasm/Config.h
    M lld/wasm/Driver.cpp
    M lld/wasm/InputChunks.cpp
    M lld/wasm/InputFiles.cpp
    M lld/wasm/MarkLive.cpp
    M lld/wasm/OutputSections.cpp
    M lld/wasm/Symbols.cpp
    M lld/wasm/Symbols.h
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/Writer.cpp
    M lldb/docs/doxygen.cfg.in
    M lldb/docs/resources/build.rst
    M lldb/docs/use/formatting.rst
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/API/SBExecutionContext.h
    M lldb/include/lldb/API/SBInstructionList.h
    M lldb/include/lldb/Core/Debugger.h
    A lldb/include/lldb/Core/DemangledNameInfo.h
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/include/lldb/Core/IOHandler.h
    M lldb/include/lldb/Core/Mangled.h
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Core/Telemetry.h
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/include/lldb/Host/Editline.h
    M lldb/include/lldb/Host/linux/AbstractSocket.h
    M lldb/include/lldb/Host/linux/Support.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    A lldb/include/lldb/Host/posix/Support.h
    M lldb/include/lldb/Interpreter/CommandInterpreter.h
    M lldb/include/lldb/Interpreter/CommandObject.h
    M lldb/include/lldb/Interpreter/OptionValue.h
    M lldb/include/lldb/Interpreter/OptionValueArch.h
    M lldb/include/lldb/Interpreter/OptionValueArray.h
    M lldb/include/lldb/Interpreter/OptionValueBoolean.h
    M lldb/include/lldb/Interpreter/OptionValueChar.h
    M lldb/include/lldb/Interpreter/OptionValueDictionary.h
    M lldb/include/lldb/Interpreter/OptionValueEnumeration.h
    M lldb/include/lldb/Interpreter/OptionValueFileColonLine.h
    M lldb/include/lldb/Interpreter/OptionValueFileSpec.h
    M lldb/include/lldb/Interpreter/OptionValueFileSpecList.h
    M lldb/include/lldb/Interpreter/OptionValueFormat.h
    M lldb/include/lldb/Interpreter/OptionValueFormatEntity.h
    M lldb/include/lldb/Interpreter/OptionValueLanguage.h
    M lldb/include/lldb/Interpreter/OptionValuePathMappings.h
    M lldb/include/lldb/Interpreter/OptionValueProperties.h
    M lldb/include/lldb/Interpreter/OptionValueRegex.h
    M lldb/include/lldb/Interpreter/OptionValueSInt64.h
    M lldb/include/lldb/Interpreter/OptionValueString.h
    M lldb/include/lldb/Interpreter/OptionValueUInt64.h
    M lldb/include/lldb/Interpreter/OptionValueUUID.h
    M lldb/include/lldb/Symbol/Block.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/Language.h
    M lldb/include/lldb/Target/PathMappingList.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Utility/CompletionRequest.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/SBCommandInterpreter.cpp
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/API/SBInstructionList.cpp
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectDisassemble.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/CMakeLists.txt
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/DataFileCache.cpp
    M lldb/source/Core/Debugger.cpp
    A lldb/source/Core/DemangledNameInfo.cpp
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandler.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Core/Telemetry.cpp
    M lldb/source/Host/CMakeLists.txt
    M lldb/source/Host/aix/Host.cpp
    M lldb/source/Host/common/Editline.cpp
    M lldb/source/Host/linux/AbstractSocket.cpp
    M lldb/source/Host/linux/Host.cpp
    M lldb/source/Host/linux/Support.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    A lldb/source/Host/posix/Support.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/OptionValueArch.cpp
    M lldb/source/Interpreter/OptionValueArray.cpp
    M lldb/source/Interpreter/OptionValueDictionary.cpp
    M lldb/source/Interpreter/OptionValueEnumeration.cpp
    M lldb/source/Interpreter/OptionValueFileColonLine.cpp
    M lldb/source/Interpreter/OptionValueFileSpecList.cpp
    M lldb/source/Interpreter/OptionValueFormat.cpp
    M lldb/source/Interpreter/OptionValueFormatEntity.cpp
    M lldb/source/Interpreter/OptionValueLanguage.cpp
    M lldb/source/Interpreter/OptionValuePathMappings.cpp
    M lldb/source/Interpreter/OptionValueProperties.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
    A lldb/source/Plugins/Language/CPlusPlus/LanguageCPlusPlusProperties.td
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Process/AIX/NativeProcessAIX.h
    M lldb/source/Plugins/Process/Linux/IntelPTCollector.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.h
    M lldb/source/Plugins/Process/Linux/Perf.cpp
    M lldb/source/Plugins/Process/Linux/Procfs.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/RegisterContextDarwin_riscv32.cpp
    A lldb/source/Plugins/Process/Utility/RegisterContextDarwin_riscv32.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h
    A lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndexSet.cpp
    A lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndexSet.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
    M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    M lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
    M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
    M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp
    M lldb/source/Symbol/Block.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/source/Target/PathMappingList.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/test/API/commands/expression/completion/TestExprCompletion.py
    A lldb/test/API/commands/process/reverse-continue/Makefile
    A lldb/test/API/commands/process/reverse-continue/TestReverseContinue.py
    A lldb/test/API/commands/process/reverse-continue/TestReverseContinueCommandNotSupported.py
    A lldb/test/API/commands/process/reverse-continue/main.c
    M lldb/test/API/commands/settings/TestSettings.py
    M lldb/test/API/commands/statistics/basic/TestStats.py
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    A lldb/test/API/functionalities/reverse-execution/TestReverseExecutionNotSupported.py
    M lldb/test/API/functionalities/statusline/TestStatusline.py
    A lldb/test/API/macosx/riscv32-corefile/Makefile
    A lldb/test/API/macosx/riscv32-corefile/TestRV32MachOCorefile.py
    A lldb/test/API/macosx/riscv32-corefile/create-empty-riscv-corefile.cpp
    M lldb/test/API/terminal/TestEditline.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
    M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
    M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
    A lldb/test/API/tools/lldb-dap/console/minidump.yaml
    M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
    M lldb/test/API/tools/lldb-dap/extendedStackTrace/TestDAP_extendedStackTrace.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
    M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    M lldb/test/API/tools/lldb-dap/repl-mode/TestDAP_repl_mode_detection.py
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/Makefile
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/TestDAP_source_x86.py
    A lldb/test/API/tools/lldb-dap/stackTrace-x86/main.c
    M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
    M lldb/test/API/tools/lldb-dap/stackTrace/main.c
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/Makefile
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/TestDAP_stackTraceDisassemblyDisplay.py
    A lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/main.c
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/Makefile
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/TestDAP_stackTraceMissingModule.py
    A lldb/test/API/tools/lldb-dap/stackTraceMissingModule/main.c
    M lldb/test/Shell/Commands/command-statistics-dump.test
    A lldb/test/Shell/Settings/TestCxxFrameFormat.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatMixedLanguages.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatObjC.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatPartialFailure.test
    A lldb/test/Shell/Settings/TestCxxFrameFormatRecursive.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionBasename.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionBasenameObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArguments.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionFormattedArgumentsObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiers.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionQualifiersObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionReturn.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionReturnObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionScope.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionScopeObjC.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionSuffix.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArguments.test
    A lldb/test/Shell/Settings/TestFrameFormatFunctionTemplateArgumentsObjC.test
    M lldb/test/Shell/Settings/TestFrameFormatName.test
    R lldb/test/Shell/SymbolFile/DWARF/range-lower-then-low-pc.s
    M lldb/test/Shell/SymbolFile/DWARF/x86/discontinuous-inline-function.s
    M lldb/test/Shell/Unwind/Inputs/eh-frame-small-fde.s
    M lldb/test/Shell/Unwind/eh-frame-small-fde.test
    M lldb/test/requirements.txt
    M lldb/tools/debugserver/debugserver.xcodeproj/project.pbxproj
    M lldb/tools/debugserver/source/CMakeLists.txt
    M lldb/tools/debugserver/source/DNB.cpp
    M lldb/tools/debugserver/source/DNBError.cpp
    M lldb/tools/debugserver/source/DNBLog.cpp
    M lldb/tools/debugserver/source/DNBTimer.h
    M lldb/tools/debugserver/source/MacOSX/MachException.cpp
    M lldb/tools/debugserver/source/MacOSX/MachException.h
    M lldb/tools/debugserver/source/MacOSX/MachProcess.h
    M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
    M lldb/tools/debugserver/source/MacOSX/MachTask.h
    M lldb/tools/debugserver/source/MacOSX/MachThread.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThread.h
    M lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThreadList.h
    M lldb/tools/debugserver/source/PThreadEvent.cpp
    M lldb/tools/debugserver/source/PThreadEvent.h
    R lldb/tools/debugserver/source/PThreadMutex.cpp
    R lldb/tools/debugserver/source/PThreadMutex.h
    M lldb/tools/debugserver/source/RNBRemote.cpp
    M lldb/tools/debugserver/source/RNBRemote.h
    M lldb/tools/lldb-dap/.vscodeignore
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/BreakpointLocationsHandler.cpp
    M lldb/tools/lldb-dap/Handler/CancelRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/DisconnectRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/NextRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/Handler/RestartRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SourceRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/StackTraceRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/StepInRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/StepOutRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    M lldb/tools/lldb-dap/Transport.cpp
    A lldb/tools/lldb-dap/llvm-logo.png
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
    M lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
    M lldb/tools/lldb-server/lldb-platform.cpp
    M lldb/unittests/Core/MangledTest.cpp
    M lldb/unittests/Core/TelemetryTest.cpp
    M lldb/unittests/Host/CMakeLists.txt
    M lldb/unittests/Host/SocketTest.cpp
    R lldb/unittests/Host/linux/HostTest.cpp
    R lldb/unittests/Host/linux/SupportTest.cpp
    A lldb/unittests/Host/posix/HostTest.cpp
    A lldb/unittests/Host/posix/SupportTest.cpp
    M lldb/unittests/Process/Linux/ProcfsTests.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp
    M lldb/unittests/Symbol/LocateSymbolFileTest.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp
    M lldb/unittests/Symbol/UnwindPlanTest.cpp
    M lldb/unittests/SymbolFile/DWARF/DWARFIndexCachingTest.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/TableGen.cmake
    M llvm/docs/CMake.rst
    M llvm/docs/CMakeLists.txt
    M llvm/docs/CodeOfConduct.rst
    M llvm/docs/CommandGuide/lit.rst
    M llvm/docs/GitHub.rst
    M llvm/docs/GlobalISel/MIRPatterns.rst
    M llvm/docs/InterfaceExportAnnotations.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/ResponseGuide.rst
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/TableGen/BackGuide.rst
    M llvm/docs/doxygen.cfg.in
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/LLJITWithThinLTOSummaries.cpp
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/include/llvm/ADT/AddressRanges.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/Hashing.h
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h
    M llvm/include/llvm/Analysis/ScopedNoAliasAA.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/BinaryFormat/MachO.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ByteProvider.h
    M llvm/include/llvm/CodeGen/CFIInstBuilder.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/MachineFrameInfo.h
    M llvm/include/llvm/CodeGen/MachinePipeliner.h
    M llvm/include/llvm/CodeGen/PBQP/Math.h
    A llvm/include/llvm/CodeGen/PEI.h
    M llvm/include/llvm/CodeGen/RegisterClassInfo.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    A llvm/include/llvm/Config/Targets.h.cmake
    M llvm/include/llvm/Config/llvm-config.h.cmake
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVOptions.h
    M llvm/include/llvm/Demangle/Demangle.h
    M llvm/include/llvm/Demangle/ItaniumDemangle.h
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
    M llvm/include/llvm/Frontend/OpenACC/ACC.td
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPDeviceConstants.h
    M llvm/include/llvm/IR/DiagnosticInfo.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsARM.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/IR/PassInstrumentation.h
    M llvm/include/llvm/IR/PassManagerInternal.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/IR/Value.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCFixup.h
    M llvm/include/llvm/MC/MCFixupKindInfo.h
    M llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
    M llvm/include/llvm/MC/MCSectionCOFF.h
    M llvm/include/llvm/PassSupport.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    A llvm/include/llvm/ProfileData/IndexedMemProfData.h
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/SandboxIR/Constant.h
    M llvm/include/llvm/SandboxIR/Value.h
    M llvm/include/llvm/Support/Caching.h
    M llvm/include/llvm/Support/CommandLine.h
    M llvm/include/llvm/Support/Compiler.h
    M llvm/include/llvm/Support/InstructionCost.h
    M llvm/include/llvm/Support/NVPTXAddrSpace.h
    M llvm/include/llvm/Support/YAMLTraits.h
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/TableGen/Record.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/Transforms/IPO/FunctionSpecialization.h
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
    M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/BlockFrequencyInfo.cpp
    M llvm/lib/Analysis/BranchProbabilityInfo.cpp
    M llvm/lib/Analysis/CGSCCPassManager.cpp
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/CallGraph.cpp
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/CostModel.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/DomPrinter.cpp
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/Analysis/GlobalsModRef.cpp
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/IVUsers.cpp
    M llvm/lib/Analysis/InlineSizeEstimatorAnalysis.cpp
    M llvm/lib/Analysis/LazyBlockFrequencyInfo.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/LoopInfo.cpp
    M llvm/lib/Analysis/LoopPass.cpp
    M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Analysis/MemorySSAUpdater.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/Analysis/OptimizationRemarkEmitter.cpp
    M llvm/lib/Analysis/PhiValues.cpp
    M llvm/lib/Analysis/PostDominators.cpp
    M llvm/lib/Analysis/ProfileSummaryInfo.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/Analysis/RegionPrinter.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
    M llvm/lib/Analysis/ScopedNoAliasAA.cpp
    M llvm/lib/Analysis/StackSafetyAnalysis.cpp
    M llvm/lib/Analysis/StaticDataProfileInfo.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Analysis/UniformityAnalysis.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/CGData/CodeGenData.cpp
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp
    M llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugVariables.cpp
    M llvm/lib/CodeGen/LiveRangeShrink.cpp
    M llvm/lib/CodeGen/LiveVariables.cpp
    M llvm/lib/CodeGen/MIRVRegNamerUtils.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    M llvm/lib/CodeGen/RegAllocFast.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/CodeGen/RegisterUsageInfo.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    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/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
    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/TargetLowering.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/CodeGen/TailDuplicator.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/CodeGen/UnreachableBlockElim.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVSupport.cpp
    M llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/Demangle/ItaniumDemangle.cpp
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp
    M llvm/lib/ExecutionEngine/Orc/IRPartitionLayer.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/FuzzMutate/IRMutator.cpp
    M llvm/lib/FuzzMutate/RandomIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/ProfDataUtils.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCParser/ELFAsmParser.cpp
    M llvm/lib/MC/MCParser/MCAsmParserExtension.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/MC/MCSectionCOFF.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/ObjCopy/COFF/COFFWriter.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
    M llvm/lib/ObjCopy/XCOFF/XCOFFWriter.cpp
    M llvm/lib/ObjCopy/wasm/WasmObjcopy.cpp
    M llvm/lib/ObjectYAML/COFFEmitter.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/ProfileData/CMakeLists.txt
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    A llvm/lib/ProfileData/IndexedMemProfData.cpp
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/ProfileData/InstrProfReader.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    M llvm/lib/ProfileData/MemProf.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/Support/Caching.cpp
    M llvm/lib/Support/GraphWriter.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Support/Program.cpp
    M llvm/lib/Support/StringRef.cpp
    M llvm/lib/Support/SuffixTree.cpp
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/JSONBackend.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/SetTheory.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrGISel.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEIntrinsicOpts.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.h
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARC/ARCTargetMachine.cpp
    M llvm/lib/Target/ARC/ARCTargetTransformInfo.h
    M llvm/lib/Target/ARM/A15SDOptimizer.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.td
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.h
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/lib/Target/ARM/ARMMachineFunctionInfo.h
    M llvm/lib/Target/ARM/ARMRegisterInfo.td
    M llvm/lib/Target/ARM/ARMTargetMachine.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/ARMAsmBackend.h
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
    M llvm/lib/Target/BPF/BPFTargetMachine.cpp
    M llvm/lib/Target/BPF/BPFTargetTransformInfo.h
    M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.h
    M llvm/lib/Target/DirectX/CMakeLists.txt
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    A llvm/lib/Target/DirectX/DXILForwardHandleAccesses.cpp
    A llvm/lib/Target/DirectX/DXILForwardHandleAccesses.h
    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/DXILResourceAccess.cpp
    M llvm/lib/Target/DirectX/DXILRootSignature.cpp
    M llvm/lib/Target/DirectX/DXILRootSignature.h
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.td
    M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
    M llvm/lib/Target/Lanai/LanaiTargetTransformInfo.h
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
    M llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/Mips/MicroMipsInstrInfo.td
    M llvm/lib/Target/Mips/Mips16FrameLowering.cpp
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp
    M llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp
    M llvm/lib/Target/Mips/MipsTargetMachine.cpp
    M llvm/lib/Target/Mips/MipsTargetTransformInfo.cpp
    M llvm/lib/Target/Mips/MipsTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/NVPTX/NVVMReflect.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrP10.td
    M llvm/lib/Target/PowerPC/PPCMCInstLower.cpp
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFoldMemOffset.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
    M llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.cpp
    M llvm/lib/Target/RISCV/RISCVMachineFunctionInfo.h
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.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/SPIRVPreLegalizerCombiner.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/lib/Target/Sparc/SparcInstr64Bit.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/Sparc/SparcInstrVIS.td
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrFP.td
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/VE/CMakeLists.txt
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
    M llvm/lib/Target/VE/VEInstrInfo.td
    M llvm/lib/Target/VE/VETargetMachine.cpp
    M llvm/lib/Target/VE/VETargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/CMakeLists.txt
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86CmovConversion.cpp
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrBuilder.h
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrConditionalCompare.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86LowerAMXType.cpp
    M llvm/lib/Target/X86/X86LowerTileCopy.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    A llvm/lib/Target/X86/X86SuppressAPXForReloc.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
    M llvm/lib/Target/XCore/XCoreTargetTransformInfo.h
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
    M llvm/lib/Target/Xtensa/XtensaFeatures.td
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/lib/Target/Xtensa/XtensaSubtarget.h
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/PartialInlining.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/lib/Transforms/Scalar/ADCE.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/Sink.cpp
    M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BypassSlowDivision.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/CodeMoverUtils.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp
    M llvm/lib/Transforms/Utils/FlattenCFG.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/MisExpect.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    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/SandboxVectorizer/SeedCollector.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    R llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
    R llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanSLP.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
    M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-exact-vlen.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-interleave.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-permute.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-and-annotate.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-check-path.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-insert-icp-mdprof.ll
    M llvm/test/Analysis/CtxProfAnalysis/flatten-zero-path.ll
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/inline.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    A llvm/test/Analysis/LoopAccessAnalysis/safe-with-dep-distance-non-power-of-2.ll
    M llvm/test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks-convergent.ll
    M llvm/test/Assembler/amdgcn-intrinsic-attributes.ll
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
    M llvm/test/Bindings/llvm-c/echo.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store-vector.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-trivial-arith.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-binop.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-const-vector.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-scalar-shift-imm.mir
    M llvm/test/CodeGen/AArch64/aarch64-large-stack-spbump.mir
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/arm64-bitfield-extract.ll
    M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
    M llvm/test/CodeGen/AArch64/arm64-tbl.ll
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    A llvm/test/CodeGen/AArch64/bf16_fast_math.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/copyprop.mir
    M llvm/test/CodeGen/AArch64/f16-instructions.ll
    M llvm/test/CodeGen/AArch64/fix-shuffle-vector-be-rev.ll
    M llvm/test/CodeGen/AArch64/fmla.ll
    M llvm/test/CodeGen/AArch64/fp16_fast_math.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fsh.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/neon-bitcast.ll
    M llvm/test/CodeGen/AArch64/neon-mov.ll
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    A llvm/test/CodeGen/AArch64/nofpclass.ll
    M llvm/test/CodeGen/AArch64/optimize-cond-branch.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    M llvm/test/CodeGen/AArch64/shuffle-extend.ll
    A llvm/test/CodeGen/AArch64/sme-new-zt0-function.ll
    M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-mop4-fp8.ll
    M llvm/test/CodeGen/AArch64/sub1.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-varargs-caller-broken.ll
    M llvm/test/CodeGen/AArch64/sve-varargs.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/AArch64/vector-fcvt.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-abi-attribute-hints.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-sret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constant-fold-vector-op.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-tail-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/add64-low-32-bits-known-zero.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
    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.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.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.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-cs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-es.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-gs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-ls.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-vs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    R llvm/test/CodeGen/AMDGPU/assert-wrong-alloca-addrspace.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
    M llvm/test/CodeGen/AMDGPU/bitcast_vector_bigint.ll
    M llvm/test/CodeGen/AMDGPU/bitreverse.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/cc-update.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctpop16.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
    M llvm/test/CodeGen/AMDGPU/dead-machine-elim-after-dead-lane.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
    A llvm/test/CodeGen/AMDGPU/do-not-fold-copy.mir
    M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
    M llvm/test/CodeGen/AMDGPU/ds_read2.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/elf-notes.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
    M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/flat-offset-bug.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_noprivate.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/fminimum3.ll
    M llvm/test/CodeGen/AMDGPU/fmul-2-combine-multi-use.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/fnearbyint.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-r600.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fpext-free.ll
    M llvm/test/CodeGen/AMDGPU/fpow.ll
    R llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.fpmath.ll
    A llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.no.fast.path.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/function-args.ll
    M llvm/test/CodeGen/AMDGPU/function-returns.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-system.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
    M llvm/test/CodeGen/AMDGPU/global-saddr-store.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/idot4s.ll
    M llvm/test/CodeGen/AMDGPU/idot4u.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernel-argument-alignment.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    A llvm/test/CodeGen/AMDGPU/insert-waitcnts-gfx12-wbinv.mir
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
    M llvm/test/CodeGen/AMDGPU/lds-misaligned-bug.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.dec.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.inc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f16.f16.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.AFLCustomIRMutator.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.msaa.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.encode.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.tbuffer.load.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.powi.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-select-ptr.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/lower-indirect-lds-references.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernel-and-module-lds.ll
    M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-merge.ll
    A llvm/test/CodeGen/AMDGPU/lower-lds-with-alias-scope.ll
    A llvm/test/CodeGen/AMDGPU/lower-lds-with-noalias.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-single-var-unambiguous.ll
    M llvm/test/CodeGen/AMDGPU/lrint.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
    M llvm/test/CodeGen/AMDGPU/mul.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
    M llvm/test/CodeGen/AMDGPU/omod.ll
    M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
    A llvm/test/CodeGen/AMDGPU/pal-metadata-3.6.ll
    M llvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
    A llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/ptrmask.ll
    M llvm/test/CodeGen/AMDGPU/repeated-divisor.ll
    M llvm/test/CodeGen/AMDGPU/rotl.ll
    M llvm/test/CodeGen/AMDGPU/rotr.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/CodeGen/AMDGPU/select-flags-to-fmin-fmax.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-no-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
    A llvm/test/CodeGen/AMDGPU/si-instr-info-vopc-exec.mir
    M llvm/test/CodeGen/AMDGPU/si-triv-disjoint-mem-access.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/sint_to_fp.i64.ll
    M llvm/test/CodeGen/AMDGPU/sopk-no-literal.ll
    M llvm/test/CodeGen/AMDGPU/spill-m0.ll
    A llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll
    M llvm/test/CodeGen/AMDGPU/strict_fpext.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    M llvm/test/CodeGen/AMDGPU/sub64-low-32-bits-known-zero.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/uint_to_fp.i64.ll
    A llvm/test/CodeGen/AMDGPU/uniform-vgpr-to-sgpr-return.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-and.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-xor.ll
    M llvm/test/CodeGen/AMDGPU/vector_rebroadcast.ll
    M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
    A llvm/test/CodeGen/AMDGPU/vgpr-blocks-funcinfo.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/vopc_dpp.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-global-inv-wb.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-vscnt.ll
    M llvm/test/CodeGen/AMDGPU/wave_dispatch_regs.ll
    M llvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    A llvm/test/CodeGen/AMDGPU/wwm-reg-shift-down-gfx11plus.mir
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    A llvm/test/CodeGen/ARM/bf16_fast_math.ll
    M llvm/test/CodeGen/ARM/fp16_fast_math.ll
    A llvm/test/CodeGen/ARM/interrupt-save-fp-attr-status-regs.mir
    A llvm/test/CodeGen/ARM/interrupt-save-fp-attr.ll
    M llvm/test/CodeGen/ARM/popcnt.ll
    M llvm/test/CodeGen/AVR/inline-asm/inline-asm-invalid.ll
    R llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Validation-Error.ll
    M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
    M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Validation-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-Num32BitValues.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-RegisterSpace.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-ShaderRegister.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootFlags-VisibilityValidationError.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/alloca.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/ambiguous.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/buffer-O0.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/cbuffer-access.ll
    A llvm/test/CodeGen/DirectX/ForwardHandleAccesses/undominated.ll
    M llvm/test/CodeGen/DirectX/ResourceAccess/load_typedbuffer.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.5.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs-array-valver1.6.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/max-64-uavs.ll
    M llvm/test/CodeGen/DirectX/ShaderFlags/res-may-alias-0.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.6.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.7.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-shadermodel6.8.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.6.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-sm6.7.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/res-may-not-alias-valver1.8.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-0.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision-1.ll
    R llvm/test/CodeGen/DirectX/ShaderFlags/use-native-low-precision.ll
    A llvm/test/CodeGen/DirectX/legalize-lifetimes.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    A llvm/test/CodeGen/DirectX/metadata-stripping.ll
    M llvm/test/CodeGen/DirectX/unsupported_intrinsic.ll
    A llvm/test/CodeGen/Hexagon/swp-alias-cross-iteration.mir
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi11.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi12.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi13.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi6.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-phi9.ll
    A llvm/test/CodeGen/Hexagon/swp-no-alias.mir
    M llvm/test/CodeGen/LoongArch/lasx/broadcast-load.ll
    A llvm/test/CodeGen/LoongArch/lasx/widen-shuffle-mask.ll
    M llvm/test/CodeGen/LoongArch/lsx/broadcast-load.ll
    A llvm/test/CodeGen/LoongArch/lsx/widen-shuffle-mask.ll
    A llvm/test/CodeGen/Mips/Fast-ISel/div-imm.ll
    A llvm/test/CodeGen/Mips/nofpclass.ll
    M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
    A llvm/test/CodeGen/NVPTX/addrspacecast-ptx64.ll
    M llvm/test/CodeGen/NVPTX/and-or-setcc.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
    M llvm/test/CodeGen/NVPTX/bf16x2-instructions-approx.ll
    M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/bug21465.ll
    M llvm/test/CodeGen/NVPTX/convert-fp-i8.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm80.ll
    M llvm/test/CodeGen/NVPTX/convert-sm90.ll
    M llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk.ll
    A llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M llvm/test/CodeGen/NVPTX/div.ll
    M llvm/test/CodeGen/NVPTX/f16-abs.ll
    M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/f32-lg2.ll
    M llvm/test/CodeGen/NVPTX/fabs-intrinsics.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-contract.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-fma-intrinsic.ll
    M llvm/test/CodeGen/NVPTX/fma-relu-instruction-flag.ll
    M llvm/test/CodeGen/NVPTX/forward-ld-param.ll
    M llvm/test/CodeGen/NVPTX/fp-contract.ll
    M llvm/test/CodeGen/NVPTX/fp128-storage-type.ll
    M llvm/test/CodeGen/NVPTX/frem.ll
    M llvm/test/CodeGen/NVPTX/i128-array.ll
    M llvm/test/CodeGen/NVPTX/i128-retval.ll
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/CodeGen/NVPTX/inline-asm-b128-test1.ll
    M llvm/test/CodeGen/NVPTX/inline-asm-b128-test3.ll
    M llvm/test/CodeGen/NVPTX/intrinsics.ll
    M llvm/test/CodeGen/NVPTX/ldg-invariant.ll
    M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
    M llvm/test/CodeGen/NVPTX/load-store-scalars.ll
    M llvm/test/CodeGen/NVPTX/load-store-vectors.ll
    M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.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/math-intrins.ll
    M llvm/test/CodeGen/NVPTX/misched_func_call.ll
    M llvm/test/CodeGen/NVPTX/nvptx-aa.ll
    M llvm/test/CodeGen/NVPTX/param-add.ll
    M llvm/test/CodeGen/NVPTX/rcp-opt.ll
    A llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
    M llvm/test/CodeGen/NVPTX/redux-sync-f32.ll
    M llvm/test/CodeGen/NVPTX/reg-types.ll
    M llvm/test/CodeGen/NVPTX/st-param-imm.ll
    M llvm/test/CodeGen/NVPTX/surf-read-cuda.ll
    M llvm/test/CodeGen/NVPTX/tex-read-cuda.ll
    M llvm/test/CodeGen/NVPTX/variadics-backend.ll
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll
    M llvm/test/CodeGen/PowerPC/undef-args.ll
    M llvm/test/CodeGen/PowerPC/vector-popcnt-128-ult-ugt.ll
    A llvm/test/CodeGen/PowerPC/vsx-fma-m-early.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
    A llvm/test/CodeGen/RISCV/add-imm64-to-sub.ll
    A llvm/test/CodeGen/RISCV/atomic-load-zext.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    A llvm/test/CodeGen/RISCV/di-assignment-tracking-vector.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/fold-mem-offset.mir
    M llvm/test/CodeGen/RISCV/miss-sp-restore-eh.ll
    A llvm/test/CodeGen/RISCV/pr101786.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare.ll
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximumnum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimumnum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
    A llvm/test/CodeGen/RISCV/rvv/fmaximumnum-sdnode.ll
    A llvm/test/CodeGen/RISCV/rvv/fminimumnum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/pr107950.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
    M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll
    A llvm/test/CodeGen/RISCV/sifive-interrupt-attr-err.ll
    A llvm/test/CodeGen/RISCV/sifive-interrupt-attr.ll
    M llvm/test/CodeGen/RISCV/xqccmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/xqccmp-with-float.ll
    A llvm/test/CodeGen/RISCV/xqcia.ll
    A llvm/test/CodeGen/RISCV/zalasr-offset-folding.ll
    M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/zcmp-with-float.ll
    M llvm/test/CodeGen/RISCV/zext-with-load-is-free.ll
    M llvm/test/CodeGen/SPARC/cttz.ll
    A llvm/test/CodeGen/SPARC/multiply-extension.ll
    M llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_subgroup_matrix_multiply_accumulate/subgroup_matrix_multiply_accumulate_generic.ll
    A llvm/test/CodeGen/SPIRV/extensions/unused-but-allowed-SPV_INTEL_arbitrary_precision_integers.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/faceforward.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll
    A llvm/test/CodeGen/SPIRV/pointers/generic_cast_to_ptr_explicit.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-downcast-vector.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-struct.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpGenericCastToPtr.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-01.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-02.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-03.ll
    M llvm/test/CodeGen/SystemZ/fp-abs-04.ll
    M llvm/test/CodeGen/SystemZ/fp-copysign-01.ll
    M llvm/test/CodeGen/SystemZ/fp-copysign-02.ll
    M llvm/test/CodeGen/SystemZ/fp-copysign-03.ll
    M llvm/test/CodeGen/SystemZ/fp-mul-08.ll
    M llvm/test/CodeGen/SystemZ/fp-mul-10.ll
    M llvm/test/CodeGen/SystemZ/fp-neg-01.ll
    M llvm/test/CodeGen/SystemZ/fp-neg-02.ll
    A llvm/test/CodeGen/SystemZ/pr122315.ll
    M llvm/test/CodeGen/Thumb2/bf16-instructions.ll
    M llvm/test/CodeGen/Thumb2/mve-ctpop.ll
    M llvm/test/CodeGen/VE/Vector/ticket-64420.ll
    M llvm/test/CodeGen/X86/GlobalISel/GV.ll
    M llvm/test/CodeGen/X86/GlobalISel/add-scalar.ll
    M llvm/test/CodeGen/X86/GlobalISel/callingconv.ll
    M llvm/test/CodeGen/X86/GlobalISel/isel-fcmp-i686.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-memop-scalar-32.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-memop-scalar-64.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-trunc.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-undef.mir
    M llvm/test/CodeGen/X86/GlobalISel/memop-scalar-x32.ll
    M llvm/test/CodeGen/X86/GlobalISel/mul-scalar.ll
    M llvm/test/CodeGen/X86/GlobalISel/select-GV-32.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-GV-64.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-memop-v128.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-memop-v256.mir
    M llvm/test/CodeGen/X86/GlobalISel/sqrt.mir
    M llvm/test/CodeGen/X86/GlobalISel/sub-scalar.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/and-or-setcc.ll
    M llvm/test/CodeGen/X86/apx/add.ll
    M llvm/test/CodeGen/X86/apx/and.ll
    M llvm/test/CodeGen/X86/apx/ccmp.ll
    M llvm/test/CodeGen/X86/apx/cf.ll
    M llvm/test/CodeGen/X86/apx/compress-evex.mir
    M llvm/test/CodeGen/X86/apx/dec.ll
    M llvm/test/CodeGen/X86/apx/flags-copy-lowering.ll
    M llvm/test/CodeGen/X86/apx/flags-copy-lowering.mir
    M llvm/test/CodeGen/X86/apx/imul.ll
    M llvm/test/CodeGen/X86/apx/inc.ll
    M llvm/test/CodeGen/X86/apx/neg.ll
    M llvm/test/CodeGen/X86/apx/nf-regressions.ll
    R llvm/test/CodeGen/X86/apx/optimize-compare-ccmp.mir
    M llvm/test/CodeGen/X86/apx/or.ll
    A llvm/test/CodeGen/X86/apx/reloc.mir
    M llvm/test/CodeGen/X86/apx/shl.ll
    M llvm/test/CodeGen/X86/apx/shr.ll
    M llvm/test/CodeGen/X86/apx/sub.ll
    A llvm/test/CodeGen/X86/apx/tls.ll
    M llvm/test/CodeGen/X86/apx/xor.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/avx512-i1test.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-shuffle-fma.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-vfmac-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-vfmulc-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc-fadd.ll
    M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc.ll
    M llvm/test/CodeGen/X86/avx512fp16-cvt-ph-w-vl-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-cvt.ll
    M llvm/test/CodeGen/X86/avx512fp16-fma-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-fmaxnum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fminnum.ll
    M llvm/test/CodeGen/X86/avx512fp16-fp-logic.ll
    M llvm/test/CodeGen/X86/avx512fp16-frem.ll
    M llvm/test/CodeGen/X86/avx512fp16-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512fp16-machine-combiner.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/avx512fp16-rndscale.ll
    M llvm/test/CodeGen/X86/avx512fp16-unsafe-fp-math.ll
    M llvm/test/CodeGen/X86/avx512fp16vl-fma-intrinsics.ll
    M llvm/test/CodeGen/X86/bfloat.ll
    M llvm/test/CodeGen/X86/build-vector-128.ll
    M llvm/test/CodeGen/X86/build-vector-256.ll
    M llvm/test/CodeGen/X86/build-vector-512.ll
    A llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
    M llvm/test/CodeGen/X86/clobber_frame_ptr.ll
    M llvm/test/CodeGen/X86/combine-fcopysign.ll
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/concat-fpext-v2bf16.ll
    M llvm/test/CodeGen/X86/constructor.ll
    M llvm/test/CodeGen/X86/ctor-priority-coff.ll
    M llvm/test/CodeGen/X86/data-section-prefix.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/dtor-priority-coff.ll
    M llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll
    M llvm/test/CodeGen/X86/extractelement-load.ll
    M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fp-round-with-concat-vector-undef-elem.ll
    M llvm/test/CodeGen/X86/fp-round.ll
    M llvm/test/CodeGen/X86/fp16-libcalls.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/fptosi-sat-vector-128.ll
    M llvm/test/CodeGen/X86/fptoui-sat-vector-128.ll
    M llvm/test/CodeGen/X86/global-sections.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/isel-and.ll
    M llvm/test/CodeGen/X86/isel-buildvector-sse.ll
    M llvm/test/CodeGen/X86/isel-buildvector-sse2.ll
    A llvm/test/CodeGen/X86/isel-fp-to-sint-x87.ll
    M llvm/test/CodeGen/X86/isel-icmp.ll
    M llvm/test/CodeGen/X86/isel-or.ll
    M llvm/test/CodeGen/X86/isel-phi.ll
    M llvm/test/CodeGen/X86/isel-sdiv.ll
    M llvm/test/CodeGen/X86/isel-select-cmov.ll
    A llvm/test/CodeGen/X86/isel-sint-to-fp-x87.ll
    M llvm/test/CodeGen/X86/isel-srem.ll
    M llvm/test/CodeGen/X86/isel-traps.ll
    M llvm/test/CodeGen/X86/isel-udiv.ll
    M llvm/test/CodeGen/X86/isel-urem.ll
    M llvm/test/CodeGen/X86/isel-x87.ll
    M llvm/test/CodeGen/X86/isel-xor.ll
    M llvm/test/CodeGen/X86/ispow2.ll
    M llvm/test/CodeGen/X86/jump_sign.ll
    M llvm/test/CodeGen/X86/machine-trace-metrics-crash.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll
    M llvm/test/CodeGen/X86/masked_store_trunc.ll
    M llvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
    M llvm/test/CodeGen/X86/masked_store_trunc_usat.ll
    M llvm/test/CodeGen/X86/mingw-comdats.ll
    M llvm/test/CodeGen/X86/mmx-fold-zero.ll
    M llvm/test/CodeGen/X86/oddsubvector.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll
    M llvm/test/CodeGen/X86/optimize-compare.mir
    M llvm/test/CodeGen/X86/pr116153.ll
    M llvm/test/CodeGen/X86/pr40891.ll
    M llvm/test/CodeGen/X86/pr50254.ll
    M llvm/test/CodeGen/X86/pr57673.ll
    M llvm/test/CodeGen/X86/pr63108.ll
    M llvm/test/CodeGen/X86/pr91005.ll
    A llvm/test/CodeGen/X86/pr94829.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/ragreedy-hoist-spill.ll
    M llvm/test/CodeGen/X86/setcc-lowering.ll
    M llvm/test/CodeGen/X86/shift-combine.ll
    M llvm/test/CodeGen/X86/shuffle-combine-crash.ll
    M llvm/test/CodeGen/X86/shuffle-half.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16-fma.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16vl-fma.ll
    M llvm/test/CodeGen/X86/stack-folding-fp-avx512fp16vl.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tailcall-cgp-dup.ll
    M llvm/test/CodeGen/X86/text-section-prefix.ll
    M llvm/test/CodeGen/X86/vaargs-prolog-insert.ll
    M llvm/test/CodeGen/X86/vec-strict-cmp-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-256-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-512-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-128-fp16.ll
    M llvm/test/CodeGen/X86/vec-strict-inttofp-512-fp16.ll
    M llvm/test/CodeGen/X86/vec_fabs.ll
    M llvm/test/CodeGen/X86/vec_fcopysign.ll
    M llvm/test/CodeGen/X86/vec_fneg.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.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-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-llrint-f16.ll
    M llvm/test/CodeGen/X86/vector-lrint-f16.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512.ll
    M llvm/test/CodeGen/X86/vector-reduce-xor-bool.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-trunc-nowrap.ll
    M llvm/test/CodeGen/X86/vector-trunc-packus.ll
    M llvm/test/CodeGen/X86/vector-trunc-ssat.ll
    M llvm/test/CodeGen/X86/vector-trunc-usat.ll
    M llvm/test/CodeGen/X86/vector-trunc.ll
    M llvm/test/CodeGen/X86/vselect-pcmp.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/Xtensa/callw.ll
    M llvm/test/CodeGen/Xtensa/div.ll
    M llvm/test/CodeGen/Xtensa/mul.ll
    A llvm/test/CodeGen/Xtensa/rem.ll
    A llvm/test/DebugInfo/AArch64/lexical-block-abstract-origin.ll
    M llvm/test/DebugInfo/Generic/inline-scopes.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    M llvm/test/DebugInfo/X86/lexical-block-file-inline.ll
    M llvm/test/DebugInfo/X86/missing-abstract-variable.ll
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-intrinsics.ll
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-arith-vl-intrinsics.ll
    A llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll
    M llvm/test/Instrumentation/ThreadSanitizer/capture.ll
    A llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_promote.s
    R llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err-fake16.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_promote.s
    R llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err-fake16.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_err.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s
    M llvm/test/MC/COFF/global_ctors_dtors.ll
    A llvm/test/MC/COFF/section-unique.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/PowerPC/ppc-encoding-ISAFuture.s
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/compressed-relocations.s
    M llvm/test/MC/RISCV/fixups-compressed.s
    M llvm/test/MC/RISCV/fixups.s
    M llvm/test/MC/RISCV/machine-csr-names.s
    M llvm/test/MC/RISCV/rv32-machine-csr-names.s
    A llvm/test/MC/RISCV/xandesperf-invalid.s
    A llvm/test/MC/RISCV/xandesperf-rv64-invalid.s
    A llvm/test/MC/RISCV/xandesperf-rv64-valid.s
    A llvm/test/MC/RISCV/xandesperf-valid.s
    M llvm/test/MC/RISCV/xqcibi-relocations.s
    A llvm/test/MC/RISCV/xsfmclic-invalid.s
    A llvm/test/MC/RISCV/xsfmclic-valid.s
    A llvm/test/MC/RISCV/xsfsclic-invalid.s
    A llvm/test/MC/RISCV/xsfsclic-valid.s
    A llvm/test/MC/Xtensa/div.s
    A llvm/test/MC/Xtensa/mul.s
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/pattern-errors.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/pattern-parsing.td
    M llvm/test/TableGen/VarLenDecoder.td
    M llvm/test/TableGen/trydecode-emission.td
    M llvm/test/TableGen/trydecode-emission2.td
    M llvm/test/TableGen/trydecode-emission3.td
    M llvm/test/TableGen/trydecode-emission4.td
    M llvm/test/Transforms/Attributor/issue87856.ll
    M llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll
    A llvm/test/Transforms/CodeExtractor/input-value-debug.ll
    A llvm/test/Transforms/CodeGenPrepare/unfold-pow2-test-vec.ll
    A llvm/test/Transforms/CodeGenPrepare/unfold-pow2-test.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/uscmp.ll
    M llvm/test/Transforms/FunctionAttrs/initializes.ll
    A llvm/test/Transforms/GlobalOpt/X86/preserve-dbgloc-of-load-store-to-bool.ll
    A llvm/test/Transforms/GlobalOpt/malloc-promote-atomic.ll
    M llvm/test/Transforms/HotColdSplit/transfer-debug-info.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
    M llvm/test/Transforms/InferAddressSpaces/NVPTX/isspacep.ll
    M llvm/test/Transforms/Inline/byval-align.ll
    M llvm/test/Transforms/Inline/byval-with-non-alloca-addrspace.ll
    M llvm/test/Transforms/Inline/byval.ll
    M llvm/test/Transforms/Inline/inline-deferred-instsimplify.ll
    M llvm/test/Transforms/Inline/inline-tail.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-m-forms-no-active-lanes.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-cmp.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-fmul_u-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul-idempotency.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-mul_u-idempotency.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-shift.ll
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-to-u-form.ll
    R llvm/test/Transforms/InstCombine/AArch64/sve-intrinsics-combine-to-u-forms.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.wavefrontsize.ll
    M llvm/test/Transforms/InstCombine/alloca-in-non-alloca-as.ll
    M llvm/test/Transforms/InstCombine/and-fcmp.ll
    M llvm/test/Transforms/InstCombine/and-xor-or.ll
    M llvm/test/Transforms/InstCombine/cast_ptr.ll
    M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
    M llvm/test/Transforms/InstCombine/fabs.ll
    M llvm/test/Transforms/InstCombine/fcmp-fadd-select.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    A llvm/test/Transforms/InstCombine/max-min-canonicalize.ll
    M llvm/test/Transforms/InstCombine/max_known_bits.ll
    M llvm/test/Transforms/InstCombine/minmax-fold.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    M llvm/test/Transforms/InstCombine/minmax-intrinsics.ll
    M llvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
    M llvm/test/Transforms/InstCombine/sadd_sat.ll
    M llvm/test/Transforms/InstCombine/select-min-max.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_costs.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.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/masked-op-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-select-cmp.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-fold-uniform-memops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    A llvm/test/Transforms/LoopVectorize/X86/cost-model-i386.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll

  Log Message:
  -----------
  Merge branch 'main' into xegpu_unroll_patterns


  Commit: 456465e49790acae7539f2784c257991ec1abcbe
      https://github.com/llvm/llvm-project/commit/456465e49790acae7539f2784c257991ec1abcbe
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
    M mlir/test/Dialect/XeGPU/xegpu-unroll-patterns.mlir
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  add dpas pattern and unit test


  Commit: 906d699998b27f8f2d1c127a542d1d765afba41e
      https://github.com/llvm/llvm-project/commit/906d699998b27f8f2d1c127a542d1d765afba41e
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2025-04-29 (Tue, 29 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  refactor


Compare: https://github.com/llvm/llvm-project/compare/d077cb081668...906d699998b2

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