[all-commits] [llvm/llvm-project] 3ea790: [RISCV] Check S0 register list check for qc.cm.pus...

Fangrui Song via All-commits all-commits at lists.llvm.org
Sat Apr 5 21:25:16 PDT 2025


  Branch: refs/heads/users/MaskRay/spr/aarch64-refactor-plt-gotpcrel-and-auth-to-use-parsedataexpr
  Home:   https://github.com/llvm/llvm-project
  Commit: 3ea7902494643517c519142002e42a65e81f40d0
      https://github.com/llvm/llvm-project/commit/3ea7902494643517c519142002e42a65e81f40d0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-04-02 (Wed, 02 Apr 2025)

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

  Log Message:
  -----------
  [RISCV] Check S0 register list check for qc.cm.pushfp to after we parsed the whole register list. (#134180)

This is more of a semantic check. The diagnostic location to has been
changed to point at the register list start instead of the
closing brace or whatever character might be there instead of a brace
if its malformed.


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

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

  Log Message:
  -----------
  [RISCV] Don't allow '-' after 'ra' in Zcmp/Xqccmp register list. (#134182)

Move the parsing of '-' under the check that we parsed a comma.
Unfortunately, this leads to a poor error, but I still have more known
issues in this code and may end up with an overall restructuring and
want to think about wording.


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

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    R llvm/test/Transforms/SimplifyCFG/merge-direct-call-branch-weights-preserve-hoist.ll
    R llvm/test/Transforms/SimplifyCFG/merge-direct-call-branch-weights-preserve-sink.ll

  Log Message:
  -----------
  Revert "[Metadata] Preserve MD_prof when merging instructions when one is missing." (#134200)

Reverts llvm/llvm-project#132433

I suspect this change caused a failure in the bolt build bot.
https://lab.llvm.org/buildbot/#/builders/113/builds/6621

```
!9185 = !{!"branch_weights", i32 3912, i32 802}
Wrong number of operands
!9185 = !{!"branch_weights", i32 3912, i32 802}
fatal error: error in backend: Broken module found, compilation aborted!
```


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

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

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

This reverts commit 4e40c7c4bd66d98f529a807dbf410dc46444f4ca.

arm64 CI is getting a failure in
lldb-api.tools/lldb-server.TestGdbRemoteRegisterState.py
with this commit, need to investigate and re-land.


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

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp

  Log Message:
  -----------
  [CodeGen] Don't include CGDebugInfo.h in CodeGenFunction.h (NFC) (#134100)

This is an expensive header, only include it where needed. Move some
functions out of line to achieve that.

This reduces time to build clang by ~0.5% in terms of instructions
retired.


  Commit: 7e65944292278cc245e36cc6ca971654d584012d
      https://github.com/llvm/llvm-project/commit/7e65944292278cc245e36cc6ca971654d584012d
  Author: Hua Tian <akiratian at tencent.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/ModuloSchedule.h
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    A llvm/test/CodeGen/AArch64/aarch64-swp-ws-live-intervals.mir

  Log Message:
  -----------
  [llvm][CodeGen] avoid repeated interval calculation in window scheduler (#132352)

Some new registers are reused when replacing some old ones in
certain use case of ModuloScheduleExpander. It is necessary to
avoid repeated interval calculations for these registers.


  Commit: 3295970d846b0d820b863f9eeac559b80239297e
      https://github.com/llvm/llvm-project/commit/3295970d846b0d820b863f9eeac559b80239297e
  Author: Iris <0.0 at owo.li>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    A llvm/test/Transforms/InstSimplify/ConstProp/sinh-cosh-intrinsics.ll

  Log Message:
  -----------
  [ConstantFolding] Add support for `sinh` and `cosh` intrinsics in constant folding (#132671)

Closes #132503.


  Commit: b6c0ce0bb67d822fac1e3b42461f66c261c1157c
      https://github.com/llvm/llvm-project/commit/b6c0ce0bb67d822fac1e3b42461f66c261c1157c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [IR][NFC] Use `SwitchInst::defaultDestUnreachable` (#134199)


  Commit: 91f3965be43ccb5291fcb5578b62648a1ece17bc
      https://github.com/llvm/llvm-project/commit/91f3965be43ccb5291fcb5578b62648a1ece17bc
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll

  Log Message:
  -----------
  [LoopInterchange] Fix the vectorizable check for a loop (#133667)

In the profitability check for vectorization, the dependency matrix was
not handled correctly. This can result to make a wrong decision: It may
say "this loop can be vectorized" when in fact it cannot. The root cause
of this is that the check process early returns when it finds '=' or 'I'
in the dependency matrix. To make sure that we can actually vectorize
the loop, we need to check all the rows of the matrix. This patch fixes
the process of checking whether we can vectorize the loop or not. Now it
won't make a wrong decision for a loop that cannot be vectorized.

Related: #131130


  Commit: 041e84261a502a28401813bf55aa778ee0bbcdeb
      https://github.com/llvm/llvm-project/commit/041e84261a502a28401813bf55aa778ee0bbcdeb
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-error.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-target-error.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td

  Log Message:
  -----------
  [Clang][AMDGPU] Expose buffer load lds as a clang builtin (#132048)

CK is using either inline assembly or inline LLVM-IR builtins to
generate buffer_load_dword lds instructions.

This patch exposes this instruction as a Clang builtin available on gfx9 and gfx10.

Related to SWDEV-519702 and SWDEV-518861


  Commit: 73e1710a4d5629cce5aaebc01cab1f76e3de5c84
      https://github.com/llvm/llvm-project/commit/73e1710a4d5629cce5aaebc01cab1f76e3de5c84
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [SimplifyCFG] Remove unused variable. NFC. (#134211)


  Commit: e1aaee7ea218f1d89646fa1f43bb4c94c27808b5
      https://github.com/llvm/llvm-project/commit/e1aaee7ea218f1d89646fa1f43bb4c94c27808b5
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/ExternalASTSource.h
    M clang/include/clang/Sema/MultiplexExternalSemaSource.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/ExternalASTSource.cpp
    M clang/lib/Sema/MultiplexExternalSemaSource.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/SemaCXX/friend-default-parameters-modules.cpp
    A clang/test/SemaCXX/friend-default-parameters.cpp

  Log Message:
  -----------
  [modules] Handle friend function that was a definition but became only a declaration during AST deserialization (#132214)

Fix for regression #130917, changes in #111992 were too broad. This change reduces scope of previous fix. Added `ExternalASTSource::wasThisDeclarationADefinition` to detect cases when FunctionDecl lost body due to declaration merges.


  Commit: 6333fa5160fbde4bd2cf6afe8856695c13ab621f
      https://github.com/llvm/llvm-project/commit/6333fa5160fbde4bd2cf6afe8856695c13ab621f
  Author: Carlos Galvez <carlosgalvezp at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.h
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.h
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.h

  Log Message:
  -----------
  [clang-tidy] Fix broken HeaderFilterRegex when read from config file (#133582)

PR https://github.com/llvm/llvm-project/pull/91400 broke the usage of
HeaderFilterRegex via config file, because it is now created at a
different point in the execution and leads to a different value.

The result of that is that using HeaderFilterRegex only in the config
file does NOT work, in other words clang-tidy stops triggering warnings
on header files, thereby losing a lot of coverage.

This patch reverts the logic so that the header filter is created upon
calling the getHeaderFilter() function.

Additionally, this patch adds 2 unit tests to prevent regressions in the
future:

- One of them, "simple", tests the most basic use case with a single
top-level .clang-tidy file.

- The second one, "inheritance", demonstrates that the subfolder only
gets warnings from headers within it, and not from parent headers.

Fixes #118009
Fixes #121969
Fixes #133453

Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>


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

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

  Log Message:
  -----------
  [X86] getFauxShuffleMask - only handle VTRUNC nodes with matching src/dst sizes (#134161)

Cleanup work for #133947 - we need to handle VTRUNC nodes with large
source vectors directly to allow us to widen the size of the shuffle
combine

We currently discard these results in combineX86ShufflesRecursively
anyhow as we don't allow inputs from getTargetShuffleInputs to be larger
than the shuffle value type


  Commit: 7baa7edc00c5c92e2d17bae760db2e6df97dcec6
      https://github.com/llvm/llvm-project/commit/7baa7edc00c5c92e2d17bae760db2e6df97dcec6
  Author: Romaric Jodin <rjodin at chromium.org>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M libclc/clc/lib/clspv/SOURCES
    A libclc/clc/lib/clspv/integer/clc_mul_hi.cl

  Log Message:
  -----------
  [libclc]: clspv: add a dummy implememtation for mul_hi (#134094)

clspv uses a better implementation that is not using a bigger side when
not available.
Add a dummy implementation for mul_hi to avoid to override the
implementation of clspv with the one in libclc.


  Commit: 6ec66a2292a7321811700ce455cf404bdaa67fc0
      https://github.com/llvm/llvm-project/commit/6ec66a2292a7321811700ce455cf404bdaa67fc0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [X86] Move VPERMV3(X,M,Y) -> VPERMV(M,CONCAT(X,Y)) fold after general VPERMV3 canonicalization

Pulled out of #133923 - this prevents regressions with SimplifyDemandedVectorEltsForTargetNode exposing VPERMV3(X,M,X) repeated operand patterns which were getting concatenated to wider VPERMV nodes before simpler canonicalizations could clean them up.


  Commit: 6f324bd39b98659c81aae02595cee1b4c92db8e9
      https://github.com/llvm/llvm-project/commit/6f324bd39b98659c81aae02595cee1b4c92db8e9
  Author: Jack Frankland <jack.frankland at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][tosa] Remove Convolution Type Verifiers (#134077)

Remove the test in the convolution verifier that checks the input and
output element types of convolution operations conform to the
constraints imposed by the TOSA 1.0 specification.

These checks are too strict for users of the TOSA dialect who wish to
allow more types than those allowed by the spec and provide
compatibility issues with earlier TOSA implementation which allowed more
type combinations.

Users who do wish to constrain the convolution types combination to only
those allowed by the TOSA 1.0 spec should run the TOSA validation pass
which already performs these checks.

Signed-off-by: Jack Frankland <jack.frankland at arm.com>


  Commit: 094904303d50e0ab14bc5f2586a602f79af95953
      https://github.com/llvm/llvm-project/commit/094904303d50e0ab14bc5f2586a602f79af95953
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

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

This reverts commit d7afafdbc464e65c56a0a1d77bad426aa7538306.

Caused remote Linux to Linux buildbot failure
https://lab.llvm.org/buildbot/#/builders/195/builds/7046.


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

  Changed paths:
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  [lldb/telemetry] Report exit status only once (#134078)

SetExitStatus can be called the second time when we reap the debug
server process. This shouldn't be interesting as at that point, we've
already told everyone that the process has exited.

I believe/hope this will also help with sporadic shutdown crashes that
have cropped up recently. They happen because the debug server is
monitored from a detached thread, so this code can be called after main
returns (and starts destroying everything). This isn't a real fix for
that though, as the situation can still happen (it's just that it
usually happens after the exit status has already been set). I think the
real fix for that is to make sure these threads terminate before we
start shutting everything down.


  Commit: 2e7ed78cff0ad3e3535443ce8c0c3c0e0925ff73
      https://github.com/llvm/llvm-project/commit/2e7ed78cff0ad3e3535443ce8c0c3c0e0925ff73
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/lib/Dialect/SPIRV/IR/GroupOps.cpp
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add instruction OpGroupNonUniformRotateKHR (#133428)

Add an instruction under the extension SPV_KHR_subgroup_rotate.

The specification for the extension is here:

https://github.khronos.org/SPIRV-Registry/extensions/KHR/SPV_KHR_subgroup_rotate.html


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce the size of VPERMV/VPERMV3 nodes if the upper elements are not demanded (#133923)

With AVX512VL targets, use 128/256-bit VPERMV/VPERMV3 nodes when we only need the lower elements.


  Commit: ecc35456d79aac3fb85fe95e30cdaaca916e8722
      https://github.com/llvm/llvm-project/commit/ecc35456d79aac3fb85fe95e30cdaaca916e8722
  Author: Camsyn <camsyn at foxmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/unittests/Transforms/Utils/BasicBlockUtilsTest.cpp

  Log Message:
  -----------
  [Utils] Fix incorrect LCSSA PHI nodes when splitting critical edges with MergeIdenticalEdges (#131744)

This PR fixes incorrect LCSSA PHI node generation when splitting
critical edges with both
`PreserveLCSSA` and `MergeIdenticalEdges` enabled. The bug caused PHI
nodes in the split block
to miss predecessors when multiple identical edges were merged.


  Commit: 61907ebd764afe75aa7134627f41827e6893d6d0
      https://github.com/llvm/llvm-project/commit/61907ebd764afe75aa7134627f41827e6893d6d0
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGBuilder.h

  Log Message:
  -----------
  [Clang][CodeGen] Do not use the GEP result to infer offset and result type (#134221)

If `CreateConstInBoundsGEP2_32` returns a constant null/gep, the cast to
GetElementPtrInst will fail.
This patch uses two static helpers
`GEPOperator::accumulateConstantOffset/GetElementPtrInst::getIndexedType`
to infer offset and result type instead of depending on the GEP result.

This patch is extracted from
https://github.com/llvm/llvm-project/pull/130734.


  Commit: 554f4d1a5769357ee8438c23f572d595c720ff3c
      https://github.com/llvm/llvm-project/commit/554f4d1a5769357ee8438c23f572d595c720ff3c
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M lldb/source/Target/Process.cpp
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/Makefile
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.py
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/main.c

  Log Message:
  -----------
  [lldb][Target] RunThreadPlan to save/restore the ExecutionContext's frame if one exists (#134097)

When using `SBFrame::EvaluateExpression` on a frame that's not the
currently selected frame, we would sometimes run into errors such as:
```
error: error: The context has changed before we could JIT the expression!
error: errored out in DoExecute, couldn't PrepareToExecuteJITExpression
```

During expression parsing, we call `RunStaticInitializers`. On our
internal fork this happens quite frequently because any usage of, e.g.,
function pointers, will inject ptrauth fixup code into the expression.
The static initializers are run using `RunThreadPlan`. The
`ExecutionContext::m_frame_sp` going into the `RunThreadPlan` is the
`SBFrame` that we called `EvaluateExpression` on. LLDB then tries to
save this frame to restore it after the thread-plan ran (the restore
occurs by unconditionally overwriting whatever is in
`ExecutionContext::m_frame_sp`). However, if the `selected_frame_sp` is
not the same as the `SBFrame`, then `RunThreadPlan` would set the
`ExecutionContext`'s frame to a different frame than what we started
with. When we `PrepareToExecuteJITExpression`, LLDB checks whether the
`ExecutionContext` frame changed from when we initially
`EvaluateExpression`, and if did, bails out with the error above.

One such test-case is attached. This currently passes regardless of the
fix because our ptrauth static initializers code isn't upstream yet. But
the plan is to upstream it soon.

This patch addresses the issue by saving/restoring the frame of the
incoming `ExecutionContext`, if such frame exists. Otherwise, fall back
to using the selected frame.

rdar://147456589


  Commit: 6c27817294d96705ffd005aea52494ea40b1ef74
      https://github.com/llvm/llvm-project/commit/6c27817294d96705ffd005aea52494ea40b1ef74
  Author: David Green <david.green at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/Thumb2/mve-vdup.ll
    M llvm/test/CodeGen/WebAssembly/simd-shuffle-bitcast.ll
    M llvm/test/CodeGen/X86/kmov.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll

  Log Message:
  -----------
  [SelectionDAG] Use SimplifyDemandedBits from SimplifyDemandedVectorElts Bitcast. (#133717)

This adds a call to SimplifyDemandedBits from bitcasts with scalar input
types in SimplifyDemandedVectorElts, which can help simplify the input
scalar.


  Commit: cb0d1305d12ea6637a541028eb0a4438750164b9
      https://github.com/llvm/llvm-project/commit/cb0d1305d12ea6637a541028eb0a4438750164b9
  Author: Simi Pallipurath <simi.pallipurath at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Clang][ARM] Ensure both -mno-unaligned-access and -munaligned-access are passed to multilib selection logic (#134099)

Previously, alignment option was passed to multilib selection logic only
when -mno-unaligned-access was explicitly specified on the command line.

Now this change ensure both -mno-unaligned-access and -munaligned-access
are passed to the multilib selection logic, which now also considers the
target architecture when determining alignment access policy.


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

  Changed paths:
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-contract.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-fast.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-mova-extract.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/test/CodeGen/AArch64/sve-pr92779.ll
    M llvm/test/CodeGen/AArch64/sve-split-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-test-register-mov.ll

  Log Message:
  -----------
  [LLVM][AArch64][SVE] Mark DUP immediate instructions with isAsCheapAsAMove. (#133945)

Doing this means we'll regenerate an immediate rather than copy the
result of an existing one, reducing instruction dependency chains.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaType.cpp
    M clang/test/SemaCXX/cxx98-compat.cpp

  Log Message:
  -----------
  No longer diagnose __auto_type as the auto extension (#134129)

Given:

  __auto_type x = 12;
  decltype(auto) y = 12;

-Wc++98-compat would diagnose both x and y with:

'auto' type specifier is incompatible with C++98

This patch silences the diagnostic in those cases. decltype(auto) is
still diagnosed with:

'decltype(auto)' type specifier is incompatible with C++ standards
before C++14

as expected but no longer produces the extraneous diagnostic about use
of 'auto'.

Fixes #47900


  Commit: 739fe980802e17e49ab9cc2e4c18a48c88e15ef5
      https://github.com/llvm/llvm-project/commit/739fe980802e17e49ab9cc2e4c18a48c88e15ef5
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [lldb][test] TestExprFromNonZeroFrame.py: fix windows build

On Windows this test was failing to link with following error:
```

make: Entering directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.test'
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe -gdwarf -O0   -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\commands\expression\expr-from-non-zero-frame -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info   -MT main.o -MD -MP -MF main.d -c -o main.o C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\commands\expression\expr-from-non-zero-frame/main.c
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe main.o -gdwarf -O0   -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\commands\expression\expr-from-non-zero-frame -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info     -fuse-ld=lld  --driver-mode=g++ -o "a.out"
lld-link: error: undefined symbol: printf
>>> referenced by main.o:(func)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile.rules:530: a.out] Error 1
make: Leaving directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.test'
```


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

  Changed paths:
    M clang/lib/AST/QualTypeNames.cpp
    M clang/unittests/Tooling/QualTypeNamesTest.cpp

  Log Message:
  -----------
  [Tooling] Handle AttributedType in getFullyQualifiedType (#134228)

Before this change the code used to add extra qualifiers, e.g.
`std::unique_ptr<int> _Nonnull` became `::std::std::unique_ptr<int>
_Nonnull`
when adding a global namespace qualifier was requested.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-contract.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-fast.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll
    M llvm/test/CodeGen/AArch64/sinksplat.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-int-converts.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/test/CodeGen/AArch64/sve-fp-combine.ll
    M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
    M llvm/test/CodeGen/AArch64/sve-int-log.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-scalar-to-vec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-shifts-merging.ll
    M llvm/test/CodeGen/AArch64/sve-knownbits.ll
    M llvm/test/CodeGen/AArch64/sve-ld1r.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/sve-pr92779.ll
    M llvm/test/CodeGen/AArch64/sve-split-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-vector-splat.ll
    M llvm/test/CodeGen/AArch64/sve-vselect-imm.ll
    M llvm/test/CodeGen/AArch64/sve-zeroinit.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfadd.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmax.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmaxnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmin.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfminnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfsub.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-abs-neg.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-ext.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvt-bfcvt.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvtlt-fcvtx.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvtzsu.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-flogb.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-frint-frecpx-fsqrt.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-rev.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-urecpe-ursqrte-sqabs-sqneg.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-uscvtf.ll

  Log Message:
  -----------
  [LLVM][CodeGen][SVE] Prefer NEON instructions when zeroing Z registers. (#133929)

Several implementations have zero-latency instructions to zero
registers. To-date no implementation has a dedicated SVE instruction but
we can use the NEON equivalent because it is defined to zero bits
128..VL regardless of the immediate used.

NOTE: The relevant instruction is not available in streaming mode, where
the original SVE DUP instruction remains in use.


  Commit: 52f3cad9ffa35a472699d541736bd72dd01d6e62
      https://github.com/llvm/llvm-project/commit/52f3cad9ffa35a472699d541736bd72dd01d6e62
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [X86] getFauxShuffleMask - move INSERT_SUBVECTOR(SRC0, EXTRACT_SUBVECTOR(SRC1)) matching behind common one use bitcast checks (#134227)

No need to ignore one use checks for the INSERT_SUBVECTOR(SRC0, EXTRACT_SUBVECTOR(SRC1)) fold

Noticed while working on the #133947 regressions


  Commit: 2a9948f0384d30fa07522f29ddb2de62560d75a4
      https://github.com/llvm/llvm-project/commit/2a9948f0384d30fa07522f29ddb2de62560d75a4
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  Revert "[CLANG-CL] ignores wpadded" (#134239)

Reverts llvm/llvm-project#130182

This is causing failures on RISC-V and ppc builders as mentioned on
https://github.com/llvm/llvm-project/pull/130182#issuecomment-2775516899

Reverting so the issue can be fixed by the path author without time pressure (as noted in that PR, it seems a value is uninitialised).


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

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrFormats.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/Sparc/SparcInstrVIS.td
    A llvm/test/MC/Disassembler/Sparc/sparc-vis.txt
    M llvm/test/MC/Sparc/sparc-vis.s
    A llvm/test/MC/Sparc/sparc-vis2.s
    A llvm/test/MC/Sparc/sparc-vis3.s

  Log Message:
  -----------
  [SPARC][MC] Add tests for VIS family instructions

Also fix up any mistakes/typos in instruction definitions.

Reviewers: rorth, s-barannikov, brad0, MaskRay

Reviewed By: s-barannikov

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


  Commit: c2355892a4bad78b8ac520a11a7a63371c84d11e
      https://github.com/llvm/llvm-project/commit/c2355892a4bad78b8ac520a11a7a63371c84d11e
  Author: Elen Kalda <elen.kalda at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    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/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Add ERROR_IF checks to TRANSPOSE_CONV2D verifier (#133234)

This patch extends the verifier with following checks:

ERROR_IF(out_pad_top <= -KH || out_pad_bottom <= -KH);
ERROR_IF(out_pad_left <= -KW || out_pad_right <= -KW); ERROR_IF(stride_y
< 1 || stride_x < 1);
ERROR_IF(OH != (IH - 1) * stride_y + out_pad_top + out_pad_bottom + KH);
ERROR_IF(OW != (IW - 1) * stride_x + out_pad_left + out_pad_right + KW);
ERROR_IF(BC != OC && BC != 1);

Signed-off-by: Elen Kalda <elen.kalda at arm.com>


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

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp

  Log Message:
  -----------
  [ADT] Make DenseMap::init() private (NFC) (#134229)

I believe this method was not supposed to be public, as it has
additional preconditions (it will misbehave when called on a non-empty
DenseMap).

The public API for this is reserve().


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

  Changed paths:
    M lldb/source/Target/RegisterContextUnwind.cpp

  Log Message:
  -----------
  [lldb] Initialize active_row pointer variable

It's value is not set on all control flow paths. I believe this should
fix the failure on some buildbots after #133247.


  Commit: ae8ad8649da7f69dae2b19db79b69c460be01916
      https://github.com/llvm/llvm-project/commit/ae8ad8649da7f69dae2b19db79b69c460be01916
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [Clang][AArch64] Model ZT0 table using inaccessible memory (#133727)

This patch changes how ZT0 table is modelled at LLVM-IR level. Currently
accesses to ZT0 are represented at LLVM-IR level as memory reads and
writes. This patch changes that and models them as purely Inaccessible
memory accesses without any unmodeled side-effects.


  Commit: c818ae739902f3c46466b67bd4d1bd4d09b38e84
      https://github.com/llvm/llvm-project/commit/c818ae739902f3c46466b67bd4d1bd4d09b38e84
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Passes/PAuthGadgetScanner.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/binary-analysis/AArch64/cmdline-args.test
    A bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
    M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s

  Log Message:
  -----------
  [BOLT] Gadget scanner: detect non-protected indirect calls (#131899)

Implement the detection of non-protected indirect calls and branches
similar to pac-ret scanner.


  Commit: 9df324e90b32f91e0b2866dffb78b0be0db4f37c
      https://github.com/llvm/llvm-project/commit/9df324e90b32f91e0b2866dffb78b0be0db4f37c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [X86] Add growShuffleMask helper to grow the shuffle mask for a larger value type. NFC. (#134243)

Prep work for #133947


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

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    A llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll

  Log Message:
  -----------
  [SPIRV] Add spirv.VulkanBuffer types to the backend (#133475)

Adds code to expand the `llvm.spv.resource.handlefrombinding` and
`llvm.spv.resource.getpointer` when the resource type is
`spirv.VulkanBuffer`.

It gets expanded as a storage buffer or uniform buffer denpending on the
storage class used.

This is implementing part of

https://github.com/llvm/wg-hlsl/blob/main/proposals/0018-spirv-resource-representation.md.


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

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

  Log Message:
  -----------
  [LV] Use getCallWideningDecision in more places (NFC) (#134236)


  Commit: 586c5e3083428e7473e880dafd5939e8707bc1c9
      https://github.com/llvm/llvm-project/commit/586c5e3083428e7473e880dafd5939e8707bc1c9
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/lib/Conversion/MPIToLLVM/MPIToLLVM.cpp
    M mlir/test/Conversion/MPIToLLVM/mpitollvm.mlir

  Log Message:
  -----------
  [mlir][mpi] fixing in-place and 0d mpi.all_reduce (#134225)

* inplace allreduce needs special MPI token MPI_IN_PLACE as send buffer
* 0d tensors have no sizes/strides in LLVM memref struct


  Commit: 9e0ca5720bee96f4b19eeb69a119b5eda3ab5528
      https://github.com/llvm/llvm-project/commit/9e0ca5720bee96f4b19eeb69a119b5eda3ab5528
  Author: Aaron Puchert <aaron.puchert at sap.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/test/CodeGen/X86/base-pointer-and-cmpxchg.ll

  Log Message:
  -----------
  [X86] When expanding LCMPXCHG16B_SAVE_RBX, substitute RBX in base (#134109)

The pseudo-instruction LCMPXCHG16B_SAVE_RBX is used when RBX serves as
frame base pointer. At a very late stage it is then translated into a
regular LCMPXCHG16B, preceded by copying the actual argument into RBX,
and followed by restoring the register to the base pointer.

However, in case the `cmpxchg` operates on a local variable, RBX might
also be used as a base for the memory operand in frame finalization, and
we've overwritten RBX with the input operand for `cmpxchg16b`. So we
have to rewrite the memory operand base to use the saved value of RBX.

Fixes #119959.


  Commit: 7145ead280ba10d08fe48e7859f1a61a64653104
      https://github.com/llvm/llvm-project/commit/7145ead280ba10d08fe48e7859f1a61a64653104
  Author: GeorgeKA <gkasante at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/cxx17-compat.cpp
    M clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp

  Log Message:
  -----------
  [Clang] Add warning message for C++17 alias template CTAD (#133806)

Alias template class template argument deduction is a documented C++20
feature. C++17 also happens to support it, but there is no message
output to indicate the officially supported version. This PR adds that.

Also updated relevant CTAD test cases.

Closes #125913


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

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/generic-loop-rewriting.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [Flang][MLIR][OpenMP] Host-evaluation of omp.loop bounds (#133908)

This patch updates Flang lowering and kernel flags identification in
MLIR so that loop bounds on `target teams loop` constructs are evaluated
on the host, making the trip count available to the corresponding
`__tgt_target_kernel` call emitted for the target region.

This is necessary in order to properly execute these constructs as
`target teams distribute parallel do`.

Co-authored-by: Kareem Ergawy <kareem.ergawy at amd.com>


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

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/shl-bo.ll
    M llvm/test/Transforms/InstCombine/shl-twice-constant.ll
    M llvm/test/Transforms/InstCombine/sub.ll

  Log Message:
  -----------
  Revert "[InstCombine] Match scalable splats in m_ImmConstant (#132522)"

This reverts commit df9e5ae5b40c4d245d904a2565e46f5b7ab9c7c8.

This is triggering an assertion failure on llvm-test-suite with
-enable-vplan-native-path:
https://lab.llvm.org/buildbot/#/builders/198/builds/3365


  Commit: 59074a376099333a2546c4e3a8b30693c8a3ee92
      https://github.com/llvm/llvm-project/commit/59074a376099333a2546c4e3a8b30693c8a3ee92
  Author: gbMattN <matthew.nagy at sony.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-inlined.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp

  Log Message:
  -----------
  [ASan] Add metadata to renamed instructions so ASan doesn't use the i… (#119387)

…ncorrect name

Clang needs variables to be represented with unique names. This means
that if a variable shadows another, its given a different name
internally to ensure it has a unique name. If ASan tries to use this
name when printing an error, it will print the modified unique name,
rather than the variable's source code name

Fixes #47326


  Commit: 008040482b15aa76699e61e59218e92d3786e17a
      https://github.com/llvm/llvm-project/commit/008040482b15aa76699e61e59218e92d3786e17a
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/test/Headers/openmp_device_math_isnan.cpp
    M clang/test/OpenMP/declare_variant_construct_codegen_1.c
    M clang/test/OpenMP/interop_codegen.cpp
    M clang/test/OpenMP/ompx_attributes_codegen.cpp
    M clang/test/OpenMP/target_num_teams_num_threads_attributes.cpp
    M clang/test/OpenMP/target_parallel_no_exceptions.cpp
    M clang/test/OpenMP/target_team_variable_codegen.cpp
    M clang/test/OpenMP/target_visibility.cpp

  Log Message:
  -----------
  [clang] Add SPIR-V to some OpenMP clang tests (#133503)

Just to get some more coverage.

Some of the behavior might be weird and change in the future, but let's
lock down what happens today to at least prevent regressions.

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


  Commit: b8fc288c46abeea8d330fabdf6ab1ebf1c5b283d
      https://github.com/llvm/llvm-project/commit/b8fc288c46abeea8d330fabdf6ab1ebf1c5b283d
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [Dexter] Replace clang with clang++ in various cross project tests (#65987)

This patch replaces invocations of clang with clang++ for a set of
c++ files in the dexter cross-project tests. As a small additional change,
this patch removes -lstdc++ from a test that did not appear to require it.


  Commit: 50fe5b90e7a17700dd265d3cd917c4332b806152
      https://github.com/llvm/llvm-project/commit/50fe5b90e7a17700dd265d3cd917c4332b806152
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common][NFC] Fix sanitizer_symbolizer_libcdep.cpp formatting  (#133930)


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

  Changed paths:
    M lldb/docs/use/python-reference.rst

  Log Message:
  -----------
  [lldb] Update examples in docs/use/python-reference.rst to work with Python 3 (#134204)

The examples on this page were using the Python 2-style print. I ran the
updated code examples under Python 3 to confirm they are still
up-to-date.


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

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    A mlir/test/Target/LLVMIR/openmp-target-generic-spmd.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Fix standalone distribute on the device (#133094)

This patch updates the handling of target regions to set trip counts and
kernel execution modes properly, based on clang's behavior. This fixes a
race condition on `target teams distribute` constructs with no `parallel
do` loop inside.

This is how kernels are classified, after changes introduced in this
patch:

```f90
! Exec mode: SPMD.
! Trip count: Set.
!$omp target teams distribute parallel do
do i=...
end do

! Exec mode: Generic-SPMD.
! Trip count: Set (outer loop).
!$omp target teams distribute
do i=...
  !$omp parallel do private(idx, y)
  do j=...
  end do
end do

! Exec mode: Generic-SPMD.
! Trip count: Set (outer loop).
!$omp target teams distribute
do i=...
  !$omp parallel
    ...
  !$omp end parallel
end do

! Exec mode: Generic.
! Trip count: Set.
!$omp target teams distribute
do i=...
end do

! Exec mode: SPMD.
! Trip count: Not set.
!$omp target parallel do
do i=...
end do

! Exec mode: Generic.
! Trip count: Not set.
!$omp target
  ...
!$omp end target
```

For the split `target teams distribute + parallel do` case, clang
produces a Generic kernel which gets promoted to Generic-SPMD by the
openmp-opt pass. We can't currently replicate that behavior in flang
because our codegen for these constructs results in the introduction of
calls to the `kmpc_distribute_static_loop` family of functions, instead
of `kmpc_distribute_static_init`, which currently prevent promotion of
the kernel to Generic-SPMD.

For the time being, instead of relying on the openmp-opt pass, we look
at the MLIR representation to find the Generic-SPMD pattern and directly
tag the kernel as such during codegen. This is what we were already
doing, but incorrectly matching other kinds of kernels as such in the
process.


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

  Changed paths:
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp

  Log Message:
  -----------
  [lldb][NFC] Move ShouldShow/ShouldSelect logic into Stopinfo (#134160)

This NFC patch simplifies the main loop in HandleProcessStateChanged
event by moving duplicated code into the StopInfo class, also allowing
StopInfo subclasses to override behavior.

More specifically, two functions are created:

* ShouldShow: should a Thread with such StopInfo should be printed when
the debugger stops? Currently, no StopInfo subclasses override this, but
a subsequent patch will fix a bug by making StopInfoBreakpoint check
whether the breakpoint is internal.

* ShouldSelect: should a Thread with such a StopInfo be selected? This
is currently overridden by StopInfoUnixSignal but will, in the future,
be overridden by StopInfoBreakpoint.


  Commit: 61ef28650626dd4f651a250005c77255d8086f69
      https://github.com/llvm/llvm-project/commit/61ef28650626dd4f651a250005c77255d8086f69
  Author: gbMattN <matthew.nagy at sony.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  Fix signed/unsigned mismatch warning (#134255)


  Commit: 2334fd2ea3a0a391ca88da36764d895d9c34e1bc
      https://github.com/llvm/llvm-project/commit/2334fd2ea3a0a391ca88da36764d895d9c34e1bc
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/precompiled_binary/commands.dex
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/windows_noncanonical_path/test.dex
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp

  Log Message:
  -----------
  [Dexter] Update Dexter tests to use new dexter test substitutions

Following commit b8fc288, which changed some dexter test substitutions to
be specific to C and C++, some tests that had been added since the original
patch was written were still using the old substitution; this patch updates
them to use the new.


  Commit: f23bb530cfad1ca72812d0daf599834ea2291219
      https://github.com/llvm/llvm-project/commit/f23bb530cfad1ca72812d0daf599834ea2291219
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces-vectors.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll

  Log Message:
  -----------
  [AMDGPULowerBufferFatPointers] Use InstSimplifyFolder during rewrites (#134137)

This PR updates AMDGPULowerBufferFatPointers to use the
InstSimplifyFolder
when creating IR during buffer fat pointer lowering.

This shouldn't cause any large functional changes and might improve the
quality of the generated code.


  Commit: 2080334574a88a7ac4102007b56809cd0a19b905
      https://github.com/llvm/llvm-project/commit/2080334574a88a7ac4102007b56809cd0a19b905
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/AVR.cpp
    M clang/lib/Driver/ToolChains/AVR.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.h
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OHOS.h
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.h
    M clang/lib/Driver/ToolChains/PPCLinux.cpp
    M clang/lib/Driver/ToolChains/PPCLinux.h
    M clang/lib/Driver/ToolChains/Solaris.cpp
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64-ibm-aix/libflang_rt.runtime.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64le-unknown-linux-gnu/libflang_rt.runtime.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64le-unknown-linux-gnu/libflang_rt.runtime.so
    M flang-rt/cmake/modules/GetToolchainDirs.cmake
    A flang/test/Driver/flang-ld-powerpc.f90

  Log Message:
  -----------
  [flang-rt] Pass the whole path of libflang_rt.runtime.a to linker on AIX and LoP (#131041)

This PR is to improve the driver code to build `flang-rt` path by
re-using the logic and code of `compiler-rt`.

1. Moved `addFortranRuntimeLibraryPath` and `addFortranRuntimeLibs` to
`ToolChain.h` and made them virtual so that they can be overridden if
customization is needed. The current implementation of those two
procedures is moved to `ToolChain.cpp` as the base implementation to
default to.

2. Both AIX and PPCLinux now override `addFortranRuntimeLibs`. 
The overriding function of `addFortranRuntimeLibs` for both AIX and
PPCLinux calls `getCompilerRTArgString` => `getCompilerRT` =>
`buildCompilerRTBasename` to get the path to `flang-rt`. This code
handles `LLVM_ENABLE_PER_TARGET_RUNTIME_DIR` setting. As shown in
`PPCLinux.cpp`, `FT_static` is the default. If not found, it will search
and build for `FT_shared`. To differentiate `flang-rt` from `clang-rt`,
a boolean flag `IsFortran` is passed to the chain of functions in order
to reach `buildCompilerRTBasename`.


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

  Changed paths:
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/test/Analysis/ValueTracking/known-bits-from-operator-constexpr.ll
    M llvm/test/Transforms/InstCombine/addrspacecast.ll
    M llvm/test/Transforms/InstCombine/scalable-const-fp-splat.ll
    M llvm/test/Transforms/InstCombine/scalable-trunc.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/cast-vector.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale.ll
    M llvm/test/Transforms/InstSimplify/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/vscale.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
    M llvm/test/Transforms/MemCpyOpt/crash.ll
    M llvm/test/Transforms/VectorCombine/pr88796.ll

  Log Message:
  -----------
  [ConstantFold] Support scalable constant splats in ConstantFoldCastInstruction (#133207)

Previously only fixed vector splats were handled. This adds supports for
scalable vectors too by allowing ConstantExpr splats.

We need to add the extra V->getType()->isVectorTy() check because a
ConstantExpr might be a scalar to vector bitcast.

By allowing ConstantExprs this also allow fixed vector ConstantExprs to
be folded, which causes the diffs in
llvm/test/Analysis/ValueTracking/known-bits-from-operator-constexpr.ll
and llvm/test/Transforms/InstSimplify/ConstProp/cast-vector.ll. I can
remove them from this PR if reviewers would prefer.

Fixes #132922


  Commit: 12f75bba41d7b9752df799349b2b32bdf68e9765
      https://github.com/llvm/llvm-project/commit/12f75bba41d7b9752df799349b2b32bdf68e9765
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  Revert "[X86] SimplifyDemandedVectorEltsForTargetNode - reduce the size of VPERMV/VPERMV3 nodes if the upper elements are not demanded" (#134256)

Found a typo in the VPERMV3 mask adjustment - I'm going to revert and re-apply the patch with a fix

Reverts llvm/llvm-project#133923


  Commit: c1ada72b0995844299ef40433314124266015428
      https://github.com/llvm/llvm-project/commit/c1ada72b0995844299ef40433314124266015428
  Author: Julian Brown <julian.brown at amd.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  [OpenMP] Mark 'map-type modifiers in arbitrary position' done (#133906)

I think #90499 already implements support for the listed OpenMP 6.0
feature mentioned in the title. This patch just marks it done (for
C/C++).


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

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/ASTMatchers/ASTMatchFinder.cpp
    M clang/lib/Index/IndexDecl.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaFunctionEffects.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/SemaCXX/fold_lambda_with_variadics.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [clang] support pack expansions for trailing requires clauses (#133190)


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

  Changed paths:
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/test/Lower/array-constructor-2.f90

  Log Message:
  -----------
  [flang][nfc] Initial changes needed to use llvm intrinsics instead of regular calls (#134170)

Flang uses `fir.call <llvm intrinsic>` in a few places. This means
consumers of the IR need to strcmp every fir.call if they want to find a
particular LLVM intrinsic.
Emit LLVM memcpy intrinsics instead.


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

  Changed paths:
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/lib/Target/SPIRV/SPIRVMergeRegionExitTargets.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVStripConvergentIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp

  Log Message:
  -----------
  [NFC] Cleanup pass initialization for SPIRV passes (#134189)

- Do not call pass initialization functions from pass contructors.
- Instead, call them from SPIRV target initialization.
- https://github.com/llvm/llvm-project/issues/111767


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

  Changed paths:
    M lldb/tools/lldb-dap/Breakpoint.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/ExceptionBreakpoint.cpp
    M lldb/tools/lldb-dap/FunctionBreakpoint.cpp
    M lldb/tools/lldb-dap/SourceBreakpoint.cpp

  Log Message:
  -----------
  [lldb-dap] Protect SetBreakpoint with the API mutex (#134030)

Protect the various SetBreakpoint functions with the API mutex. This
fixes a race condition between the breakpoint being created and the DAP
label getting added. This was causing `TestDAP_breakpointEvents.py` to
be flaky.

Fixes #131242.


  Commit: bf388f8a43c26264dfa96a91bead440d19f58bc4
      https://github.com/llvm/llvm-project/commit/bf388f8a43c26264dfa96a91bead440d19f58bc4
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] legalize operands when move16bit SALU to VALU (#133985)

This is a follow up PR from
https://github.com/llvm/llvm-project/pull/132089.

When a V2S copy and its useMI are lowered to VALU,  this patch check:
If the generated new VALU is a true16 inst. Add subreg access on all
operands if necessary.

an example MIR looks like:
```
%1:vgpr_32 = V_CVT_F32_U32_e64 %0:vgpr_32, 0, 0 ...
%2:sreg_32 = COPY %1:vgpr_32
%3:sreg_32 = S_FLOOR_F16 %2:sreg_32, ...
```
currently lowered to
```
%1:vgpr_32 = V_CVT_F32_U32_e64 %0:vgpr_32, 0, 0 ...
%2:vgpr_16 = V_FLOOR_F16_t16_e64 0, %1:vgpr_32, 0, 0, 0 ...
```
after this patch
```
%1:vgpr_32 = V_CVT_F32_U32_e64 %0:vgpr_32, 0, 0 ...
%2:vgpr_16 = V_FLOOR_F16_t16_e64 0, %1.lo16:vgpr_32, 0, 0, 0 ...
```


  Commit: 65fa57bdcc9d745dd8c222426e79618fb7cf1c91
      https://github.com/llvm/llvm-project/commit/65fa57bdcc9d745dd8c222426e79618fb7cf1c91
  Author: Finn Plummer <canadienfinn at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/AST/HLSL/RootSignatures-AST.hlsl
    A clang/test/SemaHLSL/RootSignature-err.hlsl

  Log Message:
  -----------
  [HLSL][RootSignature] Define and integrate `HLSLRootSignatureAttr` (#134124)

- Defines HLSLRootSignature Attr in `Attr.td`
- Define and implement handleHLSLRootSignature in `SemaHLSL`
- Adds sample test case to show AST Node is generated in
`RootSignatures-AST.hlsl`

This commit will "hook-up" the seperately defined RootSignature parser
and invoke it to create the RootElements, then store them on the
ASTContext and finally store the reference to the Elements in
RootSignatureAttr

Resolves https://github.com/llvm/llvm-project/issues/119011

---------

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


  Commit: b738b82699e58fa50d15d76e1e26b58100ad344e
      https://github.com/llvm/llvm-project/commit/b738b82699e58fa50d15d76e1e26b58100ad344e
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

  Changed paths:
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    R libc/include/llvm-libc-types/__bsearchcompare_t.h
    R libc/include/llvm-libc-types/__lsearchcompare_t.h
    A libc/include/llvm-libc-types/__search_compare_t.h
    M libc/include/search.yaml
    M libc/include/stdlib.yaml

  Log Message:
  -----------
  [libc] Combine the function prototype `int (*compar)(const void *, const void *)` (#134238)

Closes #134118.


  Commit: 2190808f5d010a91e17c0dd8143466042b5a4028
      https://github.com/llvm/llvm-project/commit/2190808f5d010a91e17c0dd8143466042b5a4028
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce the size of VPERMV/VPERMV3 nodes if the upper elements are not demanded (REAPPLIED) (#134263)

With AVX512VL targets, use 128/256-bit VPERMV/VPERMV3 nodes when we only need the lower elements.

Reapplied version of #133923 with fix for typo in the VPERMV3 mask adjustment


  Commit: 73e8d67a200beaa554a72cdd50e4d1a5a55caf69
      https://github.com/llvm/llvm-project/commit/73e8d67a200beaa554a72cdd50e4d1a5a55caf69
  Author: Finn Plummer <canadienfinn at gmail.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    R clang/test/AST/HLSL/RootSignatures-AST.hlsl
    R clang/test/SemaHLSL/RootSignature-err.hlsl

  Log Message:
  -----------
  Revert "[HLSL][RootSignature] Define and integrate `HLSLRootSignatureAttr`" (#134273)

Reverts llvm/llvm-project#134124

The build is failing again to a linking error:
[here](https://github.com/llvm/llvm-project/pull/134124#issuecomment-2776370486).
Again the error was not present locally or any of the pre-merge builds
and must have been transitively linked in these build environments...


  Commit: bc6cd825ecea94f015c590c877a1401d3a4a46b8
      https://github.com/llvm/llvm-project/commit/bc6cd825ecea94f015c590c877a1401d3a4a46b8
  Author: John Harrison <harjohn at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    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/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/StackTraceRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/SourceBreakpoint.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Creating a common configuration structure for launch and attach requests. (#133960)

This moves all the common settings of the launch and attach operations
into the `lldb_dap::protocol::Configuration`. These common settings
can be in both `launch` and `attach` requests and allows us to isolate
the DAP configuration operations into a single common location.

This is split out from #133624.


  Commit: a1bc979aa854c600e64e7500f1b79cd1d2655eb4
      https://github.com/llvm/llvm-project/commit/a1bc979aa854c600e64e7500f1b79cd1d2655eb4
  Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/SCF/one-shot-bufferize.mlir

  Log Message:
  -----------
  [mlir][Bufferization] Do not have read semantics for destination of `tensor.parallel_insert_slice`. (#134169)

`tensor.insert_slice` needs to have read semantics on its destination
operand. Since it has a return value, its semantics are

- Copy dest to result
- Copy source to subview of destination.

`tensor.parallel_insert_slice` though has no result. So it does not need
to have read semantics. The op description
[here](https://github.com/llvm/llvm-project/blob/a3ac318e5f8668ec5b79dd86639881dfb2e88b69/mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td#L1524)
also says that it is expected to lower to a `memref.subview`, that does
not have read semantics on the destination (its just a view).

This patch drops the read semantics for destination of
`tensor.parallel_insert_slice` but also makes the `shared_outs` operands
of `scf.forall` have read semantics. Earlier it would rely indirectly on
read semantics of destination operand of `tensor.parallel_insert_slice`
to propagate the read semantics for `shared_outs`. Now that is specified
more directly.

Fixes #133964

---------

Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>


  Commit: 6ddf7cf7808e7e60314ed003d52c215dedc0924b
      https://github.com/llvm/llvm-project/commit/6ddf7cf7808e7e60314ed003d52c215dedc0924b
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Allow `gentbl_cc_library(tbl_outs)` to be a dict. (#134271)

This makes the BUILD file shorter and more readable.
I will follow up with converting the other instances.


  Commit: a54736afd5b8f8ed25550a9f456afd36e49c04e0
      https://github.com/llvm/llvm-project/commit/a54736afd5b8f8ed25550a9f456afd36e49c04e0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

  Log Message:
  -----------
  CloneFunction: Do not delete blocks with address taken (#134209)

If a block with a single predecessor also had its address taken,
it was getting deleted in this post-inline cleanup step. This would
result in the blockaddress in the resulting function getting deleted
and replaced with inttoptr 1.

This fixes one bug required to permit inlining of functions with blockaddress 
uses.

At the moment this is not testable (at least without an annoyingly complex
unit test),  and is a pre-bug fix for future patches. Functions with
blockaddress uses are rejected in isInlineViable, so we don't get this far
with the current InlineFunction uses (some of the existing cases seem to
reproduce this part of the rejection logic, like PartialInliner). This
will be tested in a pending llvm-reduce change.

Prerequisite for #38908


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

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/shl-bo.ll
    M llvm/test/Transforms/InstCombine/shl-twice-constant.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstSimplify/vec-icmp-of-cast.ll

  Log Message:
  -----------
  Reapply "[InstCombine] Match scalable splats in m_ImmConstant (#132522)" (#134262)

This reapplies #132522.

Previously casts of scalable m_ImmConstant splats weren't being folded
by ConstantFoldCastOperand, triggering the "Constant-fold of ImmConstant
should not fail" assertion.

There are no changes to the code in this PR, instead we just needed
#133207 to land first.

A test has been added for the assertion in
llvm/test/Transforms/InstSimplify/vec-icmp-of-cast.ll
@icmp_ult_sext_scalable_splat_is_true.

<hr/>

#118806 fixed an infinite loop in FoldShiftByConstant that could occur
when the shift amount was a ConstantExpr.

However this meant that FoldShiftByConstant no longer kicked in for
scalable vectors because scalable splats are represented by
ConstantExprs.

This fixes it by allowing scalable splats of non-ConstantExprs in
m_ImmConstant, which also fixes a few other test cases where scalable
splats were being missed.

But I'm also hoping that UseConstantIntForScalableSplat will eventually
remove the need for this.

I noticed this when trying to reverse a combine on RISC-V in #132245,
and saw that the resulting vector and scalar forms were different.


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

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

  Log Message:
  -----------
  [CUDA] Add support for CUDA surfaces (#132883)

This adds support for all the surface read and write calls to clang. It
extends the pattern used for textures to surfaces too.

I tested this by generating all the various permutations of the calls
and argument types in a python script, compiling them with both clang
and nvcc, and comparing the generated ptx for equivilence. They all
agree, ignoring register allocation, and some places where Clang picks
different memory write instructions. An example kernel is:

```
__global__ void testKernel(cudaSurfaceObject_t surfObj, int x, float2* result) {
    *result = surf1Dread<float2>(surfObj, x, cudaBoundaryModeZero);
}
```

---------

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


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

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

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

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

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


  Commit: 1a540c3b8bcefaf6b36f261341ce55a1a24eca21
      https://github.com/llvm/llvm-project/commit/1a540c3b8bcefaf6b36f261341ce55a1a24eca21
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-04-03 (Thu, 03 Apr 2025)

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

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

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


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

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

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

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


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

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

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

This change adds local initialization for ArrayType

Issue #130197


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

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

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

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

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

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


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

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

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


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

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

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

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


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

  Changed paths:
    M flang/docs/CMakeLists.txt

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


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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


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

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

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

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

---------

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


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

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

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

Block a context root from being imported by its callers. 

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


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

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

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

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

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


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

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

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

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

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

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

Fixes #134112.


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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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


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

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

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

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


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

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

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

This PR adds the intrinsic `unlink` to flang. 

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


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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

This PR implements the nonstandard intrinsic time.

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


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

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

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

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


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

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

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

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

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

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

rdar://146886210


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

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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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

Minor code cleanup

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


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

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

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

Trivial change.

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


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

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

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

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

Vendor relocation support will be added in a later patch.


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

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

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

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

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


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

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

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

This PR finishes what PR #133992 started.


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

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

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

See PR #134192


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

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

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


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

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

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

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

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

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

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


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

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

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


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

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

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

Reverts llvm/llvm-project#134163

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


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

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

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

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

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

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


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

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

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

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

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

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


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

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

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

Follow-up to #134207

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


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

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

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

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

---------

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


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

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

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

Part of #123569


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

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

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

Part of #123569


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

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

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

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


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

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

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

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

The failure ought to be fixed by
0509932bb6a291ba11253f30c465ab3ad164ae08.


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

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

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

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


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

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

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


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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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

To be consistent with canProfitablyRuntimeUnrollMultiExitLoop, always
respect the option.

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

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


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

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

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


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

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

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

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

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

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

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

---------

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


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

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

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

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

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

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


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

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

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

Simple refactor change.

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


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

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

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

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

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

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

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

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


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

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

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


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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

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

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


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

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

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

Improved "options" sections of various checks:

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

---------

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


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

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

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

Fix #134356.

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


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

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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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

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

Which is more efficient.


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

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

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

Follow up to #134170.

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


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

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

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

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


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

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

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


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

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

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

This addresses a post-commit request for some additional tests


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

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

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

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


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

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

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

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

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


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

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

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

Reverts llvm/llvm-project#132246


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

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

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

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

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


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

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

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

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

Will investigate later.


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

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

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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

---------

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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

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

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

Fallout from PR #133467.


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

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

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

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

rdar://133388373


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

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

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


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

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

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

Needed after 6ee5e694bff


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

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

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

...and add missing TargetsToBuild dep.


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

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

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

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

Fixes #47833


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

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

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

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


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

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

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

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

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

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

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

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

To a series of narrowing vnsrl.wis:

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

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

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

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

Fixes #132245


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

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

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

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


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

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

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

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

Reviewers: RKSimon, hiraditya

Reviewed By: RKSimon

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


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

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

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

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


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

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

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


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

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

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


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

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

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


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

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

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

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

Handle TLS case while performing operand symbolization on AArch64.


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

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

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

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

Fixes #56471.


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

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

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

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

rdar://148405946


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

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

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

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

Fixes #47451


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

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

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

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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

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

rdar://148520448


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

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

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

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

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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


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

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

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


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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

This reduces code duplication.


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

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

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

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


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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

Removes `Binding` from "Resource Instance" types


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

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

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

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

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


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

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

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

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

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


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

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

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

Fixes #102053

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


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

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

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

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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

Simple cleanup


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

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

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

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


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

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

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

The UpdateRegisterContext method can be called from multiple threads.


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

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

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

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

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



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


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


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

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

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

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

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

----

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

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


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

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

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

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

convert

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

to

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

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


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

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

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

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

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

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

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


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

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

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


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

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

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

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

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


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

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

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

Similar to RISCV


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

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

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

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

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

---------

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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

This reverts commit d72be157823d41e7eaf457cc37ea99c07431a25c.

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


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

  Changed paths:
    M clang/www/cxx_dr_status.html

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


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

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp

  Log Message:
  -----------
  [clang][CGObjC] Remove unused ExternalProtocolPtrTy (NFC) (#133870)

This function was previously used to get a type to the protocol that
was used to bitcast the initializer of GenerateProtocol. This bitcast
has later been removed (thanks to opaque pointers), but the member was
left behind.

History:

- 020de3254acc3 used ExternalProtocolPtrTy
- 34ee69b4ce662 removes the bitcast

Also technically part of #123569


  Commit: 75bbf768a4ae3d9f6cd45ab7448acf3792d94d82
      https://github.com/llvm/llvm-project/commit/75bbf768a4ae3d9f6cd45ab7448acf3792d94d82
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] Linux's eventfd interception. (#132836)


  Commit: 6c9e098b397fa8802b701a3a4ac827476b33568e
      https://github.com/llvm/llvm-project/commit/6c9e098b397fa8802b701a3a4ac827476b33568e
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] symlink/symlinkat interception. (#134168)


  Commit: 008e3a0b3d08a863f777d67e067eed75f0c08402
      https://github.com/llvm/llvm-project/commit/008e3a0b3d08a863f777d67e067eed75f0c08402
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [ValueTracking] Test for trunc nuw cond in assume. (NFC)


  Commit: 16573315d986568641e536c37c84fcc5dd161bf6
      https://github.com/llvm/llvm-project/commit/16573315d986568641e536c37c84fcc5dd161bf6
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] Test for fold of and of icmps with operands in the range(0,2)  (NFC)

proof https://alive2.llvm.org/ce/z/xeazCu

this is a regression found in https://github.com/llvm/llvm-project/pull/128861
This fold is done when icmp eq/ne x, 1/0 is folded to trunc nuw x iff x is in the range(0,2)


  Commit: cd54cb062bba9c90a8f3723bf66caa7effbcf259
      https://github.com/llvm/llvm-project/commit/cd54cb062bba9c90a8f3723bf66caa7effbcf259
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/lib/Headers/amxcomplexintrin.h

  Log Message:
  -----------
  [X86][AMX] Add missing __inline__ for AMXCOMPLEX intrinsics, NFCI (#134484)

Found by #64779.


  Commit: 13799998c06984f808ff687e7866441a3135fd18
      https://github.com/llvm/llvm-project/commit/13799998c06984f808ff687e7866441a3135fd18
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/unittests/ADT/EquivalenceClassesTest.cpp
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h

  Log Message:
  -----------
  [EquivalenceClasses] Use DenseMap instead of std::set. (NFC) (#134264)

Replace the std::set with DenseMap, which removes the requirement for an
ordering predicate. This also requires to allocate the ECValue objects
separately. This patch uses a BumpPtrAllocator.

Follow-up to https://github.com/llvm/llvm-project/pull/134075.

Compile-time impact is mostly neutral or slightly positive:

https://llvm-compile-time-tracker.com/compare.php?from=ee4e8197fa67dd1ed6e9470e00708e7feeaacd97&to=242e6a8e42889eebfc0bb5d433a4de7dd9e224a7&stat=instructions:u


  Commit: 475cbf0ad6e72f33e5ba5890a1c6e84e39a19e83
      https://github.com/llvm/llvm-project/commit/475cbf0ad6e72f33e5ba5890a1c6e84e39a19e83
  Author: James E T Smith <jamesETsmith at users.noreply.github.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/out_value_result.h
    A libcxx/include/__numeric/ranges_iota.h
    M libcxx/include/algorithm
    M libcxx/include/module.modulemap
    M libcxx/include/numeric
    M libcxx/include/version
    M libcxx/modules/std/algorithm.inc
    M libcxx/modules/std/numeric.inc
    M libcxx/test/std/algorithms/algorithms.results/no_unique_address.compile.pass.cpp
    A libcxx/test/std/algorithms/algorithms.results/out_value_result.pass.cpp
    M libcxx/test/std/algorithms/ranges_result_alias_declarations.compile.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Implement ranges::iota (#68494)

# Overview

As a disclaimer, this is my first PR to LLVM and while I've tried to
ensure I've followed the LLVM and libc++ contributing guidelines,
there's probably a good chance I missed something. If I have, just let
me know and I'll try to correct it as soon as I can.

This PR implements `std::ranges::iota` and
`std::ranges::out_value_result` outlined in
[P2440r1](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2440r1.html).

As outlined in the paper above, I've:
- Implemented `out_value_result` and added to `<algorithm>`
- Added `out_value_result`, `iota_result`, and two overloads of `iota`
to `std::ranges` in `<numeric>`
- Updated the version macro `__cpp_lib_ranges_iota` in `<version>`

I've also added tests for `ranges::iota` and `ranges::out_value_result`.
Lastly, I added those structs to the appropriate module files.

Partially implements #105184

EDIT: Forgot to mention in the original post, thanks to @hawkinsw for
taking a look at a preliminary version of this PR!

# TODOs
- [x] Updating the range [status
doc](https://github.com/jamesETsmith/llvm-project/blob/main/libcxx/docs/Status/RangesMajorFeatures.csv)
- [x] Ensure all comments from https://reviews.llvm.org/D121436 are
addressed here
- [X] EDIT (I'll do this in a separate PR). ~~I'm open to implementing
the rest of P2440r1 (`ranges::shift_left` and `ranges::shift_right`) if
that's ok, I just wanted to get feedback on `ranges::iota` first~~
- [x] I've been having trouble building the modules locally and want to
make sure that's working properly

Closes: #134060


  Commit: 68ce637872a2e1a1dedbb9caa6eacf15ec5c7b99
      https://github.com/llvm/llvm-project/commit/68ce637872a2e1a1dedbb9caa6eacf15ec5c7b99
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect Conversion: Replace after legalizing constants (#134384)

When folding an op during a conversion, first try to legalize all
generated constants, then replace the original operation. This is
slightly more efficient because fewer rewrites must be rolled back in
case a generated constant could not be legalized.

Note: This is in preparation of the One-Shot Dialect Conversion
refactoring.


  Commit: fcead25550bb727215919ecf2dfad17765223c19
      https://github.com/llvm/llvm-project/commit/fcead25550bb727215919ecf2dfad17765223c19
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M lldb/include/lldb/Utility/LLDBAssert.h

  Log Message:
  -----------
  [lldb] Fix building with GCC without asserts

This case was missed in 03604a784011bec2292f900b118d825f34f8cf89.


  Commit: 13faa819168e568404bee320ca7db9bc386f081f
      https://github.com/llvm/llvm-project/commit/13faa819168e568404bee320ca7db9bc386f081f
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/TypePromotion.cpp
    A llvm/test/CodeGen/AArch64/typepromotion-gep.ll
    M llvm/test/CodeGen/AArch64/typepromotion-phisret.ll
    M llvm/test/Transforms/TypePromotion/ARM/phis-ret.ll
    M llvm/test/Transforms/TypePromotion/ARM/pointers.ll

  Log Message:
  -----------
  [TypePromotion] Do not zero-extend getelementptr indexes since signed

A miscompilation issue has been addressed with improved handling.

Fixes: https://github.com/llvm/llvm-project/issues/133928.

Alive2: https://alive2.llvm.org/ce/z/gcMNvS.


  Commit: c07ab9e2ab0f288c10af172d11a3936b89b952fb
      https://github.com/llvm/llvm-project/commit/c07ab9e2ab0f288c10af172d11a3936b89b952fb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll

  Log Message:
  -----------
  [VPlan] Set debug location for recipes in VPBB::executeRecipes.

Set the debug location for each recipe before executing the recipe,
instead of ad-hoc setting the debug location during individual recipe
execution.

This simplifies the code and ensures that all recipe repsect the
recipe's debug location. There are some minor changes, where previously
we would re-use a previously set debug location.


  Commit: 6ac5cbdd29b630259432fc5b478cd2ddf78a17cd
      https://github.com/llvm/llvm-project/commit/6ac5cbdd29b630259432fc5b478cd2ddf78a17cd
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/PassSupport.h

  Log Message:
  -----------
  [NFC][LLVM] Eliminate duplicate code in INITIALIZE_PASS macros (#134457)

- Refactor INITIALIZE_PASS and INITIALIZE_PASS_WITH_OPTIONS macros to
eliminate some code duplication.


  Commit: 33246f79e87a0e629ae776d1811a1175a3f10065
      https://github.com/llvm/llvm-project/commit/33246f79e87a0e629ae776d1811a1175a3f10065
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCObjectWriter.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AArch64/label-arithmetic-diags-darwin.s
    M llvm/test/MC/ELF/bad-expr.s
    M llvm/test/MC/X86/macho-reloc-errors-x86_64.s

  Log Message:
  -----------
  [MC] Rework evaluateSymbolicAdd to eliminate MCValue::SymB reliance

Reworked evaluateSymbolicAdd and isSymbolRefDifferenceFullyResolved to
remove their reliance on MCValue::SymB, which previously used the
MCSymbolRefExpr member when folding two symbolic expressions. This
dependency prevented replacing MCValue::SymB with a MCSymbol. By
refactoring, we enable this replacement, which is a more significant
improvement.

Note that this change eliminates the rare "unsupported subtraction of
qualified symbol" diagnostic, resulting in a minor loss of information.
However, the benefit of enabling MCValue::SymB replacement with MCSymbol
outweighs this slight regression.


  Commit: cadfaa83ff1f7d9f983b23a756f25884a3d6314c
      https://github.com/llvm/llvm-project/commit/cadfaa83ff1f7d9f983b23a756f25884a3d6314c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp

  Log Message:
  -----------
  [AVR,CSKY] Migrate away from MCValue::getSymB

The MCValue::SymB MCSymbolRefExpr member might be replaced with a
MCSymbol in the future. Reduce direct access.


  Commit: b4f7a2ab578957657336a598220fce6fc00f56b5
      https://github.com/llvm/llvm-project/commit/b4f7a2ab578957657336a598220fce6fc00f56b5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/setbuf.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_double.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_float.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long_double.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Bump OS version for macOS backdeployment CI jobs (#131883)

In 0547e573c555, I introduced backdeployment testing on macOS using
Github-provided builders. This was done by basically building libc++ on
a slightly older macOS (like macOS 13) and then running against the
system library on that machine. However, that created a dependency that
libc++ must keep working on macOS 13, which doesn't support the
latest-released Xcode.

This patch solves that problem by moving the deployment testing to a
newer version of macOS which supports the latest-released version of
Xcode.

Sadly, that also reduces the backdeployment coverage we have since we're
not actually testing on older OSes, but is necessary to satisfy the
documented libc++ support policy. In the future, we could improve the
situation by providing a Lit configuration that allows compiling (but
not running) all the tests, building the tests on a supported macOS, and
then shipping those tests on an older backdeployment target in order to
run them against the system library. Since that requires significant
engineering, this isn't done at this time.


  Commit: 5e8f43811acfd72ac5da4df2a5436b27ad1eeab4
      https://github.com/llvm/llvm-project/commit/5e8f43811acfd72ac5da4df2a5436b27ad1eeab4
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCExpr.cpp

  Log Message:
  -----------
  MCValue: Make getSymB private and improve documentation


  Commit: ed2b82fb8b066f8c269be9e403ee20d86b5ead8a
      https://github.com/llvm/llvm-project/commit/ed2b82fb8b066f8c269be9e403ee20d86b5ead8a
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp

  Log Message:
  -----------
  MCValue: Change getAccessVariant to return uint16_t

Some targets encode the relocation specifier within SymA using
MCSymbolRefExpr::SubclassData. They will cast the specifier
to *MCExpr::Specifier.

Migrate away from the confusing MCSymbolRefExpr::VariantKind.

Note: getAccessVariant is a deprecated method to get the relocation
specifier.


  Commit: 582b1b2ac9de696debe6041aa500141c2fef5aa3
      https://github.com/llvm/llvm-project/commit/582b1b2ac9de696debe6041aa500141c2fef5aa3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .ci/monolithic-linux.sh

  Log Message:
  -----------
  [CI] Use env variable to enable pip breaking system packages

This patch uses an env variable instead of the --break-system-packages
flag. This enables the heterogenous configuration between the old and
new premerge systems as the old premerge container does not recognize
the --break-system-packages flag. An env variable will work on new
premerge and have no impact on old premerge.


  Commit: 52eb11f925ddeba4e1b3840fd636ee87387f3ada
      https://github.com/llvm/llvm-project/commit/52eb11f925ddeba4e1b3840fd636ee87387f3ada
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSpecifier(Target.getSymA()) with Target.getSymSpecifier()

Add MCValue::getSymSpecifier as a workaround for targets that encode the
relocation specifier on SymA. This function asserts that SymA is not
null.


  Commit: 2fd6f8fb5e3a52e901276d97c285b8de66742985
      https://github.com/llvm/llvm-project/commit/2fd6f8fb5e3a52e901276d97c285b8de66742985
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [LV] Don't add blocks to loop in GeneratedRTChecks (NFC).

Blocks will get added to parent loops as needed during VPlan execution.


  Commit: 7ccdc3d5ca648c09bbeb86f5063f7b0ee3e9b5e2
      https://github.com/llvm/llvm-project/commit/7ccdc3d5ca648c09bbeb86f5063f7b0ee3e9b5e2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 086af836889436baffc71c743c7c8259bad8ed60
      https://github.com/llvm/llvm-project/commit/086af836889436baffc71c743c7c8259bad8ed60
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: b1cd3cb3f42881a84ebc3da1dfae59637281d73c
      https://github.com/llvm/llvm-project/commit/b1cd3cb3f42881a84ebc3da1dfae59637281d73c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: d71ee7d23048ca64d14a7536927a006867cea39a
      https://github.com/llvm/llvm-project/commit/d71ee7d23048ca64d14a7536927a006867cea39a
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Set C11 instead of C17 for LK_C (#134472)

Fix #134453


  Commit: 0c84d71eda538b5ac73811f241d4a0555ff49099
      https://github.com/llvm/llvm-project/commit/0c84d71eda538b5ac73811f241d4a0555ff49099
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 46a2f4174a051f29a09dbc3844df763571c67309
      https://github.com/llvm/llvm-project/commit/46a2f4174a051f29a09dbc3844df763571c67309
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  Revert "[LV] Don't add blocks to loop in GeneratedRTChecks (NFC)."

This reverts commit 2fd6f8fb5e3a52e901276d97c285b8de66742985.

This missed a possible case, causing buildbot failures.


  Commit: 7cf8a6201a6eb549b8d41214afa2694e0c1e344c
      https://github.com/llvm/llvm-project/commit/7cf8a6201a6eb549b8d41214afa2694e0c1e344c
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp

  Log Message:
  -----------
  [AArch64,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 70f5632cadb82b1be813d7ba688b80e22df634e2
      https://github.com/llvm/llvm-project/commit/70f5632cadb82b1be813d7ba688b80e22df634e2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp

  Log Message:
  -----------
  [PowerPC,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: aeec94500a5dbd576e5d2d16895fe00fa0b1e154
      https://github.com/llvm/llvm-project/commit/aeec94500a5dbd576e5d2d16895fe00fa0b1e154
  Author: junfengd-nv <junfengd at nvidia.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/InliningUtils.h
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/lib/Transforms/Utils/InliningUtils.cpp
    A mlir/test/Transforms/test-inlining-callback.mlir
    M mlir/test/lib/Transforms/CMakeLists.txt
    M mlir/test/lib/Transforms/TestInlining.cpp
    A mlir/test/lib/Transforms/TestInliningCallback.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [mlir][inliner] Add doClone and canHandleMultipleBlocks callbacks to Inliner Config (#131226)

Current inliner disables inlining when the caller is in a region with
single block trait, while the callee function contains multiple blocks.
the SingleBlock trait is used in operations such as do/while loop, for
example fir.do_loop, fir.iterate_while and fir.if. Typically, calls within
loops are good candidates for inlining. However, functions with multiple
blocks are also common. for example, any function with "if () then
return" will result in multiple blocks in MLIR.

This change gives the flexibility of a customized inliner to handle such
cases.
doClone: clones instructions and other information from the callee
function into the caller function. .
canHandleMultipleBlocks: checks if functions with multiple blocks can be
inlined into a region with the SingleBlock trait.

The default behavior of the inliner remains unchanged.

---------

Co-authored-by: jeanPerier <jean.perier.polytechnique at gmail.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: 7e62715e0cd433ed97749549c6582c4e1aa689a3
      https://github.com/llvm/llvm-project/commit/7e62715e0cd433ed97749549c6582c4e1aa689a3
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp

  Log Message:
  -----------
  [RISCV,LoongArch,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.

Creating a MCSymbolRefExpr in *AsmBackend::handleAddSubRelocations is
not efficient, but it is temporary and will be replaced when MCValue no
longer uses MCSymbolRefExpr.


  Commit: acca419685b0a288e0b06786e6e7bc27bb087578
      https://github.com/llvm/llvm-project/commit/acca419685b0a288e0b06786e6e7bc27bb087578
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp

  Log Message:
  -----------
  [WebAssembly,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 0431fea88ac9a057d1c8751da7f9506cf51f54c5
      https://github.com/llvm/llvm-project/commit/0431fea88ac9a057d1c8751da7f9506cf51f54c5
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp

  Log Message:
  -----------
  [AMDGPU,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: d9a767cfc802aca491f5f25fb386679ab1100621
      https://github.com/llvm/llvm-project/commit/d9a767cfc802aca491f5f25fb386679ab1100621
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h

  Log Message:
  -----------
  [Mips,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.

Create a MipsMCExpr::create overload that takes MCSymbol as an argument.
We use the order preferred by other targets.


  Commit: 590d2a3ca5fde93aff1ef1611f1361180adb1813
      https://github.com/llvm/llvm-project/commit/590d2a3ca5fde93aff1ef1611f1361180adb1813
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp

  Log Message:
  -----------
  [Mips,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: f8f9be32411d63fa65832306cbc9207ef91446af
      https://github.com/llvm/llvm-project/commit/f8f9be32411d63fa65832306cbc9207ef91446af
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp

  Log Message:
  -----------
  [ARM,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.


  Commit: 7833107993e7df63301c655e0b4c49b2f625fa5e
      https://github.com/llvm/llvm-project/commit/7833107993e7df63301c655e0b4c49b2f625fa5e
  Author: Alan <ahulambda at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/test/CMakeLists.txt

  Log Message:
  -----------
  [OCaml] Make OCaml MetadataKind type consistent with C API (#134507)

Fixes breakage of OCaml API introduced by commit 6894734.


  Commit: 55ff96abfa08ec94b0f8f4ebe187a3232e9d92b7
      https://github.com/llvm/llvm-project/commit/55ff96abfa08ec94b0f8f4ebe187a3232e9d92b7
  Author: weiwei chen <weiwei.chen at modular.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/unittests/CodeGen/X86MCInstLowerTest.cpp

  Log Message:
  -----------
  [X86][Test] Reorder PassMgrF and OS. (#134481)

Reordering `OS` and `PassMgrF` should fix the asan failure that's caused
by OS being destroyed before `PassMgrF` deletes the AsmPrinter.

As shown in[ this asan run
](https://lab.llvm.org/buildbot/#/builders/52/builds/7340/steps/12/logs/stdio)

```
  This frame has 15 object(s):
    [32, 48) 'PassMgrF' (line 154)
    [64, 1112) 'Buf' (line 155)
    [1248, 1304) 'OS' (line 156) <== Memory access at offset 1280 is inside this variable
```
which indicates an ordering problem. 

This should help to fix all the sanitizer failures caused by the test
`X86MCInstLowerTest.cpp` that's introduced by [this
PR](https://github.com/llvm/llvm-project/pull/133352#issuecomment-2780173791).


  Commit: aaaeb86acea77c5bcdb60011ce6aaaf4ebca4081
      https://github.com/llvm/llvm-project/commit/aaaeb86acea77c5bcdb60011ce6aaaf4ebca4081
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Merge inline short functions for BS_Whitesmiths (#134473)

Fix #126747


  Commit: 94821ce45fe93aa78cc5ea03cd9deac91b7af127
      https://github.com/llvm/llvm-project/commit/94821ce45fe93aa78cc5ea03cd9deac91b7af127
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/CSKY/relocation-specifier.s

  Log Message:
  -----------
  MCValue: Store SymA specifier at Specifier

The relocation specifier should be accessed via MCValue::Specifier.
However, some targets encode the relocation specifier within SymA using
MCSymbolRefExpr::SubclassData and access it via getAccessVariant(), though
this method is now deprecated.

This change stores the SymA specifier at Specifier as well, unifying the
two code paths.

* CSKY: GOT- and PLT- relocations now suppress the STT_SECTION
  conversion.
* AArch64: https://reviews.llvm.org/D156505 added `getRefkind` check to
  prevent folding. This is a hack and is now removed.

MCValue: Unify relocation specifier storage by storing SymA specifier at Specifier

The relocation specifier is accessed via MCValue::Specifier, but some
targets encoded it within SymA using MCSymbolRefExpr::SubclassData and
retrieved it through the now-deprecated getAccessVariant() method. This
commit unifies the two approaches by storing the SymA specifier at
`Specifier` as well.

Additional changes:

- CSKY: GOT- and PLT- relocations now suppress STT_SECTION conversion.
- AArch64: Removed the `getRefkind` check hack (introduced in https://reviews.llvm.org/D156505) that prevented folding.
  Removed the assertion from `getRelocType`.
- RISCV: Removed the assertion from `getRelocType`.

Future plans:

- Replace MCSymbolRefExpr members with MCSymbol within MCValue.
- Remove `getSymSpecifier` (added for migration).


  Commit: 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc
      https://github.com/llvm/llvm-project/commit/38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/MC/MCAsmBackend.cpp

  Log Message:
  -----------
  Define MCAsmBackend::shouldForceRelocation

Return true if the MCValue has a specifier. When a relocation specifier
is specified, GNU Assembler will generate a relocation unless the
specifier can be optimized due to target-specific reasons (e.g. PPC `@l`
`@ha`).

This reduces targets' reliance on a MCAssembler::evaluateFixup hack
`if (Target.SymSpecifier || SA.isUndefined()) {`, previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`

llvm/test/MC/SystemZ/fixups.s is known to rely on this hack.


  Commit: 4182d2dcb5ecbfc34d41a6cd11810cd36844eddb
      https://github.com/llvm/llvm-project/commit/4182d2dcb5ecbfc34d41a6cd11810cd36844eddb
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp

  Log Message:
  -----------
  [ARM,PowerPC] shouldForceRelocation: check MCValue::Specifier

Follow-up to 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc

Removes reliance on a MCAssembler::evaluateFixup hack
`if (Target.SymSpecifier || SA.isUndefined()) {` (previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`)

Target.SymSpecifier will soon go away when MCValue replaces
MCSymbolRefExpr members with MCSymbol and removes the temporary
`SymSpecifier` workaround.


  Commit: d5893fc2a7e1191afdb4940469ec9371a319b114
      https://github.com/llvm/llvm-project/commit/d5893fc2a7e1191afdb4940469ec9371a319b114
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s

  Log Message:
  -----------
  MCValue: Replace MCSymbolRefExpr members with MCSymbol

Commit 0999cbd0b9ed8aa893cce10d681dec6d54b200ad (2014) introduced
`MCValue::RefKind` for AArch64 ELF as a clean approach to encode the
relocation specifier.

Following numerous migration commits, direct references to getSymA and
getSymB have been eliminated. This allows us to seamlessly update SymA
and SymB, replacing MCSymbolRefExpr with MCSymbol.

Removeing reliance on a MCAssembler::evaluateFixup hack
(`if (Target.SymSpecifier || SA.isUndefined()) {` (previosuly
`if (A->getKind() != MCSymbolRefExpr::VK_None || SA.isUndefined()) {`))
requires 38c3ad36be1facbe6db2dede7e93c0f12fb4e1dc and 4182d2dcb5ecbfc34d41a6cd11810cd36844eddb

Revert the temporary RISCV/LoongArch workaround
(7e62715e0cd433ed97749549c6582c4e1aa689a3) during migration.

MCAssembler::evaluateFixup needs an extra `!Add->isAbsolute()` case
to support `movq abs at GOTPCREL(%rip), %rax; abs = 42` in llvm/test/MC/ELF/relocation-alias.s
(ELFObjectWriter::isSymbolRefDifferenceFullyResolvedImpl asserts if
called on an absolute symbol).


  Commit: 2ce07ed36ef2e77812e56af7e3085c835efc9c87
      https://github.com/llvm/llvm-project/commit/2ce07ed36ef2e77812e56af7e3085c835efc9c87
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-04-05 (Sat, 05 Apr 2025)

  Changed paths:
    M .ci/monolithic-linux.sh
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/libcxx-build-and-test.yaml
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Core/Relocation.h
    M bolt/include/bolt/Passes/PAuthGadgetScanner.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinarySection.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/AArch64/AArch64MCSymbolizer.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/test/AArch64/tls.c
    M bolt/test/binary-analysis/AArch64/cmdline-args.test
    A bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
    M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/CMakeLists.txt
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/Headers.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/comparison-in-temp-failure-retry.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/concurrency/mt-unsafe.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-malloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-private-member-variables-in-classes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-data-pointer.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/inconsistent-declaration-parameter-name.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-smartptr-get.rst
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/foo.h
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.h
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/simple/foo.h
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/ASTStructuralEquivalence.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/ExternalASTSource.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/TemplateBase.h
    M clang/include/clang/AST/TemplateName.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    A clang/include/clang/ASTMatchers/LowLevelHelpers.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCKinds.h
    A clang/include/clang/Basic/UnsignedOrNone.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/LoweringHelpers.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Lex/LexHLSLRootSignature.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/MultiplexExternalSemaSource.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaLambda.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/Serialization/ASTRecordWriter.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExternalASTSource.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/QualTypeNames.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/AST/TemplateName.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/ASTMatchers/ASTMatchFinder.cpp
    M clang/lib/ASTMatchers/CMakeLists.txt
    A clang/lib/ASTMatchers/LowLevelHelpers.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    A clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Lowering/CMakeLists.txt
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    A clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/AVR.cpp
    M clang/lib/Driver/ToolChains/AVR.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.h
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OHOS.h
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.h
    M clang/lib/Driver/ToolChains/PPCLinux.cpp
    M clang/lib/Driver/ToolChains/PPCLinux.h
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Headers/__clang_cuda_runtime_wrapper.h
    M clang/lib/Headers/__clang_cuda_texture_intrinsics.h
    M clang/lib/Headers/altivec.h
    M clang/lib/Headers/amxcomplexintrin.h
    M clang/lib/Headers/avx10_2_512bf16intrin.h
    M clang/lib/Headers/avx10_2bf16intrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Index/IndexDecl.cpp
    M clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/MultiplexExternalSemaSource.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAMDGPU.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/SemaExprCXX.cpp
    M clang/lib/Sema/SemaFunctionEffects.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/AST/ast-print-openacc-combined-construct.cpp
    M clang/test/AST/ast-print-openacc-compute-construct.cpp
    M clang/test/AST/ast-print-openacc-data-construct.cpp
    M clang/test/AST/ast-print-openacc-declare-construct.cpp
    M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
    M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    M clang/test/C/C11/n1330.c
    M clang/test/C/C23/n3042.c
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/Lowering/array.cpp
    A clang/test/ClangScanDeps/modules-relocated-mm-macro.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/bounds-checking-debuginfo.c
    M clang/test/CodeGen/cfi-check-fail.c
    M clang/test/CodeGen/cfi-check-fail2.c
    A clang/test/CodeGen/include/cuda.h
    A clang/test/CodeGen/nvptx-surface.cu
    M clang/test/CodeGen/ubsan-trap-merge.c
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    A clang/test/CodeGenHLSL/builtins/dot2add.hlsl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load.cl
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64-ibm-aix/libflang_rt.runtime.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64le-unknown-linux-gnu/libflang_rt.runtime.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64le-unknown-linux-gnu/libflang_rt.runtime.so
    M clang/test/Driver/arm-thread-pointer.c
    M clang/test/Driver/darwin-ld-platform-version-watchos.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Headers/Inputs/include/cuda.h
    A clang/test/Headers/Inputs/include/surface_indirect_functions.h
    M clang/test/Headers/altivec-header.c
    M clang/test/Headers/openmp_device_math_isnan.cpp
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    M clang/test/OpenMP/declare_variant_construct_codegen_1.c
    M clang/test/OpenMP/interop_codegen.cpp
    M clang/test/OpenMP/ompx_attributes_codegen.cpp
    M clang/test/OpenMP/target_num_teams_num_threads_attributes.cpp
    M clang/test/OpenMP/target_parallel_no_exceptions.cpp
    M clang/test/OpenMP/target_team_variable_codegen.cpp
    M clang/test/OpenMP/target_visibility.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json
    M clang/test/Sema/attr-callback-broken.c
    A clang/test/Sema/clear_cache.c
    M clang/test/Sema/for.c
    A clang/test/Sema/nullability-and-template-deduction.cpp
    M clang/test/SemaCXX/cxx17-compat.cpp
    M clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
    M clang/test/SemaCXX/cxx98-compat.cpp
    M clang/test/SemaCXX/fold_lambda_with_variadics.cpp
    A clang/test/SemaCXX/for-static-assert.cpp
    A clang/test/SemaCXX/friend-default-parameters-modules.cpp
    A clang/test/SemaCXX/friend-default-parameters.cpp
    A clang/test/SemaCXX/gh134265.cpp
    R clang/test/SemaCXX/windows-Wpadded-bitfield.cpp
    R clang/test/SemaCXX/windows-Wpadded.cpp
    A clang/test/SemaHLSL/BuiltIns/dot2add-errors.hlsl
    M clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copy-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyin-clause.c
    M clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyout-clause.c
    M clang/test/SemaOpenACC/combined-construct-create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-copy-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyin-clause.c
    M clang/test/SemaOpenACC/compute-construct-copyout-clause.c
    M clang/test/SemaOpenACC/compute-construct-create-clause.c
    M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-clause.c
    M clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyin-clause.c
    M clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyout-clause.c
    M clang/test/SemaOpenACC/data-construct-create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-create-clause.c
    M clang/test/SemaOpenACC/declare-construct-ast.cpp
    M clang/test/SemaOpenACC/declare-construct.cpp
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-error.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-target-error.cl
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/Analysis/MacroExpansionContextTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
    M clang/unittests/Lex/LexerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/unittests/Lex/PPCallbacksTest.cpp
    M clang/unittests/Lex/PPConditionalDirectiveRecordTest.cpp
    M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
    M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
    M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    M clang/unittests/Tooling/QualTypeNamesTest.cpp
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/builtins/CMakeLists.txt
    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_symbolizer_libcdep.cpp
    A compiler-rt/test/asan/TestCases/shadowed-stack-serialization.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-inlined.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/precompiled_binary/commands.dex
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/windows_noncanonical_path/test.dex
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp
    M cross-project-tests/lit.cfg.py
    M flang-rt/cmake/modules/GetToolchainDirs.cmake
    M flang-rt/include/flang-rt/runtime/environment.h
    M flang-rt/lib/runtime/command.cpp
    M flang-rt/lib/runtime/descriptor-io.h
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/environment.cpp
    M flang-rt/lib/runtime/extensions.cpp
    M flang-rt/lib/runtime/unit.cpp
    M flang-rt/lib/runtime/unit.h
    M flang/docs/ArrayRepacking.md
    M flang/docs/CMakeLists.txt
    M flang/docs/Intrinsics.md
    M flang/include/flang/Common/Fortran-consts.h
    M flang/include/flang/Common/enum-class.h
    M flang/include/flang/Common/real.h
    A flang/include/flang/Common/type-kinds.h
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/include/flang/Optimizer/Builder/Runtime/Command.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/include/flang/Runtime/command.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/target.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/Character.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Command.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
    M flang/lib/Parser/parsing.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/token-sequence.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Driver/code-object-version.f90
    A flang/test/Driver/flang-ld-powerpc.f90
    A flang/test/Driver/frepack-arrays-contiguity.f90
    A flang/test/Driver/frepack-arrays.f90
    A flang/test/Driver/fstack-repack-arrays.f90
    M flang/test/Driver/linker-flags.f90
    M flang/test/Evaluate/errors01.f90
    M flang/test/Fir/CUDA/cuda-constructor-2.f90
    M flang/test/HLFIR/assign-codegen.fir
    M flang/test/HLFIR/associate-codegen.fir
    M flang/test/HLFIR/char_extremum-bufferization.fir
    M flang/test/HLFIR/concat-bufferization.fir
    A flang/test/Integration/amdgpu-code-object-version.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    A flang/test/Lower/Intrinsics/putenv-func.f90
    A flang/test/Lower/Intrinsics/putenv-sub.f90
    A flang/test/Lower/Intrinsics/time.f90
    A flang/test/Lower/Intrinsics/unlink-func.f90
    A flang/test/Lower/Intrinsics/unlink-sub.f90
    M flang/test/Lower/OpenMP/generic-loop-rewriting.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    M flang/test/Lower/OpenMP/loop-directive.f90
    M flang/test/Lower/array-constructor-2.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/optional-value-caller.f90
    M flang/test/Lower/pointer-references.f90
    M flang/test/Lower/repack-arrays.f90
    M flang/test/Lower/statement-function.f90
    M flang/test/Lower/structure-constructors.f90
    M flang/test/Parser/OpenMP/compiler-directive-continuation.f90
    M flang/test/Parser/OpenMP/sentinels.f
    M flang/test/Parser/continuation-in-conditional-compilation.f
    M flang/test/Preprocessing/bug126459.F90
    M flang/test/Preprocessing/directive-contin-with-pp.F90
    M flang/test/Preprocessing/line-in-contin.F90
    A flang/test/Preprocessing/pp047.F
    M flang/test/Preprocessing/pp132.f90
    A flang/test/Preprocessing/pp135.F90
    M flang/test/Preprocessing/preprocessed-dirs.F90
    A flang/test/Semantics/putenv.f90
    M flang/test/Semantics/resolve18.f90
    M flang/tools/bbc/bbc.cpp
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    R libc/include/llvm-libc-types/__bsearchcompare_t.h
    R libc/include/llvm-libc-types/__lsearchcompare_t.h
    A libc/include/llvm-libc-types/__search_compare_t.h
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/include/search.yaml
    M libc/include/stdlib.yaml
    M libc/include/sys/time.yaml
    M libc/src/math/generic/sin.cpp
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/time/CMakeLists.txt
    A libc/src/sys/time/linux/CMakeLists.txt
    A libc/src/sys/time/linux/utimes.cpp
    A libc/src/sys/time/utimes.h
    M libc/test/src/sys/CMakeLists.txt
    A libc/test/src/sys/time/CMakeLists.txt
    A libc/test/src/sys/time/utimes_test.cpp
    M libc/test/src/time/ctime_test.cpp
    M libclc/clc/lib/clspv/SOURCES
    A libclc/clc/lib/clspv/integer/clc_mul_hi.cl
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/out_value_result.h
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__configuration/platform.h
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/locale_base_api.h
    A libcxx/include/__numeric/ranges_iota.h
    M libcxx/include/algorithm
    M libcxx/include/fstream
    M libcxx/include/module.modulemap
    M libcxx/include/numeric
    M libcxx/include/regex
    M libcxx/include/strstream
    M libcxx/include/version
    M libcxx/modules/std/algorithm.inc
    M libcxx/modules/std/numeric.inc
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx/system_reserved_names.gen.py
    M libcxx/test/libcxx/type_traits/no_specializations.verify.cpp
    M libcxx/test/std/algorithms/algorithms.results/no_unique_address.compile.pass.cpp
    A libcxx/test/std/algorithms/algorithms.results/out_value_result.pass.cpp
    M libcxx/test/std/algorithms/ranges_result_alias_declarations.compile.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/setbuf.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_double.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_float.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long_double.pass.cpp
    A libcxx/test/std/numerics/numeric.ops/numeric.iota/ranges.iota.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/generate_feature_test_macro_components.py
    M lld/MachO/OutputSegment.cpp
    M lld/test/MachO/arm64-objc-stubs.s
    A lldb/docs/dil-expr-lang.ebnf
    M lldb/docs/use/python-reference.rst
    M lldb/include/lldb/API/SBModule.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/Utility/LLDBAssert.h
    A lldb/include/lldb/ValueObject/DILAST.h
    A lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    A lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/API/SBModule.cpp
    M lldb/source/Core/Statusline.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFile.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/RegisterContextUnwind.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Utility/LLDBAssert.cpp
    M lldb/source/ValueObject/CMakeLists.txt
    A lldb/source/ValueObject/DILAST.cpp
    A lldb/source/ValueObject/DILEval.cpp
    A lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/Makefile
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/TestExprFromNonZeroFrame.py
    A lldb/test/API/commands/expression/expr-from-non-zero-frame/main.c
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/TestFrameVarDILGlobalVariableLookup.py
    A lldb/test/API/commands/frame/var-dil/basics/GlobalVariableLookup/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/TestFrameVarDILInstanceVariables.py
    A lldb/test/API/commands/frame/var-dil/basics/InstanceVariables/main.cpp
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/Makefile
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py
    A lldb/test/API/commands/frame/var-dil/basics/LocalVars/main.cpp
    M lldb/test/API/functionalities/statusline/TestStatusline.py
    M lldb/test/API/macosx/thread_start_bps/TestBreakpointsThreadInit.py
    M lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp
    M lldb/tools/lldb-dap/Breakpoint.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/ExceptionBreakpoint.cpp
    M lldb/tools/lldb-dap/FunctionBreakpoint.cpp
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/StackTraceRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/SourceBreakpoint.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/ValueObject/DILLexerTests.cpp
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.ml
    M llvm/bindings/ocaml/debuginfo/llvm_debuginfo.mli
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/ModuloSchedule.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF.h
    A llvm/include/llvm/ExecutionEngine/JITLink/XCOFF_ppc64.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCExpr.h
    M llvm/include/llvm/MC/MCObjectWriter.h
    M llvm/include/llvm/MC/MCParser/AsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmLexer.h
    M llvm/include/llvm/MC/MCParser/MCAsmParser.h
    M llvm/include/llvm/MC/MCValue.h
    M llvm/include/llvm/PassSupport.h
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
    M llvm/lib/CodeGen/LivePhysRegs.cpp
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TypePromotion.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
    M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFF.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.cpp
    A llvm/lib/ExecutionEngine/JITLink/XCOFFLinkGraphBuilder.h
    A llvm/lib/ExecutionEngine/JITLink/XCOFF_ppc64.cpp
    M llvm/lib/ExecutionEngine/Orc/LoadLinkableFile.cpp
    M llvm/lib/ExecutionEngine/Orc/ObjectFileInterface.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCObjectWriter.cpp
    M llvm/lib/MC/MCParser/AsmLexer.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/CMakeLists.txt
    R llvm/lib/MC/MCParser/MCAsmLexer.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/MC/MCValue.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/MemProfReader.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCExpr.cpp
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
    M llvm/lib/Target/M68k/M68kMCInstLower.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCInstrMMA.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVO0PreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPostLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVPreLegalizerCombiner.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
    M llvm/lib/Target/RISCV/RISCVRedundantCopyElimination.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVMergeRegionExitTargets.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVStripConvergentIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/Sparc/SparcInstrFormats.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    M llvm/lib/Target/Sparc/SparcInstrVIS.td
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/Float2Int.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/test/Analysis/ValueTracking/known-bits-from-operator-constexpr.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext.ll
    A llvm/test/CodeGen/AArch64/aarch64-swp-ws-live-intervals.mir
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-contract.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-fast.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/fast-isel-dbg.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll
    M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/selectiondag-order.ll
    M llvm/test/CodeGen/AArch64/sinksplat.ll
    M llvm/test/CodeGen/AArch64/sme-intrinsics-mova-extract.ll
    M llvm/test/CodeGen/AArch64/sve-bf16-int-converts.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/test/CodeGen/AArch64/sve-fp-combine.ll
    M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
    M llvm/test/CodeGen/AArch64/sve-int-log.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-scalar-to-vec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-shifts-merging.ll
    M llvm/test/CodeGen/AArch64/sve-knownbits.ll
    M llvm/test/CodeGen/AArch64/sve-ld1r.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/sve-pr92779.ll
    M llvm/test/CodeGen/AArch64/sve-split-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-test-register-mov.ll
    M llvm/test/CodeGen/AArch64/sve-vector-splat.ll
    M llvm/test/CodeGen/AArch64/sve-vselect-imm.ll
    M llvm/test/CodeGen/AArch64/sve-zeroinit.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfadd.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmax.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmaxnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmin.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfminnm.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmla.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmls.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmul.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfsub.ll
    A llvm/test/CodeGen/AArch64/typepromotion-gep.ll
    M llvm/test/CodeGen/AArch64/typepromotion-phisret.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-abs-neg.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-ext.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvt-bfcvt.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvtlt-fcvtx.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-fcvtzsu.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-flogb.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-frint-frecpx-fsqrt.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-rev.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-urecpe-ursqrte-sqabs-sqneg.ll
    M llvm/test/CodeGen/AArch64/zeroing-forms-uscvtf.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces-vectors.ll
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.err.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/test/CodeGen/AMDGPU/rotate-add.ll
    M llvm/test/CodeGen/ARM/2010-11-29-PrologueBug.ll
    M llvm/test/CodeGen/ARM/ldm.ll
    M llvm/test/CodeGen/ARM/rotate-add.ll
    M llvm/test/CodeGen/ARM/zextload_demandedbits.ll
    A llvm/test/CodeGen/DirectX/dot2add.ll
    M llvm/test/CodeGen/MIR/X86/diexpr-win32.mir
    M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    M llvm/test/CodeGen/NVPTX/rotate-add.ll
    M llvm/test/CodeGen/PowerPC/adde_return_type.ll
    M llvm/test/CodeGen/PowerPC/addegluecrash.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-byval-split.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-xcoff-reloc-large32.ll
    M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
    A llvm/test/CodeGen/PowerPC/carry-liveness-after-expand-isel.ll
    M llvm/test/CodeGen/PowerPC/cvt_i64_to_fp.ll
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll
    M llvm/test/CodeGen/PowerPC/inc-of-add.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-acc-spill.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/pr35688.ll
    M llvm/test/CodeGen/PowerPC/pr36292.ll
    M llvm/test/CodeGen/PowerPC/pr40922.ll
    M llvm/test/CodeGen/PowerPC/pr45448.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/PowerPC/select.ll
    M llvm/test/CodeGen/PowerPC/uaddo-32.ll
    M llvm/test/CodeGen/PowerPC/uaddo-64.ll
    M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/v1024ls.ll
    A llvm/test/CodeGen/RISCV/rvv/zext-icmp.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
    M llvm/test/CodeGen/Thumb2/mve-vdup.ll
    M llvm/test/CodeGen/WebAssembly/simd-shuffle-bitcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/base-pointer-and-cmpxchg.ll
    M llvm/test/CodeGen/X86/kmov.ll
    A llvm/test/CodeGen/X86/powi-const.ll
    M llvm/test/CodeGen/X86/powi.ll
    M llvm/test/CodeGen/X86/rotate-add.ll
    M llvm/test/CodeGen/X86/selectiondag-order.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
    M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    A llvm/test/DebugInfo/pick-merged-source-locations.ll
    A llvm/test/ExecutionEngine/JITLink/ppc64/XCOFF_ppc64.ll
    M llvm/test/MC/AArch64/coff-relocations.s
    M llvm/test/MC/AArch64/data-directive-specifier.s
    M llvm/test/MC/CSKY/relocation-specifier.s
    M llvm/test/MC/Disassembler/PowerPC/ppc-encoding-ISAFuture.txt
    M llvm/test/MC/Disassembler/PowerPC/ppc64le-encoding-ISAFuture.txt
    A llvm/test/MC/Disassembler/Sparc/sparc-vis.txt
    M llvm/test/MC/ELF/bad-expr.s
    M llvm/test/MC/PowerPC/ppc-encoding-ISAFuture.s
    M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv32zcmp-invalid.s
    M llvm/test/MC/RISCV/rv64zcmp-invalid.s
    A llvm/test/MC/RISCV/xqcibi-long-conditional-jump.s
    A llvm/test/MC/RISCV/xqcibi-relocations.s
    M llvm/test/MC/Sparc/sparc-vis.s
    A llvm/test/MC/Sparc/sparc-vis2.s
    A llvm/test/MC/Sparc/sparc-vis3.s
    M llvm/test/MC/X86/macho-reloc-errors-x86_64.s
    M llvm/test/ThinLTO/X86/ctxprof-separate-module.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    A llvm/test/Transforms/InferAddressSpaces/NVPTX/arguments.ll
    M llvm/test/Transforms/InstCombine/addrspacecast.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/assume.ll
    M llvm/test/Transforms/InstCombine/scalable-const-fp-splat.ll
    M llvm/test/Transforms/InstCombine/scalable-trunc.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/cast-vector.ll
    A llvm/test/Transforms/InstSimplify/ConstProp/sinh-cosh-intrinsics.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/vscale.ll
    M llvm/test/Transforms/InstSimplify/vec-icmp-of-cast.ll
    M llvm/test/Transforms/InstSimplify/vscale-inseltpoison.ll
    M llvm/test/Transforms/InstSimplify/vscale.ll
    M llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling-multi-exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call-scalarize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
    M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
    M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
    M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
    M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/as_cast.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
    M llvm/test/Transforms/LoopVectorize/debugloc.ll
    M llvm/test/Transforms/LoopVectorize/discriminator.ll
    M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
    M llvm/test/Transforms/LoopVectorize/loop-form.ll
    M llvm/test/Transforms/LoopVectorize/memdep-fold-tail.ll
    M llvm/test/Transforms/LoopVectorize/optsize.ll
    M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr51614-fold-tail-by-masking.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
    M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
    M llvm/test/Transforms/LoopVectorize/select-reduction.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-counting-down.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
    M llvm/test/Transforms/MemCpyOpt/crash.ll
    A llvm/test/Transforms/MergeFunc/crash-cast-arrays.ll
    M llvm/test/Transforms/SLPVectorizer/X86/entries-shuffled-diff-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-nodes-with-non-gep-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-masked-gather2.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reordered-masked-loads.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reused-pointer.ll
    M llvm/test/Transforms/SLPVectorizer/X86/sin-sqrt.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2_unord_geps.ll
    R llvm/test/Transforms/SimplifyCFG/merge-direct-call-branch-weights-preserve-hoist.ll
    R llvm/test/Transforms/SimplifyCFG/merge-direct-call-branch-weights-preserve-sink.ll
    M llvm/test/Transforms/TypePromotion/ARM/phis-ret.ll
    M llvm/test/Transforms/TypePromotion/ARM/pointers.ll
    M llvm/test/Transforms/VectorCombine/pr88796.ll
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness.s
    M llvm/test/tools/llvm-profdata/memprof-buildid.test
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/unittests/ADT/EquivalenceClassesTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/X86MCInstLowerTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/Target/DirectX/UniqueResourceFromUseTests.cpp
    M llvm/unittests/Transforms/Utils/BasicBlockUtilsTest.cpp
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/support/BUILD.gn
    M llvm/utils/gn/secondary/clang/include/clang/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/clang-sycl-linker/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/ValueObject/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/JITLink/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/MC/MCParser/BUILD.gn
    M mlir/docs/Dialects/TOSA.md
    M mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/InliningUtils.h
    M mlir/lib/AsmParser/AttributeParser.cpp
    M mlir/lib/Conversion/MPIToLLVM/MPIToLLVM.cpp
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SPIRV/IR/GroupOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/lib/Target/LLVMIR/Dialect/GPU/SelectObjectAttr.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/Utils/Inliner.cpp
    M mlir/lib/Transforms/Utils/InliningUtils.cpp
    M mlir/test/Conversion/MPIToLLVM/mpitollvm.mlir
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
    M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
    M mlir/test/Dialect/Shape/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/IR/parser.mlir
    A mlir/test/Target/LLVMIR/Import/metadata-dependent-libraries.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    A mlir/test/Target/LLVMIR/openmp-target-generic-spmd.mlir
    A mlir/test/Transforms/test-inlining-callback.mlir
    M mlir/test/lib/Transforms/CMakeLists.txt
    M mlir/test/lib/Transforms/TestInlining.cpp
    A mlir/test/lib/Transforms/TestInliningCallback.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp
    M mlir/unittests/Target/LLVM/SerializeNVVMTarget.cpp
    M polly/lib/CodeGen/LoopGeneratorsGOMP.cpp
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl

  Log Message:
  -----------
  rebase after MCValue::SymA change

Created using spr 1.3.5-bogner


Compare: https://github.com/llvm/llvm-project/compare/c79fbdfc9b82...2ce07ed36ef2

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