[all-commits] [llvm/llvm-project] 38200e: [DAG] visitFREEZE - always allow freezing multiple...

ZhaoQi via All-commits all-commits at lists.llvm.org
Thu Jul 3 01:43:29 PDT 2025


  Branch: refs/heads/users/zhaoqi5/opt-insert-hi128-element
  Home:   https://github.com/llvm/llvm-project
  Commit: 38200e94f1428b586dc1778133120541e65c20b5
      https://github.com/llvm/llvm-project/commit/38200e94f1428b586dc1778133120541e65c20b5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/AArch64/vecreduce-propagate-sd-flags.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/NVPTX/i1-select.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    M llvm/test/CodeGen/SystemZ/pr60413.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/avg.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/freeze-vector.ll
    M llvm/test/CodeGen/X86/setcc-non-simple-type.ll

  Log Message:
  -----------
  [DAG] visitFREEZE - always allow freezing multiple operands (#145939)

Always try to fold freeze(op(....)) -> op(freeze(),freeze(),freeze(),...).

This patch proposes we drop the opt-in limit for opcodes that are allowed to push a freeze through the op to freeze all its operands, through the tree towards the roots.

I'm struggling to find a strong reason for this limit apart from the DAG freeze handling being immature for so long - as we've improved coverage in canCreateUndefOrPoison/isGuaranteedNotToBeUndefOrPoison it looks like the regressions are not as severe.

Hopefully this will help some of the regression issues in #143102 etc.


  Commit: 7cc8fe2a2cd46800f3a0851f1d51853747ade228
      https://github.com/llvm/llvm-project/commit/7cc8fe2a2cd46800f3a0851f1d51853747ade228
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/fp8-sve-cvt-cvtlt.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvtn.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-fexpa.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-binary-narrowing-add-sub.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-binary-narrowing-shr.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-complex-dot.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-contiguous-conflict-detection.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-faminmax.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-converts.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-int-binary-logarithm.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-widening-mul-acc.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-int-mul-lane.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-luti.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-non-widening-pairwise-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-polynomial-arithmetic.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-psel.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-revd.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-unary-narrowing.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-uniform-complex-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while-reversed.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-complex-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-dsp.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-pairwise-arith.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmlsl.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-cntp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dots.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dupq.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-extq.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-fclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-loads.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-pmov-to-pred.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-pmov-to-vector.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-predicate-as-counter.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-qcvtn.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-qrshr.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-sclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pn.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pp.ll

  Log Message:
  -----------
  [LLVM][AArch64] Relax SVE/SME codegen predicates. (#145322)

Code generation predicates like HasSVE2_or_SME implemented a strict
divide between streaming and non-streaming which meant some SME
instructions were not available unless a matching SVE feature was
enabled.


  Commit: a2c9f7dbcc8beef2befce5a3cd786ac320b5449d
      https://github.com/llvm/llvm-project/commit/a2c9f7dbcc8beef2befce5a3cd786ac320b5449d
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/lib/Target/Xtensa/XtensaOperators.td
    M llvm/test/CodeGen/Xtensa/float-arith.ll
    A llvm/test/CodeGen/Xtensa/select-cc-fp.ll
    M llvm/test/MC/Disassembler/Xtensa/fp.txt

  Log Message:
  -----------
  [Xtensa] Implement lowering SELECT_CC/BRCC for Xtensa FP Option. (#145544)

Also minor format changes in disassembler test for Xtensa FP Option.


  Commit: 35626e97d886dcb5f335af8abcfadb5f6bbcc64a
      https://github.com/llvm/llvm-project/commit/35626e97d886dcb5f335af8abcfadb5f6bbcc64a
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/Support/Signals.h
    M llvm/lib/Support/Signals.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/Support/Windows/Signals.inc

  Log Message:
  -----------
  [DLCov] Origin-Tracking: Enable collecting and symbolizing stack traces (#143591)

This patch is part of a series that adds origin-tracking to the debugify
source location coverage checks, allowing us to report symbolized stack
traces of the point where missing source locations appear.

This patch adds a pair of new functions in `signals.h` that can be used
to collect and symbolize stack traces respectively. This has major
implementation overlap with the existing stack trace
collection/symbolizing methods, but the existing functions are
specialized for dumping a stack trace to stderr when LLVM crashes, while
these new functions are meant to be called repeatedly during the
execution of the program, and therefore we need a separate set of
functions.


  Commit: 585b41c2ecc0bf72b9956b86f1b19e21ff02259d
      https://github.com/llvm/llvm-project/commit/585b41c2ecc0bf72b9956b86f1b19e21ff02259d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  TargetOptions: Look up frame-pointer attribute once (#146639)

Same as 07a86a525ea2f85ade9e224c200f0311fec9e433, except in
ther other case here.


  Commit: 5fe63ae9a3fb7502ce7ed076ea14def97d79e85e
      https://github.com/llvm/llvm-project/commit/5fe63ae9a3fb7502ce7ed076ea14def97d79e85e
  Author: DrSergei <serzhdruzhok at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Fix flaky test TestDAP_server (#145231)

This patch fixes a possible data race between main and event handler
threads. Terminated event can be sent from `Disconnect` function or
event handler. Consequently, there are some possible sequences of
events. We must check events twice, because without getting an exited
event, `exit_status` will be None. But, we don't know the order of
events (for example, we can get terminated event before exited event),
so we check events by filter. It is correct, because terminated event
will be sent only once (guarded by `llvm::call_once`).

This patch moved from
[145010](https://github.com/llvm/llvm-project/pull/145010) and based on
idea from this
[comment](https://github.com/llvm/llvm-project/pull/145010#discussion_r2159637210).


  Commit: dea4f3213d84507ca9741faccab789f48c44e00d
      https://github.com/llvm/llvm-project/commit/dea4f3213d84507ca9741faccab789f48c44e00d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp

  Log Message:
  -----------
  [libc] Use is aligned builtin instead of ptrtoint (#146402)

Summary:
This avoids a ptrtoint by just using the clang builtin. This is clang
specific but only clang can compile GPU code anyway so I do not bother
with a fallback.


  Commit: f575b18fdc8359bddc8747dbb8b16e5d10705dda
      https://github.com/llvm/llvm-project/commit/f575b18fdc8359bddc8747dbb8b16e5d10705dda
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll

  Log Message:
  -----------
  [LV] Add support for partial reductions without a binary op (#133922)

Consider IR such as this:

for.body:
  %iv = phi i64 [ 0, %entry ], [ %iv.next, %for.body ]
  %accum = phi i32 [ 0, %entry ], [ %add, %for.body ]
  %gep.a = getelementptr i8, ptr %a, i64 %iv
  %load.a = load i8, ptr %gep.a, align 1
  %ext.a = zext i8 %load.a to i32
  %add = add i32 %ext.a, %accum
  %iv.next = add i64 %iv, 1
  %exitcond.not = icmp eq i64 %iv.next, 1025
  br i1 %exitcond.not, label %for.exit, label %for.body

Conceptually we can vectorise this using partial reductions too,
although the current loop vectoriser implementation requires the
accumulation of a multiply. For AArch64 this is easily done with
a udot or sdot with an identity operand, i.e. a vector of (i16 1).

In order to do this I had to teach getScaledReductions that the
accumulated value may come from a unary op, hence there is only
one extension to consider. Similarly, I updated the vplan and
AArch64 TTI cost model to understand the possible unary op.

---------

Co-authored-by: Matt Devereau <matthew.devereau at arm.com>


  Commit: 6ec9b1b366726311a6c991c68c62f05d61e4b87d
      https://github.com/llvm/llvm-project/commit/6ec9b1b366726311a6c991c68c62f05d61e4b87d
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Operation.cpp
    M mlir/test/mlir-tblgen/op-format.mlir

  Log Message:
  -----------
  [MLIR] Remove spurious space when printing `prop-dict` (#145962)

When there is an elided properties, there use to be an extra space
insert in the prop-dict printing before the dictionnary.

Fix #145695


  Commit: 9eac5f72f6296812ecc8dc23ce2b312b4f3e75e8
      https://github.com/llvm/llvm-project/commit/9eac5f72f6296812ecc8dc23ce2b312b4f3e75e8
  Author: Kunqiu Chen <camsyn at foxmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_interface_java.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
    M compiler-rt/lib/tsan/rtl/tsan_sync.cpp
    M compiler-rt/test/tsan/java_heap_init2.cpp
    M compiler-rt/test/tsan/munmap_clear_shadow.c

  Log Message:
  -----------
  Revert "[TSan] Clarify and enforce shadow end alignment" (#146674)

Reverts llvm/llvm-project#144648 due to a test failure of the new added
test case `munmap_clear_shadow.c` in IOS .


  Commit: c0e9084b1ce1a93fd8c2a650e48b3e11d831b649
      https://github.com/llvm/llvm-project/commit/c0e9084b1ce1a93fd8c2a650e48b3e11d831b649
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    A llvm/test/CodeGen/AMDGPU/amdgpu-snop-padding.mir

  Log Message:
  -----------
  [AMDGPU] Add a debug option `-amdgpu-snop-padding` for `GCNHazardRecognizer` (#146587)

This can help to identify if there is potential hazards.

Co-authored-by: Byrnes, Jeffrey <Jeffrey.Byrnes at amd.com>


  Commit: 0aafeb8ba1b1adcf04d5d82553228ca82845fcb0
      https://github.com/llvm/llvm-project/commit/0aafeb8ba1b1adcf04d5d82553228ca82845fcb0
  Author: Kunqiu Chen <camsyn at foxmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_interface_java.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
    M compiler-rt/lib/tsan/rtl/tsan_sync.cpp
    M compiler-rt/test/tsan/java_heap_init2.cpp
    M compiler-rt/test/tsan/munmap_clear_shadow.c

  Log Message:
  -----------
  Reland [TSan] Clarify and enforce shadow end alignment  (#146676)

#144648 was reverted because it failed the new sanitizer test
`munmap_clear_shadow.c` in IOS's CI.
That issue could be fixed by disabling the test on some platforms, due
to the incompatibility of the test on these platforms.

In detail, we should disable the test in FreeBSD, Apple, NetBSD,
Solaris, and Haiku, where `ReleaseMemoryPagesToOS` executes
`madvise(beg, end, MADV_FREE)`, which tags the relevant pages as 'FREE'
and does not release them immediately.


  Commit: 9c0743fbc5ba38ae5f66444d144d314326dc8468
      https://github.com/llvm/llvm-project/commit/9c0743fbc5ba38ae5f66444d144d314326dc8468
  Author: jyli0116 <yu.li at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/pr58431.ll
    A llvm/test/CodeGen/AArch64/rem-by-const.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll

  Log Message:
  -----------
  [GlobalISel] Allow expansion of urem by constant in prelegalizer (#145914)

This patch allows urem by a constant to be expanded more efficiently to
avoid the need for expensive udiv instructions. This is part of the
resolution to issue #118090


  Commit: 4e213159af9eea0716d2cdfbae2c482176608042
      https://github.com/llvm/llvm-project/commit/4e213159af9eea0716d2cdfbae2c482176608042
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/capability-FloatControl2.ll

  Log Message:
  -----------
  [SPIRV] Add FloatControl2 capability (#144371)

Add handling for FPFastMathMode in SPIR-V shaders. This is a first pass
that
simply does a direct translation when the proper extension is available.
This will unblock work for HLSL. However, it is not a full solution.

The default math mode for spir-v is determined by the API. When
targeting Vulkan many of the fast math options are assumed. We should do
something particular when targeting Vulkan.

We will also need to handle the hlsl "precise" keyword correctly when
FPFastMathMode is not available.

Unblockes https://github.com/llvm/llvm-project/issues/140739, but we are
keeing it open to track the remaining issues mentioned above.


  Commit: acb52a8a98f0d14a6720f8f6b40e0194ccf9b426
      https://github.com/llvm/llvm-project/commit/acb52a8a98f0d14a6720f8f6b40e0194ccf9b426
  Author: Callum Fare <callum at codeplay.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M offload/liboffload/API/README.md
    M offload/liboffload/README.md
    M offload/tools/offload-tblgen/MiscGen.cpp

  Log Message:
  -----------
  [Offload] Improve liboffload documentation (#142403)

- Update the main README to reflect the current project status
- Rework the main API generation documentation. General fixes/tidying,
but also spell out explicitly how to make API changes at the top of the
document since this is what most people will care about.

---------

Co-authored-by: Martin Grant <martingrant at outlook.com>


  Commit: e63de82d904c2364c84489894eeb81fb9c08a023
      https://github.com/llvm/llvm-project/commit/e63de82d904c2364c84489894eeb81fb9c08a023
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    A lld/test/COFF/exported-dllmain.test

  Log Message:
  -----------
  [LLD][COFF] Disallow importing DllMain from import libraries (#146610)

This is a workaround for
https://github.com/llvm/llvm-project/issues/82050 by skipping the `DllMain` symbol if seen in aimport library. If this situation occurs, after this commit a warning will also be displayed. The warning can be silenced with `/ignore:exporteddllmain`


  Commit: 4f02965ae2462b2ba05426e88ac22845e12295aa
      https://github.com/llvm/llvm-project/commit/4f02965ae2462b2ba05426e88ac22845e12295aa
  Author: Ross Brunton <ross at codeplay.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp

  Log Message:
  -----------
  [Offload] Store kernel name in GenericKernelTy (#142799)

GenericKernelTy has a pointer to the name that was used to create it.
However, the name passed in as an argument may not outlive the kernel.
Instead, GenericKernelTy now contains a std::string, and copies the
name into there.


  Commit: dbe441e71611006c038254c12242a4fbc4d283ff
      https://github.com/llvm/llvm-project/commit/dbe441e71611006c038254c12242a4fbc4d283ff
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  X86: Avoid some uses of getPointerTy (#146306)

In most contexts the pointer type is implied by the operation
and should be propagated; getPointerTy is for niche cases where
there is a synthesized value.


  Commit: 2b03efc7fba813bb0c52b7016867f200a91c2d34
      https://github.com/llvm/llvm-project/commit/2b03efc7fba813bb0c52b7016867f200a91c2d34
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [AMDGPU] Use isImage. NFC. (#146677)


  Commit: fc00256b2b4d7a5328b775b51240258e0d28701c
      https://github.com/llvm/llvm-project/commit/fc00256b2b4d7a5328b775b51240258e0d28701c
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/Makefile
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/TestDataFormatterLibccUnorderedMap.py
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/main.cpp
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/Makefile
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/TestDataFormatterLibccUnorderedMap.py
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/main.cpp

  Log Message:
  -----------
  [lldb][test][NFC] Rename libcxx unordered_map tests to unordered_map-iterator

The actual `unordered_map` tests live in
`data-formatter-stl/generic/unordered`. The tests here are only testing
`std::unordered_map::iterator`. This patch renames the directory
accordingly. This is in preparation for moving all of the STL tests into
the `generic` directory.


  Commit: a9ee1797b716fa61f495a2400f95da4594a8ae80
      https://github.com/llvm/llvm-project/commit/a9ee1797b716fa61f495a2400f95da4594a8ae80
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  Remove helper function and use target agnostic needConversion function (#146680)

This patch adds back the needed AutoConvert.h header and removes the
unneeded include guard of MVS to prevent this header from being removed
in the future


  Commit: 8b3cc4d1ed06de18166d37e5fb82c68ae4e4a7a4
      https://github.com/llvm/llvm-project/commit/8b3cc4d1ed06de18166d37e5fb82c68ae4e4a7a4
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [llvm][docs] Remove LLDB DWARF64 release note

As a precaution until the issues reported (by me)
in https://github.com/llvm/llvm-project/issues/135208
are investigated.


  Commit: d78036f06ea94a42b7cff62241e91ed5b2900c7a
      https://github.com/llvm/llvm-project/commit/d78036f06ea94a42b7cff62241e91ed5b2900c7a
  Author: Eric <eric at efcs.ca>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M .github/workflows/libcxx-restart-preempted-jobs.yaml

  Log Message:
  -----------
  Only restart failed libc++ jobs, not cancelled ones. (#146397)

Despite the error message for preempted jobs containing the words
"cancelled", these are considered workflow "failures" by github.

This is important, because if we fail to distinguish between "failed"
and "cancelled" jobs, the restarter will fight to restart jobs a user
intentionally cancelled (either by pressing the "cancel" button, or by
pushing an update to a PR).

This reverts commit 3ea7fc73397032e71fb20d27084f4552211bb1f6. This also
reverts earlier attempts to solve this problem by matching the messages
to detect manual cancellations.

This change also removes ldionne's test workflow, as its hard to
correctly keep in sync.

This change does not attempt to address the maintainability or
testability of this script, which continues to be an issue. If asked to
address these issues, my plan is to write the script in python (which
most people are more familar with), and turn this action into a "docker
action" using a container with the python action and dependencies built
into it. Let me know if that's a direction we're interested in heading.


  Commit: bbcebec3af5ac473f5d3557683f18a79a4b12ab5
      https://github.com/llvm/llvm-project/commit/bbcebec3af5ac473f5d3557683f18a79a4b12ab5
  Author: woruyu <99597449+woruyu at users.noreply.github.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/cmp-select-sign.ll
    M llvm/test/CodeGen/AArch64/concatbinop.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    M llvm/test/CodeGen/AArch64/selectcc-to-shiftand.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/vselect-constants.ll
    M llvm/test/CodeGen/AArch64/vselect-ext.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    M llvm/test/CodeGen/LoongArch/lasx/xvmskcond.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/Mips/msa/compare_float.ll
    M llvm/test/CodeGen/PowerPC/recipest.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/SystemZ/vec-max-min-zerosplat.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll

  Log Message:
  -----------
  [DAG] Refactor X86 combineVSelectWithAllOnesOrZeros fold into a generic DAG Combine (#145298)

This PR resolves https://github.com/llvm/llvm-project/issues/144513

The modification include five pattern :
1.vselect Cond, 0, 0 → 0
2.vselect Cond, -1, 0 → bitcast Cond
3.vselect Cond, -1, x → or Cond, x
4.vselect Cond, x, 0 → and Cond, x
5.vselect Cond, 000..., X -> andn Cond, X

1-4 have been migrated to DAGCombine. 5 still in x86 code.

The reason is that you cannot use the andn instruction directly in
DAGCombine, you can only use and+xor, which will introduce optimization
order issues. For example, in the x86 backend, select Cond, 0, x →
(~Cond) & x, the backend will first check whether the cond node of
(~Cond) is a setcc node. If so, it will modify the comparison operator
of the condition.So the x86 backend cannot complete the optimization of
andn.In short, I think it is a better choice to keep the pattern of
vselect Cond, 000..., X instead of and+xor in combineDAG.

For commit, the first is code changes and x86 test(note 1), the second
is tests in other backend(node 2).

---------

Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>


  Commit: ebcf7f91ffa09bcc2970367280b3cea85dcfd052
      https://github.com/llvm/llvm-project/commit/ebcf7f91ffa09bcc2970367280b3cea85dcfd052
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll

  Log Message:
  -----------
  [SystemZ][HLASM] Emit END instruction (#146110)

A HLASM source file must end with the END instruction. It is implemented
by adding a new function to the target streamer. This change also turns
SystemZHLASMSAsmString.h into a proper header file, and only uses the
SystemZTargetHLASMStreamer when HLASM output is generated.


  Commit: bca79ec0d21e582901b77038121dd3d738ff6aae
      https://github.com/llvm/llvm-project/commit/bca79ec0d21e582901b77038121dd3d738ff6aae
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization/extract-with-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization/extract.mlir
    M mlir/test/Dialect/Linalg/vectorization/linalg-ops-with-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization/linalg-ops.mlir

  Log Message:
  -----------
  [mlir][linalg] Use `ub.poison` in linalg vectorizer instead of `0` for some transfer ops (#146544)

This patch is a follow up to https://github.com/llvm/llvm-project/pull/146088 and changes the padding value in the linalg vectorizer from `0` to `ub.poison` in `vector.transfer_read`s created for extracting slices or when vectorizing a generic.

Signed-off-by: Fabian Mora <fabian.mora-cordero at amd.com>


  Commit: 24828c8c45d7f258159afca251aa853a5fc59150
      https://github.com/llvm/llvm-project/commit/24828c8c45d7f258159afca251aa853a5fc59150
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/GPU/allocator.h
    M libc/src/stdlib/gpu/aligned_alloc.cpp
    M libc/test/integration/src/stdlib/gpu/CMakeLists.txt
    A libc/test/integration/src/stdlib/gpu/aligned_alloc.cpp

  Log Message:
  -----------
  [libc] Efficiently implement `aligned_alloc` for AMDGPU (#146585)

Summary:
This patch uses the actual allocator interface to implement
`aligned_alloc`. We do this by simply rounding up the amount allocated.
Because of how index calculation works, any offset within an allocated
pointer will still map to the same chunk, so we can just adjust
internally and it will free all the same.


  Commit: 5491576a16230a770a507115af2c90f600a5d447
      https://github.com/llvm/llvm-project/commit/5491576a16230a770a507115af2c90f600a5d447
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.td

  Log Message:
  -----------
  [CIR] Introduce IntTypeInterface to allow uniform integer types handling (#146660)

This will in future allow to use builtin integer types within cir operations

This mirrors incubat changes from https://github.com/llvm/clangir/pull/1724


  Commit: 38ad6b1983e307b8c7620c8316ac95e66c04e86c
      https://github.com/llvm/llvm-project/commit/38ad6b1983e307b8c7620c8316ac95e66c04e86c
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir

  Log Message:
  -----------
  [mlir][Affine] Fix crash in affine-loop-fusion pass by guarding against an empty op list (#144841)

Related: #139231

This patch fixes a crash in the affine-loop-fusion pass when
`getInnermostCommonLoop` is called with an empty list of operations.

The function expects at least one op to analyze, and passing an empty
array of ops causes an assertion failure. This change ensures the pass
checks for an empty op array before calling `getInnermostCommonLoop`.

@bondhugula @matthias-springer


  Commit: 8dcdc0ff1f410897bf7b59fa31d480319d1169e7
      https://github.com/llvm/llvm-project/commit/8dcdc0ff1f410897bf7b59fa31d480319d1169e7
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [CIR] Clean up IntAttr (#146661)

- Add common CIR_ prefix
- Simplify printing/parsing
- Make it use IntTypeInterface

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


  Commit: cbfd0d68ea5084704bd9ff0c6c51e04fa3fff4be
      https://github.com/llvm/llvm-project/commit/cbfd0d68ea5084704bd9ff0c6c51e04fa3fff4be
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/HashRecognize.cpp
    M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll

  Log Message:
  -----------
  [HashRecognize] Rewrite arePHIsIntertwined (#144878)

The test crc8.le.tc16 is a valid CRC algorithm, but isn't recognized as
such due to a buggy arePHIsIntertwined, which is asymmetric in its
PHINode arguments. There is also a fundamental correctness issue: the
core functionality is to match a XOR that's a recurrence in both PHI
nodes, ignoring casts, but the user of the XOR is never checked. Rewrite
and rename the function.

crc8.le.tc16 is still not recognized as a valid CRC algorithm, due to an
incorrect check for loop iterations exceeding the bitwidth of the
result: in reality, it should not exceed the bitwidth of LHSAux, but we
leave this fix to a follow-up.

Co-authored-by: Piotr Fusik <p.fusik at samsung.com>


  Commit: 5a8d096ae3443909bbcc87465653c15b58bc2e11
      https://github.com/llvm/llvm-project/commit/5a8d096ae3443909bbcc87465653c15b58bc2e11
  Author: flovent <flbven at protonmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive for cppcoreguidelines-pro-bounds-pointer-arithmetic (#127394)

this PR fixes #126424
for `ArraySubScriptExpr`, `hasBase` Matcher will get right operand when
it is not integer type, but is not for sure that left operand is integer
type. For the example code below `hasBase` will get `r` for the
Subsequent matching and causing false positive.
```
template <typename R>
int f(std::map<R*, int>& map, R* r) {
  return map[r];
}
```
so is needed to see if index is integer type to avoid this situation.


  Commit: ad715beca18469a483d14df3462446d37c039ac8
      https://github.com/llvm/llvm-project/commit/ad715beca18469a483d14df3462446d37c039ac8
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [AMDGPU] Remove HasSampler variable. NFC. (#146682)

Putting the complex condition in a variable does not help readability.
It is simpler to use separate `if`s.


  Commit: 2dc44b3a7ba1d70f823a1a13d6364d2738ede6c3
      https://github.com/llvm/llvm-project/commit/2dc44b3a7ba1d70f823a1a13d6364d2738ede6c3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/sub-gep.ll

  Log Message:
  -----------
  [InstCombine] Fix multi-use handling for multi-GEP rewrite (#146689)

If we're expanding offsets for a chain of GEPs in RewriteGEPs mode, we
should also rewrite GEPs that have one-use themselves, but are kept
alive by a multi-use GEP later in the chain.

For the sake of simplicity, I've changed this to just skip the one-use
condition entirely (which will perform an unnecessary rewrite of a no
longer used GEP, but shouldn't otherwise matter).


  Commit: 3dc09fbf29d5527f38b2c3e1c13aedb73c966e48
      https://github.com/llvm/llvm-project/commit/3dc09fbf29d5527f38b2c3e1c13aedb73c966e48
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaELFObjectWriter.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
    M llvm/lib/Target/Xtensa/XtensaFeatures.td
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/lib/Target/Xtensa/XtensaOperators.td
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.td
    M llvm/lib/Target/Xtensa/XtensaSubtarget.h
    A llvm/test/CodeGen/Xtensa/invalid-tls.ll
    A llvm/test/CodeGen/Xtensa/threadptr.ll
    A llvm/test/MC/Disassembler/Xtensa/dfpaccel.txt
    A llvm/test/MC/Disassembler/Xtensa/threadptr.txt
    A llvm/test/MC/Xtensa/dfpaccel.s
    A llvm/test/MC/Xtensa/threadptr.s

  Log Message:
  -----------
  [Xtensa] Implement THREADPTR and DFPAccel Xtensa Options. (#145543)

Implment base support of the TLS functionality using Xtensa THREADPTR
Option. Implement basic functionality of the DFPAccel Option(registers
support).


  Commit: e288561e6ba49855e89a324cd46c7967fce27cf5
      https://github.com/llvm/llvm-project/commit/e288561e6ba49855e89a324cd46c7967fce27cf5
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp

  Log Message:
  -----------
  [CIR] Clean up FPAttr (#146662)

- Adds CIR_ prefix to the definition
- Removes redundant builder and cleans up attribute creations

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


  Commit: 4db8ce7251384d27c5fcdf5b583eeb4048f22706
      https://github.com/llvm/llvm-project/commit/4db8ce7251384d27c5fcdf5b583eeb4048f22706
  Author: Paddy McDonald <padriff at hotmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/tools/clang-fuzzer/handle-llvm/CMakeLists.txt

  Log Message:
  -----------
  [clang-fuzzer] Fix latent race condition in build (#146119)

Add explicit dependency for gen_vt to the CMakeLists.txt for
clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp to prevent race
condition on generation of llvm/CodeGen/GenVT.inc This explicit
dependency was added in other CMakeLists.txt when the tablegen was added
for GenVT.inc file in https://reviews.llvm.org/D148770, but not for
handle-llvm

A similar fix was made in
https://github.com/llvm/llvm-project/pull/109306

rdar://151325382


  Commit: 03919ef8d9d952b2e5b7feb8c39f0eec9f4bada4
      https://github.com/llvm/llvm-project/commit/03919ef8d9d952b2e5b7feb8c39f0eec9f4bada4
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/Sema/OpenCLBuiltins.td
    A clang/test/SemaOpenCL/amd-media-ops.cl

  Log Message:
  -----------
  [Clang][OpenCL] Declare cl_amd_media_ops/cl_amd_media_ops2 builtins with -fdeclare-opencl-builtins (#143507)

cl_amd_media_ops/cl_amd_media_ops2 builtins are currently not declared
with -fdeclare-opencl-builtins.

This patch adds support for these builtins.


  Commit: 242996efee4aaa30dd0ddb4359675b8bc103294a
      https://github.com/llvm/llvm-project/commit/242996efee4aaa30dd0ddb4359675b8bc103294a
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [Clang][DLCov][NFCish] Fix debugloc coverage tracking macro in Clang (#146521)

In a previous commit, the llvm-config-defined macro
LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING was renamed to
LLVM_ENABLE_DEBUGLOC_TRACKING_COVERAGE. One instance of this in Clang
remains unchanged; this patch renames it, and adds an explicit
llvm-config inclusion to ensure the define doesn't silently get removed.

NFC outside of coverage tracking builds, which we do not currently test.


  Commit: 3cb28e9dee41d64d25fdd2851c2e03506178a3f1
      https://github.com/llvm/llvm-project/commit/3cb28e9dee41d64d25fdd2851c2e03506178a3f1
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [CIR] Untie Type and Attribute definitions (#146663)

This will allow to use Attributes and Types together in tablegen without inducing cyclic dependency.

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


  Commit: e32439249d8af2b1d0654e01472506d7e0c92f7b
      https://github.com/llvm/llvm-project/commit/e32439249d8af2b1d0654e01472506d7e0c92f7b
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/deque/TestDataFormatterGenericDeque.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/deque/main.cpp
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/Makefile
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/TestDataFormatterLibcxxDeque.py
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/main.cpp

  Log Message:
  -----------
  [lldb][test] Consolidate generic and libcxx std::deque formatter tests (#146697)

The plan is to move all STL formatter API tests into a single directory.

The `std::deque` test is currently the only test that is duplicated
between the `libcxx` and `generic` directories. This patch moves the
libcxx deque tests into `generic` (moving over any functionality that
wasn't tested in the `generic` tests, mainly formatting
pointers/references to `std::deque`).


  Commit: 3b4e79398de5e6f5c4603c40d279a95dd57d0950
      https://github.com/llvm/llvm-project/commit/3b4e79398de5e6f5c4603c40d279a95dd57d0950
  Author: bd1976bris <bd1976llvm at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    A cross-project-tests/dtlto/README.md
    A cross-project-tests/dtlto/ld-dtlto.c
    A cross-project-tests/dtlto/lit.local.cfg
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/LTO.cpp
    M lld/ELF/Options.td
    A lld/docs/DTLTO.rst
    M lld/docs/index.rst
    A lld/test/ELF/dtlto/files.test
    A lld/test/ELF/dtlto/options.test
    A lld/test/ELF/dtlto/partitions.test
    M lld/test/lit.cfg.py

  Log Message:
  -----------
  [DTLTO][LLD][ELF] Add support for Integrated Distributed ThinLTO (#142757)

This patch introduces support for Integrated Distributed ThinLTO (DTLTO)
in ELF LLD.

DTLTO enables the distribution of ThinLTO backend compilations via
external distribution systems, such as Incredibuild, during the
traditional link step: https://llvm.org/docs/DTLTO.html.

It is expected that users will invoke DTLTO through the compiler driver
(e.g., Clang) rather than calling LLD directly. A Clang-side interface
for DTLTO will be added in a follow-up patch.

Note: Bitcode members of archives (thin or non-thin) are not currently
supported. This will be addressed in a future change. As a consequence
of this lack of support, this patch is not sufficient to allow for
self-hosting an LLVM build with DTLTO. Theoretically,
--start-lib/--end-lib could be used instead of archives in a self-host
build. However, it's unclear how --start-lib/--end-lib can be easily
used with the LLVM build system.

Testing:
- ELF LLD `lit` test coverage has been added, using a mock distributor
  to avoid requiring Clang.
- Cross-project `lit` tests cover integration with Clang.

For the design discussion of the DTLTO feature, see: #126654.


  Commit: b1774222c761a7912cdbe0d0004ca12dae95f721
      https://github.com/llvm/llvm-project/commit/b1774222c761a7912cdbe0d0004ca12dae95f721
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    A flang/test/Integration/amdgpu-target-desc-cast-to-global-addrspace.f90

  Log Message:
  -----------
  [flang] Emit `fir.global` in the global address space (#146653)

Instead of emitting globals in the program/default address space, emit
them in the global address space. This also requires changes how address
of code-gen is handled, we need to cast to the default address space to
prevent code-gen issues.


  Commit: d74d4ffa3342a97bcdfceae75616c755f83b3ca2
      https://github.com/llvm/llvm-project/commit/d74d4ffa3342a97bcdfceae75616c755f83b3ca2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp

  Log Message:
  -----------
  [Bitcode] Extract common BitCodeAbbrevOps (NFC)

We always use the same abbreviations for type and for value
references, so avoid repeating them.


  Commit: d04d2557255a55aa3df5f76cfe7ee7cef7bf99a4
      https://github.com/llvm/llvm-project/commit/d04d2557255a55aa3df5f76cfe7ee7cef7bf99a4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [Clang] Properly use `CommaJoined` for `--offload-arch` (#146687)

Summary:
This didn't use the built-in 'CommaJoined' feature for arguments and
parsed out the strings manually. This patch simplifies this by just
using the present functionality.


  Commit: ce99db9d1b8ab609575893fc8026143d9b4765c9
      https://github.com/llvm/llvm-project/commit/ce99db9d1b8ab609575893fc8026143d9b4765c9
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [CIR] Add mlir-translate to CMake (#146608)

This PR adds the `mlir-translate` dependency to CIR.

The following test was failing when running `ninja check-clang-cir`:

```
CIR/Lowering/stack-save-restore.cir  
line 2: mlir-translate: command not found
```

The failure occurred because `mlir-translate` was not being built as
part of the CIR test dependencies. This PR ensures that the target is
properly built so the test can run successfully.


  Commit: 1841b021c6bfda80cd0edd97cc8dff8e0f718993
      https://github.com/llvm/llvm-project/commit/1841b021c6bfda80cd0edd97cc8dff8e0f718993
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    A clang/test/CIR/CodeGen/opt-info-attr.cpp
    A clang/test/CIR/IR/invalid-opt-info.cir

  Log Message:
  -----------
  [CIR] Add OptInfo attribute (#146261)

This patch adds the `#cir.opt_info` attribute which holds module-level
optimization information.


  Commit: ab42c4abe86c454a6812d837a7f2a8d5b9671fdf
      https://github.com/llvm/llvm-project/commit/ab42c4abe86c454a6812d837a7f2a8d5b9671fdf
  Author: Akash Banerjee <Akash.Banerjee at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [NFC] Replace "omp.default.mapper" with llvm::omp::OmpDefaultMapperName.


  Commit: 7d52b0983e0bee3c1d5dbe04ae2adfd33f0265e5
      https://github.com/llvm/llvm-project/commit/7d52b0983e0bee3c1d5dbe04ae2adfd33f0265e5
  Author: Ross Brunton <ross at codeplay.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M offload/liboffload/API/Device.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/tools/offload-tblgen/PrintGen.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp

  Log Message:
  -----------
  [Offload] Add `MAX_WORK_GROUP_SIZE` device info query (#143718)

This adds a new device info query for the maximum workgroup/block size
for each dimension.


  Commit: 05ebb363c901cf2c153a5c90293b202cc4540887
      https://github.com/llvm/llvm-project/commit/05ebb363c901cf2c153a5c90293b202cc4540887
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    A libcxx/utils/ci/buildkite-pipeline-trigger.sh

  Log Message:
  -----------
  [libc++] Re-add a script to trigger the libc++ Buildkite pipeline (#146730)

This was removed in 99cdc26c94 when the LLVM monorepo Buildkite setup
was removed. Libc++ previously relied on the LLVM monorepo pipeline to
trigger its own pipeline when needed. Since there is no LLVM monorepo
pipeline anymore, we must trigger the libc++ Buildkite pipeline on every
pull request and use this script to determine which jobs to actually
start based on the files that are touched by the PR.


  Commit: 7931a8f102980185f51f251f808552764dbbfd99
      https://github.com/llvm/llvm-project/commit/7931a8f102980185f51f251f808552764dbbfd99
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/intrinsic-scalarize.ll

  Log Message:
  -----------
  [VectorCombine] Scalarize vector intrinsics with scalar arguments (#146530)

Some intrinsics like llvm.abs or llvm.powi have a scalar argument even
when the overloaded type is a vector.
This patch handles these in scalarizeOpOrCmp to allow scalarizing them.

In the test the leftover vector powi isn't folded away to poison, this
should be fixed in a separate patch.


  Commit: 16b75c819dde5670f3b086f3c664e6b9e75cb40b
      https://github.com/llvm/llvm-project/commit/16b75c819dde5670f3b086f3c664e6b9e75cb40b
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-simd-reduction-byref.mlir
    A mlir/test/Target/LLVMIR/openmp-simd-reduction-simple.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [mlir][OpenMP] implement SIMD reduction (#146671)

This replicates clang's implementation. Basically:
- A private copy of the reduction variable is created, initialized to
the reduction neutral value (using regions from the reduction
declaration op).
- The body of the loop is lowered as usual, with accesses to the
reduction variable mapped to the private copy.
- After the loop, we inline the reduction region from the declaration op
to combine the privatized variable into the original variable.
- As usual with the SIMD construct, attributes are added to encourage
vectorization of the loop and to assert that memory accesses in the loop
don't alias across iterations.

I have verified that simple scalar examples do vectorize at -O3 and the
tests I could find in the Fujitsu test suite produce correct results. I
tested on top of #146097 and this seemed to work for composite
constructs as well.

Fixes #144290


  Commit: 7e1dc7e8d4b7a4ad376223bea6f2a557114178f5
      https://github.com/llvm/llvm-project/commit/7e1dc7e8d4b7a4ad376223bea6f2a557114178f5
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [nfc] Rename API with typo in BranchProbabilityInfo (#146447)


  Commit: 1c305f711f860246b9dd60211166afbf3b3d48cd
      https://github.com/llvm/llvm-project/commit/1c305f711f860246b9dd60211166afbf3b3d48cd
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [HashRecognize][NFC] Add a missing "phi" in a comment (#146702)


  Commit: 68173c80915955bae8cfc697a98d5d7888f09c67
      https://github.com/llvm/llvm-project/commit/68173c80915955bae8cfc697a98d5d7888f09c67
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/IR/Type.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    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/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-resources/MixedBufferLoadStore.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll

  Log Message:
  -----------
  [HLSL][SPRIV] Handle signed RWBuffer correctly (#144774)

In Vulkan, the signedness of the accesses to images has to match the
signedness of the backing image.
    
See

https://docs.vulkan.org/spec/latest/chapters/textures.html#textures-input,
where it says the behaviour is undefined if
    
> the signedness of any read or sample operation does not match the
signedness of the image’s format.
    
Users who define say an `RWBuffer<int>` will create a Vulkan image with
a signed integer format. So the HLSL that is generated must match that
expecation.
    
The solution we use is to generate a `spirv.SignedImage` target type for
signed integer instead of `spirv.Image`. The two types are otherwise the
same.
    
The backend will add the `signExtend` image operand to access to the
image to ensure the image is access as a signed image.
    
Fixes #144580


  Commit: 338fd8b12ce67eff73ed0a5c2174bee077fcbcbe
      https://github.com/llvm/llvm-project/commit/338fd8b12ce67eff73ed0a5c2174bee077fcbcbe
  Author: Gábor Spaits <gaborspaits1 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll

  Log Message:
  -----------
  [SimplifyCFG] Transform switch to select when common bits uniquely identify one case (#145233)

Fix #141753 .

This patch introduces a new check, that tries to decide if the
conjunction of all the values uniquely identify the accepted values by
the switch.


  Commit: 3c0571a749711226922f8b587fd9b1e5985dc6c4
      https://github.com/llvm/llvm-project/commit/3c0571a749711226922f8b587fd9b1e5985dc6c4
  Author: Callum Fare <callum at codeplay.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M offload/liboffload/API/Common.td

  Log Message:
  -----------
  [Offload] Add missing license header to Common.td (#146737)

All other tablegen files in this directory have the license header, but
`Common.td` is missing it


  Commit: e717e503cae19e7e965972724a1476b2fa66ad2d
      https://github.com/llvm/llvm-project/commit/e717e503cae19e7e965972724a1476b2fa66ad2d
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [AMDGPU] Fix comment on DelayInfo::advance (#146718)


  Commit: 4461de2e5139932a1ae73bf686c63c0f6aa44a7a
      https://github.com/llvm/llvm-project/commit/4461de2e5139932a1ae73bf686c63c0f6aa44a7a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [StaticAnalyzer] Remove unnecessary casts (NFC) (#146706)

N is already of ExplodedNode *.


  Commit: 0f1accd806426f18d33ac761b6721c3cadcb3faf
      https://github.com/llvm/llvm-project/commit/0f1accd806426f18d33ac761b6721c3cadcb3faf
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp

  Log Message:
  -----------
  [clangd] Drop const from a return type (NFC) (#146707)

We don't need const on the return type.


  Commit: bbf4402635c5fbb01193de336c4c11dacd8e0d24
      https://github.com/llvm/llvm-project/commit/bbf4402635c5fbb01193de336c4c11dacd8e0d24
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/unittests/Analysis/FunctionPropertiesAnalysisTest.cpp

  Log Message:
  -----------
  [Analysis] Remove a redundant control flow statement (NFC) (#146708)


  Commit: 191583c6a550778e9eeae9be9b7c985c6007f935
      https://github.com/llvm/llvm-project/commit/191583c6a550778e9eeae9be9b7c985c6007f935
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/lib/TableGen/Argument.cpp
    M mlir/lib/TableGen/Attribute.cpp
    M mlir/lib/TableGen/Class.cpp
    M mlir/lib/TableGen/Interfaces.cpp
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/TableGen/Property.cpp
    M mlir/lib/TableGen/Trait.cpp

  Log Message:
  -----------
  [mlir] Remove unused includes (NFC) (#146709)


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/test/CodeGen/AArch64/bf16_fast_math.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-ctpop.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-divergence-driven-isel.ll
    M llvm/test/CodeGen/ARM/fp16_fast_math.ll
    M llvm/test/CodeGen/PowerPC/aix32-vector-vararg-caller-split.ll
    M llvm/test/CodeGen/PowerPC/nofpexcept.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-tuple-align.ll
    M llvm/test/CodeGen/X86/apx/kmov-domain-assignment.ll
    M llvm/test/CodeGen/X86/fp-intrinsics-flags.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-mir.ll
    M llvm/test/CodeGen/X86/unpredictable-brcond.ll
    M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics-flags.ll
    A llvm/test/CodeGen/X86/x86-access-to-global.ll

  Log Message:
  -----------
  [InstrEmitter] Use AddOperand in EmitCopyToRegClassNode. (#146637)

This is alternative to #145965 that allows RegisterSDNode to be handled
without making a special case.


  Commit: 2fe0feb84875189478d8dd998cc992fa76562709
      https://github.com/llvm/llvm-project/commit/2fe0feb84875189478d8dd998cc992fa76562709
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/test/Feature/intrinsics.ll

  Log Message:
  -----------
  [LLVM][AsmWriter] Print a comment for unknown intrinsics (#146726)

Unknown intrinsics are functions that begin with `llvm.` but are not an
intrinsic that is recognized by LLVM. Add a comment before such
functions in LLVM IR assembly to indicate that they are unknown
intrinsics.


  Commit: 641ad52b6ab4ea80c16becffb79e249fc5039f18
      https://github.com/llvm/llvm-project/commit/641ad52b6ab4ea80c16becffb79e249fc5039f18
  Author: Jun Wang <jwang86 at yahoo.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/test/MC/AMDGPU/gfx950_asm_features.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx950.txt

  Log Message:
  -----------
  [AMDGPU][MC] Fix disassembly for v_permlane16_swap_b32 for GFX950 (#146600)

When targeting GFX950, disassembly of v_permlane16_swap_b32 and
v_permlane32_swap_b32 instructions produces errors when they use certain
vdst operand values, e.g., v_permlane16_swap_b32 v218, v219. This patch
fixes this problem.


  Commit: de4f283d141ca5d4c7449323354901166c15635e
      https://github.com/llvm/llvm-project/commit/de4f283d141ca5d4c7449323354901166c15635e
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaELFObjectWriter.cpp

  Log Message:
  -----------
  [Xtensa] Fix XtensaELFObjectWriter. (#146731)

The "XtensaMCExpr.h" used by XtensaELFObjectWriter was removed by
previous commit. And functionality from this file is now implemented in
"XtensaMCAsmInfo.h". So, fix this situation.


  Commit: ed27f18e324de1441bb062c6b2ffd2be5875a952
      https://github.com/llvm/llvm-project/commit/ed27f18e324de1441bb062c6b2ffd2be5875a952
  Author: Adam Glass <adamglass at microsoft.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/intrin.h
    M clang/lib/Sema/SemaARM.cpp
    A clang/test/CodeGen/arm64-microsoft-sys.c
    M clang/test/Sema/builtins-microsoft-arm64.c

  Log Message:
  -----------
  __sys builtin support for AArch64 (#146456)

Adds support for __sys Clang builtin for AArch64

__sys is a long existing MSVC intrinsic used to manage caches, tlbs, etc
by writing to system registers:
* It takes a macro-generated constant and uses it to form the AArch64 SYS instruction which is MSR with op0=1. The macro drops op0 and expects the implementation to hardcode it to 1 in the encoding.
* Volume use is in systems code (kernels, hypervisors, boot environments, firmware)
* Has an unused return value due to MSVC cut/paste error

Implementation:
* Clang builtin, sharing code with Read/WriteStatusReg
* Hardcodes the op0=1
* Explicitly returns 0
* Code-format change from clang-format
* Unittests included
* Not limited to MSVC-environment as its generally useful and neutral


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

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/CMakeLists.txt
    R lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
    R lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.h
    M lldb/source/Plugins/Process/MacOSX-Kernel/ThreadKDP.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    R lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp
    R lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.h
    R lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.cpp
    R lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.h
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn

  Log Message:
  -----------
  [lldb][NFC][MachO] Clean up LC_THREAD reading code, remove i386 corefile (#146480)

While fixing bugs in the x86_64 LC_THREAD parser in ObjectFileMachO, I
noticed that the other LC_THREAD parsers are all less clear than they
should be.

To recap, a Mach-O LC_THREAD load command has a byte size for the entire
payload. Within the payload, there will be one or more register sets
provided. A register set starts with a UInt32 "flavor", the type of
register set defined in the system headers, and a UInt32 "count", the
number of UInt32 words of memory for this register set. After one
register set, there may be additional sets. A parser can skip an unknown
register set flavor by using the count field to get to the next register
set. When the total byte size of the LC_THREAD load command has been
parsed, it is completed.

This patch fixes the riscv/arm/arm64 LC_THREAD parsers to use the total
byte size as the exit condition, and to skip past unrecognized register
sets, instead of stopping parsing.

Instead of fixing the i386 corefile support, I removed it. The last
macOS that supported 32-bit Intel code was macOS 10.14 in 2018. I also
removed i386 KDP support, 32-bit intel kernel debugging hasn't been
supported for even longer than that.

It would be preferable to do these things separately, but I couldn't
bring myself to update the i386 LC_THREAD parser, and it required very
few changes to remove this support entirely.


  Commit: 6a97b56ce5c5b189223da1a6961912d1de40829e
      https://github.com/llvm/llvm-project/commit/6a97b56ce5c5b189223da1a6961912d1de40829e
  Author: Zhuoran Yin <zhuoryin at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
    R mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
    A mlir/test/Dialect/AMDGPU/maskedload-to-load.mlir
    R mlir/test/Dialect/AMDGPU/transfer-read-to-load.mlir

  Log Message:
  -----------
  [MLIR][AMDGPU] Redirect transfer read to masked load lowering (#146705)

This PR reworks https://github.com/llvm/llvm-project/pull/131803.
Instead of applying the optimization on transfer_read op, which is too
high level, it redirect the pre-existing pattern onto maskedload op.
This simplified the implementation of the lowering pattern. This also
allows moving the usage of the pass to a target dependent pipeline.

Signed-off-by: jerryyin <zhuoryin at amd.com>


  Commit: e9be5286e14e2c290232e6dd6e04c7f5e9410885
      https://github.com/llvm/llvm-project/commit/e9be5286e14e2c290232e6dd6e04c7f5e9410885
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/test/CIR/CodeGen/complex.cpp

  Log Message:
  -----------
  [CIR] Implement NotEqualOp for ComplexType (#146129)

This change adds support for the not equal operation for ComplexType

https://github.com/llvm/llvm-project/issues/141365


  Commit: 50f40a5327ad9f8a4a57bb2bf7679f489f86b726
      https://github.com/llvm/llvm-project/commit/50f40a5327ad9f8a4a57bb2bf7679f489f86b726
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp
    M libc/test/integration/src/stdlib/gpu/aligned_alloc.cpp
    M libc/test/integration/src/stdlib/gpu/malloc.cpp

  Log Message:
  -----------
  [libc] Fix internal alignment in allcoator (#146738)

Summary:
The allocator interface is supposed to have 16 byte alignment (to keep
it consistent with the CPU allocator. We could probably drop this to 8
if desires.) But this was not enforced because the number of bytes used
for the bitfield sometimes resulted in alignment of 8 instead of 16.
Explicitly align the number of bytes to be a multiple of 16 even if
unused.


  Commit: cbfc10260cfeab7ede763bffad4c71d9ae20abd2
      https://github.com/llvm/llvm-project/commit/cbfc10260cfeab7ede763bffad4c71d9ae20abd2
  Author: Tom Tromey <tromey at adacore.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    A lld/test/ELF/lto/lazy-debug.ll
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp

  Log Message:
  -----------
  Fix lld crash caused by dynamic bit offset patch (#146701)

PR #141106 changed the debuginfo metdata to allow dynamic bit offsets
and sizes. This caused a crash in lld when using LTO.

The problem is that lazyLoadOneMetadata assumes that the metadata in
question can be cast to MDNode; but in the typical case where the offset
is a constant, this is not true.

This patch changes this spot to allow non-MDNodes through.

The included test case comes from the report in #141106.


  Commit: 6b623a6622707ea47d84ab0069f766215a6fec44
      https://github.com/llvm/llvm-project/commit/6b623a6622707ea47d84ab0069f766215a6fec44
  Author: Rahman Lavaee <rahmanl at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/docs/Extensions.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/MC/MCSectionELF.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/test/tools/llvm-objdump/X86/elf-bbaddrmap-disassemble-symbolize-operands.yaml
    M llvm/unittests/Object/ELFObjectFileTest.cpp

  Log Message:
  -----------
  [SHT_LLVM_BB_ADDR_MAP] Remove support for versions 1 and 0 (SHT_LLVM_BB_ADDR_MAP_V0). (#146186)

Version 2 was added more than two years ago
(https://github.com/llvm/llvm-project/commit/6015a045d768feab3bae9ad9c0c81e118df8b04a).
So it should be safe to deprecate older versions.


  Commit: 1626867ccdf4d9dabb7958a87766fdd16b513a0f
      https://github.com/llvm/llvm-project/commit/1626867ccdf4d9dabb7958a87766fdd16b513a0f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb] Fix warnings

This patch fixes:

  lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp:415:7:
  error: label at end of compound statement is a C++23 extension
  [-Werror,-Wc++23-extensions]

  lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp:536:7:
  error: label at end of compound statement is a C++23 extension
  [-Werror,-Wc++23-extensions]

  lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp:672:7:
  error: label at end of compound statement is a C++23 extension
  [-Werror,-Wc++23-extensions]


  Commit: bf016b930b5ccb3072370399845067cf55e62732
      https://github.com/llvm/llvm-project/commit/bf016b930b5ccb3072370399845067cf55e62732
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/test/Dialect/SPIRV/IR/types.mlir
    A mlir/test/Target/SPIRV/tensorARM.mlir

  Log Message:
  -----------
  [mlir][spirv] Add support for SPV_ARM_tensors (#144667)

This patch introduces a new custom type `!spirv.arm.tensor<>` to the
MLIR SPIR-V dialect to represent
`OpTypeTensorARM` as defined in the `SPV_ARM_tensors` extension.

The type models a shaped tensor with element type and optional shape,
and implements the
`ShapedType` interface to enable reuse of MLIR's existing shape-aware
infrastructure.

The type supports serialization to and from SPIR-V binary as
`OpTypeTensorARM`, and emits the
required capability (`TensorsARM`) and extension (`SPV_ARM_tensors`)
declarations automatically.

This addition lays the foundation for supporting structured tensor
values natively in SPIR-V and
will enable future support for operations defined in the
`SPV_ARM_tensors` extension, such as
`OpTensorReadARM`, `OpTensorWriteARM`, and `OpTensorQuerySizeARM`.

Reference: https://github.com/KhronosGroup/SPIRV-Registry/pull/342

---------

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Signed-off-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>


  Commit: aa8e1bc0e9892ddbd84333767f71dc191cc10140
      https://github.com/llvm/llvm-project/commit/aa8e1bc0e9892ddbd84333767f71dc191cc10140
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [X86] Add BLEND/UNPCK shuffles to canCreateUndefOrPoisonForTargetNode/isGuaranteedNotToBeUndefOrPoisonForTargetNode (#146728)

None of these implicitly generate UNDEF/POISON


  Commit: 5e6e51bbbec4ed53d21f45111c948fb82c50314d
      https://github.com/llvm/llvm-project/commit/5e6e51bbbec4ed53d21f45111c948fb82c50314d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/Sema/SemaCodeComplete.cpp

  Log Message:
  -----------
  [Sema] Remove an unnecessary cast (NFC) (#146703)

The only use of Receiver is to initialize RecExpr.  This patch renames
Receiver to RecExpr while removing the cast statement.


  Commit: a4d517dc38088c8ca6eeb8ea880c24dfa3e5ce7b
      https://github.com/llvm/llvm-project/commit/a4d517dc38088c8ca6eeb8ea880c24dfa3e5ce7b
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [SystemZ][z/OS] Fix error about const char in Text Encoding (#146727)

This patch fixes the following error:
```
llvm/lib/Support/TextEncoding.cpp:274:11: error: cannot initialize a variable of type 'char *' with an rvalue of type 'const char *'
  274 |     char *Input = InputLength ? const_cast<char *>(Source.data()) : "";
      |           ^       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


  Commit: 832cd2df0b564a0643784d647dd55372c80fdb6c
      https://github.com/llvm/llvm-project/commit/832cd2df0b564a0643784d647dd55372c80fdb6c
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions-but-one.ll

  Log Message:
  -----------
  [SPIRV] Add option to add all KHR extensions (#145535)

In DXC, there is an option to enable all KHR extension. I would like to
extend the existing `-spirv-ext` backend commandline option to have the
same capability. It is like the special case for `all` execept it only
adds the `SPV_KHR_*` extensions.

Part of https://github.com/llvm/llvm-project/issues/137650.


  Commit: dfc5987faccb94065c8a3b52e5b3fb1f5e0feb91
      https://github.com/llvm/llvm-project/commit/dfc5987faccb94065c8a3b52e5b3fb1f5e0feb91
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [bazel] Add missing dep after 242996efee4aaa30dd0ddb4359675b8bc103294a


  Commit: 988876cdd918d5b945a072a3d643b5fa22ae2917
      https://github.com/llvm/llvm-project/commit/988876cdd918d5b945a072a3d643b5fa22ae2917
  Author: enh-google <enh at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libc/src/wchar/wcpncpy.cpp
    M libc/test/src/wchar/wcpncpy_test.cpp

  Log Message:
  -----------
  Fix wcpncpy() return value; add test.


  Commit: 77d95911a3a4dc7445280cd5ee217e2a47a41b47
      https://github.com/llvm/llvm-project/commit/77d95911a3a4dc7445280cd5ee217e2a47a41b47
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libc/src/wchar/wcpncpy.cpp
    M libc/test/src/wchar/wcpncpy_test.cpp

  Log Message:
  -----------
  Revert "Fix wcpncpy() return value; add test." (#146752)

This reverts commit 988876cdd918d5b945a072a3d643b5fa22ae2917.
Was intended to be a PR


  Commit: 00e071d6906246192b344f3e28d9e15a0e0faf68
      https://github.com/llvm/llvm-project/commit/00e071d6906246192b344f3e28d9e15a0e0faf68
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb] remove do-nothing defaults in case statements,
unbreak gcc CI bots.


  Commit: e3edc1bd873f25d0dae56d8a65a0090ba1d8a497
      https://github.com/llvm/llvm-project/commit/e3edc1bd873f25d0dae56d8a65a0090ba1d8a497
  Author: Justin King <jcking at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M compiler-rt/lib/asan/asan_new_delete.cpp

  Log Message:
  -----------
  asan: refactor new/delete interceptor macros (#146696)

Refactors new/delete interceptor macros per the discussion in #145087.

Signed-off-by: Justin King <jcking at google.com>


  Commit: da01257c3a16b728718f9bde8bbe435678d96fd8
      https://github.com/llvm/llvm-project/commit/da01257c3a16b728718f9bde8bbe435678d96fd8
  Author: bd1976bris <Ben.Dunbobbin at sony.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lld/test/ELF/dtlto/files.test

  Log Message:
  -----------
  [Test] Account for spaces in paths in the new dtlto/files.test (#146749)

This uses LIT substitutions in a response file that could contain spaces
in paths. This caused a failure on a build bot where the path to the
system Python executable was "C:\Program Files\Python310\python.exe", as
reported in #142757.

Add appropriate quoting to fix the issue.


  Commit: 218fd692617b540f4ae807cb5a1a1591e1e5f2f0
      https://github.com/llvm/llvm-project/commit/218fd692617b540f4ae807cb5a1a1591e1e5f2f0
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MemoryMaps.cpp

  Log Message:
  -----------
  [BOLT] Decouple new segment creation from PHDR rewrite. NFCI (#146111)

Refactor handling of PHDR table rewrite to make modifications easier.


  Commit: 2ed7b22f0c9e91cf2565aafe1b0bdf387c5a366a
      https://github.com/llvm/llvm-project/commit/2ed7b22f0c9e91cf2565aafe1b0bdf387c5a366a
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/HLSL.cpp
    A clang/test/Options/Gis.hlsl

  Log Message:
  -----------
  [HLSL] Add `-Gis` option to clang-dxc (#146448)

This PR adds the `-Gis` option to clang-dxc, to instruct the behavior to
enable IEEE strict mode. The purpose is so that clang-dxc behaves as DXC
does when it takes the -Gis option.
Fixes https://github.com/llvm/llvm-project/issues/145589


  Commit: a63f57262898588b576d66e5fd79c0aa64b35f2d
      https://github.com/llvm/llvm-project/commit/a63f57262898588b576d66e5fd79c0aa64b35f2d
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.h
    M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][bufferization] Return BufferLikeType in BufferizableOpInterface (#144867)

Support custom types (2/N): allow value-owning operations (e.g.
allocation ops) to bufferize custom tensors into custom buffers. This
requires BufferizableOpInterface::getBufferType() to return
BufferLikeType instead of BaseMemRefType.

Affected implementors of the interface are updated accordingly.

Relates to ee070d08163ac09842d9bf0c1315f311df39faf1.


  Commit: ab0fa6c5dc725ef6f839ac8cea9b3a41aa3a5b75
      https://github.com/llvm/llvm-project/commit/ab0fa6c5dc725ef6f839ac8cea9b3a41aa3a5b75
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/source/Breakpoint/Breakpoint.cpp
    M lldb/source/Breakpoint/BreakpointIDList.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/BreakpointLocationList.cpp
    M lldb/source/Breakpoint/BreakpointOptions.cpp
    M lldb/source/Breakpoint/BreakpointResolverName.cpp
    M lldb/source/Breakpoint/Watchpoint.cpp
    M lldb/source/Breakpoint/WatchpointOptions.cpp

  Log Message:
  -----------
  [lldb] Fix else-after-return in Breakpoint (NFC)

The LLVM Coding Standards [1] discourages the use of 'else' or 'else if'
after something that interrupts control flow. Bulk fix all instances as
I'm working on this part of LLDB.

[1] https://llvm.org/docs/CodingStandards.html#don-t-use-else-after-a-return


  Commit: 6ecb6a8a8cd5c604ae109bc84dfd317117e1ed43
      https://github.com/llvm/llvm-project/commit/6ecb6a8a8cd5c604ae109bc84dfd317117e1ed43
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector][nfc] Rename `populateVectorTransferCollapseInnerMostContiguousDimsPatterns` (#145228)

Renames `populateVectorTransferCollapseInnerMostContiguousDimsPatterns`
as `populateDropInnerMostUnitDimsXferOpPatterns` + updates the
corresponding comments.

This addresses a TODO and makes the difference between these two
`populate*` methods clearer:
 * `populateDropUnitDimWithShapeCastPatterns`,
 * `populateDropInnerMostUnitDimsXferOpPatterns`.


  Commit: 1f7ba23422da15e75a7d12f7534960d1192bae86
      https://github.com/llvm/llvm-project/commit/1f7ba23422da15e75a7d12f7534960d1192bae86
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [NFC] [MSAN] replace (void) with [[maybe_unused]] (#146617)

The latter is preferred in the LLVM style guide.


  Commit: 0a822f82de91215151a3958c852ddd142815a3f5
      https://github.com/llvm/llvm-project/commit/0a822f82de91215151a3958c852ddd142815a3f5
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
    A llvm/test/CodeGen/PowerPC/crreduce-reg.mir

  Log Message:
  -----------
  [PowerPC] Fix ppc-reduce-cr-ops mishandling of subregister uses (#144405)

Corrects the erroneous assumption that CR-logical operation's operands
are always defined by a subreg copy.

Fixes https://github.com/llvm/llvm-project/issues/141643
Patch by Nemanja Ivanovic


  Commit: b173c12b545462546cfdd5e2e1e8c88e6bcc2c65
      https://github.com/llvm/llvm-project/commit/b173c12b545462546cfdd5e2e1e8c88e6bcc2c65
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    R libcxx/test/libcxx/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
    R libcxx/test/libcxx/selftest/additional_compile_flags/lit.local.cfg
    R libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
    R libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
    R libcxx/test/libcxx/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
    R libcxx/test/libcxx/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/link-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/run-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.mm/compile-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/compile-success.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/link-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/run-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/convenience_substitutions/build_run.sh.cpp
    R libcxx/test/libcxx/selftest/convenience_substitutions/verify.sh.cpp
    R libcxx/test/libcxx/selftest/dsl/dsl.sh.py
    R libcxx/test/libcxx/selftest/dsl/lit.local.cfg
    R libcxx/test/libcxx/selftest/file_dependencies/a.txt
    R libcxx/test/libcxx/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
    R libcxx/test/libcxx/selftest/file_dependencies/dir/b.txt
    R libcxx/test/libcxx/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/empty.gen.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/one.gen.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/two.gen.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/compile-error.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/link-error.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/link-success.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/compile-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/link-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/link-success.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/run-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.mm/compile-error.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/link-error.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/link-success.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/run-error.link.pass.mm
    R libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/compile-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/link-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/run-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/run-success.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/werror.pass.cpp
    R libcxx/test/libcxx/selftest/pass.mm/compile-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/link-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/no-arc.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/run-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/run-success.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/use-objective-cxx.pass.mm
    R libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/run-error.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/run-success.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/substitutions.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/werror.sh.cpp
    R libcxx/test/libcxx/selftest/shell-no-escape-builtins.sh.cpp
    R libcxx/test/libcxx/selftest/stdin-is-piped.sh.cpp
    R libcxx/test/libcxx/selftest/test_macros.pass.cpp
    R libcxx/test/libcxx/selftest/tmpdir-exists.sh.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-werror.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/right-diagnostic.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/wrong-diagnostic.verify.cpp
    A libcxx/test/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
    A libcxx/test/selftest/additional_compile_flags/lit.local.cfg
    A libcxx/test/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
    A libcxx/test/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
    A libcxx/test/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
    A libcxx/test/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
    A libcxx/test/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/link-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/run-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.mm/compile-error.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/compile-success.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/link-error.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/run-error.compile.pass.mm
    A libcxx/test/selftest/convenience_substitutions/build_run.sh.cpp
    A libcxx/test/selftest/convenience_substitutions/verify.sh.cpp
    A libcxx/test/selftest/dsl/dsl.sh.py
    A libcxx/test/selftest/dsl/lit.local.cfg
    A libcxx/test/selftest/file_dependencies/a.txt
    A libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
    A libcxx/test/selftest/file_dependencies/dir/b.txt
    A libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
    A libcxx/test/selftest/gen.cpp/empty.gen.cpp
    A libcxx/test/selftest/gen.cpp/one.gen.cpp
    A libcxx/test/selftest/gen.cpp/two.gen.cpp
    A libcxx/test/selftest/link.fail.cpp/compile-error.link.fail.cpp
    A libcxx/test/selftest/link.fail.cpp/link-error.link.fail.cpp
    A libcxx/test/selftest/link.fail.cpp/link-success.link.fail.cpp
    A libcxx/test/selftest/link.pass.cpp/compile-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/link-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/link-success.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/run-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.mm/compile-error.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/link-error.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/link-success.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/run-error.link.pass.mm
    A libcxx/test/selftest/lit.local.cfg
    A libcxx/test/selftest/modules/no-modules.sh.cpp
    A libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    A libcxx/test/selftest/modules/std-module.sh.cpp
    A libcxx/test/selftest/modules/std.compat-module.sh.cpp
    A libcxx/test/selftest/pass.cpp/compile-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/link-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/run-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/run-success.pass.cpp
    A libcxx/test/selftest/pass.cpp/werror.pass.cpp
    A libcxx/test/selftest/pass.mm/compile-error.pass.mm
    A libcxx/test/selftest/pass.mm/link-error.pass.mm
    A libcxx/test/selftest/pass.mm/no-arc.pass.mm
    A libcxx/test/selftest/pass.mm/run-error.pass.mm
    A libcxx/test/selftest/pass.mm/run-success.pass.mm
    A libcxx/test/selftest/pass.mm/use-objective-cxx.pass.mm
    A libcxx/test/selftest/remote-substitutions.sh.cpp
    A libcxx/test/selftest/sh.cpp/run-error.sh.cpp
    A libcxx/test/selftest/sh.cpp/run-success.sh.cpp
    A libcxx/test/selftest/sh.cpp/substitutions.sh.cpp
    A libcxx/test/selftest/sh.cpp/werror.sh.cpp
    A libcxx/test/selftest/shell-no-escape-builtins.sh.cpp
    A libcxx/test/selftest/stdin-is-piped.sh.cpp
    A libcxx/test/selftest/test_macros.pass.cpp
    A libcxx/test/selftest/tmpdir-exists.sh.cpp
    A libcxx/test/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
    A libcxx/test/selftest/verify.cpp/no-diagnostics.verify.cpp
    A libcxx/test/selftest/verify.cpp/no-werror.verify.cpp
    A libcxx/test/selftest/verify.cpp/right-diagnostic.verify.cpp
    A libcxx/test/selftest/verify.cpp/wrong-diagnostic.verify.cpp

  Log Message:
  -----------
  [libc++] Make libcxx/selftest a top-level test directory (#144852)

These tests aren't actually libc++-specific for the most part. They test
the testsuite, so they aren't tied to any implementation. That means
anybody using the testsuite should be able to run these tests
successfully.

The most notable changes are that
- `test/libcxx/selftest/modules` moved to `test/libcxx/modules`, since
the assumptions these tests check are libc++-specific
- there is a new `lit.local.cfg` for `test/selftest`
- `selftest/dsl/dsl.sh.py` was modified since the path to the monorepo
root changed


  Commit: 3ee0f97b950a550ef14e3adbdf45f507273f2190
      https://github.com/llvm/llvm-project/commit/3ee0f97b950a550ef14e3adbdf45f507273f2190
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libcxx/include/__functional/boyer_moore_searcher.h
    M libcxx/include/functional

  Log Message:
  -----------
  [libc++] Avoid including vector in <functional> (#144310)

`vector` has been used in a very simple way in `boyer_moore_searcher`.
We can instead just use `unique_ptr<T[]>`, which is a lot simpler,
allowing us to drop the `vector` dependency while not losing any
expressiveness in the code. As a nice side effect, this also reduces the
time it takes to instantiate the `boyer_moore_searcher` constructor from
26ms to 22ms on my machine.


  Commit: ae9990ed965118e7274a52399b43e3b9fb419a54
      https://github.com/llvm/llvm-project/commit/ae9990ed965118e7274a52399b43e3b9fb419a54
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M libcxx/include/__type_traits/add_lvalue_reference.h
    M libcxx/include/__type_traits/add_pointer.h
    M libcxx/include/__type_traits/add_rvalue_reference.h
    M libcxx/include/__type_traits/decay.h
    M libcxx/include/__type_traits/has_unique_object_representation.h
    M libcxx/include/__type_traits/is_array.h
    M libcxx/include/__type_traits/is_const.h
    M libcxx/include/__type_traits/is_pointer.h
    M libcxx/include/__type_traits/is_volatile.h
    M libcxx/include/__type_traits/remove_all_extents.h
    M libcxx/include/__type_traits/remove_extent.h

  Log Message:
  -----------
  [libc++] Remove dead code from <type_traits> (#143854)

Since we've upgraded to GCC 15 now, we can remove a bunch of dead code
from `<type_traits>`.


  Commit: d457621872528d27c8081cf147d41a6f46276d1d
      https://github.com/llvm/llvm-project/commit/d457621872528d27c8081cf147d41a6f46276d1d
  Author: John Harrison <harjohn at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/include/lldb/Host/windows/MainLoopWindows.h
    M lldb/include/lldb/lldb-types.h
    M lldb/source/Host/common/JSONTransport.cpp
    M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
    M lldb/source/Host/windows/MainLoopWindows.cpp
    M lldb/source/Utility/SelectHelper.cpp

  Log Message:
  -----------
  [lldb] Fixing warnings / win32 builds in MainLoop. (#146632)

Commit 1a7b7e24bcc1041ae0fb90abcfb73d36d76f4a07 introduced a few casting
warnings and a build issue in Win32 platforms.

Trying to correct the casts to c++ style casts instead of C style casts.


  Commit: a880c8e670befc20dfb6e0789e8dfb93aa06173c
      https://github.com/llvm/llvm-project/commit/a880c8e670befc20dfb6e0789e8dfb93aa06173c
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Add accessors for various instruction subclasses (#146615)

- Add various instruction subclass/sub-slice accessors to
`CodeGenTarget`.
- Delete unused `inst_begin` and `inst_end` iterators.
- Rename `Instructions` to `InstructionMap` and `getInstructions` to
`getInstructionMap` to better represent their meaning.
- Use these new accessors in InstrInfoEmitter


  Commit: 274152c5fa9f642d5ce6317ca24c0f2f27a53576
      https://github.com/llvm/llvm-project/commit/274152c5fa9f642d5ce6317ca24c0f2f27a53576
  Author: Eric Feng <55723758+efric at users.noreply.github.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][vector][spirv] Lower `vector.to_elements` to SPIR-V (#146618)

Implement `vector.to_elements` lowering to SPIR-V.

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


  Commit: 8eb61d9154c5379c1a74f65aa850cac5060c8b0a
      https://github.com/llvm/llvm-project/commit/8eb61d9154c5379c1a74f65aa850cac5060c8b0a
  Author: Rahman Lavaee <rahmanl at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Object/ELF.cpp

  Log Message:
  -----------
  [SHT_LLVM_BB_ADDR_MAP] Cleanup old version support code from ELF.cpp.

This change was mistakenly dropped from the prior commit 6b623a6622707ea47d84ab0069f766215a6fec44


  Commit: 6ff3b43700175dbff8f2e4b63c6f27835418e20c
      https://github.com/llvm/llvm-project/commit/6ff3b43700175dbff8f2e4b63c6f27835418e20c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

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

  Log Message:
  -----------
  [TableGen] More generically handle tied source operands in CompressInstEmitter. (#146183)

Move the creation of OperandMap from createDagOperandMapping to the loop
in addDagOperandMapping. Expand it to store the DAG operand number and
the MI operand number which will be different when there are tied
operands.

Rename createDagOperandMapping to checkDagOperandMapping to better
describe the remaining code.

I didn't lift the restriction that a source instruction can only have
one tied operand, but we should be able to if we have a use case.

There's a slight difference in the generate output. We now check that
operand 0 and 2 of QC_MVEQI are equal instead of operand 1 and 2. This
should be equivalent since operand 0 and 1 have a tied constraint.


  Commit: 734d31a464e204db699c1cf9433494926deb2aa2
      https://github.com/llvm/llvm-project/commit/734d31a464e204db699c1cf9433494926deb2aa2
  Author: Rahman Lavaee <rahmanl at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Object/ELF.cpp

  Log Message:
  -----------
  clang-format ELF.cpp


  Commit: 7fc50e92a59c764eb6b1897fcdd506aacb92629c
      https://github.com/llvm/llvm-project/commit/7fc50e92a59c764eb6b1897fcdd506aacb92629c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/Modules/mingw-exceptions.cppm

  Log Message:
  -----------
  clang: Fix parsing of seh exception model (#146643)

Fixes regression reported
https://github.com/llvm/llvm-project/pull/146342#issuecomment-3026600152

The test could probably be better. I'm not sure what special is
happening with the module
compile, but I can't seem to reproduce this with just a plain -cc1 run.


  Commit: 27257654324631a495f718e50c8e5a4530ea2e8f
      https://github.com/llvm/llvm-project/commit/27257654324631a495f718e50c8e5a4530ea2e8f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  [LLVM][ADT] Add `consume_front` and `consume_back` to ArrayRef (#146741)

Add `consume_front` that returns the first element and drops it from the
current ArrayRef, and `consume_back` that returns the last element and
drops it from the current ArrayRef.


  Commit: 497060fae5c3a93978306eb565e8d0ebc116f6c7
      https://github.com/llvm/llvm-project/commit/497060fae5c3a93978306eb565e8d0ebc116f6c7
  Author: SingleAccretion <62474226+SingleAccretion at users.noreply.github.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    R lld/test/wasm/compress-relocs.ll
    A lld/test/wasm/compress-relocs.s
    A lld/test/wasm/compress-relocs64.s
    M lld/wasm/InputChunks.cpp
    M llvm/include/llvm/BinaryFormat/Wasm.h

  Log Message:
  -----------
  [lld][WebAssembly] Add missing relocation types to the --compress-relocations path (#144578)

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

Reloc list reference:
```
+ Already handled
A Added in this change
= Not applicable / expected (though technically legal, e. g. you can relocate v128.const...)

+ R_WASM_FUNCTION_INDEX_LEB,      0
+ R_WASM_TABLE_INDEX_SLEB,        1
= R_WASM_TABLE_INDEX_I32,         2
+ R_WASM_MEMORY_ADDR_LEB,         3
+ R_WASM_MEMORY_ADDR_SLEB,        4
= R_WASM_MEMORY_ADDR_I32,         5
+ R_WASM_TYPE_INDEX_LEB,          6
+ R_WASM_GLOBAL_INDEX_LEB,        7
= R_WASM_FUNCTION_OFFSET_I32,     8
= R_WASM_SECTION_OFFSET_I32,      9
+ R_WASM_TAG_INDEX_LEB,          10
A R_WASM_MEMORY_ADDR_REL_SLEB,   11
A R_WASM_TABLE_INDEX_REL_SLEB,   12
= R_WASM_GLOBAL_INDEX_I32,       13
+ R_WASM_MEMORY_ADDR_LEB64,      14
+ R_WASM_MEMORY_ADDR_SLEB64,     15
= R_WASM_MEMORY_ADDR_I64,        16
A R_WASM_MEMORY_ADDR_REL_SLEB64, 17
+ R_WASM_TABLE_INDEX_SLEB64,     18
= R_WASM_TABLE_INDEX_I64,        19
+ R_WASM_TABLE_NUMBER_LEB,       20
A R_WASM_MEMORY_ADDR_TLS_SLEB,   21
= R_WASM_FUNCTION_OFFSET_I64,    22
= R_WASM_MEMORY_ADDR_LOCREL_I32, 23
A R_WASM_TABLE_INDEX_REL_SLEB64, 24
A R_WASM_MEMORY_ADDR_TLS_SLEB64, 25
= R_WASM_FUNCTION_INDEX_I32,     26
```


  Commit: 551d6ddaa3810749ecae33f65759870b78b9a86a
      https://github.com/llvm/llvm-project/commit/551d6ddaa3810749ecae33f65759870b78b9a86a
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/test/Modules/mingw-exceptions.cppm

  Log Message:
  -----------
  [clang] [test] Add a missing requirement for a test

This fixes a test added in 7fc50e92a59c764eb6b1897fcdd506aacb92629c.


  Commit: a74c7d877637f31ff25308969ef7ca6ed94aacc5
      https://github.com/llvm/llvm-project/commit/a74c7d877637f31ff25308969ef7ca6ed94aacc5
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/frame-pointer-elim.c
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
    M llvm/test/CodeGen/AArch64/win-sve.ll
    M llvm/test/CodeGen/AArch64/wincfi-missing-seh-directives.ll
    M llvm/test/CodeGen/AArch64/wineh-frame5.mir
    M llvm/test/CodeGen/AArch64/wineh-frame7.mir

  Log Message:
  -----------
  [win][aarch64] Always reserve frame pointers for Arm64 Windows (#146582)

There is no way in Arm64 Windows to indicate that a given function has
used the Frame Pointer as a General Purpose Register, as such stack
walks will always assume that the frame chain is valid and will follow
whatever value has been saved for the Frame Pointer (even if it is
pointing to data, etc.).

This change makes the Frame Pointer always reserved when building for
Arm64 Windows to avoid this issue.

We will be updating the official Windows ABI documentation to reflect
this requirement, and I will provide a link once it's available.


  Commit: c2347170f40d3791d3d7c52cf8a6795f9f083d4b
      https://github.com/llvm/llvm-project/commit/c2347170f40d3791d3d7c52cf8a6795f9f083d4b
  Author: Reid Kleckner <rnk at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    A clang/test/CodeGenCXX/debug-info-dtor-implicit-args.cpp

  Log Message:
  -----------
  Reapply "[Clang,debuginfo] added vtt parameter in destructor DISubroutineType (#130674)" (#145697)

This reverts commit cd826d6e840ed33ad88458c862da5f9fcc6e908c and relands
27c1aa9b9cf9e0b14211758ff8f7d3aaba24ffcf
This fixes #104765

I tweaked the code to avoid an OOB.


  Commit: c863e0ebc2e5b3a74e0b5a07b0715038ec5b8000
      https://github.com/llvm/llvm-project/commit/c863e0ebc2e5b3a74e0b5a07b0715038ec5b8000
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M .github/workflows/libclang-python-tests.yml
    M clang/CMakeLists.txt
    A clang/bindings/python/tests/CMakeLists.txt
    A clang/bindings/python/tests/__init__.py
    A clang/bindings/python/tests/cindex/INPUTS/a.inc
    A clang/bindings/python/tests/cindex/INPUTS/b.inc
    A clang/bindings/python/tests/cindex/INPUTS/compile_commands.json
    A clang/bindings/python/tests/cindex/INPUTS/header1.h
    A clang/bindings/python/tests/cindex/INPUTS/header2.h
    A clang/bindings/python/tests/cindex/INPUTS/header3.h
    A clang/bindings/python/tests/cindex/INPUTS/hello.cpp
    A clang/bindings/python/tests/cindex/INPUTS/include.cpp
    A clang/bindings/python/tests/cindex/INPUTS/parse_arguments.c
    A clang/bindings/python/tests/cindex/INPUTS/testfile.c
    A clang/bindings/python/tests/cindex/__init__.py
    A clang/bindings/python/tests/cindex/test_access_specifiers.py
    A clang/bindings/python/tests/cindex/test_cdb.py
    A clang/bindings/python/tests/cindex/test_code_completion.py
    A clang/bindings/python/tests/cindex/test_comment.py
    A clang/bindings/python/tests/cindex/test_cursor.py
    A clang/bindings/python/tests/cindex/test_cursor_kind.py
    A clang/bindings/python/tests/cindex/test_diagnostics.py
    A clang/bindings/python/tests/cindex/test_enums.py
    A clang/bindings/python/tests/cindex/test_exception_specification_kind.py
    A clang/bindings/python/tests/cindex/test_file.py
    A clang/bindings/python/tests/cindex/test_index.py
    A clang/bindings/python/tests/cindex/test_lib.py
    A clang/bindings/python/tests/cindex/test_linkage.py
    A clang/bindings/python/tests/cindex/test_location.py
    A clang/bindings/python/tests/cindex/test_rewrite.py
    A clang/bindings/python/tests/cindex/test_source_range.py
    A clang/bindings/python/tests/cindex/test_tls_kind.py
    A clang/bindings/python/tests/cindex/test_token_kind.py
    A clang/bindings/python/tests/cindex/test_tokens.py
    A clang/bindings/python/tests/cindex/test_translation_unit.py
    A clang/bindings/python/tests/cindex/test_type.py
    A clang/bindings/python/tests/cindex/util.py
    M clang/test/CMakeLists.txt
    R clang/test/bindings/python/bindings.sh
    R clang/test/bindings/python/lit.local.cfg
    R clang/test/bindings/python/tests/__init__.py
    R clang/test/bindings/python/tests/cindex/INPUTS/a.inc
    R clang/test/bindings/python/tests/cindex/INPUTS/b.inc
    R clang/test/bindings/python/tests/cindex/INPUTS/compile_commands.json
    R clang/test/bindings/python/tests/cindex/INPUTS/header1.h
    R clang/test/bindings/python/tests/cindex/INPUTS/header2.h
    R clang/test/bindings/python/tests/cindex/INPUTS/header3.h
    R clang/test/bindings/python/tests/cindex/INPUTS/hello.cpp
    R clang/test/bindings/python/tests/cindex/INPUTS/include.cpp
    R clang/test/bindings/python/tests/cindex/INPUTS/parse_arguments.c
    R clang/test/bindings/python/tests/cindex/INPUTS/testfile.c
    R clang/test/bindings/python/tests/cindex/__init__.py
    R clang/test/bindings/python/tests/cindex/test_access_specifiers.py
    R clang/test/bindings/python/tests/cindex/test_cdb.py
    R clang/test/bindings/python/tests/cindex/test_code_completion.py
    R clang/test/bindings/python/tests/cindex/test_comment.py
    R clang/test/bindings/python/tests/cindex/test_cursor.py
    R clang/test/bindings/python/tests/cindex/test_cursor_kind.py
    R clang/test/bindings/python/tests/cindex/test_diagnostics.py
    R clang/test/bindings/python/tests/cindex/test_enums.py
    R clang/test/bindings/python/tests/cindex/test_exception_specification_kind.py
    R clang/test/bindings/python/tests/cindex/test_file.py
    R clang/test/bindings/python/tests/cindex/test_index.py
    R clang/test/bindings/python/tests/cindex/test_lib.py
    R clang/test/bindings/python/tests/cindex/test_linkage.py
    R clang/test/bindings/python/tests/cindex/test_location.py
    R clang/test/bindings/python/tests/cindex/test_rewrite.py
    R clang/test/bindings/python/tests/cindex/test_source_range.py
    R clang/test/bindings/python/tests/cindex/test_tls_kind.py
    R clang/test/bindings/python/tests/cindex/test_token_kind.py
    R clang/test/bindings/python/tests/cindex/test_tokens.py
    R clang/test/bindings/python/tests/cindex/test_translation_unit.py
    R clang/test/bindings/python/tests/cindex/test_type.py
    R clang/test/bindings/python/tests/cindex/util.py

  Log Message:
  -----------
  Revert "Move python binding tests to lit framework (#146486)" (#146789)

This reverts commit a75587d2718f76dc53112065da36e08d04034eb9.


  Commit: d4331344ac45979f5bc58508d7e186f86fe907bd
      https://github.com/llvm/llvm-project/commit/d4331344ac45979f5bc58508d7e186f86fe907bd
  Author: Nilanjana Basu <nilanjana.basu87 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/pgo-sample-use-profi.c

  Log Message:
  -----------
  [Clang][Driver][SamplePGO] Introduce -fno_sample_profile_use_profi flag for SamplePGO (#145957)

This flag allows opting out of using profile inference pass for SamplePGO.


  Commit: 6ab7e52dd80dc2ece12cc7f1924a71f1a58e2a8a
      https://github.com/llvm/llvm-project/commit/6ab7e52dd80dc2ece12cc7f1924a71f1a58e2a8a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/test/CodeGen/WebAssembly/wasm-exception-model-flag-parse-ir-input.ll
    M clang/test/CodeGenCXX/builtins-eh-wasm.cpp
    M clang/test/CodeGenCXX/wasm-eh.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.mir
    M llvm/test/CodeGen/WebAssembly/exception-legacy.mir
    M llvm/test/CodeGen/WebAssembly/function-info.mir

  Log Message:
  -----------
  WebAssembly: Move validation of EH flags to TargetMachine construct time (#146634)


  Commit: c6abab2875ef03c8b89e26a637fbc8246df2362b
      https://github.com/llvm/llvm-project/commit/c6abab2875ef03c8b89e26a637fbc8246df2362b
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll

  Log Message:
  -----------
  [RISCV][VLOPT] Add support for vfmerge.vfm and vfmv.v.f (#146692)

I noticed these were missing when seeing some extra vl toggles with EVL
tail folding.

This helps remove quite a few vsetvlis in llvm-test-suite


  Commit: 6550f28977b915f2a683dccfba67767a62933e82
      https://github.com/llvm/llvm-project/commit/6550f28977b915f2a683dccfba67767a62933e82
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll

  Log Message:
  -----------
  [RISCV][VLOPT] Support vslide{up,down} (#146710)

For vslideup and vslidedown, vl controls the elements which are written
just like other vector instructions. So unless I'm missing something it
should be safe to reduce them. For vslidedown, the specification states
that elements past vl may be read.

We already reduce vslideup and vslidedown in
RISCVVectorPeephole::tryToReduceVL where we just check for
RISCVII::elementsDependOnVL.

Eventually we should replace the whitelist with
RISCVII::elementsDependOnVL once we have test coverage. I've also added
an assert just to double check the instructions we currently support.

This helps reduce vl toggles for fixed-order recurrences vectorized with
EVL tail folding.


  Commit: 0d7e64f5d2b45e2150a89390cfdc69b19b1493d9
      https://github.com/llvm/llvm-project/commit/0d7e64f5d2b45e2150a89390cfdc69b19b1493d9
  Author: David Justo <david.justo.1996 at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_flags.cpp
    M compiler-rt/lib/asan/asan_internal.h
    M compiler-rt/lib/asan/asan_rtl.cpp
    A compiler-rt/test/asan/TestCases/Windows/alloc_dealloc_mismatch.cpp

  Log Message:
  -----------
  [ASan][Windows] Honor asan config flags on windows when set through the user function (#122990)

**Related to:** https://github.com/llvm/llvm-project/issues/117925 
**Follow up to:** https://github.com/llvm/llvm-project/pull/117929

**Context:**
As noted in the linked issue, some ASan configuration flags are not
honored on Windows when set through the `__asan_default_options` user
function. The reason for this is that `__asan_default_options` is not
available by the time `AsanInitInternal` executes, which is responsible
for applying the ASan flags.

To fix this properly, we'll probably need a deep re-design of ASan
initialization so that it is consistent across OS'es.
In the meantime, this PR offers a practical workaround.

**This PR:** refactors part of `AsanInitInternal` so that **idempotent**
flag-applying steps are extracted into a new function `ApplyOptions`.
This function is **also** invoked in the "weak function callback" on
Windows (which gets called when `__asan_default_options` is available)
so that, if any flags were set through the user-function, they are
safely applied _then_.

Today, `ApplyOptions` contains only a subset of flags. My hope is that
`ApplyOptions` will over time, through incremental refactorings
`AsanInitInternal` so that **all** flags are eventually honored.

Other minor changes:
* The introduction of a `ApplyAllocatorOptions` helper method, needed to
implement `ApplyOptions` for allocator options without re-initializing
the entire allocator. Reinitializing the entire allocator is expensive,
as it may do a whole pass over all the marked memory. To my knowledge,
this isn't needed for the options captured in `ApplyAllocatorOptions`.
* Rename `ProcessFlags` to `ValidateFlags`, which seems like a more
accurate name to what that function does, and prevents confusion when
compared to the new `ApplyOptions` function.


  Commit: e873ce31ae0e875081c8e5480c9c4925c97469ce
      https://github.com/llvm/llvm-project/commit/e873ce31ae0e875081c8e5480c9c4925c97469ce
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Semantics/tools.cpp
    A flang/test/Lower/CUDA/cuda-derived.cuf

  Log Message:
  -----------
  [flang][cuda] Do not create global for derived-type with allocatable device components (#146780)

derived type with CUDA device allocatable components will be handle via
CUDA allocation. Do not create global for them.


  Commit: 925588cd001a91d592b99e6e7c6bee9514f5a26e
      https://github.com/llvm/llvm-project/commit/925588cd001a91d592b99e6e7c6bee9514f5a26e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Lower/CUDA/cuda-derived.cuf

  Log Message:
  -----------
  [flang][cuda] Allocate derived-type with CUDA componement in managed memory (#146797)

Similarly to descriptor for device data, put derived type holding device
descriptor in managed memory.


  Commit: 717899ce8664ff62eb8b157e286cfb07b4b506d1
      https://github.com/llvm/llvm-project/commit/717899ce8664ff62eb8b157e286cfb07b4b506d1
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/LoweringHelpers.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/test/CIR/CodeGen/bitfields.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c

  Log Message:
  -----------
  [CIR] Upstream get_bitfield operation to load bit-field members from structs (#145971)

This PR adds support for loading bit-field members from structs using
the `get_bitfield` operation.
It enables retrieving the address of the bitfield-packed member but does
**not** yet support volatile bitfields this will be addressed in a
future PR.


  Commit: 5e31d4cdf2f53c98a705df91d386d315f9332b99
      https://github.com/llvm/llvm-project/commit/5e31d4cdf2f53c98a705df91d386d315f9332b99
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll

  Log Message:
  -----------
  [RISCV][VLOPT] Support v[f]slide1up.v{x,f} (#146716)

Similarly to #146710, for vslide1ups vl only determines the destination
elements written to so we can safely reduce their AVL.

We cannot do this for vslide1downs as the vl determines which lane the
new element is to be inserted in, so some negative tests have been
added.


  Commit: 4e26801ea91f2b7d2e88005db1ce57d104d0dbe9
      https://github.com/llvm/llvm-project/commit/4e26801ea91f2b7d2e88005db1ce57d104d0dbe9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/test/CodeGenCXX/builtins-eh-wasm.cpp

  Log Message:
  -----------
  clang: Add requires webassembly to a test

Prior to 6ab7e52dd80dc2ece12cc7f1924a71f1a58e2a8a the test got
away with out it because the error was not triggered if the
backend didn't run.


  Commit: f01017ca9711a69c3dd6b848af583a901fd03450
      https://github.com/llvm/llvm-project/commit/f01017ca9711a69c3dd6b848af583a901fd03450
  Author: Reid Kleckner <rnk at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [docs] Refresh Developer Policy text (#136198)

Clarify lots of existing practice. Expand on the "major change" section,
which is the closest thing we have on how to run an RFC.

---------

Co-authored-by: Oleksandr "Alex" Zinenko <azinenko at amd.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>


  Commit: a068ed288af16df0d6189fd830216bbfa6257016
      https://github.com/llvm/llvm-project/commit/a068ed288af16df0d6189fd830216bbfa6257016
  Author: Alexandre Perez <alexandreperez at meta.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M lldb/source/Commands/CommandObjectProtocolServer.cpp
    A lldb/test/API/commands/protocol/TestMCPUnixSocket.py

  Log Message:
  -----------
  [lldb][mcp] Fix unix domain socket protocol server addresses (#146603)

When starting an MCP protocol server that uses unix sockets as the
transport, a local `'[0.0.0.0]:0'` file is used instead of the supplied
socket path, e.g:
```
(lldb) protocol-server start MCP accept:///tmp/some/path.sock
MCP server started with connection listeners: unix-connect://[0.0.0.0]:0
(lldb) shell ls '[*'
[0.0.0.0]:0
```

This change makes it so that the URI path is used if the socket protocol
is `ProtocolUnixDomain`:
```
(lldb) protocol-server start MCP accept:///tmp/some/path.sock
MCP server started with connection listeners: unix-connect:///tmp/some/path.sock
```


  Commit: a5350785db62f2082bd700fc68bbab9781d03489
      https://github.com/llvm/llvm-project/commit/a5350785db62f2082bd700fc68bbab9781d03489
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Lower/CUDA/cuda-derived.cuf

  Log Message:
  -----------
  Revert "[flang][cuda] Allocate derived-type with CUDA componement in managed memory (#146797)"

This reverts commit 925588cd001a91d592b99e6e7c6bee9514f5a26e.


  Commit: e718ce00374db478f2387cfe6214d167ec8d309a
      https://github.com/llvm/llvm-project/commit/e718ce00374db478f2387cfe6214d167ec8d309a
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Semantics/tools.cpp
    R flang/test/Lower/CUDA/cuda-derived.cuf

  Log Message:
  -----------
  Revert "[flang][cuda] Do not create global for derived-type with allocatable device components (#146780)"

This reverts commit e873ce31ae0e875081c8e5480c9c4925c97469ce.


  Commit: 44bed1af0fb641ce169262ab9fdb15ad76fe72a1
      https://github.com/llvm/llvm-project/commit/44bed1af0fb641ce169262ab9fdb15ad76fe72a1
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/test/Preprocessor/riscv-target-features-andes.c

  Log Message:
  -----------
  [RISCV] Add negative pre-defined macro test for XAndesVBFHCvt


  Commit: 220a00239696257a02fe625a4819fcd038e9dd07
      https://github.com/llvm/llvm-project/commit/220a00239696257a02fe625a4819fcd038e9dd07
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/AArch64/ptradd.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll

  Log Message:
  -----------
  [SDAG] Prefer scalar for prefix of vector GEP expansion (#146719)

When generating SDAG for a getelementptr with a vector result, we were
previously generating splats for each scalar operand. This essentially
has the effect of aggressively vectorizing the sequence, and leaving it
later combines to scalarize if profitable.

Instead, we can keep the accumulating address as a scalar for as long as
the prefix of operands allows before lazily converting to vector on the
first vector operand. This both better fits hardware which frequently
has a scalar base on the scatter/gather instructions, and reduces the
addressing cost even when not as otherwise we end up with a scalar to
vector domain crossing for each scalar operand.

Note that constant splat offsets are treated as scalar for the above,
and only variable offsets can force a conversion to vector.

---------

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 13fddeaf2c494e2f88ef4e7063ae2ee3278e4f1e
      https://github.com/llvm/llvm-project/commit/13fddeaf2c494e2f88ef4e7063ae2ee3278e4f1e
  Author: yonghong-song <yhs at fb.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
    A llvm/test/MC/BPF/bad-tied.s

  Log Message:
  -----------
  [BPF] Emit proper error message for insns with tied operands (#146778)

Jonathan Cottrill reported a crash in [1] with the following command
line:
```
  $ echo 'r0 = atomic_fetch_add((u64*)(r2 + 0), r1)' | llvm-mc --arch bpf --filetype null
```

Note that in the above command, the insn specification requires that r0
and r1 must be the same register. Otherwise, the crash will happen.

Let us add a case Match_InvalidTiedOperand to handle such invalid insns.
With this patch, the error message looks like below:
```
  <stdin>:1:39: error: operand is not the same as the dst register
  r0 = atomic_fetch_add((u64*)(r2 + 0), r1)
                                        ^
```
The error message is much better than the crash. Some other insns are
also covered by this patch.
```
  $ echo 'w0 = xchg32_32(r2 + 0, w1)' | llvm-mc --arch bpf --filetype null
  <stdin>:1:24: error: operand is not the same as the dst register
  w0 = xchg32_32(r2 + 0, w1)
                         ^
```
  [1] https://github.com/llvm/llvm-project/issues/145180

Co-authored-by: Yonghong Song <yonghong.song at linux.dev>


  Commit: cc801b6570df1390283f4528f8a5941cfa9ec837
      https://github.com/llvm/llvm-project/commit/cc801b6570df1390283f4528f8a5941cfa9ec837
  Author: Ashwin Kishin Banwari <ashwinkbanwari at gmail.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Driver/autocomplete.c
    M clang/test/SemaCXX/modules.cppm

  Log Message:
  -----------
  [clang] [modules] Add err_main_in_named_module (#146635)

Revival of https://github.com/llvm/llvm-project/pull/146247 which got
reverted for broken test.

Now that https://github.com/llvm/llvm-project/pull/146461 is merged to
allow `extern "C++"` for main, we can merge this change.


  Commit: 797d519d9915581c59388cc1ac5d97a4c9a8cd45
      https://github.com/llvm/llvm-project/commit/797d519d9915581c59388cc1ac5d97a4c9a8cd45
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Check whether plain type is supported for permutation intrinsics instead of its float type (#146657)

For permutation intrinsics, the float data type is not used during
processing. We only need to check whether its plain type is supported,
rather than the float type. This is like what we did in
https://github.com/llvm/llvm-project/blob/651c5208f8597f1f80349f6208e69bf9ea1c2862/llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td#L2958


  Commit: 4f1ba5a06ed6a18a5ec1b81ac51b780224b15390
      https://github.com/llvm/llvm-project/commit/4f1ba5a06ed6a18a5ec1b81ac51b780224b15390
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll

  Log Message:
  -----------
  [RISCV] Add additional gather/scatter addressing coverage

Inspired by s2101 in tsvc


  Commit: 9382a95e654eb20362ca4bdaa5eacf0066e32916
      https://github.com/llvm/llvm-project/commit/9382a95e654eb20362ca4bdaa5eacf0066e32916
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/TableGen/Error.cpp

  Log Message:
  -----------
  [NFC][TableGen] Adopt `ArrayRef::consume_front()` in `PrintMessage` (#146775)

Adopt `ArrayRef::consume_front()` in `PrintMessage`, and convert the
loop in that function to a range for loop.


  Commit: a25887077bd52754d66d837da4778339eff4f764
      https://github.com/llvm/llvm-project/commit/a25887077bd52754d66d837da4778339eff4f764
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp

  Log Message:
  -----------
  ELFObjectWriter: Optimize isInSymtab

Drop `OWriter.Renames.count(&Symbol)` from the fast path
(Used||Signature).
Place the two equated symbol (isVariable()) conditions together.


  Commit: c9babbc2065dabd892150085f24cbe660990c8c1
      https://github.com/llvm/llvm-project/commit/c9babbc2065dabd892150085f24cbe660990c8c1
  Author: Amara Emerson <amara at apple.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/always-inline-alloca-promotion.ll

  Log Message:
  -----------
  Pre-commit PhaseOrdering/always-inline-alloca-promotion.ll


  Commit: 922dde3c6403c7ef61f3c21af485a7feeb931a09
      https://github.com/llvm/llvm-project/commit/922dde3c6403c7ef61f3c21af485a7feeb931a09
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp

  Log Message:
  -----------
  MCAssembler: Simplify fixup handling


  Commit: 4cf53cd266b9e336b0dbaa52ef264a22b74e2242
      https://github.com/llvm/llvm-project/commit/4cf53cd266b9e336b0dbaa52ef264a22b74e2242
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/or.ll

  Log Message:
  -----------
  [msan] Fix "Add optional flag to improve instrumentation of disjoint OR (#145990)" (#146799)

The "V1" and "V2" values were already NOT'ed, hence the calculation of disjoint OR in #145990 was incorrect. This patch fixes the issue, with some refactoring and renaming of variables.


  Commit: 283f53ac6fcde5a6f8182e572a3f6f828b89a9a8
      https://github.com/llvm/llvm-project/commit/283f53ac6fcde5a6f8182e572a3f6f828b89a9a8
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
    M llvm/test/CodeGen/RISCV/rv32xandesperf.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll

  Log Message:
  -----------
  [RISCV] Add isel patterns for generating XAndesPerf branch immediate instructions (#145147)

Similar to #139872. This patch adds isel patterns to match
`riscv_brcc` and `riscv_selectcc_frag` to XAndesPerf branch
instructions.


  Commit: 31e85f987d5834ba5ca301eb1d1bbb835804cf35
      https://github.com/llvm/llvm-project/commit/31e85f987d5834ba5ca301eb1d1bbb835804cf35
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kAsmBackend.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp

  Log Message:
  -----------
  MCAsmBackend: Make some target overrides out-of-line

To align with the majority of targets where these overrides are
out-of-line. The consistency helps the pending change that
merges addReloc and applyFixup.


  Commit: d67013a2b44295e7558b6678f07c7f3a7ef9601c
      https://github.com/llvm/llvm-project/commit/d67013a2b44295e7558b6678f07c7f3a7ef9601c
  Author: KAWASHIMA Takahiro <t-kawashima at fujitsu.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/ReleaseNotes.md
    M flang/test/Driver/fveclib-codegen.f90
    M flang/test/Driver/fveclib.f90

  Log Message:
  -----------
  [Flang][AArch64][VecLib] Add libmvec support for Flang/AArch64 (#146453)

`-fveclib=libmvec` for AArch64 (NEON and SVE) in Clang was supported by
#143696. This patch does the same for Flang.

Vector functions defined in `libmvec` are used for the following Fortran
operator and functions currently.

- Power operator (`**`)
- Fortran intrinsic functions listed below for `real(kind=4)` and
`real(kind=8)` (including their coresponding specific intrinsic
functions)
- Fortran intrinsic functions which are expanded using functions listed
below (for example, `sin` for `complex(kind=8)`)

```
sin
tan
cos
asin
acos
atan (both atan(x) and atan(y, x))
atan2
cosh
tanh
asinh
acosh
atanh
erf
erfc
exp
log
log10
```

As with Clang/AArch64, glibc 2.40 or higher is required to use all these
functions.


  Commit: 119705e5ad2b7e4bfc55f7df9a8fbaa7504aedbd
      https://github.com/llvm/llvm-project/commit/119705e5ad2b7e4bfc55f7df9a8fbaa7504aedbd
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/invalid-vector/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/main.cpp

  Log Message:
  -----------
  [lldb][test] Synchronize `__compressed_pair_padding` with libc++ (#142516)

This PR mirrors changes of `__compressed_pair_padding` in libc++ into
lldb test suite.

Related PR for libc++:
- #108956
- #109028
- #142125


  Commit: dd2891535d4b6d80f92d9a69e9db3b787203b9d0
      https://github.com/llvm/llvm-project/commit/dd2891535d4b6d80f92d9a69e9db3b787203b9d0
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
    M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.h
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kAsmBackend.cpp
    M llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp

  Log Message:
  -----------
  MCAsmBackend: Merge addReloc into applyFixup (#146820)

Follow-up to #141333. Relocation generation called both addReloc and
applyFixup, with the default addReloc invoking shouldForceRelocation,
resulting in three virtual calls. This approach was also inflexible, as
targets needing additional data required extending
`shouldForceRelocation` (see #73721, resolved by #141311).

This change integrates relocation handling into applyFixup, eliminating
two virtual calls. The prior default addReloc is renamed to
maybeAddReloc. Targets overriding addReloc now call their customized
addReloc implementation.


  Commit: b59763a7db7fc502b4e1d8aaa4da319d85006066
      https://github.com/llvm/llvm-project/commit/b59763a7db7fc502b4e1d8aaa4da319d85006066
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-02 (Wed, 02 Jul 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  MCAsmBackend: Simplify shouldForceRelocation overrides


  Commit: 65537539e12912cfb614948c8cd4acbedd777284
      https://github.com/llvm/llvm-project/commit/65537539e12912cfb614948c8cd4acbedd777284
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/unittests/ADT/STLExtrasTest.cpp

  Log Message:
  -----------
  [llvm][ADT] Add wrappers to `std::fill` (#146681)

This PR adds `llvm::fill` that accepts a range instead of begin/end
iterator.


  Commit: 1f8f477bd03869a9b5b2e7ff0c24c74397aba486
      https://github.com/llvm/llvm-project/commit/1f8f477bd03869a9b5b2e7ff0c24c74397aba486
  Author: David Green <david.green at arm.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/test/CodeGen/arm-neon-directed-rounding.c
    M clang/test/CodeGen/arm-v8.2a-neon-intrinsics.c
    M llvm/include/llvm/IR/IntrinsicsARM.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/vrint.ll

  Log Message:
  -----------
  [ARM] Add neon vector support for trunc

As per #142559, this marks ftrunc as legal for Neon and upgrades the existing
arm.neon.vrintz intrinsics.


  Commit: 6504c96b1d865c69888a2a17aa8fe479987c00f0
      https://github.com/llvm/llvm-project/commit/6504c96b1d865c69888a2a17aa8fe479987c00f0
  Author: Tedlion <813055098 at qq.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/test/Analysis/call-and-message.c
    M clang/test/Analysis/call-and-message.cpp

  Log Message:
  -----------
  [clang][analyzer] Fix the false positive ArgInitializedness warning on unnamed bit-field (#145066)

For the following code in C mode: https://godbolt.org/z/3eo1MeGhe
(There is no warning in C++ mode though).
```c++
struct B {
  int i : 2;
  int : 30;  // unnamed bit-field
};

extern void consume_B(struct B);

void bitfield_B_init(void) {
  struct B b1;
  b1.i = 1; // b1 is initialized
  consume_B(b1); // FP: Passed-by-value struct argument contains uninitialized data (e.g., field: '') [core.CallAndMessage]
}
```


  Commit: 9234d077522ea3718e9486a28df49e7cfb4c336a
      https://github.com/llvm/llvm-project/commit/9234d077522ea3718e9486a28df49e7cfb4c336a
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCFixup.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp

  Log Message:
  -----------
  MCAssembler: Optimize PCRel fixups

* MCAssembler::evaluateFixup sets MCFixup::PCRel.
* ELFObjectWriter retrieves the bit from the MCFixup argument.


  Commit: 0bfa0bcd79f787db6194270bb838ae04ca46587e
      https://github.com/llvm/llvm-project/commit/0bfa0bcd79f787db6194270bb838ae04ca46587e
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M clang/lib/Interpreter/Interpreter.cpp
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/LLJITWithThinLTOSummaries.cpp
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/OrcV2CBindingsDumpObjects.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/OrcV2CBindingsLazy.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsMCJITLikeMemoryManager/OrcV2CBindingsMCJITLikeMemoryManager.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/OrcV2CBindingsRemovableCode.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
    M llvm/include/llvm-c/Orc.h
    M llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h
    M llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp
    M llvm/lib/ExecutionEngine/Orc/Speculation.cpp
    M llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
    M llvm/tools/lli/lli.cpp
    M llvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/ThreadSafeModuleTest.cpp

  Log Message:
  -----------
  [ORC] Replace ThreadSafeContext::getContext with withContextDo. (#146819)

This removes ThreadSafeContext::Lock, ThreadSafeContext::getLock, and
ThreadSafeContext::getContext, and replaces them with a
ThreadSafeContext::withContextDo method (and const override).

The new method can be used to access an existing
ThreadSafeContext-wrapped LLVMContext in a safe way:

ThreadSafeContext TSCtx = ... ;
TSCtx.withContextDo([](LLVMContext *Ctx) {
  // this closure has exclusive access to Ctx.
});

The new API enforces correct locking, whereas the old APIs relied on
manual locking (which almost no in-tree code preformed, relying instead
on incidental exclusive access to the ThreadSafeContext).


  Commit: 85d09de5fa19a32bbcc400928d55f9d633077640
      https://github.com/llvm/llvm-project/commit/85d09de5fa19a32bbcc400928d55f9d633077640
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc] Add prepare-<triple> targets (#146700)

This target provides a unified build target for all devices under the
single triple. This way a user doesn't have to know device names to
build a specific target's bytecode libraries.

Device names may be considered as internal implementation details as
they are not exposed to users of CMake; users only specify triples to
build. Now, instead of `prepare-{barts,cayman,cedar,cypress}-r600--.bc`,
for example, a user may now build simply `prepare-r600--` and have all
four of those libraries built.

This commit also refactors the CMake somewhat. We were previously
diverging between the SPIR-V and other targets, and duplicating a bit of
logic like the creation of the 'prepare' targets, the targets'
properties, and the installation directory. It's cleaner and hopefully
more robust to share this code between all targets. This commit also
takes this opportunity to improve some comments around this code.


  Commit: 3e370452fd23a894433c3bf2a8ce46a86c742ed5
      https://github.com/llvm/llvm-project/commit/3e370452fd23a894433c3bf2a8ce46a86c742ed5
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

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

  Log Message:
  -----------
  [VPlan] Early assert for unsupported interleaved access features. nfc (#146669)


  Commit: 3efa461d45a1867cf03d30bd4b6caf1ed2260475
      https://github.com/llvm/llvm-project/commit/3efa461d45a1867cf03d30bd4b6caf1ed2260475
  Author: xbcnn <30337500+xbcnn at users.noreply.github.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M libcxx/include/__hash_table
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
    M libcxx/test/benchmarks/containers/associative/unordered_set.bench.cpp

  Log Message:
  -----------
  [libcxx] Avoid hash key in __hash_table::find() if it is empty. (#126837)

If the hash table is empty, with or without buckets, the find() can do
fast return. Then computing hash key is useless and avoidable, since it
could be expensive for some key types, such as long strings.

This is a small optimization but useful in cases like a checklist
(unordered_set/map) which is mostly empty.

```
For std::unordered_set<*>, `--benchmark_filter=find`
1. With the opt:

---------------------------------------------------------------------------------------------------------
Benchmark                                                               Time             CPU   Iterations
---------------------------------------------------------------------------------------------------------
std::unordered_set<int>::find(key) (existent)/0                     0.118 ns        0.118 ns   5939922720
std::unordered_set<int>::find(key) (existent)/32                     52.1 ns         52.1 ns     13287232
std::unordered_set<int>::find(key) (existent)/1024                   51.1 ns         51.1 ns     13449472
std::unordered_set<int>::find(key) (existent)/8192                   53.1 ns         53.1 ns     13420864
std::unordered_set<int>::find(key) (non-existent)/0                  14.7 ns         14.7 ns     47725472
std::unordered_set<int>::find(key) (non-existent)/32                 44.1 ns         44.1 ns     15478144
std::unordered_set<int>::find(key) (non-existent)/1024               41.2 ns         41.2 ns     15082464
std::unordered_set<int>::find(key) (non-existent)/8192               49.5 ns         49.5 ns     15233600
std::unordered_set<std::string>::find(key) (existent)/0             0.136 ns        0.136 ns   5157977920
std::unordered_set<std::string>::find(key) (existent)/32              739 ns          739 ns      1023744
std::unordered_set<std::string>::find(key) (existent)/1024            836 ns          836 ns       840448
std::unordered_set<std::string>::find(key) (existent)/8192            768 ns          768 ns      1085664
std::unordered_set<std::string>::find(key) (non-existent)/0          14.6 ns         14.6 ns     47844160
std::unordered_set<std::string>::find(key) (non-existent)/32          608 ns          608 ns      1106496
std::unordered_set<std::string>::find(key) (non-existent)/1024        646 ns          646 ns       986272
std::unordered_set<std::string>::find(key) (non-existent)/8192        669 ns          669 ns      1047584


2. Without the opt:

---------------------------------------------------------------------------------------------------------
Benchmark                                                               Time             CPU   Iterations
---------------------------------------------------------------------------------------------------------
std::unordered_set<int>::find(key) (existent)/0                     0.135 ns        0.135 ns   5188502304
std::unordered_set<int>::find(key) (existent)/32                     54.4 ns         54.4 ns     12954144
std::unordered_set<int>::find(key) (existent)/1024                   57.7 ns         57.7 ns     13107008
std::unordered_set<int>::find(key) (existent)/8192                   50.7 ns         50.7 ns     12953312
std::unordered_set<int>::find(key) (non-existent)/0                  16.1 ns         16.1 ns     43460192
std::unordered_set<int>::find(key) (non-existent)/32                 45.8 ns         45.8 ns     17139584
std::unordered_set<int>::find(key) (non-existent)/1024               44.6 ns         44.6 ns     16538048
std::unordered_set<int>::find(key) (non-existent)/8192               41.5 ns         41.5 ns     12850816
std::unordered_set<std::string>::find(key) (existent)/0             0.133 ns        0.133 ns   5214104992
std::unordered_set<std::string>::find(key) (existent)/32              731 ns          731 ns      1000576
std::unordered_set<std::string>::find(key) (existent)/1024            716 ns          716 ns      1131584
std::unordered_set<std::string>::find(key) (existent)/8192            745 ns          745 ns       909632
std::unordered_set<std::string>::find(key) (non-existent)/0           600 ns          600 ns      1089792
std::unordered_set<std::string>::find(key) (non-existent)/32          645 ns          645 ns       979232
std::unordered_set<std::string>::find(key) (non-existent)/1024        675 ns          675 ns       962240
std::unordered_set<std::string>::find(key) (non-existent)/8192        711 ns          711 ns      1054880

```

We can see the improvements when find() for non-existent
`std::string`(random size 1~1024) keys:
```
std::unordered_set<std::string>::find(key) (non-existent)/0          14.6 ns         14.6 ns     47844160
std::unordered_set<std::string>::find(key) (non-existent)/0           600 ns          600 ns      1089792
```

---------

Co-authored-by: yangxiaobing <yangxiaobing at jwzg.com>


  Commit: 4acdb8e14ef7e72d5f56b45d51de72c7b797be03
      https://github.com/llvm/llvm-project/commit/4acdb8e14ef7e72d5f56b45d51de72c7b797be03
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/ext-extract.ll

  Log Message:
  -----------
  [VectorCombine] Scalarize extracts of ZExt if profitable. (#142976)

Add a new scalarization transform that tries to convert extracts of a
vector ZExt to a set of scalar shift and mask operations. This can be
profitable if the cost of extracting is the same or higher than the cost
of 2 scalar ops. This is the case on AArch64 for example.

For AArch64,this shows up in a number of workloads, including av1aom,
gmsh, minizinc and astc-encoder.

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


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

  Changed paths:
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp

  Log Message:
  -----------
  MCAsmBackend: Replace FKF_IsPCRel with isPCRel()


  Commit: fcdb91e113467ca10b34a1a43226aa67dee31646
      https://github.com/llvm/llvm-project/commit/fcdb91e113467ca10b34a1a43226aa67dee31646
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

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

  Log Message:
  -----------
  [VPlan] Remove redundant debug location setting in VPInterleaveRecipe::execute. nfc (#146670)

Remove it since we already set debug loc in
VPBasicBlock::executeRecipes.


  Commit: 2dba752f0575306d8178e9bb4869d06528ab452c
      https://github.com/llvm/llvm-project/commit/2dba752f0575306d8178e9bb4869d06528ab452c
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

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

  Log Message:
  -----------
  [RISCV] Use template version isInt<N> instead. NFC.


  Commit: bd6cd92984e7a30cb91e4f069a0bacc5c582a234
      https://github.com/llvm/llvm-project/commit/bd6cd92984e7a30cb91e4f069a0bacc5c582a234
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPInterfaces.h
    A mlir/include/mlir/Dialect/OpenMP/OpenMPOpsAttributes.h
    A mlir/include/mlir/Dialect/OpenMP/OpenMPOpsEnums.h

  Log Message:
  -----------
  [MLIR][OpenMP][NFC] Use header guards for tblgen'd definitions (#146684)

Currently the generated `.h.inc` files are included coarse-grained
header files that just happen to work in the current source. But if at
another header, call it `A.h`, a definition from e.g.
"OpenMPOpsEnums.h.inc" is needed, it cannot be included there because it
`A.h` is also included in `B.h` that uses `OpenMPClauseOperands.h` which
already includes `OpenMPOpsEnums.h.inc`. So the content of
`OpenMPOpsEnums.h.inc` appears twice in the translation unit result in a
compile failure because the same enum cannot be defined twice.

This patch tries to use more fine-grained include header for generated
content protected by header guards, so `OpenMPOpsEnums.h` can be
included when ever needed. Some is done with `OpenMPOpsAttributes.h`.
Needed for #144785. Also fixes the recursive #include of
`OpenMPDialect.h` and `OpenMPInterfaces.h`.

Patch extracted out of #144785


  Commit: 2f2c1036443addf914a3af55b19bb6a5e9564bc3
      https://github.com/llvm/llvm-project/commit/2f2c1036443addf914a3af55b19bb6a5e9564bc3
  Author: ZhaoQi <zhaoqi01 at loongson.cn>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M .github/workflows/libclang-python-tests.yml
    M .github/workflows/libcxx-restart-preempted-jobs.yaml
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MemoryMaps.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.cpp
    M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
    M clang/CMakeLists.txt
    A clang/bindings/python/tests/CMakeLists.txt
    A clang/bindings/python/tests/__init__.py
    A clang/bindings/python/tests/cindex/INPUTS/a.inc
    A clang/bindings/python/tests/cindex/INPUTS/b.inc
    A clang/bindings/python/tests/cindex/INPUTS/compile_commands.json
    A clang/bindings/python/tests/cindex/INPUTS/header1.h
    A clang/bindings/python/tests/cindex/INPUTS/header2.h
    A clang/bindings/python/tests/cindex/INPUTS/header3.h
    A clang/bindings/python/tests/cindex/INPUTS/hello.cpp
    A clang/bindings/python/tests/cindex/INPUTS/include.cpp
    A clang/bindings/python/tests/cindex/INPUTS/parse_arguments.c
    A clang/bindings/python/tests/cindex/INPUTS/testfile.c
    A clang/bindings/python/tests/cindex/__init__.py
    A clang/bindings/python/tests/cindex/test_access_specifiers.py
    A clang/bindings/python/tests/cindex/test_cdb.py
    A clang/bindings/python/tests/cindex/test_code_completion.py
    A clang/bindings/python/tests/cindex/test_comment.py
    A clang/bindings/python/tests/cindex/test_cursor.py
    A clang/bindings/python/tests/cindex/test_cursor_kind.py
    A clang/bindings/python/tests/cindex/test_diagnostics.py
    A clang/bindings/python/tests/cindex/test_enums.py
    A clang/bindings/python/tests/cindex/test_exception_specification_kind.py
    A clang/bindings/python/tests/cindex/test_file.py
    A clang/bindings/python/tests/cindex/test_index.py
    A clang/bindings/python/tests/cindex/test_lib.py
    A clang/bindings/python/tests/cindex/test_linkage.py
    A clang/bindings/python/tests/cindex/test_location.py
    A clang/bindings/python/tests/cindex/test_rewrite.py
    A clang/bindings/python/tests/cindex/test_source_range.py
    A clang/bindings/python/tests/cindex/test_tls_kind.py
    A clang/bindings/python/tests/cindex/test_token_kind.py
    A clang/bindings/python/tests/cindex/test_tokens.py
    A clang/bindings/python/tests/cindex/test_translation_unit.py
    A clang/bindings/python/tests/cindex/test_type.py
    A clang/bindings/python/tests/cindex/util.py
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.td
    M clang/include/clang/CIR/LoweringHelpers.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Headers/intrin.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/test/Analysis/call-and-message.c
    M clang/test/Analysis/call-and-message.cpp
    M clang/test/CIR/CodeGen/bitfields.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    M clang/test/CIR/CodeGen/complex.cpp
    A clang/test/CIR/CodeGen/opt-info-attr.cpp
    A clang/test/CIR/IR/invalid-opt-info.cir
    M clang/test/CMakeLists.txt
    M clang/test/CodeGen/WebAssembly/wasm-exception-model-flag-parse-ir-input.ll
    M clang/test/CodeGen/arm-neon-directed-rounding.c
    M clang/test/CodeGen/arm-v8.2a-neon-intrinsics.c
    A clang/test/CodeGen/arm64-microsoft-sys.c
    M clang/test/CodeGenCXX/builtins-eh-wasm.cpp
    A clang/test/CodeGenCXX/debug-info-dtor-implicit-args.cpp
    M clang/test/CodeGenCXX/wasm-eh.cpp
    M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl
    M clang/test/Driver/autocomplete.c
    M clang/test/Driver/frame-pointer-elim.c
    M clang/test/Driver/pgo-sample-use-profi.c
    A clang/test/Modules/mingw-exceptions.cppm
    A clang/test/Options/Gis.hlsl
    M clang/test/Preprocessor/riscv-target-features-andes.c
    M clang/test/Sema/builtins-microsoft-arm64.c
    M clang/test/SemaCXX/modules.cppm
    A clang/test/SemaOpenCL/amd-media-ops.cl
    R clang/test/bindings/python/bindings.sh
    R clang/test/bindings/python/lit.local.cfg
    R clang/test/bindings/python/tests/__init__.py
    R clang/test/bindings/python/tests/cindex/INPUTS/a.inc
    R clang/test/bindings/python/tests/cindex/INPUTS/b.inc
    R clang/test/bindings/python/tests/cindex/INPUTS/compile_commands.json
    R clang/test/bindings/python/tests/cindex/INPUTS/header1.h
    R clang/test/bindings/python/tests/cindex/INPUTS/header2.h
    R clang/test/bindings/python/tests/cindex/INPUTS/header3.h
    R clang/test/bindings/python/tests/cindex/INPUTS/hello.cpp
    R clang/test/bindings/python/tests/cindex/INPUTS/include.cpp
    R clang/test/bindings/python/tests/cindex/INPUTS/parse_arguments.c
    R clang/test/bindings/python/tests/cindex/INPUTS/testfile.c
    R clang/test/bindings/python/tests/cindex/__init__.py
    R clang/test/bindings/python/tests/cindex/test_access_specifiers.py
    R clang/test/bindings/python/tests/cindex/test_cdb.py
    R clang/test/bindings/python/tests/cindex/test_code_completion.py
    R clang/test/bindings/python/tests/cindex/test_comment.py
    R clang/test/bindings/python/tests/cindex/test_cursor.py
    R clang/test/bindings/python/tests/cindex/test_cursor_kind.py
    R clang/test/bindings/python/tests/cindex/test_diagnostics.py
    R clang/test/bindings/python/tests/cindex/test_enums.py
    R clang/test/bindings/python/tests/cindex/test_exception_specification_kind.py
    R clang/test/bindings/python/tests/cindex/test_file.py
    R clang/test/bindings/python/tests/cindex/test_index.py
    R clang/test/bindings/python/tests/cindex/test_lib.py
    R clang/test/bindings/python/tests/cindex/test_linkage.py
    R clang/test/bindings/python/tests/cindex/test_location.py
    R clang/test/bindings/python/tests/cindex/test_rewrite.py
    R clang/test/bindings/python/tests/cindex/test_source_range.py
    R clang/test/bindings/python/tests/cindex/test_tls_kind.py
    R clang/test/bindings/python/tests/cindex/test_token_kind.py
    R clang/test/bindings/python/tests/cindex/test_tokens.py
    R clang/test/bindings/python/tests/cindex/test_translation_unit.py
    R clang/test/bindings/python/tests/cindex/test_type.py
    R clang/test/bindings/python/tests/cindex/util.py
    M clang/tools/clang-fuzzer/handle-llvm/CMakeLists.txt
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_flags.cpp
    M compiler-rt/lib/asan/asan_internal.h
    M compiler-rt/lib/asan/asan_new_delete.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    A compiler-rt/test/asan/TestCases/Windows/alloc_dealloc_mismatch.cpp
    M compiler-rt/test/tsan/munmap_clear_shadow.c
    M cross-project-tests/CMakeLists.txt
    A cross-project-tests/dtlto/README.md
    A cross-project-tests/dtlto/ld-dtlto.c
    A cross-project-tests/dtlto/lit.local.cfg
    M flang/docs/ReleaseNotes.md
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/test/Driver/fveclib-codegen.f90
    M flang/test/Driver/fveclib.f90
    A flang/test/Integration/amdgpu-target-desc-cast-to-global-addrspace.f90
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/GPU/allocator.h
    M libc/src/stdlib/gpu/aligned_alloc.cpp
    M libc/test/integration/src/stdlib/gpu/CMakeLists.txt
    A libc/test/integration/src/stdlib/gpu/aligned_alloc.cpp
    M libc/test/integration/src/stdlib/gpu/malloc.cpp
    M libclc/cmake/modules/AddLibclc.cmake
    M libcxx/include/__functional/boyer_moore_searcher.h
    M libcxx/include/__hash_table
    M libcxx/include/__type_traits/add_lvalue_reference.h
    M libcxx/include/__type_traits/add_pointer.h
    M libcxx/include/__type_traits/add_rvalue_reference.h
    M libcxx/include/__type_traits/decay.h
    M libcxx/include/__type_traits/has_unique_object_representation.h
    M libcxx/include/__type_traits/is_array.h
    M libcxx/include/__type_traits/is_const.h
    M libcxx/include/__type_traits/is_pointer.h
    M libcxx/include/__type_traits/is_volatile.h
    M libcxx/include/__type_traits/remove_all_extents.h
    M libcxx/include/__type_traits/remove_extent.h
    M libcxx/include/functional
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
    M libcxx/test/benchmarks/containers/associative/unordered_set.bench.cpp
    R libcxx/test/libcxx/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
    R libcxx/test/libcxx/selftest/additional_compile_flags/lit.local.cfg
    R libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
    R libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
    R libcxx/test/libcxx/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
    R libcxx/test/libcxx/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/link-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.cpp/run-error.compile.pass.cpp
    R libcxx/test/libcxx/selftest/compile.pass.mm/compile-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/compile-success.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/link-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/compile.pass.mm/run-error.compile.pass.mm
    R libcxx/test/libcxx/selftest/convenience_substitutions/build_run.sh.cpp
    R libcxx/test/libcxx/selftest/convenience_substitutions/verify.sh.cpp
    R libcxx/test/libcxx/selftest/dsl/dsl.sh.py
    R libcxx/test/libcxx/selftest/dsl/lit.local.cfg
    R libcxx/test/libcxx/selftest/file_dependencies/a.txt
    R libcxx/test/libcxx/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
    R libcxx/test/libcxx/selftest/file_dependencies/dir/b.txt
    R libcxx/test/libcxx/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/empty.gen.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/one.gen.cpp
    R libcxx/test/libcxx/selftest/gen.cpp/two.gen.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/compile-error.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/link-error.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.fail.cpp/link-success.link.fail.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/compile-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/link-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/link-success.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.cpp/run-error.link.pass.cpp
    R libcxx/test/libcxx/selftest/link.pass.mm/compile-error.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/link-error.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/link-success.link.pass.mm
    R libcxx/test/libcxx/selftest/link.pass.mm/run-error.link.pass.mm
    R libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
    R libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/compile-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/link-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/run-error.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/run-success.pass.cpp
    R libcxx/test/libcxx/selftest/pass.cpp/werror.pass.cpp
    R libcxx/test/libcxx/selftest/pass.mm/compile-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/link-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/no-arc.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/run-error.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/run-success.pass.mm
    R libcxx/test/libcxx/selftest/pass.mm/use-objective-cxx.pass.mm
    R libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/run-error.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/run-success.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/substitutions.sh.cpp
    R libcxx/test/libcxx/selftest/sh.cpp/werror.sh.cpp
    R libcxx/test/libcxx/selftest/shell-no-escape-builtins.sh.cpp
    R libcxx/test/libcxx/selftest/stdin-is-piped.sh.cpp
    R libcxx/test/libcxx/selftest/test_macros.pass.cpp
    R libcxx/test/libcxx/selftest/tmpdir-exists.sh.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/no-werror.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/right-diagnostic.verify.cpp
    R libcxx/test/libcxx/selftest/verify.cpp/wrong-diagnostic.verify.cpp
    A libcxx/test/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
    A libcxx/test/selftest/additional_compile_flags/lit.local.cfg
    A libcxx/test/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
    A libcxx/test/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
    A libcxx/test/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
    A libcxx/test/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
    A libcxx/test/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/link-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.cpp/run-error.compile.pass.cpp
    A libcxx/test/selftest/compile.pass.mm/compile-error.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/compile-success.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/link-error.compile.pass.mm
    A libcxx/test/selftest/compile.pass.mm/run-error.compile.pass.mm
    A libcxx/test/selftest/convenience_substitutions/build_run.sh.cpp
    A libcxx/test/selftest/convenience_substitutions/verify.sh.cpp
    A libcxx/test/selftest/dsl/dsl.sh.py
    A libcxx/test/selftest/dsl/lit.local.cfg
    A libcxx/test/selftest/file_dependencies/a.txt
    A libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
    A libcxx/test/selftest/file_dependencies/dir/b.txt
    A libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
    A libcxx/test/selftest/gen.cpp/empty.gen.cpp
    A libcxx/test/selftest/gen.cpp/one.gen.cpp
    A libcxx/test/selftest/gen.cpp/two.gen.cpp
    A libcxx/test/selftest/link.fail.cpp/compile-error.link.fail.cpp
    A libcxx/test/selftest/link.fail.cpp/link-error.link.fail.cpp
    A libcxx/test/selftest/link.fail.cpp/link-success.link.fail.cpp
    A libcxx/test/selftest/link.pass.cpp/compile-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/link-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/link-success.link.pass.cpp
    A libcxx/test/selftest/link.pass.cpp/run-error.link.pass.cpp
    A libcxx/test/selftest/link.pass.mm/compile-error.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/link-error.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/link-success.link.pass.mm
    A libcxx/test/selftest/link.pass.mm/run-error.link.pass.mm
    A libcxx/test/selftest/lit.local.cfg
    A libcxx/test/selftest/modules/no-modules.sh.cpp
    A libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
    A libcxx/test/selftest/modules/std-module.sh.cpp
    A libcxx/test/selftest/modules/std.compat-module.sh.cpp
    A libcxx/test/selftest/pass.cpp/compile-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/link-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/run-error.pass.cpp
    A libcxx/test/selftest/pass.cpp/run-success.pass.cpp
    A libcxx/test/selftest/pass.cpp/werror.pass.cpp
    A libcxx/test/selftest/pass.mm/compile-error.pass.mm
    A libcxx/test/selftest/pass.mm/link-error.pass.mm
    A libcxx/test/selftest/pass.mm/no-arc.pass.mm
    A libcxx/test/selftest/pass.mm/run-error.pass.mm
    A libcxx/test/selftest/pass.mm/run-success.pass.mm
    A libcxx/test/selftest/pass.mm/use-objective-cxx.pass.mm
    A libcxx/test/selftest/remote-substitutions.sh.cpp
    A libcxx/test/selftest/sh.cpp/run-error.sh.cpp
    A libcxx/test/selftest/sh.cpp/run-success.sh.cpp
    A libcxx/test/selftest/sh.cpp/substitutions.sh.cpp
    A libcxx/test/selftest/sh.cpp/werror.sh.cpp
    A libcxx/test/selftest/shell-no-escape-builtins.sh.cpp
    A libcxx/test/selftest/stdin-is-piped.sh.cpp
    A libcxx/test/selftest/test_macros.pass.cpp
    A libcxx/test/selftest/tmpdir-exists.sh.cpp
    A libcxx/test/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
    A libcxx/test/selftest/verify.cpp/no-diagnostics.verify.cpp
    A libcxx/test/selftest/verify.cpp/no-werror.verify.cpp
    A libcxx/test/selftest/verify.cpp/right-diagnostic.verify.cpp
    A libcxx/test/selftest/verify.cpp/wrong-diagnostic.verify.cpp
    A libcxx/utils/ci/buildkite-pipeline-trigger.sh
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/LTO.cpp
    M lld/ELF/Options.td
    A lld/docs/DTLTO.rst
    M lld/docs/index.rst
    A lld/test/COFF/exported-dllmain.test
    A lld/test/ELF/dtlto/files.test
    A lld/test/ELF/dtlto/options.test
    A lld/test/ELF/dtlto/partitions.test
    A lld/test/ELF/lto/lazy-debug.ll
    M lld/test/lit.cfg.py
    R lld/test/wasm/compress-relocs.ll
    A lld/test/wasm/compress-relocs.s
    A lld/test/wasm/compress-relocs64.s
    M lld/wasm/InputChunks.cpp
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/include/lldb/Host/windows/MainLoopWindows.h
    M lldb/include/lldb/lldb-types.h
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/source/Breakpoint/Breakpoint.cpp
    M lldb/source/Breakpoint/BreakpointIDList.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/BreakpointLocationList.cpp
    M lldb/source/Breakpoint/BreakpointOptions.cpp
    M lldb/source/Breakpoint/BreakpointResolverName.cpp
    M lldb/source/Breakpoint/Watchpoint.cpp
    M lldb/source/Breakpoint/WatchpointOptions.cpp
    M lldb/source/Commands/CommandObjectProtocolServer.cpp
    M lldb/source/Host/common/JSONTransport.cpp
    M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
    M lldb/source/Host/windows/MainLoopWindows.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/CMakeLists.txt
    R lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
    R lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.h
    M lldb/source/Plugins/Process/MacOSX-Kernel/ThreadKDP.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    R lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp
    R lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.h
    R lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.cpp
    R lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.h
    M lldb/source/Utility/SelectHelper.cpp
    A lldb/test/API/commands/protocol/TestMCPUnixSocket.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/deque/TestDataFormatterGenericDeque.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/deque/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/invalid-vector/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/main.cpp
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/Makefile
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/TestDataFormatterLibcxxDeque.py
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/deque/main.cpp
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/Makefile
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/TestDataFormatterLibccUnorderedMap.py
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map-iterator/main.cpp
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/Makefile
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/TestDataFormatterLibccUnorderedMap.py
    R lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered_map/main.cpp
    M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/Extensions.rst
    M llvm/docs/GitHub.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/examples/OrcV2Examples/LLJITWithThinLTOSummaries/LLJITWithThinLTOSummaries.cpp
    M llvm/examples/OrcV2Examples/OrcV2CBindingsBasicUsage/OrcV2CBindingsBasicUsage.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsDumpObjects/OrcV2CBindingsDumpObjects.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/OrcV2CBindingsLazy.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsMCJITLikeMemoryManager/OrcV2CBindingsMCJITLikeMemoryManager.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsRemovableCode/OrcV2CBindingsRemovableCode.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
    M llvm/include/llvm-c/Orc.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/BinaryFormat/Wasm.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h
    M llvm/include/llvm/IR/IntrinsicsARM.td
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCFixup.h
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/include/llvm/Support/Signals.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/Analysis/BranchProbabilityInfo.cpp
    M llvm/lib/Analysis/HashRecognize.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/TargetOptionsImpl.cpp
    M llvm/lib/ExecutionEngine/Orc/OrcV2CBindings.cpp
    M llvm/lib/ExecutionEngine/Orc/Speculation.cpp
    M llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCSectionELF.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/Support/Signals.cpp
    M llvm/lib/Support/TextEncoding.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/Support/Windows/Signals.inc
    M llvm/lib/TableGen/Error.cpp
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.h
    M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.h
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kAsmBackend.cpp
    M llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
    M llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
    M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaELFObjectWriter.cpp
    M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
    M llvm/lib/Target/Xtensa/XtensaFeatures.td
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/lib/Target/Xtensa/XtensaOperators.td
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.td
    M llvm/lib/Target/Xtensa/XtensaSubtarget.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/bf16_fast_math.ll
    M llvm/test/CodeGen/AArch64/cmp-select-sign.ll
    M llvm/test/CodeGen/AArch64/concatbinop.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvt-cvtlt.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-cvtn.ll
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/pr58431.ll
    M llvm/test/CodeGen/AArch64/ptradd.ll
    M llvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
    A llvm/test/CodeGen/AArch64/rem-by-const.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/select_cc.ll
    M llvm/test/CodeGen/AArch64/selectcc-to-shiftand.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-fexpa.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-binary-narrowing-add-sub.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-binary-narrowing-shr.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-complex-dot.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-contiguous-conflict-detection.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-faminmax.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-converts.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-int-binary-logarithm.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-fp-widening-mul-acc.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-int-mul-lane.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-luti.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-non-widening-pairwise-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-polynomial-arithmetic.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-psel.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-revd.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-unary-narrowing.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-uniform-complex-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while-reversed.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-complex-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-dsp.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-widening-pairwise-arith.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfmlsl.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-cntp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dots.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dupq.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-extq.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-fclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-loads.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-loads.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-multivec-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-pmov-to-pred.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-pmov-to-vector.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-predicate-as-counter.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-qcvtn.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-qrshr.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-sclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uclamp.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pn.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-while-pp.ll
    M llvm/test/CodeGen/AArch64/tbl-loops.ll
    M llvm/test/CodeGen/AArch64/vecreduce-propagate-sd-flags.ll
    M llvm/test/CodeGen/AArch64/vselect-constants.ll
    M llvm/test/CodeGen/AArch64/vselect-ext.ll
    M llvm/test/CodeGen/AArch64/win-sve.ll
    M llvm/test/CodeGen/AArch64/wincfi-missing-seh-directives.ll
    M llvm/test/CodeGen/AArch64/wineh-frame5.mir
    M llvm/test/CodeGen/AArch64/wineh-frame7.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-snop-padding.mir
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-ctpop.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-divergence-driven-isel.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/ARM/fp16_fast_math.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    M llvm/test/CodeGen/ARM/vrint.ll
    M llvm/test/CodeGen/LoongArch/lasx/xvmskcond.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/Mips/msa/compare_float.ll
    M llvm/test/CodeGen/NVPTX/i1-select.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/PowerPC/aix32-vector-vararg-caller-split.ll
    A llvm/test/CodeGen/PowerPC/crreduce-reg.mir
    M llvm/test/CodeGen/PowerPC/nofpexcept.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/PowerPC/recipest.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/rv32xandesperf.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-tuple-align.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    A llvm/test/CodeGen/SPIRV/capability-FloatControl2.ll
    M llvm/test/CodeGen/SPIRV/extensions/enable-all-extensions-but-one.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/MixedBufferLoadStore.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
    A llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll
    M llvm/test/CodeGen/SystemZ/pr60413.ll
    M llvm/test/CodeGen/SystemZ/vec-max-min-zerosplat.ll
    M llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll
    M llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.mir
    M llvm/test/CodeGen/WebAssembly/exception-legacy.mir
    M llvm/test/CodeGen/WebAssembly/function-info.mir
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/apx/kmov-domain-assignment.ll
    M llvm/test/CodeGen/X86/avg.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/fp-intrinsics-flags.ll
    M llvm/test/CodeGen/X86/freeze-vector.ll
    M llvm/test/CodeGen/X86/setcc-non-simple-type.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-mir.ll
    M llvm/test/CodeGen/X86/unpredictable-brcond.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll
    M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics-flags.ll
    A llvm/test/CodeGen/X86/x86-access-to-global.ll
    M llvm/test/CodeGen/Xtensa/float-arith.ll
    A llvm/test/CodeGen/Xtensa/invalid-tls.ll
    A llvm/test/CodeGen/Xtensa/select-cc-fp.ll
    A llvm/test/CodeGen/Xtensa/threadptr.ll
    M llvm/test/Feature/intrinsics.ll
    M llvm/test/Instrumentation/MemorySanitizer/or.ll
    M llvm/test/MC/AMDGPU/gfx950_asm_features.s
    A llvm/test/MC/BPF/bad-tied.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx950.txt
    A llvm/test/MC/Disassembler/Xtensa/dfpaccel.txt
    M llvm/test/MC/Disassembler/Xtensa/fp.txt
    A llvm/test/MC/Disassembler/Xtensa/threadptr.txt
    A llvm/test/MC/Xtensa/dfpaccel.s
    A llvm/test/MC/Xtensa/threadptr.s
    M llvm/test/Transforms/InstCombine/sub-gep.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
    A llvm/test/Transforms/PhaseOrdering/always-inline-alloca-promotion.ll
    M llvm/test/Transforms/SimplifyCFG/switch-to-select-two-case.ll
    M llvm/test/Transforms/VectorCombine/AArch64/ext-extract.ll
    M llvm/test/Transforms/VectorCombine/intrinsic-scalarize.ll
    M llvm/test/tools/llvm-objdump/X86/elf-bbaddrmap-disassemble-symbolize-operands.yaml
    M llvm/tools/lli/lli.cpp
    M llvm/unittests/ADT/ArrayRefTest.cpp
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/Analysis/FunctionPropertiesAnalysisTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/ThreadSafeModuleTest.cpp
    M llvm/unittests/Object/ELFObjectFileTest.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.h
    M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPInterfaces.h
    A mlir/include/mlir/Dialect/OpenMP/OpenMPOpsAttributes.h
    A mlir/include/mlir/Dialect/OpenMP/OpenMPOpsEnums.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/AMDGPU/Transforms/MaskedloadToLoad.cpp
    R mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Operation.cpp
    M mlir/lib/TableGen/Argument.cpp
    M mlir/lib/TableGen/Attribute.cpp
    M mlir/lib/TableGen/Class.cpp
    M mlir/lib/TableGen/Interfaces.cpp
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/TableGen/Property.cpp
    M mlir/lib/TableGen/Trait.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    A mlir/test/Dialect/AMDGPU/maskedload-to-load.mlir
    R mlir/test/Dialect/AMDGPU/transfer-read-to-load.mlir
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
    M mlir/test/Dialect/Linalg/vectorization/extract-with-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization/extract.mlir
    M mlir/test/Dialect/Linalg/vectorization/linalg-ops-with-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization/linalg-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/types.mlir
    A mlir/test/Target/LLVMIR/openmp-simd-reduction-byref.mlir
    A mlir/test/Target/LLVMIR/openmp-simd-reduction-simple.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    A mlir/test/Target/SPIRV/tensorARM.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
    M mlir/test/mlir-tblgen/op-format.mlir
    M offload/liboffload/API/Common.td
    M offload/liboffload/API/Device.td
    M offload/liboffload/API/README.md
    M offload/liboffload/README.md
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/tools/offload-tblgen/MiscGen.cpp
    M offload/tools/offload-tblgen/PrintGen.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
    M offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  Merge branch 'main' into users/zhaoqi5/opt-insert-hi128-element


Compare: https://github.com/llvm/llvm-project/compare/fb473a4aa0f1...2f2c1036443a

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