[all-commits] [llvm/llvm-project] b10ecf: [SLP]Represent externally used values as original ...

Amir Ayupov via All-commits all-commits at lists.llvm.org
Wed Aug 14 06:14:07 PDT 2024


  Branch: refs/heads/users/aaupov/spr/main.mcnfc-reduce-address2probesmap-size
  Home:   https://github.com/llvm/llvm-project
  Commit: b10ecfa914dd1bc2013584917d0505ba5f15f75c
      https://github.com/llvm/llvm-project/commit/b10ecfa914dd1bc2013584917d0505ba5f15f75c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/external-non-inst-use.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/multiple_reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/scalarization-overhead.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/shuffle-vectors-mask-size.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/slp-fma-loss.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/mixed-extracts-types.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-indices.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-unsupported-type.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR32086.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35628_1.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR40310.ll
    M llvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll
    M llvm/test/Transforms/SLPVectorizer/X86/crash_vectorizeTree.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cse_extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/diamond.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-user-instruction-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-many-users-buildvector.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract_in_tree_user.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelement-multi-register-use.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelements-vector-ops-shuffle.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extracts-with-undefs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-with-extractelement-many-users.ll
    M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/insertelement-uses-vectorized-index.ll
    M llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
    M llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ordering-bug.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr27163.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-value-in-tree.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reordering-single-phi.ll
    M llvm/test/Transforms/SLPVectorizer/X86/replaced-external-in-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scalarization-overhead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll

  Log Message:
  -----------
  [SLP]Represent externally used values as original scalars, if profitable.

Currently SLP vectorizer tries to keep only GEPs as scalar, if they are
vectorized but used externally. Same approach can be used for all scalar
values. This patch tries to keep original scalars if all its operands
remain scalar or externally used, the cost of the original scalar is
lower than the cost of the extractelement instruction, or if the number
of externally used scalars in the same entry is power of 2. Last
criterion allows better revectorization for multiply used scalars.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: c7a44ec031c2b6b86f389fb382060620a8b4a0ce
      https://github.com/llvm/llvm-project/commit/c7a44ec031c2b6b86f389fb382060620a8b4a0ce
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll

  Log Message:
  -----------
  [VPlan] Check successors in VPlan to check if scalar epi required (NFC)

Now that the branches to the scalar epilogue are modeled in VPlan
directly, check the VPlan to see if a scalar epilogue is required.

Preparation for https://github.com/llvm/llvm-project/pull/100658.


  Commit: d3723615164cb3a4ff09267c56ae0c4129bddbd7
      https://github.com/llvm/llvm-project/commit/d3723615164cb3a4ff09267c56ae0c4129bddbd7
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td

  Log Message:
  -----------
  [MLIR][OpenMP] Add a new ComposableOpInterface to check/set a composite unitAttr. (#102340)

Adds a new ComposableOpInterface for OpenMP operations that can
represent a single leaf of a composite OpenMP construct.

This is patch 1/2 in a series of patches. Patch 2 - #102341.


  Commit: f2f41937f31e643471e4e37ef9d7c4eda806adc8
      https://github.com/llvm/llvm-project/commit/f2f41937f31e643471e4e37ef9d7c4eda806adc8
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [OpenMP][MLIR] Set omp.composite attr for composite loop wrappers and add verifier checks (#102341)

This patch sets the omp.composite unit attr for composite wrapper ops
and also add appropriate checks to the verifiers of supported ops for
the presence/absence of the attribute.

This is patch 2/2 in a series of patches. Patch 1 - #102340.


  Commit: db3c3fc90a7c35dec504a454328ab619aa70830f
      https://github.com/llvm/llvm-project/commit/db3c3fc90a7c35dec504a454328ab619aa70830f
  Author: Temperatureblock <102174059+Temperature-block at users.noreply.github.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/CodeGen/X86/pr59305.ll

  Log Message:
  -----------
  Simple check to ignore Inline asm fwait insertion (#101686)

Just a simple check to ignore Inline asm fwait insertion

Fixes #101613


  Commit: dc831e8422cb0762e33fb41ffbdff8a6100e7d34
      https://github.com/llvm/llvm-project/commit/dc831e8422cb0762e33fb41ffbdff8a6100e7d34
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [OMPIRBuilder] Use getAllOnesValue()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 246c236ff9761920f5098878aba651e2112618bf
      https://github.com/llvm/llvm-project/commit/246c236ff9761920f5098878aba651e2112618bf
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [ConstantFolding] Use getSigned()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 3b27fce960e965097c9d597b1bd35e8593121d25
      https://github.com/llvm/llvm-project/commit/3b27fce960e965097c9d597b1bd35e8593121d25
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [CGP] Use getAllOnesValue()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 06f64e84738a6d6a55283ff5eef60c7ea9a92dac
      https://github.com/llvm/llvm-project/commit/06f64e84738a6d6a55283ff5eef60c7ea9a92dac
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [ExpandMemCmp] Use getAllOnesValue()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 73d835cceca0638b7080ecf310594398e50e5206
      https://github.com/llvm/llvm-project/commit/73d835cceca0638b7080ecf310594398e50e5206
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp

  Log Message:
  -----------
  [ConstraintElimination] Use getAllOnesValue()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 82ee31f75ac1316006fa9e21dddfddec37cf7072
      https://github.com/llvm/llvm-project/commit/82ee31f75ac1316006fa9e21dddfddec37cf7072
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/tools/lldb-server/lldb-platform.cpp

  Log Message:
  -----------
  [lldb] Updated lldb-server to spawn the child process and share socket (#101283)

`lldb-server platform --server` works on Windows now w/o multithreading.
The rest functionality remains unchanged.

Fixes #90923, fixes #56346.

This is the part 1 of the replacement of #100670.

In the part 2 I plan to switch `lldb-server gdbserver` to use `--fd` and
listen a common gdb port for all gdbserver connections. Then we can
remove gdb port mapping to fiх #97537.


  Commit: 49777d7ffe82f1dcace318e51c9d785994f8c32a
      https://github.com/llvm/llvm-project/commit/49777d7ffe82f1dcace318e51c9d785994f8c32a
  Author: meehatpa <gune30 at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Add atan and atan2 pattern to MathToSPIRV Conversion pass (#102633)

Add missing math.atan to spirv.CL.atan and math.atan2 to spirv.CL.atan2
in MathToSPIRV.
Add math.atan to spirv.GL.atan too.


  Commit: 7027cc6a073cb5ae7a0ce04fa4a2dbe714615da9
      https://github.com/llvm/llvm-project/commit/7027cc6a073cb5ae7a0ce04fa4a2dbe714615da9
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s

  Log Message:
  -----------
  [lldb][test] Diable dwp hash collision test on Windows

This has been flaky on our Windows on Arm bot:
https://lab.llvm.org/buildbot/#/builders/141/builds/1497

Despite passing when first landed.


  Commit: 3825a7c542f362ace2e943f4fc3ec8538750db3c
      https://github.com/llvm/llvm-project/commit/3825a7c542f362ace2e943f4fc3ec8538750db3c
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/unions.cpp

  Log Message:
  -----------
  [clang][Interp] Fix diagnosing uninitialized nested union fields (#102824)

We were calling initialize() unconditionally when copying the union.


  Commit: 23c72e93a5af2213d616755103415bb638731203
      https://github.com/llvm/llvm-project/commit/23c72e93a5af2213d616755103415bb638731203
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/test/CodeGen/SPIRV/transcoding/OpGroupAllAny.ll

  Log Message:
  -----------
  [SPIR-V] Allow non-const arguments in a Group builtin that requires a boolean argument (#102902)

This PR resolves a TODO in `generateGroupInst()`
(`lib/Target/SPIRV/SPIRVBuiltins.cpp`) and Issues
https://github.com/llvm/llvm-project/issues/97311 and
https://github.com/llvm/llvm-project/issues/97312 by implementing
support for non-const arguments in a Group builtin that requires a
boolean argument.


  Commit: 27a713f5b042bbcd88491c991877d0806aa66913
      https://github.com/llvm/llvm-project/commit/27a713f5b042bbcd88491c991877d0806aa66913
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Conversion/VectorToSCF/VectorToSCF.h
    M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
    M mlir/test/Conversion/VectorToSCF/tensor-transfer-ops.mlir
    M mlir/test/Conversion/VectorToSCF/vector-to-scf.mlir

  Log Message:
  -----------
  [mlir][vector] Add scalable lowering for `transfer_write(transpose)` (#101353)

This specifically handles the case of a transpose from a vector type
like `vector<8x[4]xf32>` to `vector<[4]x8xf32>`. Such transposes occur
fairly frequently when scalably vectorizing `linalg.generic`s. There is
no direct lowering for these (as types like `vector<[4]x8xf32>` cannot
be represented in LLVM-IR). However, if the only use of the transpose is
a write, then it is possible to lower the `transfer_write(transpose)` as
a VLA loop.

Example:

```mlir
%transpose = vector.transpose %vec, [1, 0]
   : vector<4x[4]xf32> to vector<[4]x4xf32>
vector.transfer_write %transpose, %dest[%i, %j] {in_bounds = [true, true]}
   : vector<[4]x4xf32>,  memref<?x?xf32>
```

Becomes:

```mlir
%c1 = arith.constant 1 : index
%c4 = arith.constant 4 : index
%c0 = arith.constant 0 : index
%0 = vector.extract %arg0[0] : vector<[4]xf32> from vector<4x[4]xf32>
%1 = vector.extract %arg0[1] : vector<[4]xf32> from vector<4x[4]xf32>
%2 = vector.extract %arg0[2] : vector<[4]xf32> from vector<4x[4]xf32>
%3 = vector.extract %arg0[3] : vector<[4]xf32> from vector<4x[4]xf32>
%vscale = vector.vscale
%c4_vscale = arith.muli %vscale, %c4 : index
scf.for %idx = %c0 to %c4_vscale step %c1 {
  %4 = vector.extract %0[%idx] : f32 from vector<[4]xf32>
  %5 = vector.extract %1[%idx] : f32 from vector<[4]xf32>
  %6 = vector.extract %2[%idx] : f32 from vector<[4]xf32>
  %7 = vector.extract %3[%idx] : f32 from vector<[4]xf32>
  %slice_i = affine.apply #map(%idx)[%i]
  %slice = vector.from_elements %4, %5, %6, %7 : vector<4xf32>
  vector.transfer_write %slice, %arg1[%slice_i, %j] {in_bounds = [true]}
    : vector<4xf32>, memref<?x?xf32>
}
```


  Commit: 05d85ecad707573cde0258cbab579ed764c61e51
      https://github.com/llvm/llvm-project/commit/05d85ecad707573cde0258cbab579ed764c61e51
  Author: Akash Banerjee <Akash.Banerjee at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [OpenMP][MLIR] Add test missed by #102341

Add small test that I missed adding to #102341.


  Commit: dab7e3c30dd690e50858450b658f32a1d1e9cf86
      https://github.com/llvm/llvm-project/commit/dab7e3c30dd690e50858450b658f32a1d1e9cf86
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa-codegen2.fir
    M flang/test/Fir/tbaa.fir

  Log Message:
  -----------
  [flang] Read the extra field from the in box when doing reboxing (#102686)

The extra field in the descriptor carries multiple information and
cannot be deducted anymore when doing a reboxing. This patch updates the
codegen to retrieve the extra field value from the inboc and set it in
the new box.


  Commit: 7c4c72b52038810a8997938a2b3485363cd6be3a
      https://github.com/llvm/llvm-project/commit/7c4c72b52038810a8997938a2b3485363cd6be3a
  Author: J. Ryan Stinnett <jryans at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp

  Log Message:
  -----------
  [DebugInfo][NFC] Sort DWARF op descriptions, fix versions (#102773)

This sorts DWARF op descriptions in `DWARFExpression.cpp` by opcode and version, packing the standardised ops together. A few ops also had the wrong version listed, so this fixes those versions as well. (The version does not appear to actually be used currently.)


  Commit: 3176f255c9dd43e8bacad0f9e56cf4f9f8816009
      https://github.com/llvm/llvm-project/commit/3176f255c9dd43e8bacad0f9e56cf4f9f8816009
  Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/test/Transforms/InterleavedAccess/AArch64/fixed-deinterleave-intrinsics.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/scalable-deinterleave-intrinsics.ll
    A llvm/test/Transforms/InterleavedAccess/AArch64/sve-deinterleave4.ll
    A llvm/test/Transforms/InterleavedAccess/AArch64/sve-interleave4.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/sve-interleaved-accesses.ll

  Log Message:
  -----------
  [IA][AArch64]: Construct (de)interleave4 out of (de)interleave2 (#89276)

- [AArch64]: TargetLowering is updated to spot load/store (de)interleave4 like sequences using PatternMatch,
   and emit equivalent sve.ld4 and sve.st4 intrinsics.


  Commit: fbf81e300489f0489edab20493f1db02e2a3bc74
      https://github.com/llvm/llvm-project/commit/fbf81e300489f0489edab20493f1db02e2a3bc74
  Author: xiaoleis-nv <99947620+xiaoleis-nv at users.noreply.github.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    M mlir/test/Conversion/SCFToControlFlow/convert-to-cfg.mlir

  Log Message:
  -----------
  Enable attaching LLVM loop annotations to scf.for (#102562)

We recently discovered that the loop with a dynamic upper bound is
unexpectedly unrolled during the NVVM to PTX process. By attaching the
`llvm.loop_annotation`, we can control the unrolling behavior precisely.

This PR enables the `cf.cond_br` to retain the loop annotation of
`scf.for` after the `convert-scf-to-cf` pass. This change allows users
to have precise control over the loop behavior during backend
transformation.

---------

Co-authored-by: Xiaolei Shi <xiaoleis at nvidia.com>


  Commit: 8b6e9de3dd114db28fde892c67960a87d9870637
      https://github.com/llvm/llvm-project/commit/8b6e9de3dd114db28fde892c67960a87d9870637
  Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/aix-vsx-splatimm.ll
    M llvm/test/CodeGen/PowerPC/build-vector-from-load-and-zeros.ll
    M llvm/test/CodeGen/PowerPC/load-and-splat.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/PowerPC/test-vector-insert.ll
    M llvm/test/CodeGen/PowerPC/vec-trunc2.ll
    M llvm/test/CodeGen/PowerPC/vsx.ll
    M llvm/test/CodeGen/PowerPC/widen-vec-correctly-be.ll

  Log Message:
  -----------
  [PowerPC] improve P10 store forwarding on P7 scalar to vector (#102330)

Try to make P7 code with scalar to vector operations that use store/re-load to run smoother on P10 by supplying enough store width to cover the load and allow hardware store forwarding.


  Commit: 654d1f83e3fa191d7b1724cdaf0eafbca0cf408a
      https://github.com/llvm/llvm-project/commit/654d1f83e3fa191d7b1724cdaf0eafbca0cf408a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoM.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td

  Log Message:
  -----------
  [RISCV][GISel] Move i32 patterns that aren't used by SelectionDAG to RISCVGISel.td. NFC (#102685)

Reduces RISCVGenDAGISel.inc by ~6000 bytes.


  Commit: 8fd1484e301421c572f2a30a29164a9ba784f52a
      https://github.com/llvm/llvm-project/commit/8fd1484e301421c572f2a30a29164a9ba784f52a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/uadd_sat_plus.ll

  Log Message:
  -----------
  [LegalizeTypes][RISCV] Use signed promotion for UADDSAT if that's what the target prefers. (#102842)

As noted in #102781 we can promote UADDSAT if we use sign extend instead
of zero extend.

The custom handler for RISC-V was using SIGN_EXTEND when the Zbb
extension was enabled. With this change we no longer need the custom
code.


  Commit: 8fc9b4efd25287d6ef87e4e25ea40789401ecf7f
      https://github.com/llvm/llvm-project/commit/8fc9b4efd25287d6ef87e4e25ea40789401ecf7f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa-codegen2.fir
    M flang/test/Fir/tbaa.fir

  Log Message:
  -----------
  Revert "[flang] Read the extra field from the in box when doing reboxing" (#102931)

Reverts llvm/llvm-project#102686 as it might be the source of buildbot
failures https://lab.llvm.org/buildbot/#/builders/143/builds/1392.


  Commit: 38b67c54ed858f60c0caebcfba4b61f9326684ca
      https://github.com/llvm/llvm-project/commit/38b67c54ed858f60c0caebcfba4b61f9326684ca
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s
    R lldb/test/Shell/SymbolFile/DWARF/x86/mixed-debug-names-complete-type-search.test

  Log Message:
  -----------
  Revert "[lldb/DWARF] Search fallback to the manual index in GetFullyQualified… (#102123)"

The test appears to be flaky. Revert it while I investigate.

This reverts commits 7027cc6a073cb5ae7a0ce04fa4a2dbe714615da9 and
21ef272ec1974244710fc639f98674eae3f8b02c.


  Commit: b3ed1d92112e0f455f8ef0888ef4c5d0ca29096d
      https://github.com/llvm/llvm-project/commit/b3ed1d92112e0f455f8ef0888ef4c5d0ca29096d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s
    A lldb/test/Shell/SymbolFile/DWARF/x86/mixed-debug-names-complete-type-search.test

  Log Message:
  -----------
  Reapply "[lldb/DWARF] Search fallback to the manual index in GetFullyQualified… (#102123)"

This reverts commit 38b67c54ed858f60c0caebcfba4b61f9326684ca.

I reverted the wrong patch -- sorry :(


  Commit: a0c57a0f3c6b44ce8f2c7222d0932df85883cf06
      https://github.com/llvm/llvm-project/commit/a0c57a0f3c6b44ce8f2c7222d0932df85883cf06
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    R lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s

  Log Message:
  -----------
  Revert "[lldb] Tolerate multiple compile units with the same DWO ID (#100577)"

The test appears to be flaky. Revert it while I investigate.

This reverts commits 32a62ebdeab0c10d5311cf812e021717636d4514 and
7027cc6a073cb5ae7a0ce04fa4a2dbe714615da9.


  Commit: 1cbd25f882d10de1a23bb0287a70cde5037ebf42
      https://github.com/llvm/llvm-project/commit/1cbd25f882d10de1a23bb0287a70cde5037ebf42
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libc/src/__support/str_to_float.h
    M libc/test/src/stdlib/strtof_test.cpp

  Log Message:
  -----------
  [NFC][libc] Clarifies underscores in n-char-sequence. (#102193)

The C standard specifies
  n-char-sequence:
    digit
    nondigit
    n-char-sequence digit
    n-char-sequence nondigit

nondigit is specified as one of:
  _ a b c d e f g h i j k l m
    n o p q r s t u v w x y z
    A B C D E F G H I J K L M
    N O P Q R S T U V W X Y Z

This means nondigit includes the underscore character. This patch
clarifies this status in the comments and the test.

Note C17 specifies n-char-sequence for NaN() as optional, and an empty
sequence is not a valid n-char-sequence. However the current comment has
the same effect as using the pedantic wording. So I left that part
unchanged.


  Commit: c4724f60384917ef0f0e8cc32702fe02c3b3b1c9
      https://github.com/llvm/llvm-project/commit/c4724f60384917ef0f0e8cc32702fe02c3b3b1c9
  Author: Daniel M. Katz <katzdm at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    A clang/test/SemaCXX/PR98671.cpp

  Log Message:
  -----------
  Fix assertion failure during conversion function overload resolution. (#98671)

When clang is built with assertions, an otherwise silent (and seemingly
innocuous) assertion failure from `SemaConcept.cpp` is triggered by the
following program:

```cpp
struct S {
  operator int();
  template <typename T> operator T();
};

constexpr auto r = &S::operator int;
```

The function in question compares the "constrained-ness" of `S::operator
int` and `S::operator T<int>`; the template kind of the former is
`TK_NonTemplate`, whereas the template kind of the later is
`TK_FunctionTemplateSpecialization`. The later kind is not "expected" by
the function, thus the assertion-failure.


  Commit: 5629249575f56f6135fb63e2f0d4ca9a7375167c
      https://github.com/llvm/llvm-project/commit/5629249575f56f6135fb63e2f0d4ca9a7375167c
  Author: Artem Belevich <tra at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    A clang/test/CodeGenCUDA/host-used-extern-determinism.cu

  Log Message:
  -----------
  [CUDA] Emit used function list in deterministic order. (#102661)

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


  Commit: 8470cdd499904093ba4faeff870fee12a3e80ff3
      https://github.com/llvm/llvm-project/commit/8470cdd499904093ba4faeff870fee12a3e80ff3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/ConstantArgumentGlobalisation.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/rewrite-directives.cpp
    M flang/lib/Semantics/symbol.cpp

  Log Message:
  -----------
  [flang] Use llvm::any_of and llvm::none_of (NFC) (#102797)


  Commit: 0801a37115ec54b7621ee63998c27ab919460a43
      https://github.com/llvm/llvm-project/commit/0801a37115ec54b7621ee63998c27ab919460a43
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [mlir-tblgen] Use llvm::any_of (NFC) (#102795)


  Commit: 4afa2de59a4e45365c59ed97abdeea86f612d7ca
      https://github.com/llvm/llvm-project/commit/4afa2de59a4e45365c59ed97abdeea86f612d7ca
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize
    A compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_overflow.cpp

  Log Message:
  -----------
  [HWASan] symbolize stack overflows (#95308)


  Commit: fe7d2841cf67ba4c8b9780ea09557a558b2501a8
      https://github.com/llvm/llvm-project/commit/fe7d2841cf67ba4c8b9780ea09557a558b2501a8
  Author: Artem Belevich <tra at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/extractelement.ll

  Log Message:
  -----------
  [NVPTX] unbreak extract_elt lowering (#102688)

LLVM has started using `freeze` instruction, and that unintentionally
broke the lowering of some vector operations in NVPTX.


  Commit: d9caea18f946390e0b458471cdc3e3252099c1cf
      https://github.com/llvm/llvm-project/commit/d9caea18f946390e0b458471cdc3e3252099c1cf
  Author: Xiaoyang Liu <siujoeng.lau at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__ranges/transform_view.h
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/types.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/types.h

  Log Message:
  -----------
  [libc++][ranges] LWG3564: `transform_view::iterator<true>::value_type` and `iterator_category` should use `const F&` (#91816)

## Introduction

This patch implements LWG3564:
`transform_view::iterator<true>::value_type` and `iterator_category`
should use `const F&`.

`transform_view`'s iterator currently obtained from a `const
transform_view` invoke the transformation function as `const`, but the
`value_type` and `iterator_category` determination uses non-`const`
`F&`.

## Reference

-
[[range.transform.iterator]](https://eel.is/c++draft/range.transform.iterator)
- [LWG3564](https://cplusplus.github.io/LWG/issue3564)


  Commit: 11aa31f595325d6b2dede3364e4b86d78fffe635
      https://github.com/llvm/llvm-project/commit/11aa31f595325d6b2dede3364e4b86d78fffe635
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  Revert "[MemProf] Reduce cloning overhead by sharing nodes when possible" (#102932)

Reverts llvm/llvm-project#99832

This caused a couple failures in wider testing, reverting for now and
will recommit once they are addressed


  Commit: 862f5040fb854b5ca0aba2d3088396201bf7db9a
      https://github.com/llvm/llvm-project/commit/862f5040fb854b5ca0aba2d3088396201bf7db9a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    A llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll

  Log Message:
  -----------
  [AMDGPU] Enable AMDGPUAttributorPass in full LTO (#102673)

This is basically same as
https://github.com/llvm/llvm-project/pull/102086 but reverts some test
case changes that are no longer needed.


  Commit: e40915b7407eda4b370658da5c9606e310b55d19
      https://github.com/llvm/llvm-project/commit/e40915b7407eda4b370658da5c9606e310b55d19
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [AMDGPU] Use llvm::any_of and llvm::none_of (NFC) (#102794)


  Commit: 03e6675fc78783d0d0b0a784eccbd5ff19de23a2
      https://github.com/llvm/llvm-project/commit/03e6675fc78783d0d0b0a784eccbd5ff19de23a2
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    A llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll

  Log Message:
  -----------
  [DXIL][Analysis] Add DXILMetadataAnalysis pass (#102079)

DXIL Metadata Analysis passes (one for legacy PM and one for new PM)
that collect following DXIL module metadata information in a structure
are added.
1. Shader Model version
2. DXIL version 
3. Shader Stage

Information collected using the legacy pass is verified by adding
additional test commands to existing metadata test sources.


  Commit: 90aac06c7f49dd275a49b843b5fd91cb00d549b4
      https://github.com/llvm/llvm-project/commit/90aac06c7f49dd275a49b843b5fd91cb00d549b4
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
    A flang/test/Lower/ident.f90
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Target/LLVMIR/Import/ident.ll
    A mlir/test/Target/LLVMIR/ident.mlir

  Log Message:
  -----------
  [flang][mlir] Add llvm.ident metadata when compiling with flang

This brings the behavior of flang in line with clang which also adds
this metadata unconditionally.

Co-authored-by: Tarun Prabhu <tarun.prabhu at gmail.com>


  Commit: f1e2886261281e788e4faae406c24e787c1dbdd0
      https://github.com/llvm/llvm-project/commit/f1e2886261281e788e4faae406c24e787c1dbdd0
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
    M lldb/source/Symbol/ObjectFile.cpp
    A lldb/test/Shell/ObjectFile/ELF/Inputs/memory-elf.cpp
    A lldb/test/Shell/ObjectFile/ELF/elf-dynamic-no-shdrs.yaml
    A lldb/test/Shell/ObjectFile/ELF/elf-memory.test

  Log Message:
  -----------
   [LLDB] Impove ObjectFileELF's .dynamic parsing and usage. (#102570)

This patch improves the ability of a ObjectFileELF instance to read the
.dynamic section. It adds the ability to read the .dynamic section from
the PT_DYNAMIC program header which is useful for ELF files that have no
section headers and for ELF files that are read from memory. It cleans
up the usage of the .dynamic entries so that
ObjectFileELF::ParseDynamicSymbols() is the only code that parses
.dynamic entries, teaches that function the read and store the string
values for each .dynamic entry. We now dump the .dynamic entries in the
output of "image dump objfile". It also cleans up the code that gets the
dynamic string table so that it can grab it from the DT_STRTAB and
DT_STRSZ .dynamic entries for when we have a ELF file with no section
headers or we are reading it from memory.


  Commit: e4e938f3cdf11d7d62c558ed7ee0b6097ded338d
      https://github.com/llvm/llvm-project/commit/e4e938f3cdf11d7d62c558ed7ee0b6097ded338d
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/length.ll

  Log Message:
  -----------
  [HLSL] Lower Length to SPIR-V backend (#102243)

This PR finishes #99134 by lowering the length function to the SPIR-V
backend. A test was added to verify that the generated SPIR-V is
correct.
Fixes #99134


  Commit: d5849af68e0cb2436d317ea0c5171e8da85fd846
      https://github.com/llvm/llvm-project/commit/d5849af68e0cb2436d317ea0c5171e8da85fd846
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 03e6675fc787


  Commit: dc2f39e96c48dac450a535c412d0928d458590de
      https://github.com/llvm/llvm-project/commit/dc2f39e96c48dac450a535c412d0928d458590de
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/daddl.cpp
    M libc/src/math/generic/dsubl.cpp

  Log Message:
  -----------
  [libc] Enable all supported math functions on the GPU (#102563)

Summary:
Simply copies the x64 versions to the GPU directory. Ignoring f128 for
now, but adding long double entrypoints which are identical to `double`
on the target.


  Commit: ee5d572718f7bb07f89b69df393b28a89033a5ca
      https://github.com/llvm/llvm-project/commit/ee5d572718f7bb07f89b69df393b28a89033a5ca
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/daddl.cpp
    M libc/src/math/generic/dsubl.cpp

  Log Message:
  -----------
  [libc] Undo accidental changes to `dsubl` that were leftoever


  Commit: dc21cb5cc74fdff18418092570230cd980cafa27
      https://github.com/llvm/llvm-project/commit/dc21cb5cc74fdff18418092570230cd980cafa27
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    A lld/test/ELF/linkerscript/phdrs-no-tls.test

  Log Message:
  -----------
  [ELF,test] Test STT_TLS and relocation without PT_TLS


  Commit: c6428162c13b330b26b1916a9d6c45ee41ff4a1e
      https://github.com/llvm/llvm-project/commit/c6428162c13b330b26b1916a9d6c45ee41ff4a1e
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [NFC] Deduplicate clang::AccessKinds to diagnostic strings (#102030)


  Commit: d4f6fcf5aaa0911a91317c0b06779f13077d6b58
      https://github.com/llvm/llvm-project/commit/d4f6fcf5aaa0911a91317c0b06779f13077d6b58
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M compiler-rt/lib/hwasan/scripts/hwasan_symbolize
    R compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_overflow.cpp

  Log Message:
  -----------
  Revert "[HWASan] symbolize stack overflows" (#102951)

Reverts llvm/llvm-project#95308

Broke buildbot https://lab.llvm.org/buildbot/#/builders/51/builds/2364


  Commit: b812e57ac301c7f88171cc73e213b70078727b16
      https://github.com/llvm/llvm-project/commit/b812e57ac301c7f88171cc73e213b70078727b16
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll

  Log Message:
  -----------
  [SCEV] Consolidate code for proving wrap flags of controlling finite IVs (#101404)

The canAssumeNoSelfWrap routine in howManyLessThans was doing two subtly
inter-related things. First, it was proving no-self-wrap. This exactly
duplicates the existing logic in the caller. Second, it was establishing
the precondition for the nw->nsw/nuw inference. Specifically, we need to
know that *this* exit must be taken for the inference to be sound.
Otherwise, another (possible abnormal) exit could be taken in the
iteration where this IV would become poison.

This change moves all of that logic into the caller, and caches the
resulting nuw/nsw flags in the AddRec. This centralizes the logic in one
place, and makes it clear that it all depends on controlling the sole
exit.

We do loose a couple cases with SCEV predication. Specifically, if SCEV
predication was able to convert e.g. zext(addrec) into an addrec(zext)
using predication, but didn't record the nuw fact on the new addrec,
then the consuming code can no longer fix this up. I don't think this
case particularly matters.

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: e26b42c70d37cbea47016984e1d2bfc347fb8818
      https://github.com/llvm/llvm-project/commit/e26b42c70d37cbea47016984e1d2bfc347fb8818
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h

  Log Message:
  -----------
  [lldb] Avoid calling DataLayout constructor accepting Module pointer (NFC) (#102839)

The constructor initializes `*this` with a copy of `M->getDataLayout()`,
which can just be spelled as `DataLayout DL = M->getDataLayout()`. In
all places where the constructor is used, Module outlives DataLayout, so
store a reference to it instead of cloning.

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


  Commit: b6448a03d887a1615fdffd1016109f9f24bea275
      https://github.com/llvm/llvm-project/commit/b6448a03d887a1615fdffd1016109f9f24bea275
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp
    M lld/ELF/Symbols.cpp
    M lld/test/ELF/invalid/tls-symbol.s
    M lld/test/ELF/linkerscript/phdrs-no-tls.test

  Log Message:
  -----------
  [ELF] Change "no PT_TLS" error to use errorOrWarn

so that --noinhibit-exec downgrades the error to a warning, which helps
debugging when `PHDRS` is specified without `PT_TLS`. Also update the
message to make it accurate: STT_TLS may exist in the absence of PT_TLS.

In addition, invoking `exitLld(1)` (through `fatal`) is problematic
(#66974): When a thread is `exitLld(1)`, triggering `llvm_shutdown`,
another thread may be at `relocateAlloc`, accessing `sec.relocs()` which
got destroyed(tampered?), leading to
incorrect `llvm_unreachable("invalid expression")`.


  Commit: b4bc7b182c696c540f40bc887d7d20a95a0a5cde
      https://github.com/llvm/llvm-project/commit/b4bc7b182c696c540f40bc887d7d20a95a0a5cde
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc] add support for comments for members in HTML output (#101255)

currently the HTML output does not support comments attached to class
members, this patch modifies the HTMLGenerator to add comments for the
output.


  Commit: 290f7eacb9691feb7695848c98bcc155fd446f62
      https://github.com/llvm/llvm-project/commit/290f7eacb9691feb7695848c98bcc155fd446f62
  Author: quanwanandy <quanwanandy at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  Fix bazel build (#102960)


  Commit: 15aa4ef057438df5bae8aaf7ff07b31dfcc1ef77
      https://github.com/llvm/llvm-project/commit/15aa4ef057438df5bae8aaf7ff07b31dfcc1ef77
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Add the ExtractElementInst class (#102706)


  Commit: 8ea8f1f2fe501e0be5d0142d79651f490fb2ae2c
      https://github.com/llvm/llvm-project/commit/8ea8f1f2fe501e0be5d0142d79651f490fb2ae2c
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/list.h
    M compiler-rt/lib/scudo/standalone/tests/list_test.cpp

  Log Message:
  -----------
  [scudo] Support linking with index in IntrusiveList (#101262)

The nodes of list may be managed in an array. Instead of managing them
with pointers, using the array index will save some memory in some
cases.

When using the list linked with index, remember to call init() to set up
the base address of the array and a `EndOfListVal` which is nil of the
list.


  Commit: 123b6fcc70af17d81c903b839ffb55afc9a9728f
      https://github.com/llvm/llvm-project/commit/123b6fcc70af17d81c903b839ffb55afc9a9728f
  Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Parse/ParsePragma.cpp
    R clang/test/Preprocessor/pragma_mc_func.c

  Log Message:
  -----------
  [AIX] Revert `#pragma mc_func` check (#102919)

https://github.com/llvm/llvm-project/pull/99888 added a specific
diagnostic for `#pragma mc_func` on AIX. There are some disagreements
on:

1. If the check should be on by default. Leaving the check off by
default is dangerous, since it is difficult to be aware of such a check.
Turning it on by default at the moment causes build failures on AIX. See
https://github.com/llvm/llvm-project/pull/101336 for more details.
2. If the check can be made more general. See
https://github.com/llvm/llvm-project/pull/101336#issuecomment-2269283906.

This PR reverts this check from `main` so we can flush out these
disagreements.


  Commit: a2acea5c380534430a01843698d4bf46b018110f
      https://github.com/llvm/llvm-project/commit/a2acea5c380534430a01843698d4bf46b018110f
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp

  Log Message:
  -----------
  [libcxx] [test] Mark gdb_pretty_printer_test.sh.cpp as unsupported on Windows (#102891)

In practice, this test hasn't been run by any of the Windows
configurations so far, because it has been excluded by the "UNSUPPORTED:
clang-18, clang-19" line - but it does end up failing if running with
e.g. clang-20 on Windows.

As the test fails on more fundamental issues on Windows, mark it
outright unsupported on this platform; this fixes testing libcxx with a
recent nightly version of Clang from git main.


  Commit: 93f754c10099d08df34ff6b9562d545e300d55ab
      https://github.com/llvm/llvm-project/commit/93f754c10099d08df34ff6b9562d545e300d55ab
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [LegalizeTypes] Reuse Op1 and Op2 variables to hold promoted values in PromoteIntRes_ADDSUBSHLSAT. NFC (#102840)

We don't need the original values after we promote them.


  Commit: 91c3a718b28c92c95343e7073fbddc39a181a801
      https://github.com/llvm/llvm-project/commit/91c3a718b28c92c95343e7073fbddc39a181a801
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/test/CodeGen/Mips/bittest.ll

  Log Message:
  -----------
  [Mips] ISel zext nneg the same as sext for Mips64. (#102852)

Fixes #62587.


  Commit: 652707a6457eeb3927a1fe82e6b2cbc2a1fa22f5
      https://github.com/llvm/llvm-project/commit/652707a6457eeb3927a1fe82e6b2cbc2a1fa22f5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M compiler-rt/lib/nsan/CMakeLists.txt
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan.h
    A compiler-rt/lib/nsan/nsan_allocator.cpp
    A compiler-rt/lib/nsan/nsan_allocator.h
    M compiler-rt/lib/nsan/nsan_flags.inc
    M compiler-rt/lib/nsan/nsan_malloc_linux.cpp
    A compiler-rt/lib/nsan/nsan_new_delete.cpp
    M compiler-rt/lib/nsan/nsan_platform.h
    M compiler-rt/lib/nsan/nsan_thread.cpp
    M compiler-rt/lib/nsan/nsan_thread.h
    A compiler-rt/test/nsan/Posix/allocator_mapping.cpp
    A compiler-rt/test/nsan/allocator_interface.cpp
    A compiler-rt/test/nsan/malloc_hook.cpp
    A compiler-rt/test/nsan/new_delete_test.cpp

  Log Message:
  -----------
  [nsan] Use sanitizer allocator

* The performance is better than the glibc allocator.
* Allocator interface functions, sanitizer allocator options, and
  MallocHooks/FreeHooks are supported.
* Shadow memory has specific memory layout requirement. Using libc
  allocator could lead to conflicts.
* When we add a mmap interceptor for reliability (the VMA could reuse a
  previously released VMA that is poisoned): glibc may invoke an
  internal system call to call unmmap, which cannot be intercepted. We
  will not be able to return the shadow memory to the OS.

Similar to dfsan https://reviews.llvm.org/D101204 . Also intercept
operator new/delete to be similar to other sanitizers using the
sanitizer allocator. The align_val_t overload of operator new has
slightly less overhead.

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


  Commit: 05901e980590f721cdc9fbcf1f99353942d0d5d8
      https://github.com/llvm/llvm-project/commit/05901e980590f721cdc9fbcf1f99353942d0d5d8
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/test/Conversion/ConvertToSPIRV/scf.mlir

  Log Message:
  -----------
  [mlir][spirv] Add tests for `scf.while` and `scf.for` in `convert-to-spirv` pass (#102528)

This PR adds lit tests that check for `scf.while` and `scf.for`
conversions for the `convert-to-spirv` pass, introduced in #95942.


  Commit: 825dbbbb94c985da4fd18da3e6e3baac05b11e23
      https://github.com/llvm/llvm-project/commit/825dbbbb94c985da4fd18da3e6e3baac05b11e23
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h

  Log Message:
  -----------
  [AMDGPU] NFC: Add helper to query archVGPR (#102690)

For any users that is interested in just the ArchVGPR count (without
comparing to AGPR count)


  Commit: 6b7afaa9db8f904ebf0262774e38e54b36598782
      https://github.com/llvm/llvm-project/commit/6b7afaa9db8f904ebf0262774e38e54b36598782
  Author: Brox Chen <broxigarchen at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    A llvm/test/CodeGen/AMDGPU/shrink-true16.mir

  Log Message:
  -----------
  [AMDGPU][True16] fix a bug in codeGen causing e64 with wrong vgpr type to shrink (#102942)

This bug is introduced in
https://github.com/llvm/llvm-project/pull/102198

The previous path change to use realTrue16 flag, however, we have some
t16 instructions that are implemented with fake16, and has Lo128
registers types. Thus we should still using hasTrue16Bit flag for
shrinking check

---------

Co-authored-by: guochen2 <guochen2 at amd.com>


  Commit: b368404dee8c341dc022a9e9a868f5a268e92033
      https://github.com/llvm/llvm-project/commit/b368404dee8c341dc022a9e9a868f5a268e92033
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libcxx/test/support/count_new.h

  Log Message:
  -----------
  [libc++][NFC] Fix typo in count_new.h (#102049)

A function was named alocate_aligned_impl, when it should have been
named allocate_aligned_impl.


  Commit: ecbbe5b431892820b442aa36e06ab66ae94d52e9
      https://github.com/llvm/llvm-project/commit/ecbbe5b431892820b442aa36e06ab66ae94d52e9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll

  Log Message:
  -----------
  [SLP]Fix mask building for alternate node cost estimation (#102966)

Need to to use same functionality in cost model, as for the codegen, to
correctly build the shuffle mask and estimate the cost.


  Commit: b1edac0496f47374c9780f3f83c6773eed73a66e
      https://github.com/llvm/llvm-project/commit/b1edac0496f47374c9780f3f83c6773eed73a66e
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/Minidump.h
    M llvm/include/llvm/Object/Minidump.h
    M llvm/include/llvm/ObjectYAML/MinidumpYAML.h
    M llvm/lib/Object/Minidump.cpp
    M llvm/lib/ObjectYAML/MinidumpEmitter.cpp
    M llvm/lib/ObjectYAML/MinidumpYAML.cpp
    M llvm/test/tools/obj2yaml/Minidump/basic.yaml
    M llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp

  Log Message:
  -----------
  [Obj2Yaml] Add support for minidump generation with 64b memory ranges. (#101272)

This PR adds support for `obj2yaml` and `yaml2obj` to generate minidumps
that have a Memory64List stream. This is a prerequisite to #101086.

Worth noting
- ~~const dropped on minidumps so we could cache a MemoryDescriptor_64
to it's actual offset, preventing the need to loop multiple times~~
- doesn't reuse the existing `ListStream` code in some places, because
the Memory64List has a different width size field (unsigned 64), and a
larger header than all the other streams. I determined refactoring the
existing code to support Mem64 would be worse than supporting the
special case.


  Commit: 0889809c706fd926b786bc2f8852646a17d7e21c
      https://github.com/llvm/llvm-project/commit/0889809c706fd926b786bc2f8852646a17d7e21c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libc/test/UnitTest/LibcTestMain.cpp

  Log Message:
  -----------
  [libc] Fix warning on 'extern "C" int main' in test suite (#102973)

Summary:
According to the C++ standard, The main function shall not be declared
with a linkage-specification. after some changes in
https://github.com/llvm/llvm-project/pull/101853 this started emitting
warnings when building / testing the C library. This source file is
shared with the overlay tests as well as the full build tests. The full
build tests are compiled with `-ffreestanding`, as are all the startup /
integration files. The standard says freestanding environment are all
implementation defined, so this is valid in those cases. This patch
simply prevents adding the linkage when we are compiling unit tests,
which are hosted. This is a continuation on
https://github.com/llvm/llvm-project/pull/102825.


  Commit: bfbd4cc88ccb3de71010f1166142ae8412db6ca3
      https://github.com/llvm/llvm-project/commit/bfbd4cc88ccb3de71010f1166142ae8412db6ca3
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/test/MC/Disassembler/X86/apx/ccmp.txt
    M llvm/test/MC/X86/apx/ccmp-att.s
    M llvm/test/MC/X86/apx/ccmp-intel.s

  Log Message:
  -----------
  [X86,MC,test] Add enc/dec tests for ccmpbe (#102883)

This is also pre-commit test for #102284


  Commit: 887f7002b65f7376c7a5004535bd08c95bdaa8f8
      https://github.com/llvm/llvm-project/commit/887f7002b65f7376c7a5004535bd08c95bdaa8f8
  Author: Connie <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M bolt/test/X86/encoding-validation.s
    M bolt/test/X86/gotpcrelx.s
    M bolt/test/X86/icf-jump-tables.test
    M bolt/test/X86/indirect-goto-pie.test
    M bolt/test/X86/jump-table-func-entry.s
    M bolt/test/X86/keep-nops.s
    M bolt/test/X86/linux-bug-table.s
    M bolt/test/X86/linux-orc.s
    M bolt/test/X86/linux-pci-fixup.s
    M bolt/test/X86/linux-smp-locks.s
    M bolt/test/X86/linux-static-calls.s
    M bolt/test/X86/linux-static-keys.s
    M bolt/test/X86/pt_gnu_relro.s
    M bolt/test/X86/unclaimed-jt-entries.s
    M bolt/test/X86/vararg.test
    M bolt/test/runtime/X86/unclaimed-jt-entries.s

  Log Message:
  -----------
  [NFC][bolt][test] Change '|&' to '2>&1 |' for lit internal shell support (#102402)

This patches changes all references to '|&' in bolt tests to instead use
the '2>&1 |' syntax for better consistency across testing and so that
lit's internal shell can be used to run these tests. This addresses a
suggestion made in the comments of this RFC:
https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179.

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


  Commit: 80525dfcde5bf8aae6ab6b0810124ba502de6096
      https://github.com/llvm/llvm-project/commit/80525dfcde5bf8aae6ab6b0810124ba502de6096
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CodeGenFunction.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/Cuda.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload.h
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload_device.h
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload_host.h
    M clang/lib/Headers/openmp_wrappers/__clang_openmp_device_functions.h
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/test/CodeGenCUDA/Inputs/cuda.h
    A clang/test/CodeGenCUDA/offload_via_llvm.cu
    A clang/test/Driver/cuda-via-liboffload.cu
    M offload/include/Shared/APITypes.h
    M offload/include/omptarget.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/src/CMakeLists.txt
    A offload/src/KernelLanguage/API.cpp
    M offload/src/exports
    M offload/test/lit.cfg
    A offload/test/offloading/CUDA/basic_launch.cu
    A offload/test/offloading/CUDA/basic_launch_blocks_and_threads.cu
    A offload/test/offloading/CUDA/basic_launch_multi_arg.cu
    A offload/test/offloading/CUDA/kernel_tu.cu.inc
    A offload/test/offloading/CUDA/launch_tu.cu

  Log Message:
  -----------
  [Offload][CUDA] Allow CUDA kernels to use LLVM/Offload (#94549)

Through the new `-foffload-via-llvm` flag, CUDA kernels can now be
lowered to the LLVM/Offload API. On the Clang side, this is simply done
by using the OpenMP offload toolchain and emitting calls to `llvm*`
functions to orchestrate the kernel launch rather than `cuda*`
functions. These `llvm*` functions are implemented on top of the
existing LLVM/Offload API.

As we are about to redefine the Offload API, this wil help us in the
design process as a second offload language.

We do not support any CUDA APIs yet, however, we could:
  https://www.osti.gov/servlets/purl/1892137

For proper host execution we need to resurrect/rebase
  https://tianshilei.me/wp-content/uploads/2021/12/llpp-2021.pdf
(which was designed for debugging).

```
❯❯❯ cat test.cu
extern "C" {
void *llvm_omp_target_alloc_shared(size_t Size, int DeviceNum);
void llvm_omp_target_free_shared(void *DevicePtr, int DeviceNum);
}

__global__ void square(int *A) { *A = 42; }

int main(int argc, char **argv) {
  int DevNo = 0;
  int *Ptr = reinterpret_cast<int *>(llvm_omp_target_alloc_shared(4, DevNo));
  *Ptr = 7;
  printf("Ptr %p, *Ptr %i\n", Ptr, *Ptr);
  square<<<1, 1>>>(Ptr);
  printf("Ptr %p, *Ptr %i\n", Ptr, *Ptr);
  llvm_omp_target_free_shared(Ptr, DevNo);
}

❯❯❯ clang++ test.cu -O3 -o test123 -foffload-via-llvm --offload-arch=native

❯❯❯ llvm-objdump --offloading test123

test123:        file format elf64-x86-64

OFFLOADING IMAGE [0]:
kind            elf
arch            gfx90a
triple          amdgcn-amd-amdhsa
producer        openmp

❯❯❯ LIBOMPTARGET_INFO=16 ./test123
Ptr 0x155448ac8000, *Ptr 7
Ptr 0x155448ac8000, *Ptr 42
```


  Commit: f8f34c7e4914ce9e90453e902e2e03f129119fb6
      https://github.com/llvm/llvm-project/commit/f8f34c7e4914ce9e90453e902e2e03f129119fb6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 80525dfcde5b


  Commit: 75c7bca740935a0cca462e28475dd6b046a6872c
      https://github.com/llvm/llvm-project/commit/75c7bca740935a0cca462e28475dd6b046a6872c
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/FuzzMutate/RandomIRBuilder.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [DataLayout] Remove constructor accepting a pointer to Module (#102841)

The constructor initializes `*this` with `M->getDataLayout()`, which
is effectively the same as calling the copy constructor.
There does not seem to be a case where a copy would be necessary.

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


  Commit: f1fe45106572204f36e82ded2b921b9984ec32e5
      https://github.com/llvm/llvm-project/commit/f1fe45106572204f36e82ded2b921b9984ec32e5
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M utils/bazel/.bazelrc
    M utils/bazel/.bazelversion

  Log Message:
  -----------
  [bazel] Upgrade to 7.3.0 (#102991)

Most importantly this rc has a change that we had to revert for
previously


  Commit: 7951673d408ee64744d0b924a49db78e8243d876
      https://github.com/llvm/llvm-project/commit/7951673d408ee64744d0b924a49db78e8243d876
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/test/libcxx/system_reserved_names.gen.py

  Log Message:
  -----------
  [libc++] Use a different smart ptr type alias (#102089)

The `_SP` type is used by some C libraries and this alias could conflict
with it.


  Commit: d990cc4568f45c28d1d5ac86125935628c76efc8
      https://github.com/llvm/llvm-project/commit/d990cc4568f45c28d1d5ac86125935628c76efc8
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/FormatTestCSharp.cpp

  Log Message:
  -----------
  [clang-format] Correctly handle C# attribute on auto property (#102921)

Fixes #101487.


  Commit: 17db3313c75120fd8415529723eb96cbad399338
      https://github.com/llvm/llvm-project/commit/17db3313c75120fd8415529723eb96cbad399338
  Author: Enna1 <xumingjie.enna1 at bytedance.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/test/AST/atomic-expr.cpp

  Log Message:
  -----------
  [ASTDump] TextNodeDumper learned to dump builtin name for AtomicExpr (#102748)

In 4198576157bfd0d08c08b784220d6132b709ae2c, we add support for dumping
builtin name for AtomicExpr in JSON dump. This change syncs
`TextNodeDumper` with `JSONNodeDumper`, makes `TextNodeDumper` learned
to dump builtin name for AtomicExpr.


  Commit: 70cf58e6c193a63f66028ae340a30c9dc181f460
      https://github.com/llvm/llvm-project/commit/70cf58e6c193a63f66028ae340a30c9dc181f460
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll

  Log Message:
  -----------
  [SLP][REVEC] Make SLP vectorize shufflevector. (#102489)

Add getShufflevectorNumGroups to vectorize shufflevector.

Current getShufflevectorNumGroups can only vectorize limited pattern
(e.g., the masks of shufflevector use the elements of the source in
order).

In addition, ReuseShuffleIndices and ReorderIndices are not supported.


  Commit: 3f9c9aceddf5f6dc736ee39bb2088fd3ce884a08
      https://github.com/llvm/llvm-project/commit/3f9c9aceddf5f6dc736ee39bb2088fd3ce884a08
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M offload/test/offloading/CUDA/basic_launch.cu
    M offload/test/offloading/CUDA/basic_launch_blocks_and_threads.cu
    M offload/test/offloading/CUDA/basic_launch_multi_arg.cu
    M offload/test/offloading/CUDA/launch_tu.cu

  Log Message:
  -----------
  [Offload] Add the right paths to the CUDA lit tests (#102997)


  Commit: a27f40e5d9636b0853e8de0b95d72261f8d34696
      https://github.com/llvm/llvm-project/commit/a27f40e5d9636b0853e8de0b95d72261f8d34696
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGenCXX/x86_64-vaarg.cpp

  Log Message:
  -----------
  [X86_64] Fix empty field error in vaarg of C++. (#101639)

Such struct types:
```
struct {
  struct{} a;
  long long b;
};

stuct {
  struct{} a;
  double b;
};
```
For such structures, Lo is NoClass and Hi is Integer/SSE. And when this
structure argument is passed, the high part is passed at offset 8 in
memory. So we should do special handling for these types in
EmitVAArg.Fix https://github.com/llvm/llvm-project/issues/79790 and fix
https://github.com/llvm/llvm-project/issues/86371.


  Commit: b4b0c0230648abb600040e1dc1c1a7ad72b68dde
      https://github.com/llvm/llvm-project/commit/b4b0c0230648abb600040e1dc1c1a7ad72b68dde
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make tryToReduce and related functions support vector instructions. (#102327)


  Commit: 136e5f4850fb40b1c2be2da5e2032ab3d85a493e
      https://github.com/llvm/llvm-project/commit/136e5f4850fb40b1c2be2da5e2032ab3d85a493e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [NFC][Support] Create helper function to parse bool (#102818)

Create a helper template function to parse bool, to eliminate code
duplication.


  Commit: c772f5d53a75f2d5d0e8eb8c09c2d6c8d0fb1255
      https://github.com/llvm/llvm-project/commit/c772f5d53a75f2d5d0e8eb8c09c2d6c8d0fb1255
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/memcpy-crash-zvl32b.ll

  Log Message:
  -----------
  [RISCV] Disable fixed vectors in getOptimalMemOpType if minimum VLEN is 32. (#102974)

This is needed to match #102405 which disabled fixed to scalable vector
lowering for VLEN=32.

Fixes #102566 and #102568.


  Commit: b8fc97fdc107433da90c0bf9f9e8f7dd505f08a5
      https://github.com/llvm/llvm-project/commit/b8fc97fdc107433da90c0bf9f9e8f7dd505f08a5
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [NFC][TableGen] Refactor preprocessor directive handling (#102967)

- Make `PreprocessorDirs` array constexpr, move its definition outside
the anonymous namespace, and make it static.
- Change `Word` field to a StringRef.
- Simplify `prepIsDirective` to use StringRef comparison and early
`continue` per LLVM coding standards.
- Use C++17 structured bindings to iterate over the array.


  Commit: 367e99e6c2d2ed026f9e038a540cf6047f0d1661
      https://github.com/llvm/llvm-project/commit/367e99e6c2d2ed026f9e038a540cf6047f0d1661
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/InterpFrame.cpp
    M clang/test/AST/Interp/constexpr-frame-describe.cpp

  Log Message:
  -----------
  Revert "Revert "[clang][Interp] Improve "in call to" call argument printing"" (#102786)

Reverts llvm/llvm-project#102785


  Commit: 7c3641121009147aba0ea45962bd69385bd838b1
      https://github.com/llvm/llvm-project/commit/7c3641121009147aba0ea45962bd69385bd838b1
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/test/Lower/CUDA/cuda-program-global.cuf

  Log Message:
  -----------
  [flang][cuda] Do not lower PINNED variable in main program as global (#102996)

Similar to #102512. Do not lower PINNED variable descriptors in program
unit as globals but keep them local.


  Commit: d4dfeb373e95b09ef86865cb33cae21213488afe
      https://github.com/llvm/llvm-project/commit/d4dfeb373e95b09ef86865cb33cae21213488afe
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    M clang/lib/AST/Interp/Interp.cpp
    M clang/test/AST/Interp/cxx20.cpp
    M clang/test/AST/Interp/new-delete.cpp
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Compile field+base destruction into class dtor func (#102871)


  Commit: b68df879c64ac9bb17ce6cc09d5ad86e803a3211
      https://github.com/llvm/llvm-project/commit/b68df879c64ac9bb17ce6cc09d5ad86e803a3211
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [TableGen] Fix build failure by using int type for NextChar (#103000)

Fixes an issue in https://github.com/llvm/llvm-project/pull/102967, 
which inddvertently changed the type of `NextChar` from int to char,
causing ppc64le build failures.


  Commit: 3c5509d9ad25ee49aa68ab0c60d73d9587635b62
      https://github.com/llvm/llvm-project/commit/3c5509d9ad25ee49aa68ab0c60d73d9587635b62
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [flang] Use llvm::is_contained (NFC) (#102999)


  Commit: 2c62d08bda98bab743fc86c9ccc40304949566d6
      https://github.com/llvm/llvm-project/commit/2c62d08bda98bab743fc86c9ccc40304949566d6
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/test/MC/X86/apx/ccmp-att.s
    M llvm/test/MC/X86/apx/ccmp-intel.s
    M llvm/test/MC/X86/apx/ctest-att.s
    M llvm/test/MC/X86/apx/ctest-intel.s
    M llvm/test/MC/X86/apx/setzucc-att.s
    M llvm/test/MC/X86/apx/setzucc-intel.s
    M llvm/test/MC/X86/cmpccxadd-att-alias.s
    M llvm/test/MC/X86/cmpccxadd-intel-alias.s

  Log Message:
  -----------
  [X86][MC] Add assembly alias for CCMP, CTEST, SETZUCC, CMPCCXADD (#102284)


  Commit: aa03327a463ac4d538127e3fc03476a5f42b2bb1
      https://github.com/llvm/llvm-project/commit/aa03327a463ac4d538127e3fc03476a5f42b2bb1
  Author: Mészáros Gergely <gergely.meszaros at intel.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/combine-concatvectors.ll

  Log Message:
  -----------
  [X86][AVX] Add missing X86ISD::VBROADCAST(v2i64 -> v4i64) isel pattern for AVX1 targets (#102853)

An internal bug revealed that this form can be formed from existing
combines, and then fail to select. Use the same pattern as v2f64 ->
v4f64 (the instructions are moving bits around the actual type does not
matter here).


  Commit: 3b9f183958c00d2dfe9f91ffdabad9628f2d01d3
      https://github.com/llvm/llvm-project/commit/3b9f183958c00d2dfe9f91ffdabad9628f2d01d3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [AMDGPU] Use llvm::any_of, llvm::all_of, and llvm::none_of (NFC) (#103007)


  Commit: 2d53f0aab7851b09e8773eb1ca8bd1aa85d20d4b
      https://github.com/llvm/llvm-project/commit/2d53f0aab7851b09e8773eb1ca8bd1aa85d20d4b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Interp/Compiler.cpp
    A clang/lib/AST/Interp/CompilerComplex.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Move _Complex compiler code to separate file (#103004)


  Commit: f5ba3f6740ff13c46da6d3306e39b026f2d15c5a
      https://github.com/llvm/llvm-project/commit/f5ba3f6740ff13c46da6d3306e39b026f2d15c5a
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 2d53f0aab785


  Commit: 7030280329c3a723a42304e92f9c207acb8ea731
      https://github.com/llvm/llvm-project/commit/7030280329c3a723a42304e92f9c207acb8ea731
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUDialect.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm-32b.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir

  Log Message:
  -----------
  [mlir][GPU] Improve `gpu.module` op implementation (#102866)

- Replace hand-written parser/printer with auto-generated assembly
format.
- Remove implicit `gpu.module_end` terminator and use the `NoTerminator`
trait instead. (Same as `builtin.module`.)
- Turn the region into a graph region. (Same as `builtin.module`.)


  Commit: 86ef9ee60015c582b14ecfaedda415e671578b4b
      https://github.com/llvm/llvm-project/commit/86ef9ee60015c582b14ecfaedda415e671578b4b
  Author: Abinaya Saravanan <quic_asaravan at quicinc.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonMask.cpp
    A llvm/test/CodeGen/Hexagon/mask-instr.ll

  Log Message:
  -----------
  [HEXAGON] Enable Utilize Mask Instruction Pass only if the Arch (#102880)

version is greater than v66

No support for mask instruction before arch version v66


  Commit: 2913e71865dfc063a47ddfaf1e2ce07763f69614
      https://github.com/llvm/llvm-project/commit/2913e71865dfc063a47ddfaf1e2ce07763f69614
  Author: Pablo Antonio Martinez <pablo.antonio.martinez at huawei.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-transfer-unroll.mlir

  Log Message:
  -----------
  [mlir][vector] Refactor vector-transfer-unroll.mlir (NFC) (#102593)

Overview of changes:

- All memref input arguments are re-named to %mem.
- All vector input arguments are re-named to %vec.
- LIT variables are update to be consistent with input arguments.
- Renamed all output arguments as %res.
- Unified identation of `FileCheck` commands
- Separated tests (previously there was a big test containing a couple of tests)


  Commit: 2ab910c08c4ed43d6fd9eb2ef9b3ff52e0293cf9
      https://github.com/llvm/llvm-project/commit/2ab910c08c4ed43d6fd9eb2ef9b3ff52e0293cf9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll

  Log Message:
  -----------
  [LV] Check pointer user are in loop when checking for uniform pointers.

Widening decisions are not set for users outside the loop. Avoid
crashing by only calling isVectorizedMemAccessUse for users in the loop.

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


  Commit: 85b113c381d14d69bb6f1386488308859f74feaf
      https://github.com/llvm/llvm-project/commit/85b113c381d14d69bb6f1386488308859f74feaf
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/docs/StandardCPlusPlusModules.rst

  Log Message:
  -----------
  [Doc] [C++20] [Modules] Clarify the reachability of internal partition units (#102572)

Motivated by https://github.com/llvm/llvm-project/issues/101348

Although I don't want the tool's doc to explain the standard's wording,
the wording itself has some unspecified thing. So I feel it will be
helpful to make it clear. At least it may help us receive less invalid
issue reports.


  Commit: b8bf14eecfc71cfc2d6931c2d95bc5af21d5e4a3
      https://github.com/llvm/llvm-project/commit/b8bf14eecfc71cfc2d6931c2d95bc5af21d5e4a3
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [mlir][LLVMIR] Check number of elements in `mlir.constant` verifier (#102906)

Check that the number of elements in the result type and the attribute
of an `llvm.mlir.constant` op matches. Also fix a broken test where that
was not the case.


  Commit: 334a366ba792adb41ccf43457b65ac88aa37f178
      https://github.com/llvm/llvm-project/commit/334a366ba792adb41ccf43457b65ac88aa37f178
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sme-darwin-no-sve-vg.ll

  Log Message:
  -----------
  [AArch64][Darwin][SME] Don't try to save VG to the stack for unwinding.

On Darwin we don't have any hardware that has SVE support, only SME.
Therefore we don't need to save VG for unwinders and can safely omit it.

This also fixes crashes introduced since this feature landed since Darwin's
compact unwind code can't handle the presence of VG anyway.

rdar://131072344


  Commit: 306b9c7b48ade28ed10e5926b6d9f5e3acab3968
      https://github.com/llvm/llvm-project/commit/306b9c7b48ade28ed10e5926b6d9f5e3acab3968
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp

  Log Message:
  -----------
  [SCEV] Handle more add/addrec mixes in computeConstantDifference() (#101999)

computeConstantDifference() can currently look through addrecs with
identical steps, and then through adds with identical operands (apart
from constants).

However, it fails to handle minor variations, such as two nested add
recs, or an outer add with an inner addrec (rather than the other way
around).

This patch supports these cases by adding a loop over the
simplifications, limited to a small number of iterations. The motivation
is the same as in #101339, to make
computeConstantDifference() powerful enough to replace existing uses of
`dyn_cast<SCEVConstant>(getMinusSCEV())` with it. Though as the IR test
diff shows, other callers may also benefit.


  Commit: e0ad56b7359be7fddf858c8be7b118f5be906c33
      https://github.com/llvm/llvm-project/commit/e0ad56b7359be7fddf858c8be7b118f5be906c33
  Author: Lawrence Benson <github at lawben.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    A llvm/test/CodeGen/AArch64/sve-vector-compress.ll

  Log Message:
  -----------
  [AArch64] Add lowering for `@llvm.experimental.vector.compress` (#101015)

This is a follow-up to #92289 that adds custom lowering of the new
`@llvm.experimental.vector.compress` intrinsic on AArch64 with SVE
instructions.

Some vectors have a `compact` instruction that they can be lowered to.


  Commit: b7ebb67b86888de05419e07a38b932344ac9c7a7
      https://github.com/llvm/llvm-project/commit/b7ebb67b86888de05419e07a38b932344ac9c7a7
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SCEV] Fix -Wrange-loop-construct (NFC)

/llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:12009:21:
 error: loop variable '[S, Mul]' creates a copy from type 'const value_type' (aka 'const llvm::detail::DenseMapPair<const llvm::SCEV *, int>') [-Werror,-Wrange-loop-construct]
    for (const auto [S, Mul] : Multiplicity) {
                    ^
/llvm-project/llvm/lib/Analysis/ScalarEvolution.cpp:12009:10:
 note: use reference type 'const value_type &' (aka 'const llvm::detail::DenseMapPair<const llvm::SCEV *, int> &') to prevent copying
    for (const auto [S, Mul] : Multiplicity) {
         ^~~~~~~~~~~~~~~~~~~~~
                    &


  Commit: 71d2de8ecd793bd1a1ea51b61d22c233029b3fe8
      https://github.com/llvm/llvm-project/commit/71d2de8ecd793bd1a1ea51b61d22c233029b3fe8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cttz.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/pr89877.ll
    M llvm/test/CodeGen/X86/pr90847.ll

  Log Message:
  -----------
  [X86] Promote cttz_i32(x) -> cttz_i64((i64)x | (1 << 32)) (#102900)

On 64bit targets we can promote i32 CTTZ nodes to i64 CTTZ_ZERO_UNDEF by setting the 32nd bit.

#57811 also queried about whether we should use BTS instead of MOVABS+OR to avoid a i64 immediate - I'm willing to tweak the DAGToDAG isel peephole for these cases if reviewers think it worthwhile. But most recent CPUs can actually handle MOVABS faster than BTS/C/R.......

Fixes #57811


  Commit: f9b15a96c6c855fc81e63133d0a3fa778dd98809
      https://github.com/llvm/llvm-project/commit/f9b15a96c6c855fc81e63133d0a3fa778dd98809
  Author: Hans <hans at hanshq.net>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/docs/CMake.rst

  Log Message:
  -----------
  [cmake] Document and suggest LLVM_ENABLE_PDB (#102887)

As suggested in #101533. @rnk added the flag in
b97ff922a9eeea6efbf12deba907848e5002cc76


  Commit: 346a1c51616da51597b7c555766f9487c0afb993
      https://github.com/llvm/llvm-project/commit/346a1c51616da51597b7c555766f9487c0afb993
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cttz.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/pr89877.ll
    M llvm/test/CodeGen/X86/pr90847.ll

  Log Message:
  -----------
  Revert "[X86] Promote cttz_i32(x) -> cttz_i64((i64)x | (1 << 32))" (#103030)

Reverts llvm/llvm-project#102900 - missed a analysis cost model test change


  Commit: 93f5c61d04fbef877dd9ac74511bb76093cc66cf
      https://github.com/llvm/llvm-project/commit/93f5c61d04fbef877dd9ac74511bb76093cc66cf
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/Redeclarable.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/Serialization/ASTReaderDecl.cpp

  Log Message:
  -----------
  [NFC] [Serialization] Extract the functionality of merging decls from ASTReaderDecl (#103022)

Currently we're merging the decls in ASTReaderDecl. But it is not so
convinient if we want to merge things in ASTReader.

This patch extract the funcitonality of merging decls from ASTReaderDecl
to a new class, ASTReaderMerger. Then it will be easier to merge decls
in ASTReader.

This may help the readability slightly too.


  Commit: 5ce47a5813506e08daddc1e3d59b06f7a452c300
      https://github.com/llvm/llvm-project/commit/5ce47a5813506e08daddc1e3d59b06f7a452c300
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/lib/Analysis/TypeMetadataUtils.cpp
    M llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/AlignmentFromAssumptions/domtree-crash.ll
    A llvm/test/Transforms/SLPVectorizer/X86/const-in-different-functions.ll

  Log Message:
  -----------
  Reland "[Support] Assert that DomTree nodes share parent" (#102782)

A dominance query of a block that is in a different function is
ill-defined, so assert that getNode() is only called for blocks that are
in the same function.

There are three cases, where this behavior did occur. LoopFuse didn't
explicitly do this, but didn't invalidate the SCEV block dispositions,
leaving dangling pointers to free'ed basic blocks behind, causing
use-after-free. We do, however, want to be able to dereference basic
blocks inside the dominator tree, so that we can refer to them by a
number stored inside the basic block.

Reverts #102780
Reland #101198
Fixes #102784

Co-authored-by: Alexis Engelke <engelke at in.tum.de>


  Commit: a9636b7f60f283926c66e96c036f5b5d9e57c026
      https://github.com/llvm/llvm-project/commit/a9636b7f60f283926c66e96c036f5b5d9e57c026
  Author: Benjamin Chetioui <3920784+bchetioui at users.noreply.github.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/IR/StorageUniquerSupport.h

  Log Message:
  -----------
  [mlir][StorageUniquer] Restore old signature for default implementaion of verifyInvariants. (#103023)

PR #102326 changed the prototype of the default implementation of verify
to include emitErrorFn.

This breaks automatic derivation in consumer attributes, such as
https://github.com/tensorflow/runtime/blob/60277ba976739502e45ad26585e071568fa44af1/include/tfrt/core_runtime/opdefs/attributes.h#L53.

This PR simply restores the signature to what it was prior to PR
#102326.


  Commit: 3fa946a8442e1b8d4fdbdc9b9b7e8c12a0f77dcc
      https://github.com/llvm/llvm-project/commit/3fa946a8442e1b8d4fdbdc9b9b7e8c12a0f77dcc
  Author: deadalnix <deadalnix at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp

  Log Message:
  -----------
  [DI] Have createClassType create a class type. (#102624)

I was wondering why my use of createClassType was generating structure
reccords, and it turns out the code is wrong (or for some reason i don't
understand the intended use of the API).

clang itself does not use that part of the API, so this flew under the
radar.


  Commit: 2b077ede083b4185f51a2fe648a27e4c85352a2f
      https://github.com/llvm/llvm-project/commit/2b077ede083b4185f51a2fe648a27e4c85352a2f
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/MC/MCObjectFileInfo.cpp

  Log Message:
  -----------
  [MC] Avoid useless triple copy (#103026)

Copying a triple is cheap, but not free, so let's not do that if there's
no reason to do so. Trivial cleanup.


  Commit: 8fc3a7974701f12f46f3f7c1f967001b0cb22847
      https://github.com/llvm/llvm-project/commit/8fc3a7974701f12f46f3f7c1f967001b0cb22847
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/CFG.h

  Log Message:
  -----------
  [IR] Add block number traits to CFG (#102758)

This enables the use of the more efficient dominator tree node access.


  Commit: 64d9713637ab98e2b65c9c4317a50ddba0ba0dbc
      https://github.com/llvm/llvm-project/commit/64d9713637ab98e2b65c9c4317a50ddba0ba0dbc
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/Types.cpp
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang-tools-extra/include-cleaner/unittests/IncludeSpellerTest.cpp
    M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp

  Log Message:
  -----------
  [include-cleaner] Unify symlink handling (#102615)

We were using tryGetRealPathName in certain places, which resolves
symlinks (sometimes). This was resulting in discrepancies in behavior,
depending on how a file was first reached.

This path migrates all usages of tryGetRealPathName to regular getName
instead.

This implies one backward incompatible change for header-filtering. Our
ignore-header option used to filter against suffixes of absolute paths,
whereas now filter can receive working-directory relative paths in some
cases, possibly braking existing filters.
Chances of really braking users is pretty low:
- We'll still filter against absolute paths when header is outside the
  working directory (e.g. /usr/bin/include/some/linux/header.h.)
- Most projects run builds in a working directory that's nested inside
  the repository, hence relative paths still contain all the segments
  relative to repository root and anything else is unlikely to be
  meaningful. e.g. if a header is in
  `$HOME/work/llvm-project/clang-tools-extra/header.h` with builds being
  run in `$home/work/llvm-project/build`, we'll still filter against
  `../clang-tools-extra/header.h` which has all the useful segments as a
  suffix.
- This is also a change in how we handle symlinks, but this is aligned
  with what we do in rest of our tools (clangd, tidy checks etc.). We
  tend to not resolve any symlinks for the file.


  Commit: b7863d13df2ec51fe0966f2de011965c0322c8b6
      https://github.com/llvm/llvm-project/commit/b7863d13df2ec51fe0966f2de011965c0322c8b6
  Author: qazwsxedcrfvtg14 <qazwsxedcrfvtg14 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/IR/PatternMatch.h

  Log Message:
  -----------
  [mlir] Fix misleading comment for type trait (#103041)

We are using `has_initialize` to check the class has `initialize`
function instead of the `getOperationName` function.


  Commit: 103cdd45fcdb8024f73f43bddf1764e26bfa0053
      https://github.com/llvm/llvm-project/commit/103cdd45fcdb8024f73f43bddf1764e26bfa0053
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    A clang/test/SemaCXX/matrix-index-operator-sign-conversion.cpp

  Log Message:
  -----------
  [Matrix] Add test showing unintended implicit sign conversion warning.


  Commit: 778a1f29fc29bb184634eae14db1b39f70b7bc45
      https://github.com/llvm/llvm-project/commit/778a1f29fc29bb184634eae14db1b39f70b7bc45
  Author: Kadir Cetinkaya <kadircet at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp

  Log Message:
  -----------
  [include-cleaner] Fix windows buildbots after 64d9713637ab9


  Commit: 875b551de73e1b38cd40b2d39d9144c6fd0b27ec
      https://github.com/llvm/llvm-project/commit/875b551de73e1b38cd40b2d39d9144c6fd0b27ec
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make computeMinimumValueSizes and collectValuesToDemote support vector instructions. (#103005)


  Commit: d550ada5ab6cd6e49de71ac4c9aa27ced4c11de0
      https://github.com/llvm/llvm-project/commit/d550ada5ab6cd6e49de71ac4c9aa27ced4c11de0
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll

  Log Message:
  -----------
  [CodeGen][ARM64EC] Define hybrid_patchable EXP thunk symbol as a function. (#102898)

This is needed for MSVC link.exe to generate redirection metadata for hybrid patchable thunks.


  Commit: dc8c217db6329f03a116ef63dafa6de02913d311
      https://github.com/llvm/llvm-project/commit/dc8c217db6329f03a116ef63dafa6de02913d311
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/docs/APINotes.rst
    M clang/include/clang/APINotes/Types.h
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
    M clang/test/APINotes/swift-import-as.cpp

  Log Message:
  -----------
  [APINotes] Support C++ tag conformances to Swift protocols

This allows adding a Clang attribute
`swift_attr("conforms_to:ModuleName.ProtocolName")` to C++ structs via
API Notes.

The Swift compiler respects this attribute when importing C++ types into
Swift by automatically declaring the C++ type as a conforming type to
the given Swift protocol.

rdar://131388824


  Commit: ed7ad0a1a0584f90a211ca5a87bc46968e169e5d
      https://github.com/llvm/llvm-project/commit/ed7ad0a1a0584f90a211ca5a87bc46968e169e5d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/CodeGen/X86/cttz.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/pr89877.ll
    M llvm/test/CodeGen/X86/pr90847.ll

  Log Message:
  -----------
  [X86] Promote cttz_i32(x) -> cttz_i64((i64)x | (1 << 32)) (#102900) (REAPPLIED)

On 64bit targets we can promote i32 CTTZ nodes to i64 CTTZ_ZERO_UNDEF by setting the 32nd bit.

#57811 also queried about whether we should use BTS instead of MOVABS+OR to avoid a i64 immediate - I'm willing to tweak the DAGToDAG isel peephole for these cases if reviewers think it worthwhile. But most recent CPUs can actually handle MOVABS faster than BTS/C/R.......

Reapplied with missing costmodel changes - the cost tables can probably be improved in a follow up patch.

Fixes #57811


  Commit: 4197386dbde3a59e6b3133604b7a0ae10eb4ed74
      https://github.com/llvm/llvm-project/commit/4197386dbde3a59e6b3133604b7a0ae10eb4ed74
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll

  Log Message:
  -----------
  [LLVM][SelectionDAG] Remove scalable vector restriction from poison analysis. (#102504)

The following functions have an early exit for scalable vectors:
  SelectionDAG::canCreateUndefOrPoison
  SelectionDAG:isGuaranteedNotToBeUndefOrPoison
    
The implementations of these don't look to be sensitive to the
vector type other than some uses of demanded elts analysis that
doesn't fully support scalable types.  That said the initial
calculation demands all elements and so I've followed the same
scheme as used by TargetLowering::SimplifyDemandedBits.


  Commit: 2256d00a1445e751f20040cb4292aa325dd83c8e
      https://github.com/llvm/llvm-project/commit/2256d00a1445e751f20040cb4292aa325dd83c8e
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Use VL.front()->getType() as ScalarTy. (#102437)

VL.front()->getType() may be FixedVectorType when revec is enabled.

Fix "Expected item in MinBWs.".


  Commit: b4edfc19202cf44f8b49d2a953113b167395b595
      https://github.com/llvm/llvm-project/commit/b4edfc19202cf44f8b49d2a953113b167395b595
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll

  Log Message:
  -----------
  [LTO] Run ObjCARCContractPass according to the callgraph (#103034)

This matches other IR codegen passes and avoids a Dominator Tree
Construction in AMDGPU O2/O3 builds.


  Commit: f0f5afe9685c2085a4ca51eeb40262f1def61377
      https://github.com/llvm/llvm-project/commit/f0f5afe9685c2085a4ca51eeb40262f1def61377
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][vector] Add more tests for ConvertVectorToLLVM (3/n) (#102854)

Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
  * vector.extractelement
  * vector.extract

I have also renamed some function names from `@extract_element{}` to
`@extractelement{}` - that's to make a clearer distinction between
tests for `vector.extractelement` (tested by `@extractelement{}`) and
`vector.extract` (tested by `@extract_element{}`).


  Commit: 53c41f95db3ab3f4a5d4562fd76f7f4115c52bad
      https://github.com/llvm/llvm-project/commit/53c41f95db3ab3f4a5d4562fd76f7f4115c52bad
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [MemoryBuiltins] Use getAllOnesValue()

Split out from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 4d97ad59f9ef4a26a52be8ff9bfcfa58d5039eb4
      https://github.com/llvm/llvm-project/commit/4d97ad59f9ef4a26a52be8ff9bfcfa58d5039eb4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp

  Log Message:
  -----------
  [InstCombine] Use APInt::getSplat()

Split off from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 7990a7e58f0656f752178f22a767c6250b6aa8dc
      https://github.com/llvm/llvm-project/commit/7990a7e58f0656f752178f22a767c6250b6aa8dc
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp

  Log Message:
  -----------
  [IndVars] Use getSigned() in FP transform

This transform is working on signed integer, so this is the
logically correct API.

Split off from https://github.com/llvm/llvm-project/pull/80309.


  Commit: adb4cfe0b61859eb0911b34c6f27eb5925cb9d94
      https://github.com/llvm/llvm-project/commit/adb4cfe0b61859eb0911b34c6f27eb5925cb9d94
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp

  Log Message:
  -----------
  [InstCombine] Use getAllOnesValue()

Split off from https://github.com/llvm/llvm-project/pull/80309.


  Commit: 5c3a0fa7e5ad0b3de7c6a76c6637e63890709e97
      https://github.com/llvm/llvm-project/commit/5c3a0fa7e5ad0b3de7c6a76c6637e63890709e97
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp

  Log Message:
  -----------
  [GlobalISel] IRTranslator: Use RAIIMFObsDelInstaller (#102379)

Similar to #102156.

runOnMachineFunction() installs the Observer correctly manually.

finishPendingPhis() doesn't install into the MF, but this currently
can't cause issues because DILocationVerifier doesn't care about changed
instructions.

Switch to RAIIMFObsDelInstaller in both places for consistency.


  Commit: 6aad4918e8d65bdebd30de3fe06b1e2f3c9e525b
      https://github.com/llvm/llvm-project/commit/6aad4918e8d65bdebd30de3fe06b1e2f3c9e525b
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make MinBWs support vector instructions. (#103049)

If ScalarTy is FixedVectorType, it should remain as FixedVectorType.


  Commit: b53fe2ca8c4d56be42d98c4ef5a183f90b3fb628
      https://github.com/llvm/llvm-project/commit/b53fe2ca8c4d56be42d98c4ef5a183f90b3fb628
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M flang/test/Evaluate/fold-out_of_range.f90

  Log Message:
  -----------
  [flang][test] Restrict Evaluate/fold-out_of_range.f90 to x86_64 (#102890)

`Flang :: Evaluate/fold-out_of_range.f90` currently `FAIL`s on
Linux/sparc64. This seems to be the same issue that led to disabling the
test on Solaris in 27549ee989d7e0803d41c206cf636f0b689210f1. In fact,
the generic Solaris disablement was over-eager: the test `PASS`es just
fine on Solaris/amd64.

Since the use of `REAL*10` makes the test x86-specific, this patch
actually implements that requirement.

Tested on `sparc64-unknown-linux-gnu`, `sparcv9-sun-solaris2.11`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.


  Commit: f117f0a746177bdc8b5f658e6da84cd02909aff1
      https://github.com/llvm/llvm-project/commit/f117f0a746177bdc8b5f658e6da84cd02909aff1
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    A libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Add a script to synchronize status-tracking CSVs with Github issues (#101704)

This script can be run manually to synchronize the CSV files that we use
to track Standards Conformance with the Github issues that track our
implementation of LWG issues and papers.


  Commit: 40897638837fdc5d64d8932fd892f3b9a687ee84
      https://github.com/llvm/llvm-project/commit/40897638837fdc5d64d8932fd892f3b9a687ee84
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalMerge.cpp
    A llvm/test/Transforms/GlobalMerge/private-global.ll

  Log Message:
  -----------
  [GlobalMerge] Update the GlobalMerge pass to merge private global variables. (#101222)

This patch updates the GlobalMerge pass to be able to handle private
global variables, which is required for a follow-up PowerPC specific
GlobalMerge patch to merge internal and private globals.

A new LIT test is also added to exhibit the ability to merge private
globals.


  Commit: 5dbec8c6ce473352cac2d89d6a5b81f65182df59
      https://github.com/llvm/llvm-project/commit/5dbec8c6ce473352cac2d89d6a5b81f65182df59
  Author: xusheng <xusheng at vector35.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestStopPCs.py

  Log Message:
  -----------
  [lldb] Claim to support swbreak and hwbreak packets when debugging a gdbremote (#102873)

This fixes https://github.com/llvm/llvm-project/issues/56125 and
https://github.com/vadimcn/codelldb/issues/666, as well as the
downstream issue in our binary ninja debugger:
https://github.com/Vector35/debugger/issues/535

Basically, lldb does not claim to support the `swbreak` packet so the
gdbserver would not use it. As a result, the gdbserver always sends the
unmodified program counter value which, on systems like x86, causes the
program counter to be off-by-one (or otherwise wrong). For reference,
the lldb-server always sends the modified program counter value so it
works perfectly with lldb.

https://sourceware.org/gdb/current/onlinedocs/gdb.html/Stop-Reply-Packets.html#swbreak-stop-reason

No new code is added to add support `swbreak`, since the way lldb works
already expects the remote to have adjusted the program counter. The
change just lets the gdbserver know that lldb supports it, so that it
will send the adjusted program counter.

To test this PR, you can use lldb to connect to a gdbserver running on
e.g., Ubuntu 22.04, and see the program counter is off-by-one without
the patch. With the patch, things work as expected


  Commit: f807c5e492878240fe6d7be23b930c78c4e62eba
      https://github.com/llvm/llvm-project/commit/f807c5e492878240fe6d7be23b930c78c4e62eba
  Author: J. Ryan Stinnett <jryans at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp
    A llvm/test/tools/llvm-dwarfdump/X86/DW_OP_implicit_pointer.yaml

  Log Message:
  -----------
  [DebugInfo] Add expression decoding for `DW_OP_implicit_pointer` (#102923)

This allows `llvm-dwarfdump` to decode the DWARF 5 opcode
`DW_OP_implicit_pointer` (0xa0). GCC makes use of this opcode in recent
versions. LLVM contains some (unfinished) support as well. With existing
usage in the ecosystem, adding decoding support here seems reasonable.


  Commit: f364b2ee22209e4072c39a153b3385806974f8b0
      https://github.com/llvm/llvm-project/commit/f364b2ee22209e4072c39a153b3385806974f8b0
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Utils/GlobalStatus.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [LLVM] Don't peek through bitcast on pointers and gep with zero indices. NFC. (#102889)

Since we are using opaque pointers now, we don't need to peek through
bitcast on pointers and gep with zero indices.


  Commit: 560ed8ce3d21d5291546a946ee00ec602e11579c
      https://github.com/llvm/llvm-project/commit/560ed8ce3d21d5291546a946ee00ec602e11579c
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/expm1f16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/expf16.cpp
    A libc/src/math/generic/expm1f16.cpp
    M libc/src/math/generic/expxf16.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/expm1f16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/expm1f16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add expm1f16 C23 math function (#102387)

Part of #95250.


  Commit: d97df40f346ee6761c3ea9cc6c60e9ee8225a6fc
      https://github.com/llvm/llvm-project/commit/d97df40f346ee6761c3ea9cc6c60e9ee8225a6fc
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td

  Log Message:
  -----------
  [mlir][AMDGPU] Relax restrictions on raw_buffer_load (#102229)

The buffer load operation might temporarily admit "illegal" types, like
i4, or types not yet known to the rewrite pattern (like f8E5M2) and then
be rewritten to legal types before lowering to LLVM. This patch removes
the verifier restriction that prevents this pattern. This harmonizes the
definition of `amdgpu.raw_buffer_load` with the definition of
`amdgpu.raw_buffer_store`.


  Commit: ac26c661ead4c5fb05d13c7d07a706f2a305970a
      https://github.com/llvm/llvm-project/commit/ac26c661ead4c5fb05d13c7d07a706f2a305970a
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/aarch64/sme-abi.S

  Log Message:
  -----------
  [compiler-rt][SME] Correct .variant_pcs directives. (#103047)


  Commit: d385485450652dd75e0946d543c6bb4e0f3abf68
      https://github.com/llvm/llvm-project/commit/d385485450652dd75e0946d543c6bb4e0f3abf68
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/different-loops-recs.ll

  Log Message:
  -----------
  [SCEV] Autogenerate a test for ease of upcoming update


  Commit: 0f28aa632cde6fa085060383998f98ed7f8fb814
      https://github.com/llvm/llvm-project/commit/0f28aa632cde6fa085060383998f98ed7f8fb814
  Author: Lei Wang <wlei at fb.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    A llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-missing-probe.prof
    A llvm/test/Transforms/SampleProfile/pseudo-probe-missing-probe.ll

  Log Message:
  -----------
  [CSSPGO] Return error_code for missing probe profile (#102085)

We should undo this https://reviews.llvm.org/D102007 after undoing
https://reviews.llvm.org/D104477 to use missing probe to represent
unknown count, zero count and unknown count are different to profile
inference.

It only affects post-inline(linker) pipeline(with
`--overwrite-existing-weights` on ) and flow-sensitive FDO.


  Commit: b89853b50459112a9c270616b350e25cc07671bf
      https://github.com/llvm/llvm-project/commit/b89853b50459112a9c270616b350e25cc07671bf
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [LLVM] Fix whitespace issues in VPBlendRecipe::execute.


  Commit: 4371c79d45e8fca88957eaac42da1211c830b076
      https://github.com/llvm/llvm-project/commit/4371c79d45e8fca88957eaac42da1211c830b076
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    A libc/include/elf.h.def
    A libc/include/link.h.def
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/elf-macros.h
    M libc/include/llvm-libc-macros/link-macros.h
    A libc/newhdrgen/yaml/elf.yaml
    A libc/newhdrgen/yaml/link.yaml

  Log Message:
  -----------
  [libc] Reapply ELF/LINK header changes (#102765)

This is based on @izaakschroeder previous patch but I only select macro
definitions for now. We need these definitions for VDSO work, which has
been delayed for a very long time.

Co-authored-by: Izaak Schroeder <izaak.schroeder at gmail.com>


  Commit: 03d51019d0c50a9a573a0d7c0848bb424cb21a18
      https://github.com/llvm/llvm-project/commit/03d51019d0c50a9a573a0d7c0848bb424cb21a18
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/test/fuzzer/fork-sigusr.test
    M compiler-rt/test/fuzzer/merge-sigusr.test
    M compiler-rt/test/fuzzer/sigint.test
    M compiler-rt/test/fuzzer/sigusr.test

  Log Message:
  -----------
  Add REQUIRES: shell to Tests Requiring Full Shell Functionality with lit Internal Shell  (#102988)

This patch adds the `REQUIRES: shell` directive to compiler-rt's fuzzer
tests that require full shell functionality when using the lit internal
shell. These tests depend on features such as background processes,
signal handling, and session management, which are not supported by
lit's internal shell. The addition of this directive ensures that these
tests are only executed in environments that provide the necessary shell
capabilities.

**Details of the Change:**
The following considerations were addressed:
- **Background Processes (`&`):** The tests run commands in the
background using the `&` operator, which allows the shell to execute
commands concurrently without waiting for each one to finish. In a
standard Unix-like shell, this is a common feature that facilitates
multitasking. However, lit's internal shell does not fully support
background job control, which can lead to unpredictable behavior or test
failures. Without proper handling of background processes, subsequent
commands that depend on the status of these processes may not function
correctly.
- **Signal Handling (`kill -SIGUSR1`, `kill -SIGUSR2`, `kill
-SIGINT`):** These tests involve sending specific signals like
`SIGUSR1`, `SIGUSR2`, and `SIGINT` to running processes. These signals
are used to trigger certain behaviors in the processes, such as pausing,
resuming, or terminating. However, lit's internal shell may not handle
these signals properly—it might not send the signal correctly, or the
process might not respond as it should. This could lead to the test
failing, not because the process is incorrect, but because the shell
didn't manage the signals as required.
- **Session Management (`setsid`):** The tests use `setsid` to create
new sessions, detaching processes from their controlling terminal and
isolating them into their own process groups. However, the internal
shell in lit does not support session management features like `setsid`,
this can't correctly isolate and manage processes as required by these
tests.

This change is relevant for enabling the lit internal shell by default,
as outlined in [[RFC] Enabling the Lit Internal Shell by
Default](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: 1ae507d1091377f560c1f458487472da1730e1be
      https://github.com/llvm/llvm-project/commit/1ae507d1091377f560c1f458487472da1730e1be
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-mmra.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll

  Log Message:
  -----------
  AMDGPU: Do not create phi user for atomicrmw with no uses (#103061)


  Commit: 17dc43d623281cc7169c80574ac5058aa0f78b56
      https://github.com/llvm/llvm-project/commit/17dc43d623281cc7169c80574ac5058aa0f78b56
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Lex/HeaderSearch.cpp

  Log Message:
  -----------
  [clang] Stop adjusting the module cache path (#102540)

This patch stops adjustments of the module cache path beyond what is
done in `ParseHeaderSearchArgs` (making it absolute and removing dots).
This enables more efficient implementation of the caching VFS in
https://github.com/llvm/llvm-project/pull/88800.


  Commit: 55323ca6c8b9d21d85591f3499b299b62463321f
      https://github.com/llvm/llvm-project/commit/55323ca6c8b9d21d85591f3499b299b62463321f
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp

  Log Message:
  -----------
  [clang][deps] Only bypass scanning VFS for the module cache (#88800)

The scanning VFS doesn't cache stat failures of paths with no extension.
This was originally implemented to avoid caching the non-existence of
the modules cache directory that the modular scanner will eventually
create if it does not exist.

However, this prevents caching of the non-existence of all directories
and notably also header files from the standard C++ library, which can
lead to sub-par performance.

This patch adds an API to the scanning VFS that allows clients to
configure path prefix for which to bypass the scanning VFS and use the
underlying VFS directly.


  Commit: 2d7a2c1212d3539a59afec7e998af8caaa7ea1c0
      https://github.com/llvm/llvm-project/commit/2d7a2c1212d3539a59afec7e998af8caaa7ea1c0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  AtomicExpand: Refactor atomic instruction handling (#102914)

Move the processing of an instruction into a helper function. Also
avoid redundant checking for all types of atomic instructions.
Including the assert, it was effectively performing the same check
3 times.


  Commit: 246f345152e933aa40fd20929b59b5c8ef04ce38
      https://github.com/llvm/llvm-project/commit/246f345152e933aa40fd20929b59b5c8ef04ce38
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make CastInst support vector instructions. (#103216)


  Commit: ba400539e2880274bde7d70244269a82347dca31
      https://github.com/llvm/llvm-project/commit/ba400539e2880274bde7d70244269a82347dca31
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/test/Interpreter/const.cpp

  Log Message:
  -----------
  [Interp] Mark the test unsupported with Asan (#102859)

It's very flaky recently.

10 bulds are OK, then 3 failed:
https://lab.llvm.org/buildbot/#/builders/52/builds/1524
https://lab.llvm.org/buildbot/#/builders/52/builds/1525
https://lab.llvm.org/buildbot/#/builders/52/builds/1526
then 3 OK
https://lab.llvm.org/buildbot/#/builders/52/builds/1531
https://lab.llvm.org/buildbot/#/builders/52/builds/1532
then 2 green again

We need to stop to spam blame list by disabling the test,
and investigate later if Asan is valuable for the test.

Issue #102858


  Commit: fa9f6b58285b86de794f956daa7f4027e2fc6baa
      https://github.com/llvm/llvm-project/commit/fa9f6b58285b86de794f956daa7f4027e2fc6baa
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/aarch64-neon-faminmax.ll

  Log Message:
  -----------
  [AArch64][NEON] Add famax/famin codegen patterns (#103027)

- min(abs(a), abs(b)) -> famin(a, b), max(abs(a), abs(b))-> famax(a, b)

- Changes to LLVM
    - llvm/lib/Target/AArch64InstrInfo.td
	    - Add pattern for NEON types
     - +llvm/test/CodeGen/AArch64/aarch64-neon-faminmax.ll
	    - Add tests with and without +faminmax flag.


  Commit: 277ca48f2f2ab78290c0702d45b6db54a32c99cf
      https://github.com/llvm/llvm-project/commit/277ca48f2f2ab78290c0702d45b6db54a32c99cf
  Author: David Green <david.green at arm.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    R llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-uaddlv.mir
    M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-across.ll

  Log Message:
  -----------
  [AArch64] Additional saddlv store tests. NFC

The select-intrinsic-uaddlv.mir test now lower via G_SADDLV / G_UADDLV so is no
longer needed.


  Commit: 248e88523518ae66a20d02bd3636cd0a15453958
      https://github.com/llvm/llvm-project/commit/248e88523518ae66a20d02bd3636cd0a15453958
  Author: Mosè Giordano <mose at gnu.org>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/timing.h

  Log Message:
  -----------
  [compiler-rt] Define `__STDC_FORMAT_MACROS` to ensure `PRId64` is available (#102980)

In
https://github.com/JuliaPackaging/Yggdrasil/pull/9246#issuecomment-2284894139
we ran into
```
[20:54:03] [ 65%] Building CXX object lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o
[20:54:03] cd /workspace/srcdir/compiler-rt-17.0.6.src/build/lib/scudo/standalone && /opt/bin/x86_64-linux-gnu-libgfortran5-cxx11/x86_64-linux-gnu-g++ --sysroot=/opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/  -I/workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/../.. -I/workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/include -Wall -Wno-unused-parameter -O3 -DNDEBUG -m64 -Werror=conversion -Wall -Wextra -pedantic -g -nostdinc++ -fvisibility=hidden -fno-exceptions -Wno-pedantic -fno-lto -O3 -fno-omit-frame-pointer -DGWP_ASAN_HOOKS -std=c++17 -MD -MT lib/scudo/standalone/CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o -MF CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o.d -o CMakeFiles/RTScudoStandalone.x86_64.dir/timing.cpp.o -c /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.cpp
[...]
[20:54:03] In file included from /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.cpp:9:
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h: In member function ‘void scudo::TimingManager::printImpl(scudo::ScopedString&, scudo::u32, scudo::u32)’:
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h:182:21: error: expected ‘)’ before ‘PRId64’
[20:54:03]      Str.append("%14" PRId64 ".%" PRId64 "(ns) %-11s", Integral, Fraction, " ");
[20:54:03]                ~     ^~~~~~~
[20:54:03]                      )
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h:182:16: warning: conversion lacks type at end of format [-Wformat=]
[20:54:03]      Str.append("%14" PRId64 ".%" PRId64 "(ns) %-11s", Integral, Fraction, " ");
[20:54:03]                 ^~~~~
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h:182:16: warning: too many arguments for format [-Wformat-extra-args]
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h:186:23: error: expected ‘)’ before ‘PRId64’
[20:54:03]      Str.append("%s (%" PRId64 ")\n", Timers[HandleId].Name, Occurrence);
[20:54:03]                ~       ^~~~~~~
[20:54:03]                        )
[20:54:03] /workspace/srcdir/compiler-rt-17.0.6.src/lib/scudo/standalone/timing.h:186:16: warning: spurious trailing ‘%’ in format [-Wformat=]
[20:54:03]      Str.append("%s (%" PRId64 ")\n", Timers[HandleId].Name, Occurrence);
[20:54:03]                 ^~~~~~~
```
when compiling compiler-rt with GCC 8. This was resolved by defining
`__STDC_FORMAT_MACROS`.


  Commit: afd42fb3038904e8c09c0fb735e713bc052ec0e4
      https://github.com/llvm/llvm-project/commit/afd42fb3038904e8c09c0fb735e713bc052ec0e4
  Author: Brox Chen <broxigarchen at outlook.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fceil.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ffloor.s16.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/fadd.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ceil.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.floor.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] Support AND/OR/XOR and LDEXP True16 format (#102620)

Support AND/OR/XOR true16 and LDEXP true/fake16 format.

These instructions are previously implemented with fake16 profile.
Fixing the implementation.

Added a RA hint so that when using 16bit register in a 32bit
instruction, try to use the register directly without an extra 16bit
move

---------

Co-authored-by: guochen2 <guochen2 at amd.com>


  Commit: dcc27ea41ebc7244a10f15114f60f5e8d6b93b34
      https://github.com/llvm/llvm-project/commit/dcc27ea41ebc7244a10f15114f60f5e8d6b93b34
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/test/Driver/linker-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M offload/test/api/omp_dynamic_shared_memory_amdgpu.c
    M offload/test/api/omp_dynamic_shared_memory_mixed_amdgpu.c
    M offload/test/offloading/bug51781.c
    M offload/test/offloading/bug51982.c

  Log Message:
  -----------
  [LinkerWrapper] Always pass `-flto` if the linker supports it (#102972)

Summary;
Now that we use the linker to do LTO / device linking, we need to inform
the `clang` invocation to use `-flto` so it forwards arguments like
`-On` correctly.


  Commit: b4c4c799ab084f0bbd975e724384684b3ee4facb
      https://github.com/llvm/llvm-project/commit/b4c4c799ab084f0bbd975e724384684b3ee4facb
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/expxf16.h

  Log Message:
  -----------
  [libc][math] Fix missing LIBC_INLINE on exp_range_reduction() function (#103305)

See Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/73/builds/3669.


  Commit: 7e236136ab2896dee12bbe96d5994bb65c326e9f
      https://github.com/llvm/llvm-project/commit/7e236136ab2896dee12bbe96d5994bb65c326e9f
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr-dbg-info-content/TestDbgInfoContentWeakPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py

  Log Message:
  -----------
  [lldb] Skip libcxx tests with older versions of clang


  Commit: 80c51fad3b683c8c9ee4c26aa41eda2f78a29627
      https://github.com/llvm/llvm-project/commit/80c51fad3b683c8c9ee4c26aa41eda2f78a29627
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/pcsections.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll
    M llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll

  Log Message:
  -----------
  AtomicExpand: Regenerate baseline checks (#103063)


  Commit: a9604cd3212beb6cdb41a79f248723140ab9939d
      https://github.com/llvm/llvm-project/commit/a9604cd3212beb6cdb41a79f248723140ab9939d
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    A llvm/unittests/Support/DynamicLibrary/DynamicLibraryTests.exports

  Log Message:
  -----------
  [CMake] Fix DynamicLibraryTests exports symbol when plugins are enabled (#102941)

Exporting symbols from tools directory never worked with
`LLVM_EXPORT_SYMBOLS_FOR_PLUGINS=On`. When that options is on, only
symbols from the static library is linked is exported due to the export
symbols computation script. DynamicLibraryTests needs to export a symbol
from the tools/executable directory, so update it to use export list
instead.


  Commit: f0ef1d3bae02cd7623e87e759db19432717f51bf
      https://github.com/llvm/llvm-project/commit/f0ef1d3bae02cd7623e87e759db19432717f51bf
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp

  Log Message:
  -----------
  [CompilerRT][Darwin] Silence the warnings for deprecated APIs (#102977)

Silence deprecated API warnings in compiler-rt on Darwin platforms.


  Commit: b1aa0b0b88a0bca2553f8c6d6c52ec3b7205064b
      https://github.com/llvm/llvm-project/commit/b1aa0b0b88a0bca2553f8c6d6c52ec3b7205064b
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/unittests/IR/DataLayoutTest.cpp

  Log Message:
  -----------
  [DataLayout] Remove `clear` and `reset` methods (NFC) (#102993)

`clear` was never necessary as it is always called on a fresh instance
of the class or just before freeing an instance's memory. `reset` is
effectively the same as the constructor.

Pull Reuquest: https://github.com/llvm/llvm-project/pull/102993


  Commit: dbe8a10c06be56d9a2a45a08ce8c95c5f0b1c21c
      https://github.com/llvm/llvm-project/commit/dbe8a10c06be56d9a2a45a08ce8c95c5f0b1c21c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [TypePromotion] Use return value from SmallPtrSet::insert to avoid a call to SmallPtrSet::count. NFC (#103008)


  Commit: f58f92c2138ed0b3e802d0c45ba3652e72e208c4
      https://github.com/llvm/llvm-project/commit/f58f92c2138ed0b3e802d0c45ba3652e72e208c4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [SelectionDAG] Move SelectionDAG::getAllOnesConstant out of line. NFC (#102995)

This function has to get the scalar size and create an APInt. I don't
think it belongs inline.


  Commit: 00a4042212898a26e43ba0c13ad69677e65f271b
      https://github.com/llvm/llvm-project/commit/00a4042212898a26e43ba0c13ad69677e65f271b
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement AtomicCmpXchgInst (#102710)

This patch implements sandboxir::AtomicCmpXchgInst which mirrors
llvm::AtomiCmpXchgInst.


  Commit: 494eec0255d0e270ed877e960843177759f0ee73
      https://github.com/llvm/llvm-project/commit/494eec0255d0e270ed877e960843177759f0ee73
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp

  Log Message:
  -----------
  [lldb][NFCI] Simplify ProcessElfCore::GetAuxvData() (#102263)

There is no need to clone the content and set extraction properties
because `m_auxv` is already in the required form.


  Commit: 6807ca8e937e6949af838995964613fab2fbe0dc
      https://github.com/llvm/llvm-project/commit/6807ca8e937e6949af838995964613fab2fbe0dc
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [nfc][ctx_prof] Use one flag for the "use" scenario (#103377)

No need to have two flags, one for the thinlink and one for compilation.


  Commit: edded8d7b5cb310524494cca317dd3582234b56f
      https://github.com/llvm/llvm-project/commit/edded8d7b5cb310524494cca317dd3582234b56f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-mmra.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    R llvm/test/Transforms/Inline/AMDGPU/inline-amdgpu-unsafe-fp-atomics.ll

  Log Message:
  -----------
  AMDGPU: Stop handling legacy amdgpu-unsafe-fp-atomics attribute (#101699)

This is now autoupgraded to annotate atomicrmw instructions in
old bitcode.


  Commit: 661dda9df13c65ce021407bb726b558c7a414731
      https://github.com/llvm/llvm-project/commit/661dda9df13c65ce021407bb726b558c7a414731
  Author: Yitzhak Mandelbaum <ymand at users.noreply.github.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/AST/ast-dump-retain-subst-template-type-parm-type-ast-nodes.cpp

  Log Message:
  -----------
  [clang] Add frontend flag to enable support for broken external resugarers (#103219)

Forked from https://github.com/llvm/llvm-project/pull/102510 by
[mizvekov](https://github.com/mizvekov). Changes are captured as a fixup
commit.

There are some external projects that can't rely on our own sugar
propagation for templated entities, because they need to resugar types
which only exist within their framework, and so are entirely invisible
to our internal tooling.

This new flag is meant to prevent our transforms from removing any
Subst*
nodes.

For this, this is wired only to template type alias subsititutions.

Note that our AST does represent enough information to correctly
resugar template type alias, so any users of this are limited in their 
capacity to reconstruct the parameter substitutions fully.

---------

Co-authored-by: Matheus Izvekov <mizvekov at gmail.com>


  Commit: 2c8bd4a729a042ed823547ea0eacad429c50d7bf
      https://github.com/llvm/llvm-project/commit/2c8bd4a729a042ed823547ea0eacad429c50d7bf
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/test/CodeGenHLSL/export.hlsl

  Log Message:
  -----------
  [HLSL] Mark exported functions with "hlsl.export" attribute (#102275)

Marks exported functions with `"hlsl.export"` attribute. This
information will be later used by DXILFinalizeLinkage pass (coming soon)
to determine which functions should have internal linkage in the final
DXIL code.

Related to #llvm/llvm-project#92071


  Commit: 0aa22dcd2f6ec5f46b8ef18fee88066463734935
      https://github.com/llvm/llvm-project/commit/0aa22dcd2f6ec5f46b8ef18fee88066463734935
  Author: Tulio Magno Quites Machado Filho <tuliom at redhat.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M openmp/runtime/src/z_Linux_asm.S

  Log Message:
  -----------
  [OpenMP][AArch64] Fix branch protection in microtasks (#102317)

Start __kmp_invoke_microtask with PACBTI in order to identify the
function as a valid branch target. Before returning, SP is
authenticated.
Also add the BTI and PAC markers to z_Linux_asm.S.

With this patch, libomp.so can now be generated with DT_AARCH64_BTI_PLT
when built with -mbranch-protection=standard.

The implementation is based on the code available in compiler-rt.


  Commit: ae466a61d39454d9f311e2e4b624e256bbd5d18b
      https://github.com/llvm/llvm-project/commit/ae466a61d39454d9f311e2e4b624e256bbd5d18b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/lib/CodeGen/ValueTypes.cpp

  Log Message:
  -----------
  [SelectionDAG] Add getFltSemantics to MVT and EVT. NFC

This will be used to replace SelectionDAG::EVTToAPFloatSemantics

A similar method exists in IR's Type class.


  Commit: 51bad732dc78d777b5dc25fd840f00b61110e4f2
      https://github.com/llvm/llvm-project/commit/51bad732dc78d777b5dc25fd840f00b61110e4f2
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [SelectionDAG] Replace EVTToAPFloatSemantics with MVT/EVT::getFltSemantics. (#103001)


  Commit: 5b40a05d8f2872e4822fd5ff18383fbd5944f511
      https://github.com/llvm/llvm-project/commit/5b40a05d8f2872e4822fd5ff18383fbd5944f511
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    A llvm/test/Transforms/InstCombine/phi-int-users.ll

  Log Message:
  -----------
  [InstCombine] Don't look at ConstantData users

When looking at PHI operand for combining, only look at instructions and
arguments. The loop later iteraters over Arg's users, which is not
useful if Arg is a constant -- it's users are not meaningful and might
be in different functions, which causes problems for the dominates()
query.

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


  Commit: 28050e1b0b9da6d9c24ba20e8c70cf90b8135f49
      https://github.com/llvm/llvm-project/commit/28050e1b0b9da6d9c24ba20e8c70cf90b8135f49
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h

  Log Message:
  -----------
  [lldb][DWARFASTParser] Don't pass CompilerType by non-const reference in the DWARFASTParserClang APIs (#103245)

The `CompilerType` is just a wrapper around two pointers, and there is
no usage of the `CompilerType` where those are expected to change
underneath the caller.

To make the interface more straightforward to reason about, this patch
changes all instances of `CompilerType&` to `const CompilerType&` around
the `DWARFASTParserClang` APIs.

We could probably pass these by-value, but all other APIs don't, and
this patch just makes the parameter passing convention consistent with
the rest of the file.


  Commit: ee2359968fa307ef45254c816e14df33374168cd
      https://github.com/llvm/llvm-project/commit/ee2359968fa307ef45254c816e14df33374168cd
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [clang-format] Fix annotation of braces enclosing stringification (#102998)

Fixes #102937.


  Commit: 1ccd7ab8b6fa3ae80aaa2e3130242d1d96bbc540
      https://github.com/llvm/llvm-project/commit/1ccd7ab8b6fa3ae80aaa2e3130242d1d96bbc540
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  Enhance TLI detection of __size_returning_new lib funcs. (#102391)

Previously the return types of __size_returning_new variants were not
validated based on their members. This patch checks the members
manually, also generalizes the size_t checks to be based on the module
instead of being hardcoded. 

As requested in followup comment on
https://github.com/llvm/llvm-project/pull/101564.


  Commit: ad6558c334e5f6cd4b5c7e6d3ffe8d5158c540b0
      https://github.com/llvm/llvm-project/commit/ad6558c334e5f6cd4b5c7e6d3ffe8d5158c540b0
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [runtimes] Fix not correctly searching target builtins directories (#103311)

Summary:
Enabling `compiler-rt` only worked previously if we had it in the
default target. This is because we didn't extract the path carefully.
This patch fixes that by getting the correct path and appending it,
instead of just the project name.


  Commit: 29e51f827bb61af23fb3de4c90a1fad1bb70a04a
      https://github.com/llvm/llvm-project/commit/29e51f827bb61af23fb3de4c90a1fad1bb70a04a
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/test/std/utilities/memory/unique.ptr/iterator_concept_conformance.compile.pass.cpp
    R libcxx/test/std/utilities/memory/unique.ptr/noexcept_operator_star.compile.pass.cpp
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/dereference.single.pass.cpp

  Log Message:
  -----------
  [libc++] Simplify the implementation of LWG2762 (noexcept for unique_ptr) (#102032)

I had originally made some comments in https://reviews.llvm.org/D128214
that were followed when we implemented LWG2762. I don't understand why I
made these comments anymore, but either way it seems like I was wrong
since using `unique_ptr<void>::operator*` should be ill-formed. All
other implementations also make that ill-formed.


  Commit: 7ec9fa03739db63b31d4d66e477afb964ddf690b
      https://github.com/llvm/llvm-project/commit/7ec9fa03739db63b31d4d66e477afb964ddf690b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp

  Log Message:
  -----------
  [RISCV][GISel] Group the vector load/store legalizer actions together.


  Commit: e80bc777749331e9519575f416c342f7626dd14d
      https://github.com/llvm/llvm-project/commit/e80bc777749331e9519575f416c342f7626dd14d
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx14Issues.csv
    M libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/Status/Cxx2cPapers.csv

  Log Message:
  -----------
  [libc++] Normalize how we track the meeting at which a paper of LWG issue was voted

This uses the same values as we use in the Github project that tracks
Standards conformance.


  Commit: 29314b4b2720d6c14931832f3ca715981abed340
      https://github.com/llvm/llvm-project/commit/29314b4b2720d6c14931832f3ca715981abed340
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    R llvm/unittests/Support/DynamicLibrary/DynamicLibraryTests.exports

  Log Message:
  -----------
  Revert "[CMake] Fix DynamicLibraryTests exports symbol when plugins are enabled (#102941)"

This reverts commit a9604cd3212beb6cdb41a79f248723140ab9939d.

The export list in unit-tests will break sanitizer build since that
requires more symbols than listed in the export file.


  Commit: 99c5615f5f1cae5368a2c10cd6482e7d6b3b4921
      https://github.com/llvm/llvm-project/commit/99c5615f5f1cae5368a2c10cd6482e7d6b3b4921
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv

  Log Message:
  -----------
  [libc++][NFC] Add missing separators in status-tracking CSV files


  Commit: 3bda18e48285d666d8b18e34605a1a0fd3636099
      https://github.com/llvm/llvm-project/commit/3bda18e48285d666d8b18e34605a1a0fd3636099
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M .git-blame-ignore-revs

  Log Message:
  -----------
  [libc++] Add status-tracking CSV file update to git-blame-ignore-revs


  Commit: 6cd37eb5deb4400e16a7ce3760abe175a8476eff
      https://github.com/llvm/llvm-project/commit/6cd37eb5deb4400e16a7ce3760abe175a8476eff
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/math-macros.h

  Log Message:
  -----------
  [libc] Fix `INFINITY` being defined as a double (#103445)

Summary:
If the implementation supports floating-point infinities, the macro
INFINITY expands to constant expression of type float which evaluates to
positive or unsigned infinity.

Currently this is a double, this makes it a float.


  Commit: 101acff2e5df21378b5764660afc0ec84ce6a1a6
      https://github.com/llvm/llvm-project/commit/101acff2e5df21378b5764660afc0ec84ce6a1a6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M libc/include/time.h.def
    M libc/include/uchar.h.def
    M libc/newhdrgen/yaml/time.yaml
    M libc/newhdrgen/yaml/uchar.yaml
    M libc/spec/stdc.td

  Log Message:
  -----------
  [libc] Define 'size_t' in `time.h` and `uchar.h` (#103441)

Summary:
The standard says the following: The <time.h> header shall define the
clock_t, size_t, time_t, types as described in <sys/types.h>. I couldn't
find one for `uchar.h` but it needs it once we define things like
`mbrtoc8`.


  Commit: ff12c0061b7dbb8a82681a0e02a513bb84b1d143
      https://github.com/llvm/llvm-project/commit/ff12c0061b7dbb8a82681a0e02a513bb84b1d143
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M offload/include/device.h
    M offload/src/PluginManager.cpp
    M offload/src/interface.cpp
    M offload/src/omptarget.cpp
    M offload/src/private.h
    A offload/test/offloading/ctor_dtor_api.cpp
    A offload/test/offloading/ctor_dtor_lazy.cpp

  Log Message:
  -----------
  [Offload] Ensure to load images when the device is used (#103002)

When we use the device, e.g., with an API that interacts with it, we
need to ensure the image is loaded and the constructors are executed.
Two tests are included to verify we 1) load images and run constructors
when needed, and 2) we do so lazily only if the device is actually used.

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 5ae9faa538d100ab38f6f4f99c924de0e4270272
      https://github.com/llvm/llvm-project/commit/5ae9faa538d100ab38f6f4f99c924de0e4270272
  Author: Alastair Houghton <ahoughton at apple.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [Object][x86-64] Add support for `R_X86_64_GLOB_DAT` relocations. (#103029)

Add support for `R_X86_64_GLOB_DAT` relocations to the relocation
resolver.

rdar://133510292


  Commit: ac6e1fd0c089043fe60bd0040ba3cad884f00206
      https://github.com/llvm/llvm-project/commit/ac6e1fd0c089043fe60bd0040ba3cad884f00206
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [RISCV][TTI] Cost non-power-of-two size changing casts (#101047)

For a cast with src and destination size being unequal, we were costing
the cast as if it were being scalarized, when in fact we can often
promote such cases to a wider legal type.

Note that for casts with equal size (i.e. bitcast, some fp<->i, and
ptrtoint) the generic logic in BasicTTI already assumed promotion. It
just doesn't handle the cast where source and destination are both
promoted to non-equal types.

This is analogous to d3fd28a, but with the same reasoning applied to
casts instead.


  Commit: c4cba6aa3d3967ee1953161dc26b0c5d9465a0cc
      https://github.com/llvm/llvm-project/commit/c4cba6aa3d3967ee1953161dc26b0c5d9465a0cc
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Add support for tblgen-lsp-server (#103478)


  Commit: 643a2080ec028bd7674206e0f97cbc7d0f132f99
      https://github.com/llvm/llvm-project/commit/643a2080ec028bd7674206e0f97cbc7d0f132f99
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/test/dfsan/custom.cpp
    M compiler-rt/test/dfsan/flags.c
    M compiler-rt/test/dfsan/fork.cpp
    M compiler-rt/test/dfsan/origin_limit.c
    M compiler-rt/test/msan/Linux/sendmsg.cpp
    M compiler-rt/test/msan/chained_origin_empty_stack.cpp
    M compiler-rt/test/msan/chained_origin_limits.cpp
    M compiler-rt/test/msan/coverage-levels.cpp
    M compiler-rt/test/msan/dtor-member.cpp
    M compiler-rt/test/msan/fork.cpp
    M compiler-rt/test/msan/interception_sigaction_test.cpp
    M compiler-rt/test/msan/memcmp_test.cpp
    M compiler-rt/test/msan/msan_check_mem_is_initialized.cpp
    M compiler-rt/test/msan/poison_in_free.cpp
    M compiler-rt/test/msan/print_stats.cpp
    M compiler-rt/test/msan/recover-dso.cpp
    M compiler-rt/test/msan/recover.cpp
    M compiler-rt/test/msan/release_origin.c
    M compiler-rt/test/msan/strcmp.c
    M compiler-rt/test/msan/strndup.cpp
    M compiler-rt/test/profile/Linux/instrprof-comdat.test
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_segv_handler.cpp
    M compiler-rt/test/ubsan/TestCases/Misc/Linux/static-link.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-arg0-logging.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-logger.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-logging-implicit-this.cpp
    M compiler-rt/test/xray/TestCases/Posix/argv0-log-file-name.cpp
    M compiler-rt/test/xray/TestCases/Posix/coverage-sample.cpp
    M compiler-rt/test/xray/TestCases/Posix/fdr-reinit.cpp
    M compiler-rt/test/xray/TestCases/Posix/fixedsize-logging.cpp
    M compiler-rt/test/xray/TestCases/Posix/func-id-utils.cpp
    M compiler-rt/test/xray/TestCases/Posix/optional-inmemory-log.cpp
    M compiler-rt/test/xray/TestCases/Posix/patching-unpatching.cpp
    M compiler-rt/test/xray/TestCases/Posix/pic_test.cpp
    M compiler-rt/test/xray/TestCases/Posix/typed-event-logging.cpp

  Log Message:
  -----------
  [llvm-lit] Fix error in compiler-rt tests when using lit internal shell with env (#102069)

When running tests in compiler-rt using the lit internal shell with the
following command:
```
LIT_USE_INTERNAL_SHELL=1 ninja check-compiler-rt
```
one common error that occurs is:
```
'XRAY_OPTIONS=patch_premain=false:verbosity=1': command not found
```
This error, along with over 50 similar "environment variable not found"
errors, appears across 35 files in complier-rt. These errors happen
because the environment variables are not being set correctly when the
internal shell is used, leading to commands failing due to unrecognized
environment variables.

This patch addresses the issue by using the `env` command to properly
set the environment variables before running the tests. By explicitly
setting the environment variables through `env`, the internal shell can
correctly interpret and apply them, allowing the tests to pass.
fixes: #102395 
[link to
RFC](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: 1b2d11de938af899c74eacc0218304576fe6052b
      https://github.com/llvm/llvm-project/commit/1b2d11de938af899c74eacc0218304576fe6052b
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/normalize.hlsl
    A clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/normalize.ll
    A llvm/test/CodeGen/DirectX/normalize_error.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/normalize.ll

  Log Message:
  -----------
  Add normalize builtins and normalize HLSL function to DirectX and SPIR-V backend (#102683)

This PR adds the normalize intrinsic and an HLSL function that uses it.
The SPIRV backend is also implemented.

Used https://github.com/llvm/llvm-project/pull/101256 as a reference,
along with https://github.com/llvm/llvm-project/pull/102243
Fixes https://github.com/llvm/llvm-project/issues/99139


  Commit: 2596464dcd7563cb4f54ef794334fa87438cc324
      https://github.com/llvm/llvm-project/commit/2596464dcd7563cb4f54ef794334fa87438cc324
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Re-land #102671 after the flaky test is disabled

Reland #102671 after the other attempted fixes are all flawed in some
build configurations. The previous try for the same commit was breaking
a flaky tests under ASAN which is not marked as unsupported. This fix
should be good to go now.

Fixes AIX bot for DynamicLibraryTests failure.


  Commit: bde4ffe7521421cfa891c7d6e526566920326b3f
      https://github.com/llvm/llvm-project/commit/bde4ffe7521421cfa891c7d6e526566920326b3f
  Author: David Benjamin <davidben at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerDictionary.h
    M compiler-rt/lib/fuzzer/FuzzerLoop.cpp

  Log Message:
  -----------
  Don't pass null pointers to memcmp and memcpy in libFuzzer (#96775)

In C, it is UB to call `memcmp(NULL, NULL, 0)`, `memcpy(NULL, NULL, 0)`,
etc. Unfortunately, `(NULL, 0)` is the natural representation of an
empty sequence of objects and extremely common in real world code. As a
result, all C code, and C++ code which calls into C functions, must
carefully guard all calls to `memcpy`.

This is a serious, real world usability issue in C and should be fixed
in the language (see #49459). In the meantime, pay the cost of the extra
branch to avoid tripping UBSan in libFuzzer. Once the usability problem
in C has been fixed, these checks can be removed.

Fixes #96772


  Commit: 914a846e2979dc33f41e747b9b8d726424b4d92f
      https://github.com/llvm/llvm-project/commit/914a846e2979dc33f41e747b9b8d726424b4d92f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp

  Log Message:
  -----------
  [RISCV][GISel] Don't custom legalize load/store of vector of pointers if ELEN < XLEN. (#101565)

We need to have elements than can hold a pointer sized element.
    
No test because it crashes in LowerLoad or LowerStore now which
needs to be addressed separately.

I also reordered things so all the vector load/store stuff is together.


  Commit: b719ab4eef634f24605ca7ccd4874338c34e05bd
      https://github.com/llvm/llvm-project/commit/b719ab4eef634f24605ca7ccd4874338c34e05bd
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVAttributes.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    R mlir/include/mlir/Dialect/SPIRV/IR/SPIRVJointMatrixOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/IR/CastOps.cpp
    R mlir/lib/Dialect/SPIRV/IR/JointMatrixOps.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/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
    R mlir/test/Dialect/SPIRV/IR/joint-matrix-ops.mlir
    R mlir/test/Target/SPIRV/joint-matrix-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Drop support for SPV_INTEL_joint_matrix (#102332)

This was a "preview" extension, never formalized, that has now been
supplanted by SPV_KHR_cooperative_matrix.


  Commit: 5bb379f6f0ed17873a2f500361921f98c112108a
      https://github.com/llvm/llvm-project/commit/5bb379f6f0ed17873a2f500361921f98c112108a
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Optimizer/Builder/CMakeLists.txt
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/test/Lower/CUDA/cuda-data-attribute.cuf

  Log Message:
  -----------
  [flang][cuda] Fix allocation of descriptor for cray pointer (#103474)

The cray pointee descriptor with device attribute was not allocated with
cuf.alloc so it leads to error on deallocation with cuf.free.


  Commit: 9487cf97e31bb9fac14394913b64c60ae60f5e41
      https://github.com/llvm/llvm-project/commit/9487cf97e31bb9fac14394913b64c60ae60f5e41
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [Support] Restrict ManagedStatic ThreadPoolExecutor to Windows

https://reviews.llvm.org/D70447 switched to `ManagedStatic` to work
around race conditions in MSVC runtimes and the MinGW runtime.
However, `ManagedStatic` is not suitable for other platforms.

However, this workaround is not suitable for other platforms (#66974).
lld::fatal calls exitLld(1), which calls `llvm_shutdown` to destroy
`ManagedStatic` objects. The worker threads will finish and invoke TLS
destructors (glibc `__call_tls_dtors`). This can lead to race conditions
if other threads attempt to access TLS objects that have already been
destroyed.

While lld's early exit mechanism needs more work, I believe Parallel.cpp
should avoid this pitfall as well.

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


  Commit: a3cba6b5db1b0918923240f46dcd6279a7b4421d
      https://github.com/llvm/llvm-project/commit/a3cba6b5db1b0918923240f46dcd6279a7b4421d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [Support] ThreadPoolExecutor: remove unused default argument


  Commit: 16e22a6d49ee148b426cb4285aa479b327f3b0f7
      https://github.com/llvm/llvm-project/commit/16e22a6d49ee148b426cb4285aa479b327f3b0f7
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp

  Log Message:
  -----------
  Remove unused using decl and var in PGOInstrumentationTest (#103447)


  Commit: 5e231ffe2907396e7af9b9fcfd78e5a6cc4420d3
      https://github.com/llvm/llvm-project/commit/5e231ffe2907396e7af9b9fcfd78e5a6cc4420d3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [PowerPC] Use APInt::getZExtValue() instead of getRawData(). NFC


  Commit: e9f6deaa8fd8ca3247c79f962aed335ada99cd66
      https://github.com/llvm/llvm-project/commit/e9f6deaa8fd8ca3247c79f962aed335ada99cd66
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/test/MC/AsmParser/macro-irpc.s

  Log Message:
  -----------
  [MCAsmParser] .irpc: correctly handle quoted string

The quotes should be stripped.

Improve the test to check all of Identifier, Integer, and String.

GNU assembler also supports `.irpc c,"" a` but there is no real world
use case. So don't implement it.


  Commit: 4f5d866af7fed0de1671a68530d3023e9762b71e
      https://github.com/llvm/llvm-project/commit/4f5d866af7fed0de1671a68530d3023e9762b71e
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M bolt/test/permission.test

  Log Message:
  -----------
  [llvm-lit] Add REQUIRES: shell to BOLT permission test for lit internal shell (#103012)

This patch adds the `REQUIRES: shell` directive to the BOLT permission
test to ensure it only runs in environments with a full-featured
Unix-like shell. This change is necessary because the test relies on
advanced shell capabilities that are not supported by lit's internal
shell.

**Reasoning:** The BOLT permission test uses features like running
commands in the background with `&`, performing arithmetic operations,
and handling special number formats (octal). These features require a
more capable shell than what lit's internal shell provides. Without a
proper shell, the test could fail or behave unpredictably.

This change is relevant for enabling the lit internal shell by default,
as outlined in [[RFC] Enabling the Lit Internal Shell by
Default](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: b8f560fe24e88fbdf3b07d0790950a5c6b836a52
      https://github.com/llvm/llvm-project/commit/b8f560fe24e88fbdf3b07d0790950a5c6b836a52
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [LegalizeTypes] Use APFloat::getZero instead of passing a zero APInt to APFloat constructor. NFC (#103492)


  Commit: b73771cf0fc49675ee850d197a6e56a0e8b90cae
      https://github.com/llvm/llvm-project/commit/b73771cf0fc49675ee850d197a6e56a0e8b90cae
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/scatter-cost.ll

  Log Message:
  -----------
  [AArch64] Increase scatter overhead on Neoverse-V2 (#101296)

This patch increases scatter overhead on Neoverse-V2 to 13. This
benefits s128 kernel from TSVC_2 test suite.
SPEC 17, RAJAPerf, and Sptter are unaffected by this patch.

This patch boosts s128 kernel's performance from TSVC test suite by about
40% as this enables vectorization. Also, handle minor code refactoring
for gather related part.


  Commit: e8f312de78577e14154c10db0cb71147c182b69a
      https://github.com/llvm/llvm-project/commit/e8f312de78577e14154c10db0cb71147c182b69a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

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


  Commit: 7f1f3afd37d7c32f27af3f756080ea916c970902
      https://github.com/llvm/llvm-project/commit/7f1f3afd37d7c32f27af3f756080ea916c970902
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [APInt] Use APINT_BITS_PER_WORD instead of recomputing it. NFC


  Commit: 13cc94e30e03d3fbae78d4fb3a80ca2d40ea12ef
      https://github.com/llvm/llvm-project/commit/13cc94e30e03d3fbae78d4fb3a80ca2d40ea12ef
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    A llvm/test/tools/llvm-dwarfdump/Inputs/verify_split_dwarf_debug_names_exe.yaml
    A llvm/test/tools/llvm-dwarfdump/Inputs/verify_split_dwarf_debug_names_main_dwo.yaml
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-entries.s
    A llvm/test/tools/llvm-dwarfdump/verify_split_dwarf_debug_names.test

  Log Message:
  -----------
  Add support for verifying .debug_names in split DWARF for CUs and TUs. (#101775)

This patch fixes .debug_names verification for split DWARF with no type
units. It will print out an error for any name entries where we can't
locate the .dwo file. It finds the non skeleton unit and correctly
figures out the DIE offset in the .dwo file. If the non skeleton unit is
found and yet the skeleton unit has a DWO ID, an error will be emitted
showing we couldn't access the non-skeleton compile unit.


  Commit: 0160d817c2c1bd3f32986d9cf8b938e613ac3d12
      https://github.com/llvm/llvm-project/commit/0160d817c2c1bd3f32986d9cf8b938e613ac3d12
  Author: HighW4y2H3ll <zhenghaohuu at gmail.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

  Changed paths:
    M openmp/runtime/cmake/LibompDefinitions.cmake
    M openmp/runtime/cmake/config-ix.cmake
    M openmp/runtime/src/z_Linux_util.cpp

  Log Message:
  -----------
  [OpenMP] Rename worker threads for improved debuggability (#102065)

Rename the worker threads "openmp_worker"

---------

Co-authored-by: h2h <h2h at meta.com>
Co-authored-by: Matthias Braun <matze at braunis.de>


  Commit: 74c5fa12a8417d12d9c811255ab2b81f98f87e39
      https://github.com/llvm/llvm-project/commit/74c5fa12a8417d12d9c811255ab2b81f98f87e39
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [Bitcode] Use range-based for loops (NFC) (#103628)


  Commit: 1c0ad07ccd643141852bd534d8828843f352f5e8
      https://github.com/llvm/llvm-project/commit/1c0ad07ccd643141852bd534d8828843f352f5e8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-13 (Tue, 13 Aug 2024)

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

  Log Message:
  -----------
  [LegalizeTypes] Use APInt::extractBits instead of getRawData. NFC (#103607)

We shouldn't expose that APInt stores uint64_t values if we don't need
to.


  Commit: 109b50808f72c228518766c3b384dd14e0dcf4ee
      https://github.com/llvm/llvm-project/commit/109b50808f72c228518766c3b384dd14e0dcf4ee
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  AtomicExpand: Add assert that atomicrmw is an xchg

It turns out it's trivial to hit this path with any rmw
operation.


  Commit: 829992cf21e9220bbf7985073745ee8f09b0b7f1
      https://github.com/llvm/llvm-project/commit/829992cf21e9220bbf7985073745ee8f09b0b7f1
  Author: ManuelJBrito <59119670+ManuelJBrito at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    A llvm/test/Transforms/NewGVN/pr36335-phi-undef.ll
    M llvm/test/Transforms/NewGVN/simp-to-self.ll
    R llvm/test/Transforms/NewGVN/todo-pr36335-phi-undef.ll

  Log Message:
  -----------
  [NewGVN] Prevent cyclic dependencies by ensuring Leader has min RPO number (#82110)

Cyclic dependencies in NewGVN can result in miscompilation and
termination issues.

This patch ensures that the Class Leader is always the member with the
lowest RPO number. This ensures that the Class Leader is processed
before all other members, making the cyclic dependence impossible.

This fixes #35683.

Regressions: 

- 'simp-to-self.ll' regresses due to a known limitation in the way
NewGVN and InstSimplify interact. With the new leader, InstSimplify does
not know that %conv is 1 and fails to simplify.


  Commit: f1cb64b6f07184a3624ebb77f3f0e0bddafea1a4
      https://github.com/llvm/llvm-project/commit/f1cb64b6f07184a3624ebb77f3f0e0bddafea1a4
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/tools/driver/cc1as_main.cpp
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [MC] Remove Darwin SDK/Version from ObjFileInfo (#103025)

There's only a single user (MCMachOStreamer), so it makes more sense to
move the version emission to the source of the data.


  Commit: cbd306806ad4b518e664f122838e45d709db0ef6
      https://github.com/llvm/llvm-project/commit/cbd306806ad4b518e664f122838e45d709db0ef6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [APInt] Correct backwards static_assert condition. (#103641)

In order to guarantee that extracting 64 bits doesn't require more than
2 words, the word size would need to be 64 bits or more. If the word
size was smaller than 64, like 32, you may need to read 3 words to get
64 bits.


  Commit: 812ae91d545811d8800a6e1db5f3ff45afde6ab9
      https://github.com/llvm/llvm-project/commit/812ae91d545811d8800a6e1db5f3ff45afde6ab9
  Author: ZhangYin <zhangyin2018 at iscas.ac.cn>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/ParallelismProjects.csv
    M libcxx/include/experimental/__simd/reference.h
    A libcxx/test/std/experimental/simd/simd.reference/reference_unary.pass.cpp

  Log Message:
  -----------
  [libc++] <experimental/simd> Add ++/-- operators for simd reference (#88091)


  Commit: 241f9e7492dae1920778ef4fe72db6073b6275b1
      https://github.com/llvm/llvm-project/commit/241f9e7492dae1920778ef4fe72db6073b6275b1
  Author: Tim Besard <tim.besard at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm-c/Transforms/PassBuilder.h
    M llvm/lib/Passes/PassBuilderBindings.cpp
    M llvm/unittests/Passes/PassBuilderBindings/PassBuilderBindingsTest.cpp

  Log Message:
  -----------
  [LLVM][NewPM] Add a C API for setting the PassBuilder AA pipeline. (#102482)

This PR adds a field to the pass builder options struct, `AAPipeline`,
exposed through a C API `LLVMPassBuilderOptionsSetAAPipeline`, that is
used to set an alias analysis pipeline to be used in stead of the
default one.

x-ref https://discourse.llvm.org/t/newpm-c-api-questions/80598


  Commit: 6da3361f504495cef71caa4de4297234b6ea7fc7
      https://github.com/llvm/llvm-project/commit/6da3361f504495cef71caa4de4297234b6ea7fc7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp

  Log Message:
  -----------
  [SCEV] Look through multiply in computeConstantDifference() (#103051)

Inside computeConstantDifference(), handle the case where both sides are
of the form `C * %x`, in which case we can strip off the common
multiplication (as long as we remember to multiply by it for the
following difference calculation).

There is an obvious alternative implementation here, which would be to
directly decompose multiplies inside the "Multiplicity" accumulation.
This does work, but I've found this to be both significantly slower
(because everything has to work on APInt) and more complex in
implementation (e.g. because we now need to match back the new More/Less
with an arbitrary factor) without providing more power in practice. As
such, I went for the simpler variant here.

This is the last step to make computeConstantDifference() sufficiently
powerful to replace existing uses of
`cast<SCEVConstant>(getMinusSCEV())` with it.


  Commit: ce8cb7c389460ef7fa56b521742a58ead647fda6
      https://github.com/llvm/llvm-project/commit/ce8cb7c389460ef7fa56b521742a58ead647fda6
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [Analysis][NFC] Don't use BitVector for nobuiltin overrides

Avoid one heap allocation per function per constructed TLI. The
BitVector is never resized, so a bitset is sufficient.

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


  Commit: dfa488baa2fad165e353ef54fde863a39f093333
      https://github.com/llvm/llvm-project/commit/dfa488baa2fad165e353ef54fde863a39f093333
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/IR/Module.cpp

  Log Message:
  -----------
  [IR] Cache llvm.module.flags metadata in Module

This metadata is queried quite often, so avoiding frequent lookups in
the hash map is beneficial. Therefore, cache the metadata node directly
in the module.

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


  Commit: fa658ac7913408d5ec248193d531ba63f6fbe73d
      https://github.com/llvm/llvm-project/commit/fa658ac7913408d5ec248193d531ba63f6fbe73d
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
    M llvm/lib/Transforms/IPO/LoopExtractor.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp

  Log Message:
  -----------
  [Transforms][NFC] Remove second CodeExtractor constructor

This only has a single use and is equally well served by the existing
constructor -- blocks of a loop are already an array.

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


  Commit: 8eadf21004ecfa78fa3c6da385c5b2f2f44458fa
      https://github.com/llvm/llvm-project/commit/8eadf21004ecfa78fa3c6da385c5b2f2f44458fa
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp

  Log Message:
  -----------
  [DataLayout] Split StructAlignment into two fields (NFC) (#103700)

Aggregate type specification doesn't have the size component.
Don't abuse LayoutAlignElem to avoid confusion.


  Commit: 3cab7c555ad6451f2b1b4dc918a4b4f4e4a3e45d
      https://github.com/llvm/llvm-project/commit/3cab7c555ad6451f2b1b4dc918a4b4f4e4a3e45d
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/Support/float128.h
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll

  Log Message:
  -----------
  Reland logf128 constant folding (#103217)

This is a reland of #96287. This change makes tests in logf128.ll ignore
the sign of NaNs for negative value tests and moves an #include <cmath>
to be blocked behind #ifndef _GLIBCXX_MATH_H.


  Commit: 13008aa45d406a65ee7adfc7672a038e4def1ad3
      https://github.com/llvm/llvm-project/commit/13008aa45d406a65ee7adfc7672a038e4def1ad3
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Pointer.h
    M clang/test/AST/Interp/arrays.cpp

  Log Message:
  -----------
  [clang][Interp] Diagnose pointer subtraction on zero-size arrays (#103015)


  Commit: 5ab99bf1a757c5ad7115280f374d9af4f1b98bc9
      https://github.com/llvm/llvm-project/commit/5ab99bf1a757c5ad7115280f374d9af4f1b98bc9
  Author: Anton Sidorenko <anton.sidorenko at syntacore.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    R llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR3.td
    A llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR345.td
    R llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3-ALU.s
    R llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3-LSU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3_4_5-ALU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3_4_5-LSU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s

  Log Message:
  -----------
  [RISCV] Add scheduling model for Syntacore SCR4 and SCR5  (#102909)

Syntacore SCR4 is a microcontroller-class processor core that has much
in common with SCR3, but also supports F and D extensions.
Overview: https://syntacore.com/products/scr4

Syntacore SCR5 is an entry-level Linux-capable 32/64-bit RISC-V
processor core which scheduling model almost match SCR4.
Overview: https://syntacore.com/products/scr5

Co-authored-by: Dmitrii Petrov <dmitrii.petrov at syntacore.com>
Co-authored-by: Anton Afanasyev <anton.afanasyev at syntacore.com>


  Commit: 0d074ba197166b4f00cc3b1b1011625eb7be0a53
      https://github.com/llvm/llvm-project/commit/0d074ba197166b4f00cc3b1b1011625eb7be0a53
  Author: hanbeom <kese111 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-sat-clip.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/trunc-select-to-max-usat.ll

  Log Message:
  -----------
  [DAG] Support saturated truncate (#99418)

A truncate is considered saturated if no additional conversion is required between the target and return values. If the target is saturated when attempting to truncate from a vector, there is an opportunity to optimize it.

Previously, each architecture had its own attempt at optimization, leading to redundant code. This patch implements common logic by introducing three new ISDs:

`ISD::TRUNCATE_SSAT_S`: When the operand is a signed value and  the range of values matches the range of signed values of the  destination type.

`ISD::TRUNCATE_SSAT_U`: When the operand is a signed value and the range of values matches the range of unsigned values of the destination type.

`ISD::TRUNCATE_USAT_U`: When the operand is an unsigned value and the range of values matches the range of unsigned values of the destination type.

These ISDs indicate a saturated truncate.

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


  Commit: b8b82756cb6a8ee71ef1d8f76542458bffdc1538
      https://github.com/llvm/llvm-project/commit/b8b82756cb6a8ee71ef1d8f76542458bffdc1538
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [Flang][OpenMP][Lower] Clause lowering cleanup (#103058)

This patch removes the `ClauseProcessor::processDefault` method due to
it having been implemented in
`DataSharingProcessor::collectDefaultSymbols` instead.

Also, some `genXyzClauses` functions are updated to avoid triggering
TODO errors for clauses not supported by the corresponding construct and
to keep alphabetical sorting on the order in which clauses are
processed.


  Commit: 1360b9d4129ba34e971e6642deb0aaf4d51f43a2
      https://github.com/llvm/llvm-project/commit/1360b9d4129ba34e971e6642deb0aaf4d51f43a2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll

  Log Message:
  -----------
  [LV] Add test for diff check creation order.

Add a test where diff checks are generated initial and then re-generated
when re-trying with runtime checks.

At the moment, the order doesn't match the order they are created in, as
the DiffChecks field in LAI isn't cleared as other fields holding
runtime checks.


  Commit: 31f593eb958e2076b98f62e6f2ec24ad8737cd4d
      https://github.com/llvm/llvm-project/commit/31f593eb958e2076b98f62e6f2ec24ad8737cd4d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll

  Log Message:
  -----------
  [LAA] Also clear DiffChecks in LAI::reset().

DiffChecks will get populated twice when re-trying with runtime checks.
Without clearing it like the regular Checks vector, it will contain some
duplicates and the order the checks are created may not match the order
the checks have been queued when re-trying.


  Commit: c4206f1ff1d946c495b74738eba9303dafb17e18
      https://github.com/llvm/llvm-project/commit/c4206f1ff1d946c495b74738eba9303dafb17e18
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/builtin-cpu-supports.c
    M compiler-rt/lib/builtins/cpu_model/riscv.c

  Log Message:
  -----------
  [RISCV][compiler-rt] Update __init_riscv_feature_bits prototype (#101472)

This patch add `void* PlatformArgs` parameter to
`__init_riscv_feature_bits`. `PlatformArgs` allows the platform to
provide pre-computed data and access it without extra effort. For
example, Linux could pass the vDSO object to avoid an extra system call.

```
__init_riscv_feature_bits()

->

__init_riscv_feature_bits(void *PlatformArgs)
```


  Commit: 2fc7a72733762d685a07f846b44dc17a0585098e
      https://github.com/llvm/llvm-project/commit/2fc7a72733762d685a07f846b44dc17a0585098e
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    A llvm/test/CodeGen/SPIRV/transcoding/OpGroupBroadcast.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll

  Log Message:
  -----------
  [SPIR-V] Add implementation of the non-const G_BUILD_VECTOR and fix emission of the OpGroupBroadcast instruction (#103050)

This PR addresses a TODO in
lib/Target/SPIRV/SPIRVInstructionSelector.cpp by adding implementation
of the non-const G_BUILD_VECTOR, and fix emission of the
OpGroupBroadcast instruction for the case when the `..._group_broadcast`
builtin has more than one `local_id` argument and `OpGroupBroadcast`
requires a newly constructed vector with 2 or 3 components instead of
originally passed series of `local_id` arguments.

This PR may resolve https://github.com/llvm/llvm-project/issues/97310 if
the reason for the reported fail is an incorrectly generated
OpGroupBroadcast instruction that was definitely a case.

Existing test is hardened and a new test is added to cover this special
case of the OpGroupBroadcast instruction emission.


  Commit: 8bf298fa95bb23081e9e2507bfb31b017c01be15
      https://github.com/llvm/llvm-project/commit/8bf298fa95bb23081e9e2507bfb31b017c01be15
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/riscv.c

  Log Message:
  -----------
  [RISCV][compiler-rt] create __riscv__cpu_model for vendorID, ArchID, … (#101449)

…ImplID

This patch 

1. remove the vendorId from `__riscv_vendor_feature_bits`
2. Define a new structure for vendorID, ArchID and ImplID
3. Update the relate init code


  Commit: 6300233de166f46c5bf9cd13f4a3aa82b26c0ddd
      https://github.com/llvm/llvm-project/commit/6300233de166f46c5bf9cd13f4a3aa82b26c0ddd
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/Support/float128.h
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll

  Log Message:
  -----------
  Revert "Reland logf128 constant folding (#103217)"

This reverts commit 3cab7c555ad6451f2b1b4dc918a4b4f4e4a3e45d.

The modified test fails on ppc64le buildbots.


  Commit: 228753290b7426bf3eda7c4397aa74f0c67d07d7
      https://github.com/llvm/llvm-project/commit/228753290b7426bf3eda7c4397aa74f0c67d07d7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [BasicAA] Remove unused variables (NFC)

Split out from #98608.


  Commit: 9c7c3f94ef5fe178df569eccb35d636a30f89c02
      https://github.com/llvm/llvm-project/commit/9c7c3f94ef5fe178df569eccb35d636a30f89c02
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    A llvm/test/Analysis/BasicAA/issue103500.ll

  Log Message:
  -----------
  BasicAA: Fix assert when indexing address spaces with different sizes (#103713)

Fixes #103500


  Commit: 9e318bac5b26245c7be7c007975b7589cfcfd8d3
      https://github.com/llvm/llvm-project/commit/9e318bac5b26245c7be7c007975b7589cfcfd8d3
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll

  Log Message:
  -----------
  [LLVM] Regenerate some test outputs for llvm/test/Transforms/LoopVectorize.


  Commit: 6de04e6fe8b1520ef3e4073ff222e623b7dc9cb9
      https://github.com/llvm/llvm-project/commit/6de04e6fe8b1520ef3e4073ff222e623b7dc9cb9
  Author: Dennis Filimonov <dennis.filimonov at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/Transforms/OptimizeAllocationLiveness.cpp
    A mlir/test/Dialect/Bufferization/Transforms/optimize-allocation-liveness.mlir

  Log Message:
  -----------
  [mlir][bufferization] Adding the optimize-allocation-liveness pass (#101827)

Adding a pass that is expected to run after the deallocation pipeline
and will move buffer deallocations right after their last user or
dependency, thus optimizing the allocation liveness.


  Commit: dd08b7613ad91ec6b6220a8282ff7490a5189486
      https://github.com/llvm/llvm-project/commit/dd08b7613ad91ec6b6220a8282ff7490a5189486
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M .git-blame-ignore-revs
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/test/X86/encoding-validation.s
    M bolt/test/X86/gotpcrelx.s
    M bolt/test/X86/icf-jump-tables.test
    M bolt/test/X86/indirect-goto-pie.test
    M bolt/test/X86/jump-table-func-entry.s
    M bolt/test/X86/keep-nops.s
    M bolt/test/X86/linux-bug-table.s
    M bolt/test/X86/linux-orc.s
    M bolt/test/X86/linux-pci-fixup.s
    M bolt/test/X86/linux-smp-locks.s
    M bolt/test/X86/linux-static-calls.s
    M bolt/test/X86/linux-static-keys.s
    M bolt/test/X86/pt_gnu_relro.s
    M bolt/test/X86/unclaimed-jt-entries.s
    M bolt/test/X86/vararg.test
    M bolt/test/permission.test
    M bolt/test/runtime/X86/unclaimed-jt-entries.s
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/Types.cpp
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang-tools-extra/include-cleaner/unittests/IncludeSpellerTest.cpp
    M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
    M clang/docs/APINotes.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/include/clang/APINotes/Types.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/Redeclarable.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    A clang/lib/AST/Interp/CompilerComplex.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/lib/AST/Interp/InterpFrame.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload.h
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload_device.h
    A clang/lib/Headers/llvm_offload_wrappers/__llvm_offload_host.h
    M clang/lib/Headers/openmp_wrappers/__clang_openmp_device_functions.h
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
    M clang/test/APINotes/swift-import-as.cpp
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/constexpr-frame-describe.cpp
    M clang/test/AST/Interp/cxx20.cpp
    M clang/test/AST/Interp/new-delete.cpp
    M clang/test/AST/Interp/records.cpp
    M clang/test/AST/Interp/unions.cpp
    A clang/test/AST/ast-dump-retain-subst-template-type-parm-type-ast-nodes.cpp
    M clang/test/AST/atomic-expr.cpp
    M clang/test/CodeGen/builtin-cpu-supports.c
    M clang/test/CodeGenCUDA/Inputs/cuda.h
    A clang/test/CodeGenCUDA/host-used-extern-determinism.cu
    A clang/test/CodeGenCUDA/offload_via_llvm.cu
    M clang/test/CodeGenCXX/x86_64-vaarg.cpp
    A clang/test/CodeGenHLSL/builtins/normalize.hlsl
    M clang/test/CodeGenHLSL/export.hlsl
    A clang/test/Driver/cuda-via-liboffload.cu
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Interpreter/const.cpp
    R clang/test/Preprocessor/pragma_mc_func.c
    A clang/test/SemaCXX/PR98671.cpp
    A clang/test/SemaCXX/matrix-index-operator-sign-conversion.cpp
    A clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/unittests/Format/FormatTestCSharp.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
    M compiler-rt/lib/builtins/aarch64/sme-abi.S
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    M compiler-rt/lib/fuzzer/FuzzerDictionary.h
    M compiler-rt/lib/fuzzer/FuzzerLoop.cpp
    M compiler-rt/lib/nsan/CMakeLists.txt
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan.h
    A compiler-rt/lib/nsan/nsan_allocator.cpp
    A compiler-rt/lib/nsan/nsan_allocator.h
    M compiler-rt/lib/nsan/nsan_flags.inc
    M compiler-rt/lib/nsan/nsan_malloc_linux.cpp
    A compiler-rt/lib/nsan/nsan_new_delete.cpp
    M compiler-rt/lib/nsan/nsan_platform.h
    M compiler-rt/lib/nsan/nsan_thread.cpp
    M compiler-rt/lib/nsan/nsan_thread.h
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/scudo/standalone/list.h
    M compiler-rt/lib/scudo/standalone/tests/list_test.cpp
    M compiler-rt/lib/scudo/standalone/timing.h
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
    M compiler-rt/test/dfsan/custom.cpp
    M compiler-rt/test/dfsan/flags.c
    M compiler-rt/test/dfsan/fork.cpp
    M compiler-rt/test/dfsan/origin_limit.c
    M compiler-rt/test/fuzzer/fork-sigusr.test
    M compiler-rt/test/fuzzer/merge-sigusr.test
    M compiler-rt/test/fuzzer/sigint.test
    M compiler-rt/test/fuzzer/sigusr.test
    M compiler-rt/test/msan/Linux/sendmsg.cpp
    M compiler-rt/test/msan/chained_origin_empty_stack.cpp
    M compiler-rt/test/msan/chained_origin_limits.cpp
    M compiler-rt/test/msan/coverage-levels.cpp
    M compiler-rt/test/msan/dtor-member.cpp
    M compiler-rt/test/msan/fork.cpp
    M compiler-rt/test/msan/interception_sigaction_test.cpp
    M compiler-rt/test/msan/memcmp_test.cpp
    M compiler-rt/test/msan/msan_check_mem_is_initialized.cpp
    M compiler-rt/test/msan/poison_in_free.cpp
    M compiler-rt/test/msan/print_stats.cpp
    M compiler-rt/test/msan/recover-dso.cpp
    M compiler-rt/test/msan/recover.cpp
    M compiler-rt/test/msan/release_origin.c
    M compiler-rt/test/msan/strcmp.c
    M compiler-rt/test/msan/strndup.cpp
    A compiler-rt/test/nsan/Posix/allocator_mapping.cpp
    A compiler-rt/test/nsan/allocator_interface.cpp
    A compiler-rt/test/nsan/malloc_hook.cpp
    A compiler-rt/test/nsan/new_delete_test.cpp
    M compiler-rt/test/profile/Linux/instrprof-comdat.test
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_segv_handler.cpp
    M compiler-rt/test/ubsan/TestCases/Misc/Linux/static-link.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-arg0-logging.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-logger.cpp
    M compiler-rt/test/xray/TestCases/Posix/arg1-logging-implicit-this.cpp
    M compiler-rt/test/xray/TestCases/Posix/argv0-log-file-name.cpp
    M compiler-rt/test/xray/TestCases/Posix/coverage-sample.cpp
    M compiler-rt/test/xray/TestCases/Posix/fdr-reinit.cpp
    M compiler-rt/test/xray/TestCases/Posix/fixedsize-logging.cpp
    M compiler-rt/test/xray/TestCases/Posix/func-id-utils.cpp
    M compiler-rt/test/xray/TestCases/Posix/optional-inmemory-log.cpp
    M compiler-rt/test/xray/TestCases/Posix/patching-unpatching.cpp
    M compiler-rt/test/xray/TestCases/Posix/pic_test.cpp
    M compiler-rt/test/xray/TestCases/Posix/typed-event-logging.cpp
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/CMakeLists.txt
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
    M flang/lib/Optimizer/Transforms/ConstantArgumentGlobalisation.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/rewrite-directives.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/test/Evaluate/fold-out_of_range.f90
    M flang/test/Lower/CUDA/cuda-data-attribute.cuf
    M flang/test/Lower/CUDA/cuda-program-global.cuf
    A flang/test/Lower/ident.f90
    M libc/config/gpu/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/math/index.rst
    M libc/include/CMakeLists.txt
    A libc/include/elf.h.def
    A libc/include/link.h.def
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/elf-macros.h
    M libc/include/llvm-libc-macros/link-macros.h
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/time.h.def
    M libc/include/uchar.h.def
    A libc/newhdrgen/yaml/elf.yaml
    A libc/newhdrgen/yaml/link.yaml
    M libc/newhdrgen/yaml/time.yaml
    M libc/newhdrgen/yaml/uchar.yaml
    M libc/spec/stdc.td
    M libc/src/__support/str_to_float.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/expm1f16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/expf16.cpp
    A libc/src/math/generic/expm1f16.cpp
    M libc/src/math/generic/expxf16.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/UnitTest/LibcTestMain.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/expm1f16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/expm1f16_test.cpp
    M libc/test/src/stdlib/strtof_test.cpp
    M libcxx/docs/Status/Cxx14Issues.csv
    M libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/docs/Status/ParallelismProjects.csv
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/experimental/__simd/reference.h
    M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
    M libcxx/test/libcxx/system_reserved_names.gen.py
    A libcxx/test/std/experimental/simd/simd.reference/reference_unary.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/iterator/types.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/types.h
    M libcxx/test/std/utilities/memory/unique.ptr/iterator_concept_conformance.compile.pass.cpp
    R libcxx/test/std/utilities/memory/unique.ptr/noexcept_operator_star.compile.pass.cpp
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/dereference.single.pass.cpp
    M libcxx/test/support/count_new.h
    A libcxx/utils/synchronize_csv_status_files.py
    M lld/ELF/InputSection.cpp
    M lld/ELF/Symbols.cpp
    M lld/test/ELF/invalid/tls-symbol.s
    A lld/test/ELF/linkerscript/phdrs-no-tls.test
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr-dbg-info-content/TestDbgInfoContentWeakPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py
    M lldb/test/API/functionalities/gdb_remote_client/TestStopPCs.py
    A lldb/test/Shell/ObjectFile/ELF/Inputs/memory-elf.cpp
    A lldb/test/Shell/ObjectFile/ELF/elf-dynamic-no-shdrs.yaml
    A lldb/test/Shell/ObjectFile/ELF/elf-memory.test
    R lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s
    M lldb/tools/lldb-server/lldb-platform.cpp
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/CMake.rst
    M llvm/include/llvm-c/Transforms/PassBuilder.h
    A llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/include/llvm/BinaryFormat/Minidump.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
    M llvm/include/llvm/IR/CFG.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/include/llvm/MC/MCPseudoProbe.h
    M llvm/include/llvm/Object/Minidump.h
    M llvm/include/llvm/ObjectYAML/MinidumpYAML.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    A llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/MemoryBuiltins.cpp
    M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Analysis/TypeMetadataUtils.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TypePromotion.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/FuzzMutate/RandomIRBuilder.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCPseudoProbe.cpp
    M llvm/lib/Object/Minidump.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Object/RelocationResolver.cpp
    M llvm/lib/ObjectYAML/MinidumpEmitter.cpp
    M llvm/lib/ObjectYAML/MinidumpYAML.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderBindings.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/Support/APInt.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/lib/Support/Parallel.cpp
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/Hexagon/HexagonMask.cpp
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoM.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    R llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR3.td
    A llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR345.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86Subtarget.cpp
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/LoopExtractor.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/AlignmentFromAssumptions.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/GlobalStatus.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/runtimes/CMakeLists.txt
    A llvm/test/Analysis/BasicAA/issue103500.ll
    M llvm/test/Analysis/CostModel/RISCV/cast.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Analysis/ScalarEvolution/different-loops-recs.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
    R llvm/test/CodeGen/AArch64/GlobalISel/select-intrinsic-uaddlv.mir
    A llvm/test/CodeGen/AArch64/aarch64-neon-faminmax.ll
    M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-across.ll
    M llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll
    A llvm/test/CodeGen/AArch64/sme-darwin-no-sve-vg.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    A llvm/test/CodeGen/AArch64/sve-vector-compress.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fceil.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ffloor.s16.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/fadd.f16.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ceil.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.floor.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    A llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
    A llvm/test/CodeGen/AMDGPU/shrink-true16.mir
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    A llvm/test/CodeGen/DirectX/normalize.ll
    A llvm/test/CodeGen/DirectX/normalize_error.ll
    A llvm/test/CodeGen/Hexagon/mask-instr.ll
    M llvm/test/CodeGen/Mips/bittest.ll
    M llvm/test/CodeGen/NVPTX/extractelement.ll
    M llvm/test/CodeGen/PowerPC/aix-vsx-splatimm.ll
    M llvm/test/CodeGen/PowerPC/build-vector-from-load-and-zeros.ll
    M llvm/test/CodeGen/PowerPC/load-and-splat.ll
    M llvm/test/CodeGen/PowerPC/ppc64-P9-vabsd.ll
    M llvm/test/CodeGen/PowerPC/test-vector-insert.ll
    M llvm/test/CodeGen/PowerPC/vec-trunc2.ll
    M llvm/test/CodeGen/PowerPC/vsx.ll
    M llvm/test/CodeGen/PowerPC/widen-vec-correctly-be.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-sat-clip.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    A llvm/test/CodeGen/RISCV/rvv/memcpy-crash-zvl32b.ll
    M llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/trunc-select-to-max-usat.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/uadd_sat_plus.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/length.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/normalize.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpGroupAllAny.ll
    A llvm/test/CodeGen/SPIRV/transcoding/OpGroupBroadcast.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll
    M llvm/test/CodeGen/X86/combine-concatvectors.ll
    M llvm/test/CodeGen/X86/cttz.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/pr59305.ll
    M llvm/test/CodeGen/X86/pr89877.ll
    M llvm/test/CodeGen/X86/pr90847.ll
    M llvm/test/MC/AsmParser/macro-irpc.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
    M llvm/test/MC/Disassembler/X86/apx/ccmp.txt
    M llvm/test/MC/X86/apx/ccmp-att.s
    M llvm/test/MC/X86/apx/ccmp-intel.s
    M llvm/test/MC/X86/apx/ctest-att.s
    M llvm/test/MC/X86/apx/ctest-intel.s
    M llvm/test/MC/X86/apx/setzucc-att.s
    M llvm/test/MC/X86/apx/setzucc-intel.s
    M llvm/test/MC/X86/cmpccxadd-att-alias.s
    M llvm/test/MC/X86/cmpccxadd-intel-alias.s
    M llvm/test/ThinLTO/X86/ctxprof.ll
    A llvm/test/Transforms/AlignmentFromAssumptions/domtree-crash.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/expand-atomicrmw-xchg-fp.ll
    M llvm/test/Transforms/AtomicExpand/AArch64/pcsections.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-mmra.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/ARM/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/ARM/cmpxchg-weak.ll
    M llvm/test/Transforms/AtomicExpand/Hexagon/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/Mips/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/RISCV/atomicrmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-rmw-fp.ll
    M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-xchg-fp.ll
    A llvm/test/Transforms/GlobalMerge/private-global.ll
    R llvm/test/Transforms/Inline/AMDGPU/inline-amdgpu-unsafe-fp-atomics.ll
    A llvm/test/Transforms/InstCombine/phi-int-users.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/fixed-deinterleave-intrinsics.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/scalable-deinterleave-intrinsics.ll
    A llvm/test/Transforms/InterleavedAccess/AArch64/sve-deinterleave4.ll
    A llvm/test/Transforms/InterleavedAccess/AArch64/sve-interleave4.ll
    M llvm/test/Transforms/InterleavedAccess/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    A llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
    M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
    M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
    A llvm/test/Transforms/NewGVN/pr36335-phi-undef.ll
    M llvm/test/Transforms/NewGVN/simp-to-self.ll
    R llvm/test/Transforms/NewGVN/todo-pr36335-phi-undef.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/external-non-inst-use.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/multiple_reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/scalarization-overhead.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/shuffle-vectors-mask-size.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/slp-fma-loss.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/mixed-extracts-types.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-with-external-indices.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-unsupported-type.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR32086.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35628_1.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR40310.ll
    M llvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll
    A llvm/test/Transforms/SLPVectorizer/X86/const-in-different-functions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/crash_vectorizeTree.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cse_extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/diamond.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-user-instruction-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-many-users-buildvector.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract_in_tree_user.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelement-multi-register-use.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelements-vector-ops-shuffle.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extracts-with-undefs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-delayed-nodes-with-reused-user.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gep-with-extractelement-many-users.ll
    M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/insertelement-uses-vectorized-index.ll
    M llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
    M llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ordering-bug.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr27163.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-value-in-tree.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reordering-single-phi.ll
    M llvm/test/Transforms/SLPVectorizer/X86/replaced-external-in-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/same-scalar-in-same-phi-extract.ll
    M llvm/test/Transforms/SLPVectorizer/X86/scalarization-overhead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/slp-throttle.ll
    A llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll
    M llvm/test/Transforms/SLPVectorizer/revec.ll
    A llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-missing-probe.prof
    A llvm/test/Transforms/SampleProfile/pseudo-probe-missing-probe.ll
    A llvm/test/tools/llvm-dwarfdump/Inputs/verify_split_dwarf_debug_names_exe.yaml
    A llvm/test/tools/llvm-dwarfdump/Inputs/verify_split_dwarf_debug_names_main_dwo.yaml
    A llvm/test/tools/llvm-dwarfdump/X86/DW_OP_implicit_pointer.yaml
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-entries.s
    A llvm/test/tools/llvm-dwarfdump/verify_split_dwarf_debug_names.test
    R llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3-ALU.s
    R llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3-LSU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3_4_5-ALU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR3_4_5-LSU.s
    A llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s
    M llvm/test/tools/obj2yaml/Minidump/basic.yaml
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-profgen/ProfileGenerator.cpp
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/IR/DataLayoutTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/ObjectYAML/MinidumpYAMLTest.cpp
    M llvm/unittests/Passes/PassBuilderBindings/PassBuilderBindingsTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Conversion/VectorToSCF/VectorToSCF.h
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUDialect.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVAttributes.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    R mlir/include/mlir/Dialect/SPIRV/IR/SPIRVJointMatrixOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/IR/StorageUniquerSupport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/Transforms/OptimizeAllocationLiveness.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/IR/CastOps.cpp
    R mlir/lib/Dialect/SPIRV/IR/JointMatrixOps.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/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.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/ConvertToSPIRV/scf.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm-32b.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir
    M mlir/test/Conversion/SCFToControlFlow/convert-to-cfg.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Conversion/VectorToSCF/tensor-transfer-ops.mlir
    M mlir/test/Conversion/VectorToSCF/vector-to-scf.mlir
    A mlir/test/Dialect/Bufferization/Transforms/optimize-allocation-liveness.mlir
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    R mlir/test/Dialect/SPIRV/IR/joint-matrix-ops.mlir
    M mlir/test/Dialect/Vector/vector-transfer-unroll.mlir
    A mlir/test/Target/LLVMIR/Import/ident.ll
    A mlir/test/Target/LLVMIR/ident.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    R mlir/test/Target/SPIRV/joint-matrix-ops.mlir
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M offload/include/Shared/APITypes.h
    M offload/include/device.h
    M offload/include/omptarget.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/src/CMakeLists.txt
    A offload/src/KernelLanguage/API.cpp
    M offload/src/PluginManager.cpp
    M offload/src/exports
    M offload/src/interface.cpp
    M offload/src/omptarget.cpp
    M offload/src/private.h
    M offload/test/api/omp_dynamic_shared_memory_amdgpu.c
    M offload/test/api/omp_dynamic_shared_memory_mixed_amdgpu.c
    M offload/test/lit.cfg
    A offload/test/offloading/CUDA/basic_launch.cu
    A offload/test/offloading/CUDA/basic_launch_blocks_and_threads.cu
    A offload/test/offloading/CUDA/basic_launch_multi_arg.cu
    A offload/test/offloading/CUDA/kernel_tu.cu.inc
    A offload/test/offloading/CUDA/launch_tu.cu
    M offload/test/offloading/bug51781.c
    M offload/test/offloading/bug51982.c
    A offload/test/offloading/ctor_dtor_api.cpp
    A offload/test/offloading/ctor_dtor_lazy.cpp
    M openmp/runtime/cmake/LibompDefinitions.cmake
    M openmp/runtime/cmake/config-ix.cmake
    M openmp/runtime/src/z_Linux_asm.S
    M openmp/runtime/src/z_Linux_util.cpp
    M utils/bazel/.bazelrc
    M utils/bazel/.bazelversion
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.4

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/112c8f5316af...dd08b7613ad9

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