[all-commits] [llvm/llvm-project] ee8100: [Clang][OMPX] Add the code generation for multi-di...

Fangrui Song via All-commits all-commits at lists.llvm.org
Mon Aug 19 13:35:22 PDT 2024


  Branch: refs/heads/users/MaskRay/spr/driver-default-msmall-data-limit-to-0-and-clean-up-code
  Home:   https://github.com/llvm/llvm-project
  Commit: ee8100ba02752a6089778bc4814cb11d7c6c51de
      https://github.com/llvm/llvm-project/commit/ee8100ba02752a6089778bc4814cb11d7c6c51de
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [Clang][OMPX] Add the code generation for multi-dim `num_teams` (#101407)

This patch adds the code generation support for multi-dim `num_teams`
clause when it is used with `target teams ompx_bare` construct.


  Commit: 259742a88558325d76d9ec7e71e11a785e499af9
      https://github.com/llvm/llvm-project/commit/259742a88558325d76d9ec7e71e11a785e499af9
  Author: Manish Kausik H <46352931+Nirhar at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    A llvm/test/CodeGen/X86/insert-into-vector-through-stack-no-stack-realign.ll

  Log Message:
  -----------
  [SelectionDAG] Use unaligned store/load to move AVX registers onto stack for `insertelement` (#82130)

Prior to this patch, SelectionDAG generated aligned move onto stacks for
AVX registers when the function was marked as a no-realign-stack
function. This lead to misalignment between the stack and the
instruction generated. This patch fixes the issue. There was a similar
issue reported for `extractelement` which was fixed in
a6614ec5b7c1dbfc4b847884c5de780cf75e8e9c

Co-authored-by: Manish Kausik H <hmamishkausik at gmail.com>


  Commit: 3bd63d4aa7096c0ba9b74a10842bc5b45e3cd4b4
      https://github.com/llvm/llvm-project/commit/3bd63d4aa7096c0ba9b74a10842bc5b45e3cd4b4
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port for d45de8003a269066c9a9af871119a7c36eeb5aa3


  Commit: 3c639b83a6071d3e6ec9f44da7a7788165a65d45
      https://github.com/llvm/llvm-project/commit/3c639b83a6071d3e6ec9f44da7a7788165a65d45
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/nvlink-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td

  Log Message:
  -----------
  [Clang] Simplify specifying passes via -Xoffload-linker (#102483)

Make it possible to do things like the following, regardless of whether
the offload target is nvptx or amdgpu:

```
$ clang -O1 -g -fopenmp --offload-arch=native test.c                       \
    -Xoffload-linker -mllvm=-pass-remarks=inline                           \
    -Xoffload-linker -mllvm=-force-remove-attribute=g.internalized:noinline\
    -Xoffload-linker --lto-newpm-passes='forceattrs,default<O1>'           \
    -Xoffload-linker --lto-debug-pass-manager                              \
    -foffload-lto
```

To accomplish that:

- In clang-linker-wrapper, do not forward options via `-Wl` if they
might have literal commas. Use `-Xlinker` instead.
- In clang-nvlink-wrapper, accept `--lto-debug-pass-manager` and
`--lto-newpm-passes`.
- In clang-nvlink-wrapper, drop `-passes` because it's inconsistent with
the interface of `lld`, which is used instead of clang-nvlink-wrapper
when the target is amdgpu. Without this patch, `-passes` is passed to
`nvlink`, producing an error anyway.

---------

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


  Commit: 5c0eb1a6e4679cc741f75f5ddc53d4878dabc1f2
      https://github.com/llvm/llvm-project/commit/5c0eb1a6e4679cc741f75f5ddc53d4878dabc1f2
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dep for the SPIRVToLLVM target


  Commit: f4d5b14dcc65578db1688580a71db0783bfc82f9
      https://github.com/llvm/llvm-project/commit/f4d5b14dcc65578db1688580a71db0783bfc82f9
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/utils/gn/build/symbol_exports.py
    M llvm/utils/gn/build/symlink_or_copy.py

  Log Message:
  -----------
  [gn] Give two scripts argparse.RawDescriptionHelpFormatter

Without this, the doc string is put in a single line. These
scripts have multi-line docstrings, so this makes their --help
output look much nicer.

Otherwise, no behavior change.


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

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

  Log Message:
  -----------
  [X86] Convert truncsat clamping patterns to use SDPatternMatch. NFC.

Inspired by #99418 (which hopefully we can replace this code with at some point)


  Commit: 52126dc72c3f6f4d27e3835b0ad53e162af25e53
      https://github.com/llvm/llvm-project/commit/52126dc72c3f6f4d27e3835b0ad53e162af25e53
  Author: Yupei Liu <liuyupei951018 at hotmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/test/SemaTemplate/concepts-lambda.cpp

  Log Message:
  -----------
  [Clang] Fix Handling of Init Capture with Parameter Packs in LambdaScopeForCallOperatorInstantiationRAII (#100766)

This PR addresses issues related to the handling of `init capture` with
parameter packs in Clang's
`LambdaScopeForCallOperatorInstantiationRAII`.

Previously, `addInstantiatedCapturesToScope` would add `init capture`
containing packs to the scope using the type of the `init capture` to
determine the expanded pack size. However, this approach resulted in a
pack size of 0 because `getType()->containsUnexpandedParameterPack()`
returns `false`. After extensive testing, it appears that the correct
pack size can only be inferred from `getInit`.

But `getInit` may reference parameters and `init capture` from an outer
lambda, as shown in the following example:

```cpp
auto L = [](auto... z) {
    return [... w = z](auto... y) {
        // ...
    };
};
```

To address this, `addInstantiatedCapturesToScope` in
`LambdaScopeForCallOperatorInstantiationRAII` should be called last.
Additionally, `addInstantiatedCapturesToScope` has been modified to only
add `init capture` to the scope. The previous implementation incorrectly
called `MakeInstantiatedLocalArgPack` for other non-init captures
containing packs, resulting in a pack size of 0.

### Impact

This patch affects scenarios where
`LambdaScopeForCallOperatorInstantiationRAII` is passed with
`ShouldAddDeclsFromParentScope = false`, preventing the correct addition
of the current lambda's `init capture` to the scope. There are two main
scenarios for `ShouldAddDeclsFromParentScope = false`:

1. **Constraints**: Sometimes constraints are instantiated in place
rather than delayed. In this case,
`LambdaScopeForCallOperatorInstantiationRAII` does not need to add `init
capture` to the scope.
2. **`noexcept` Expressions**: The expressions inside `noexcept` have
already been transformed, and the packs referenced within have been
expanded. Only `RebuildLambdaInfo` needs to add the expanded captures to
the scope, without requiring `addInstantiatedCapturesToScope` from
`LambdaScopeForCallOperatorInstantiationRAII`.

### Considerations

An alternative approach could involve adding a data structure within the
lambda to record the expanded size of the `init capture` pack. However,
this would increase the lambda's size and require extensive
modifications.

This PR is a prerequisite for implmenting
https://github.com/llvm/llvm-project/issues/61426


  Commit: 7a98071da2d3e126bacd6c004d2f5d8ecaae7819
      https://github.com/llvm/llvm-project/commit/7a98071da2d3e126bacd6c004d2f5d8ecaae7819
  Author: Will Dietz <will.dietz at sifive.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M mlir/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [mlir] Verifier: steal bit to track seen instead of set. (#102626)

Tracking a set containing every block and operation visited can become
very expensive and is unnecessary.

Co-authored-by: Will Dietz <w at wdtz.org>


  Commit: 9e9fa00dcb9522db3f78d921eda6a18b9ee568bb
      https://github.com/llvm/llvm-project/commit/9e9fa00dcb9522db3f78d921eda6a18b9ee568bb
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/test/CodeGen/aarch64-branch-protection-attr.c
    M clang/test/CodeGen/arm-branch-protection-attr-1.c

  Log Message:
  -----------
  [Arm][AArch64][Clang] Respect function's branch protection attributes. (#101978)

Default attributes assigned to all functions according to the command
line parameters. Some functions might have their own attributes and we
need to set or remove attributes accordingly.
Tests are updated to test this scenarios too.


  Commit: 52220c295a2d8552aa085624059decbb93093dff
      https://github.com/llvm/llvm-project/commit/52220c295a2d8552aa085624059decbb93093dff
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp

  Log Message:
  -----------
  [AMDGPU][AsmParser][NFC] Remove a misleading comment. (#102604)

The work of ParseRegularReg() should remain to be parsing the register
as it was specified, and not to try translate it to anything else.

It's up to operand predicates to decide on what is and is not an
acceptable register for an operand, including considering its expected
register class, and for the rest of the AsmParser infrastructure to
handle it respectively from there on.


  Commit: 8f21ff9bd89fb7c8bbfdc4426b65dcd9ababf3ce
      https://github.com/llvm/llvm-project/commit/8f21ff9bd89fb7c8bbfdc4426b65dcd9ababf3ce
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/CMakeLists.txt
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    A mlir/include/mlir/Dialect/DLTI/TransformOps/CMakeLists.txt
    A mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.h
    A mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Dialect/DLTI/CMakeLists.txt
    M mlir/lib/Dialect/DLTI/DLTI.cpp
    A mlir/lib/Dialect/DLTI/TransformOps/CMakeLists.txt
    A mlir/lib/Dialect/DLTI/TransformOps/DLTITransformOps.cpp
    A mlir/test/Dialect/DLTI/query.mlir

  Log Message:
  -----------
  [MLIR][DLTI][Transform] Introduce transform.dlti.query (#101561)

This transform op makes it possible to query attributes associated to IR
by means of the DLTI dialect.

The op takes both a `key` and a target `op` to perform the query at.
Facility functions automatically find the closest ancestor op which
defines the appropriate DLTI interface or has an attribute implementing
a DLTI interface. By default the lookup uses the data layout interfaces
of DLTI. If the optional `device` parameter is provided, the lookup
happens with respect to the interfaces for TargetSystemSpec and
TargetDeviceSpec.

This op uses new free-standing functions in the `dlti` namespace to not
only look up specifications via the `DataLayoutSpecOpInterface` and on
`ModuleOp`s but also on any ancestor op that has an appropriate DLTI
attribute.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [llvm] Construct SmallVector<SDValue> with ArrayRef (NFC) (#102578)


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

  Changed paths:
    M flang/runtime/descriptor.cpp

  Log Message:
  -----------
  [flang][cuda] Force default allocator in device code (#102238)


  Commit: 2f8f58dd17a11934e8c8ec212b6474f76fb18e61
      https://github.com/llvm/llvm-project/commit/2f8f58dd17a11934e8c8ec212b6474f76fb18e61
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDecl.cpp
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/lib/IR/Globals.cpp

  Log Message:
  -----------
  [IR] Add method to GlobalVariable to change type of initializer. (#102553)

With opaque pointers, nothing directly uses the value type, so we can
mutate it if we want. This avoid doing a complicated RAUW dance.


  Commit: 23209d1c1a2f21e12bb9c88d43f014b0989d4d3d
      https://github.com/llvm/llvm-project/commit/23209d1c1a2f21e12bb9c88d43f014b0989d4d3d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  OpenMPOpt: Remove dead include


  Commit: 6f19a7b94a1c6464af16ec125a7d361a8cbbc4c3
      https://github.com/llvm/llvm-project/commit/6f19a7b94a1c6464af16ec125a7d361a8cbbc4c3
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [mlir][bazel] add bazel rule for DLTITransformOps


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

  Changed paths:
    A mlir/test/Dialect/Vector/drop-unit-dims-with-shape-cast.mlir
    M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir

  Log Message:
  -----------
  [mlir][vector][test] Split tests from vector-transfer-flatten.mlir (#102584)

Move tests that exercise DropUnitDimFromElementwiseOps and
DropUnitDimsFromTransposeOp to a dedicated file.

While these patterns are collected under populateFlattenVectorTransferPatterns
(and are tested via -test-vector-transfer-flatten-patterns), they can actually
be tested without the xfer Ops, and hence the split.

Note, this is mostly just moving tests from one file to another. The only real
change is the removal of the following check-lines:

```mlir
//   CHECK-128B-NOT:   memref.collapse_shape
```

These were added specifically to check the "flattening" logic (which introduces
`memref.collapse_shape`). However, these tests were never meant to test that
logic (in fact, that's the reason I am moving them to a different file) and
hence are being removed as copy&paste errors.

I also removed the following TODO:

```mlir
/// TODO: Potential duplication with tests from:
///   * "vector-dropleadunitdim-transforms.mlir"
///   * "vector-transfer-drop-unit-dims-patterns.mlir"
```
I've checked what patterns are triggered in those test files and neither
DropUnitDimFromElementwiseOps nor DropUnitDimsFromTransposeOp does.


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

  Changed paths:
    M llvm/test/CodeGen/X86/pr57673.ll

  Log Message:
  -----------
  [X86] pr57673.ll - generate MIR test checks


  Commit: 7752fec6073a49edca4df70ff1b7469b2a67c9d0
      https://github.com/llvm/llvm-project/commit/7752fec6073a49edca4df70ff1b7469b2a67c9d0
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/CMakeLists.txt
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    R mlir/include/mlir/Dialect/DLTI/TransformOps/CMakeLists.txt
    R mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.h
    R mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Dialect/DLTI/CMakeLists.txt
    M mlir/lib/Dialect/DLTI/DLTI.cpp
    R mlir/lib/Dialect/DLTI/TransformOps/CMakeLists.txt
    R mlir/lib/Dialect/DLTI/TransformOps/DLTITransformOps.cpp
    R mlir/test/Dialect/DLTI/query.mlir

  Log Message:
  -----------
  Revert "[MLIR][DLTI][Transform] Introduce transform.dlti.query (#101561)"

This reverts commit 8f21ff9bd89fb7c8bbfdc4426b65dcd9ababf3ce.

Crashed CI builds


  Commit: cb5ec3796ab08b34d9b0c42f654ca3ca026e50d3
      https://github.com/llvm/llvm-project/commit/cb5ec3796ab08b34d9b0c42f654ca3ca026e50d3
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [msan] Support vst{2,3,4}_lane instructions (#101215)

This generalizes MSan's Arm NEON vst support, to include the
lane-specific variants.

This also updates the test from
https://github.com/llvm/llvm-project/pull/100645.


  Commit: 95820ca263cf1f6369928782882c2fd13633a7e9
      https://github.com/llvm/llvm-project/commit/95820ca263cf1f6369928782882c2fd13633a7e9
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [mlir][bazel] revert bazel rule change for DLTITransformOps


  Commit: 8c81fb616747ebe2be0159696627e691ff186561
      https://github.com/llvm/llvm-project/commit/8c81fb616747ebe2be0159696627e691ff186561
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/fadd.h
    A libc/src/math/faddf128.h
    A libc/src/math/faddl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fadd.cpp
    A libc/src/math/generic/faddf128.cpp
    A libc/src/math/generic/faddl.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/faddl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/faddf128_test.cpp
    A libc/test/src/math/smoke/faddl_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add fadd{l,f128} C23 math functions (#102531)

Co-authored-by: OverMighty <its.overmighty at gmail.com>


  Commit: 2fe61a5acf272d6826352ef72f47196b01003fc5
      https://github.com/llvm/llvm-project/commit/2fe61a5acf272d6826352ef72f47196b01003fc5
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/attributor-noopt.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    A llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll

  Log Message:
  -----------
  [AMDGPU] Move `AMDGPUAttributorPass` to full LTO post link stage (#102086)

Currently `AMDGPUAttributorPass` is registered in default optimizer
pipeline.
This will allow the pass to run in default pipeline as well as at
thinLTO post
link stage. However, it will not run in full LTO post link stage. This
patch
moves it to full LTO.


  Commit: 7ede1c4973029f611ad0890ed5fe61f530774da3
      https://github.com/llvm/llvm-project/commit/7ede1c4973029f611ad0890ed5fe61f530774da3
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.h

  Log Message:
  -----------
  [asan] Switch allocator to dynamic base address (#98511)

This ports a fix from memprof (https://github.com/llvm/llvm-project/pull/98510), which has a shadow mapping that is similar to ASan (8 bytes of shadow memory per 64 bytes of app memory). This patch changes the allocator to dynamically choose a base address, as suggested by Vitaly for memprof. This simplifies ASan's #ifdef's and avoids potential conflict in the event that ASan were to switch to a dynamic shadow offset in the future [1].

[1] Since shadow memory is mapped before the allocator is mapped:
- dynamic shadow and fixed allocator (old memprof): could fail if
"unlucky" (e.g., https://lab.llvm.org/buildbot/#/builders/66/builds/1361/steps/17/logs/stdio)
- dynamic shadow and dynamic allocator (HWASan; current memprof): always works
- fixed shadow and fixed allocator (current ASan): always works, if
constants are carefully chosen
- fixed shadow and dynamic allocator (ASan with this patch): always works


  Commit: 1ea0865dd6faf99ae25f22161c2aeb65ff9505c0
      https://github.com/llvm/llvm-project/commit/1ea0865dd6faf99ae25f22161c2aeb65ff9505c0
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/test/Driver/amdgpu-hip-system-arch.c
    M clang/test/Driver/nvptx-cuda-system-arch.c
    M clang/test/Driver/openmp-system-arch.c
    M llvm/utils/lit/lit/TestingConfig.py

  Log Message:
  -----------
  [Clang] Add env var for nvptx-arch/amdgpu-arch timeout (#102521)

When working on very busy systems, check-offload frequently fails many
tests with this diagnostic:

```
clang: error: cannot determine amdgcn architecture: /tmp/llvm/build/bin/amdgpu-arch: Child timed out: ; consider passing it via '-march'
```

This patch accepts the environment variable
`CLANG_TOOLCHAIN_PROGRAM_TIMEOUT` to set the timeout. It also increases
the timeout from 10 to 60 seconds.


  Commit: e711a0c80fdd318afe869b7ddc16053dd2066d66
      https://github.com/llvm/llvm-project/commit/e711a0c80fdd318afe869b7ddc16053dd2066d66
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/test/CodeGen/Mips/llvm-ir/and-srl.ll

  Log Message:
  -----------
  [MIPS] Fix missing ANDI optimization (#97689)

1. Add MipsPat to optimize (andi (srl (truncate i64 $1), x), y) to (andi
(truncate (dsrl i64 $1, x)), y).
2. Add MipsPat to optimize (ext (truncate i64 $1), x, y) to (truncate
(dext i64 $1, x, y)).

The assembly result is the same as gcc.

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


  Commit: 9f3ff8d28a97379521ceb8cb29fbba5c3b487fec
      https://github.com/llvm/llvm-project/commit/9f3ff8d28a97379521ceb8cb29fbba5c3b487fec
  Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [scudo] Separated committed and decommitted entries. (#101409)

Initially, the LRU list stored all mapped entries with no distinction
between the committed (non-madvise()'d) entries and decommitted
(madvise()'d) entries. Now these two types of entries re separated into
two lists, allowing future cache logic to branch depending on whether or
not entries are committed or decommitted. Furthermore, the retrieval
algorithm will prioritize committed entries over decommitted entries.
Specifically, committed entries that satisfy the MaxUnusedCachePages
requirement are retrieved before optimal-fit, decommitted entries.

This commit addresses the compiler errors raised
[here](https://github.com/llvm/llvm-project/pull/100818#issuecomment-2261043261).


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

  Changed paths:
    M llvm/lib/Object/RelocationResolver.cpp
    A llvm/test/tools/llvm-objdump/ELF/RISCV/source-interleave.ll

  Log Message:
  -----------
  Suppress spurious warnings due to R_RISCV_SET_ULEB128

llvm-objdump -S issues unnecessary warnings for RISC-V relocatable files
containing .debug_loclists or .debug_rnglists sections with ULEB128
relocations. This occurred because `DWARFObjInMemory` verifies support for all
relocation types, triggering warnings for unsupported ones.

```
% llvm-objdump -S a.o
...
0000000000000000 <foo>:
warning: failed to compute relocation: R_RISCV_SUB_ULEB128, Invalid data was encountered while parsing the file
warning: failed to compute relocation: R_RISCV_SET_ULEB128, Invalid data was encountered while parsing the file
...
```

This change fixes #101544 by declaring support for the two ULEB128
relocation types, silencing the spurious warnings.

---

In DWARF v5 builds, DW_LLE_offset_pair/DW_RLE_offset_pair might be
generated in .debug_loclists/.debug_rnglists with ULEB128 relocations.
They are only read by llvm-dwarfdump to dump section content and verbose
DW_AT_location/DW_AT_ranges output for relocatable files.

The DebugInfoDWARF user (e.g. DWARFDebugRnglists.cpp) calls
`Data.getULEB128` without checking the ULEB128 relocations, as the
unrelocated value holds meaning (refer to the assembler
implementation https://reviews.llvm.org/D157657). This differs from
`.quad .Lfoo`, which requires relocation reading (e.g.
https://reviews.llvm.org/D74404).

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


  Commit: 6b7753112325286344bbebf050e5a0415a950f0e
      https://github.com/llvm/llvm-project/commit/6b7753112325286344bbebf050e5a0415a950f0e
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-add-of-sub.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-integer-ll.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer.mir

  Log Message:
  -----------
  [GlobalIsel] Combine G_ADD and G_SUB with constants (#97771)


  Commit: b6cbd014b9770b4cc4630032777f2e6071afc3e0
      https://github.com/llvm/llvm-project/commit/b6cbd014b9770b4cc4630032777f2e6071afc3e0
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/docs/dev/header_generation.rst
    M libc/newhdrgen/yaml/ctype.yaml
    M libc/newhdrgen/yaml/fcntl.yaml
    M libc/newhdrgen/yaml/fenv.yaml
    M libc/newhdrgen/yaml/gpu/rpc.yaml
    M libc/newhdrgen/yaml/math.yaml
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/newhdrgen/yaml/sched.yaml
    M libc/newhdrgen/yaml/search.yaml
    M libc/newhdrgen/yaml/signal.yaml
    M libc/newhdrgen/yaml/stdbit.yaml
    M libc/newhdrgen/yaml/stdfix.yaml
    M libc/newhdrgen/yaml/stdio.yaml
    M libc/newhdrgen/yaml/stdlib.yaml
    M libc/newhdrgen/yaml/string.yaml
    M libc/newhdrgen/yaml/strings.yaml
    M libc/newhdrgen/yaml/sys/epoll.yaml
    M libc/newhdrgen/yaml/sys/mman.yaml
    M libc/newhdrgen/yaml/sys/socket.yaml
    M libc/newhdrgen/yaml/sys/statvfs.yaml
    M libc/newhdrgen/yaml/termios.yaml
    M libc/newhdrgen/yaml/threads.yaml
    M libc/newhdrgen/yaml/time.yaml
    M libc/newhdrgen/yaml/unistd.yaml
    A libc/newhdrgen/yaml_functions_sorted.py

  Log Message:
  -----------
  [libc][newhdrgen]sorted function names in yaml (#102544)


  Commit: ccc31278bd01d6728c48f1b1f11c56e7a092bb47
      https://github.com/llvm/llvm-project/commit/ccc31278bd01d6728c48f1b1f11c56e7a092bb47
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    A llvm/test/CodeGen/NVPTX/jump-table.ll

  Log Message:
  -----------
  [NVPTX] support switch statement with brx.idx (reland) (#102550)

Add custom lowering for `BR_JT` DAG nodes to the `brx.idx` PTX
instruction ([PTX ISA 9.7.13.4. Control Flow Instructions: brx.idx]
(https://docs.nvidia.com/cuda/parallel-thread-execution/#control-flow-instructions-brx-idx)).
Depending on the heuristics in DAG selection, `switch` statements may
now be lowered using `brx.idx`.

Note: this fixes the previous issue in #102400 by adding the isBarrier
attribute to BRX_END


  Commit: 31c75a124b393eb3736ead0b8f2d41b60110204a
      https://github.com/llvm/llvm-project/commit/31c75a124b393eb3736ead0b8f2d41b60110204a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Move PseudoVSET(I)VLI expansion to use PseudoInstExpansion. (#102496)

Instead of expanding in RISCVExpandPseudoInsts, expand during
MachineInstr to MCInst lowering.

We weren't doing anything in expansion other than copying operands.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/alu32.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/condops.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/div.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/imm.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/mem.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/mem64.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rem.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64xtheadbb.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zba.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb-intrinsic.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb-zbkb.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbc-intrinsic.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbc-zbkc-intrinsic.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbkb-intrinsic.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbkb.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbs.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/sadd_sat.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/sadd_sat_plus.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/ssub_sat.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/ssub_sat_plus.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/uadd_sat.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/uadd_sat_plus.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/usub_sat.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/usub_sat_plus.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/vararg.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/xaluo.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/xtheadmac.ll
    R llvm/test/CodeGen/RISCV/rv64-legal-i32/xtheadmemidx.ll
    M llvm/test/CodeGen/RISCV/shl-cttz.ll

  Log Message:
  -----------
  [RISCV] Remove riscv-experimental-rv64-legal-i32. (#102509)

This has received no development work in a while and is slowly bit
rotting as new extensions are added.

At the moment, I don't think this is viable without adding a new
invariant that 32 bit values are always in sign extended form like
Mips64 does. We are very dependent on computeKnownBits and
ComputeNumSignBits in SelectionDAG to remove sign extends created for
ABI reasons. If we can't propagate sign bit information through 64-bit
values in SelectionDAG, we can't effectively clean up those extends.


  Commit: 2eb6e30fe83ccce3cf01e596e73fa6385facd44b
      https://github.com/llvm/llvm-project/commit/2eb6e30fe83ccce3cf01e596e73fa6385facd44b
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Headers/ptrauth.h
    M clang/test/CodeGen/ptrauth-function-attributes.c

  Log Message:
  -----------
  [clang] Wire -fptrauth-returns to "ptrauth-returns" fn attribute. (#102416)

We already ended up with -fptrauth-returns, the feature macro, the lang
opt, and the actual backend lowering.

The only part left is threading it all through PointerAuthOptions, to
drive the addition of the "ptrauth-returns" attribute to generated
functions.
While there, do minor cleanup on ptrauth-function-attributes.c.

This also adds ptrauth_key_return_address to ptrauth.h.


  Commit: e5697d7f99b441064a4e4c3c27c2fc8e5d2784c0
      https://github.com/llvm/llvm-project/commit/e5697d7f99b441064a4e4c3c27c2fc8e5d2784c0
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/AST/DeclBase.cpp
    M clang/unittests/AST/CMakeLists.txt
    A clang/unittests/AST/DeclBaseTest.cpp
    M llvm/utils/gn/secondary/clang/unittests/AST/BUILD.gn

  Log Message:
  -----------
  Return available function types for BindingDecls. (#102196)

Only return nullptr when we don't have an available QualType.


  Commit: 6b27a57d022aacd9067a953f9f8ce19acb13f475
      https://github.com/llvm/llvm-project/commit/6b27a57d022aacd9067a953f9f8ce19acb13f475
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/ctlz-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/ctlz-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/cttz-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/cttz-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Add missing tests for G_CTLZ/CTTZ instruction selection. NFC


  Commit: 492484e657518097e5cb333ebdf7bddfd65c80e7
      https://github.com/llvm/llvm-project/commit/492484e657518097e5cb333ebdf7bddfd65c80e7
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/attributor-noopt.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    R llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Move `AMDGPUAttributorPass` to full LTO post link stage (#102086)"

This reverts commit 2fe61a5acf272d6826352ef72f47196b01003fc5.


  Commit: 22cce65464e4be60554de1af95794766eeb1f63a
      https://github.com/llvm/llvm-project/commit/22cce65464e4be60554de1af95794766eeb1f63a
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [LLVM][rtsan] rtsan transform to preserve CFGAnalyses (#102651)

Follow on to #101232, as suggested in the comments, narrow the scope of
the preserved analyses.


  Commit: d179acd0484bac30c5ebbbed4d29a4734d92ac93
      https://github.com/llvm/llvm-project/commit/d179acd0484bac30c5ebbbed4d29a4734d92ac93
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGen/ptrauth-function-attributes.c

  Log Message:
  -----------
  [clang] Implement -fptrauth-auth-traps. (#102417)

This provides -fptrauth-auth-traps, which at the frontend level only
controls the addition of the "ptrauth-auth-traps" function attribute.

The attribute in turn controls various aspects of backend codegen, by
providing the guarantee that every "auth" operation generated will trap
on failure.

This can either be delegated to the hardware (if AArch64 FPAC is known
to be available), in which case this attribute doesn't change codegen.
Otherwise, if FPAC isn't available, this asks the backend to emit
additional instructions to check and trap on auth failure.


  Commit: 2f6a879790d0496375bb9ab5351c9b61058473e8
      https://github.com/llvm/llvm-project/commit/2f6a879790d0496375bb9ab5351c9b61058473e8
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/src/stdio/printf_core/parser.h
    M libc/test/src/stdbit/stdc_bit_floor_ui_test.cpp
    M libc/test/src/stdbit/stdc_leading_zeros_ui_test.cpp

  Log Message:
  -----------
  [libc] Use cpp::numeric_limits in preference to C23 <limits.h> macros (#102665)

This updates some code to consistently use cpp::numeric_limits,
the src/__support polyfill for std::numeric_limits, rather than
the C <limits.h> macros.  This is in keeping with the general
C++-oriented style in libc code, and also sidesteps issues about
the new C23 *_WIDTH macros that the compiler-provided header does
not define outside C23 mode.

Bug: https://issues.fuchsia.dev/358196552


  Commit: 101cf540e698529d3dd899d00111bcb654a3c12b
      https://github.com/llvm/llvm-project/commit/101cf540e698529d3dd899d00111bcb654a3c12b
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [lldb] Move definition of SBSaveCoreOptions dtor out of header (#102539)

This class is technically not usable in its current state. When you use
it in a simple C++ project, your compiler will complain about an
incomplete definition of SaveCoreOptions. Normally this isn't a problem,
other classes in the SBAPI do this. The difference is that
SBSaveCoreOptions has a default destructor in the header, so the
compiler will attempt to generate the code for the destructor with an
incomplete definition of the impl type.

All methods for every class, including constructors and destructors,
must have a separate implementation not in a header.


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

  Changed paths:
    M mlir/include/mlir/IR/AttrTypeBase.td
    M mlir/include/mlir/IR/CommonAttrConstraints.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Constraints.td
    M mlir/include/mlir/TableGen/Type.h
    M mlir/lib/TableGen/Type.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
    M mlir/tools/mlir-tblgen/OpFormatGen.cpp

  Log Message:
  -----------
  [mlir][ODS] Consistent `cppType` / `cppClassName` usage (#102657)

Make sure that the usage of `cppType` and `cppClassName` of type and
attribute definitions/constraints is consistent in TableGen.

- `cppClassName`: The C++ class name of the type or attribute.
- `cppType`: The fully qualified C++ class name: C++ namespace and C++
class name.

Basically, we should always use the fully qualified C++ class name for
parameter types, return types or template arguments.

Also some minor cleanups.

Fixes #57279.


  Commit: 74e4694b8cbdb918abd4645e2c5027359904fb92
      https://github.com/llvm/llvm-project/commit/74e4694b8cbdb918abd4645e2c5027359904fb92
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    A clang/test/CodeGen/thinlto-distributed-objc-contract-pass.ll
    M lld/MachO/LTO.cpp
    M llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/LTO/LTOCodeGenerator.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/M68k/pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll

  Log Message:
  -----------
  [LTO] enable `ObjCARCContractPass` only on optimized build  (#101114)

\#92331 tried to make `ObjCARCContractPass` by default, but it caused a
regression on O0 builds and was reverted.
This patch trys to bring that back by:

1. reverts the
[revert](https://github.com/llvm/llvm-project/commit/1579e9ca9ce17364963861517fecf13b00fe4d8a).
2. `createObjCARCContractPass` only on optimized builds.

Tests are updated to refelect the changes. Specifically, all `O0` tests
should not include `ObjCARCContractPass`

Signed-off-by: Peter Rong <PeterRong at meta.com>


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

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h
    M mlir/include/mlir/Dialect/Quant/QuantTypes.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVAttributes.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTypes.h
    M mlir/include/mlir/IR/StorageUniquerSupport.h
    M mlir/include/mlir/IR/Types.h
    M mlir/include/mlir/TableGen/AttrOrTypeDef.h
    M mlir/include/mlir/TableGen/Class.h
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVAttributes.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/TableGen/AttrOrTypeDef.cpp
    A mlir/test/IR/test-verifiers-type.mlir
    M mlir/test/lib/Dialect/Test/TestAttrDefs.td
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/mlir-tblgen/attr-or-type-format.td
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
    M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp

  Log Message:
  -----------
  [mlir][ODS] Verify type constraints in Types and Attributes (#102326)

When a type/attribute is defined in TableGen, a type constraint can be
used for parameters, but the type constraint verification was missing.

Example:
```
def TestTypeVerification : Test_Type<"TestTypeVerification"> {
  let parameters = (ins AnyTypeOf<[I16, I32]>:$param);
  // ...
}
```

No verification code was generated to ensure that `$param` is I16 or
I32.

When type constraints a present, a new method will generated for types
and attributes: `verifyInvariantsImpl`. (The naming is similar to op
verifiers.) The user-provided verifier is called `verify` (no change).
There is now a new entry point to type/attribute verification:
`verifyInvariants`. This function calls both `verifyInvariantsImpl` and
`verify`. If neither of those two verifications are present, the
`verifyInvariants` function is not generated.

When a type/attribute is not defined in TableGen, but a verifier is
needed, users can implement the `verifyInvariants` function. (This
function was previously called `verify`.)

Note for LLVM integration: If you have an attribute/type that is not
defined in TableGen (i.e., just C++), you have to rename the
verification function from `verify` to `verifyInvariants`. (Most
attributes/types have no verification, in which case there is nothing to
do.)

Depends on #102657.


  Commit: a21cf5663c3e757e98a396e47471af63bd4955b0
      https://github.com/llvm/llvm-project/commit/a21cf5663c3e757e98a396e47471af63bd4955b0
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/src/stdio/printf_core/parser.h
    M libc/test/src/stdbit/stdc_leading_zeros_ui_test.cpp

  Log Message:
  -----------
  [libc] Fix use of cpp::numeric_limits<...>::digits (#102674)

The previous change replaced INT_WIDTH with
cpp::numberic_limits<int>::digits, but these don't have the same
value.  While INT_WIDTH == UINT_WIDTH, not so for ::digits, so
use cpp::numberic_limits<unsigned int>::digits et al instead for
the intended effects.

Bug: https://issues.fuchsia.dev/358196552


  Commit: 66d87350185dbbaba91814b9b6297bca1aea7729
      https://github.com/llvm/llvm-project/commit/66d87350185dbbaba91814b9b6297bca1aea7729
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-09 (Fri, 09 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] Implement the InsertElementInst class (#102404)

Heavily based on work by @vporpo.


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

  Changed paths:
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/test/Fir/CUDA/cuda-allocate.fir

  Log Message:
  -----------
  [flang][cuda] Convert cuf.alloc for box to fir.alloca in device context (#102662)

In device context managed memory is not available so it makes no sense
to allocate the descriptor using it. Fall back to fir.alloca as it is
handled well in device code.
cuf.free is just dropped.


  Commit: 6e8a751ef124465b6e05ace84c3d69c0166151c8
      https://github.com/llvm/llvm-project/commit/6e8a751ef124465b6e05ace84c3d69c0166151c8
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/src/stdio/printf_core/parser.h

  Log Message:
  -----------
  [libc] Clean up remaining use of *_WIDTH macros in printf (#102679)

The previous change missed the second spot doing the same thing.

Bug: https://issues.fuchsia.dev/358196552


  Commit: e8eec716102bcd69205dafdf3d08a7be03180671
      https://github.com/llvm/llvm-project/commit/e8eec716102bcd69205dafdf3d08a7be03180671
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [flang][cuda] Fix lib dependency


  Commit: 842789be6b22a87b92400db693a43bd84892e1d4
      https://github.com/llvm/llvm-project/commit/842789be6b22a87b92400db693a43bd84892e1d4
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [mlir][bazel] add missing td dependency in mlir-tblgen test


  Commit: 165c6d12519cf66f4ef3f5a00f9b1ed83613ff28
      https://github.com/llvm/llvm-project/commit/165c6d12519cf66f4ef3f5a00f9b1ed83613ff28
  Author: Nikhil Kalra <nikhil.kalra at gmail.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Pass/PassOptions.h
    M mlir/lib/Pass/PassRegistry.cpp
    M mlir/test/Pass/pipeline-options-parsing.mlir
    M mlir/test/lib/Pass/TestPassManager.cpp

  Log Message:
  -----------
  [mlir] Add support for parsing nested PassPipelineOptions (#101118)

- Added a default parsing implementation to `PassOptions` to allow
`Option`/`ListOption` to wrap PassOption objects. This is helpful when
creating meta-pipelines (pass pipelines composed of pass pipelines).
- Updated `ListOption` printing to enable round-tripping the output of
`dump-pass-pipeline` back into `mlir-opt` for more complex structures.


  Commit: 8a5e179ac192248f52c60e74b66be67b39eb1021
      https://github.com/llvm/llvm-project/commit/8a5e179ac192248f52c60e74b66be67b39eb1021
  Author: Hugh Delaney <hugh.delaney at codeplay.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/math-intrins-sm80-ptx70-autoupgrade.ll
    M llvm/test/CodeGen/NVPTX/math-intrins-sm86-ptx72-autoupgrade.ll

  Log Message:
  -----------
  [NVPTX][NFC] Update tests to use bfloat type (#101493)

Intrinsics are defined with a bfloat type as of commit
250f2bb2c6a9c288faeb821585e9394697c561d8, not i16 and i32 storage types.
As such declarations are no longer needed once the correct types are
used.


  Commit: 13fc9148ba57c9d07082b6d99c5c760533301629
      https://github.com/llvm/llvm-project/commit/13fc9148ba57c9d07082b6d99c5c760533301629
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [mlir][bazel] remove extra blanks in mlir-tblgen test


  Commit: f7ad495a59445bc42d1955c26f11c892c540abdc
      https://github.com/llvm/llvm-project/commit/f7ad495a59445bc42d1955c26f11c892c540abdc
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp

  Log Message:
  -----------
  [SandboxIR] Clean up tracking code with the help of emplaceIfTracking() (#102406)

This patch introduces Tracker::emplaceIfTracking(), a wrapper of Tracker::track() that will conditionally create the change object if tracking is enabled.
This patch also removes the `Parent` member field of `IRChangeBase`.


  Commit: e91e0f52895e2b23bd690a86dbaafd979e027d29
      https://github.com/llvm/llvm-project/commit/e91e0f52895e2b23bd690a86dbaafd979e027d29
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [CodeGen][NFCI] Don't re-implement parts of ASTContext::getIntWidth (#101765)

ASTContext::getIntWidth returns 1 if isBooleanType(), and falls back on
getTypeSize in the default case, which itself just returns the Width
from getTypeInfo's returned struct, so can be used in all cases here,
not just for _BitInt types.


  Commit: 4bffbba7e97ff35ffa55941836bcc0612a7e9a04
      https://github.com/llvm/llvm-project/commit/4bffbba7e97ff35ffa55941836bcc0612a7e9a04
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [UnitTests] Convert a test to use opaque pointers (#102668)


  Commit: c69b8c445a6b7efd29e67b665adaf04575f3ed92
      https://github.com/llvm/llvm-project/commit/c69b8c445a6b7efd29e67b665adaf04575f3ed92
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard-dso.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard-init.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp

  Log Message:
  -----------
  [compiler-rt][NFC] Replace environment variable with %t (#102197)

Certain tests within the compiler-rt subproject encountered "command not
found" errors when using lit's internal shell, particularly when trying
to use the `DIR` environment variable. When checking with the command
`LIT_USE_INTERNAL_SHELL=1 ninja check-compiler-rt`, I encountered the
following error:
```
********************
Testing: 
FAIL: SanitizerCommon-ubsan-i386-Linux :: sanitizer_coverage_trace_pc_guard-init.cpp (146 of 9570)
******************** TEST 'SanitizerCommon-ubsan-i386-Linux :: sanitizer_coverage_trace_pc_guard-init.cpp' FAILED ********************
Exit Code: 127

Command Output (stdout):
--
# RUN: at line 5
DIR=/usr/local/google/home/harinidonthula/llvm-project/build/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/ubsan-i386-Linux/Output/sanitizer_coverage_trace_pc_guard-init.cpp.tmp_workdir
# executed command: DIR=/usr/local/google/home/harinidonthula/llvm-project/build/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/ubsan-i386-Linux/Output/sanitizer_coverage_trace_pc_guard-init.cpp.tmp_workdir
# .---command stderr------------
# | 'DIR=/usr/local/google/home/harinidonthula/llvm-project/build/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/ubsan-i386-Linux/Output/sanitizer_coverage_trace_pc_guard-init.cpp.tmp_workdir': command not found
# `-----------------------------
# error: command failed with exit status: 127
```
In this patch, I resolved these issues by removing the use of the `DIR`
environment variable. Instead, the tests now directly utilize
`%t_workdir` for managing temporary directories. Additionally, I
simplified the tests by embedding the clang command arguments directly
into the test scripts, which avoids complications with environment
variable expansion under lit's internal shell.

This fix ensures that the tests run smoothly with lit's internal shell
and prevents the "command not found" errors, improving the reliability
of the test suite when executed in this environment.

fixes: #102395
[link to
RFC](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: bbefd5713ff55de3a23e4bdc7c15edd74cbc5e7a
      https://github.com/llvm/llvm-project/commit/bbefd5713ff55de3a23e4bdc7c15edd74cbc5e7a
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/smul_fix.ll
    M llvm/test/CodeGen/AArch64/umul_fix.ll

  Log Message:
  -----------
  [TargetLowering] Handle vector types in expandFixedPointMul (#102635)

In TargetLowering::expandFixedPointMul when expanding fixed point
multiplication, and when using a widened MUL as strategy for the
lowering, there was a bug resulting in assertion failures like this:
   Assertion `VT.isVector() == N1.getValueType().isVector() &&
   "SIGN_EXTEND result type type should be vector iff the operand "
   "type is vector!"' failed.

Problem was that we did not consider that VT could be a vector type
when setting up the WideVT. This patch should fix that bug.


  Commit: 7299c7f65451c8c97d6417a3f185186e59c6e25e
      https://github.com/llvm/llvm-project/commit/7299c7f65451c8c97d6417a3f185186e59c6e25e
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/src/__support/str_to_float.h
    M libc/test/src/__support/str_to_double_test.cpp
    M libc/test/src/__support/str_to_float_test.cpp
    M libc/test/src/__support/str_to_long_double_test.cpp

  Log Message:
  -----------
  [libc] Fix CFP long double and add tests (#102660)

The previous patch removing the fenv requirement for str to float had an
error that got missed due to a lack of tests. This patch fixes the issue
and adds tests, as well as updating the existing tests.


  Commit: 1d8d5d6529442f341f5a32e4131120e4e01fce43
      https://github.com/llvm/llvm-project/commit/1d8d5d6529442f341f5a32e4131120e4e01fce43
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/range_reduction_double_common.h
    M libc/src/math/generic/sin.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/tan.cpp

  Log Message:
  -----------
  [libc]  Moved range_reduction_double ifdef statement (#102659)

Sin/cos/tan fuzzers were having issues with ONE_TWENTY_EIGHT_OVER_PI, so
the LIBC_TARGET_CPU_HAS_FMA ifdef statement got moved from the
sin/cos/tan .cpp files to the range_reduction_double_common.cpp file.


  Commit: 44f30c80195d4817bc9fdefa1759372769b663e2
      https://github.com/llvm/llvm-project/commit/44f30c80195d4817bc9fdefa1759372769b663e2
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Use Tracker.emplaceIfTracking()

This patch replaces some of the remaining uses of Tracker::track() to
Tracker::emplaceIfTracking().


  Commit: 93a31cdf7a9ff6cbbdba018a55acd9612ba43dab
      https://github.com/llvm/llvm-project/commit/93a31cdf7a9ff6cbbdba018a55acd9612ba43dab
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan.h
    M compiler-rt/lib/nsan/nsan_interceptors.cpp
    M compiler-rt/lib/nsan/nsan_malloc_linux.cpp
    M compiler-rt/lib/nsan/nsan_preinit.cpp
    M compiler-rt/lib/nsan/nsan_stats.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h

  Log Message:
  -----------
  [nsan] Make #include more conventional


  Commit: 51a3bc12176ab46f3d2ce6ad4aa26af088d3cf14
      https://github.com/llvm/llvm-project/commit/51a3bc12176ab46f3d2ce6ad4aa26af088d3cf14
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp

  Log Message:
  -----------
  [ThinLTO]Clean up 'import-assume-unique-local' flag. (#102424)

While manual compiles can specify full file paths and build automation
tools use full, unique paths in practice, it's not clear whether it's a
general good practice to enforce full paths (fail a build if relative
paths are used).

`NumDefs == 1` condition [1] should hold true for many internal-linkage
vtables as long as full paths are indeed used to salvage the marginal
performance when local-linkage vtables are imported due to indirect
reference.
https://github.com/llvm/llvm-project/pull/100448#discussion_r1692068402
has more details.

[1]
https://github.com/llvm/llvm-project/pull/100448/files#diff-e7cb370fee46f0f773f2b5429dfab36b75126d3909ae98ee87ff3d0e3f75c6e9R215


  Commit: 535172317856e7ecfd26d77aaf4efa3277669df3
      https://github.com/llvm/llvm-project/commit/535172317856e7ecfd26d77aaf4efa3277669df3
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR][NFC] SingleLLVMInstructionImpl class (#102687)

This patch introduces the SingleLLVMInstructionImpl class which
implements a couple of functions shared across all Instructions that map
to a single LLVM Instructions. This avoids code replication.


  Commit: 786c409234b0891b8a455d96b08eda61b53b7fed
      https://github.com/llvm/llvm-project/commit/786c409234b0891b8a455d96b08eda61b53b7fed
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    A llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    A llvm/test/Other/amdgpu-pass-pipeline-parsing.ll

  Log Message:
  -----------
  [AMDGPU][Attributor] Add a pass parameter `closed-world` for AMDGPUAttributor pass (#101760)


  Commit: 23c8128d1ec8030f1a717fd9dc391456b9171e45
      https://github.com/llvm/llvm-project/commit/23c8128d1ec8030f1a717fd9dc391456b9171e45
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  FIX: Remove unused private data member `HasWholeProgramVisibility` in `AMDGPU.h`


  Commit: 76f722f10c7ac54792821c0a16e47c7d462e53d0
      https://github.com/llvm/llvm-project/commit/76f722f10c7ac54792821c0a16e47c7d462e53d0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
    M llvm/test/CodeGen/AMDGPU/si-annotate-cf-noloop.ll
    M llvm/test/CodeGen/AMDGPU/si-annotate-cf-unreachable.ll

  Log Message:
  -----------
  AMDGPU/NewPM: Port SIAnnotateControlFlow to new pass manager (#102653)

Does not yet add it to the pass pipeline. Somehow it causes
2 tests to assert in SelectionDAG, in functions without any
control flow.


  Commit: 77e68fbdd3fdc205bafa042fcb87014011dc7799
      https://github.com/llvm/llvm-project/commit/77e68fbdd3fdc205bafa042fcb87014011dc7799
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/annotate-noclobber.ll

  Log Message:
  -----------
  AMDGPU/NewPM: Port AMDGPUAnnotateUniformValues to new pass manager (#102654)


  Commit: 3696a34e59396d09231def9ded3d0577dd0f7503
      https://github.com/llvm/llvm-project/commit/3696a34e59396d09231def9ded3d0577dd0f7503
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
    M llvm/test/CodeGen/AMDGPU/si-lower-i1-copies.mir

  Log Message:
  -----------
  AMDGPU/NewPM: Port SILowerI1Copies to new pass manager (#102663)


  Commit: 6c8d479609f9fe2273590c8c60375cff761d5b02
      https://github.com/llvm/llvm-project/commit/6c8d479609f9fe2273590c8c60375cff761d5b02
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan.h

  Log Message:
  -----------
  [nsan] GetShadowAddrFor: Use (const) void * to decrease the number of casts


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

  Changed paths:
    M compiler-rt/lib/msan/msan_allocator.cpp
    M compiler-rt/lib/msan/msan_thread.cpp

  Log Message:
  -----------
  [msan] Use namespace qualifier. NFC

nsan will port msan_allocator.cpp and msan_thread.cpp. Clean up the two
files first.


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

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Utils/LCSSA.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h

  Log Message:
  -----------
  [llvm] Construct SmallVector with ArrayRef (NFC) (#102712)

Without this patch, the constructor arguments come from
SmallVectorImpl, not ArrayRef.  This patch switches them to ArrayRef
so that we can construct SmallVector with a single argument.

Note that LLVM Programmer’s Manual prefers ArrayRef to SmallVectorImpl
for flexibility.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp

  Log Message:
  -----------
  [AArch64] Construct SmallVector<SDValue> with ArrayRef (NFC) (#102713)


  Commit: 165f45354ae51bd00fe9000afbdcc4405e360b02
      https://github.com/llvm/llvm-project/commit/165f45354ae51bd00fe9000afbdcc4405e360b02
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp

  Log Message:
  -----------
  [mlir] Use llvm::is_contained (NFC) (#102714)


  Commit: 109f2f04bcf8f0010380d235a03799520dd4c37c
      https://github.com/llvm/llvm-project/commit/109f2f04bcf8f0010380d235a03799520dd4c37c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU/NewPM: Initialize class member

After #102654


  Commit: 0c783be98549b23bb2ccd3df6d407740e16cc1e1
      https://github.com/llvm/llvm-project/commit/0c783be98549b23bb2ccd3df6d407740e16cc1e1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

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

  Log Message:
  -----------
  [TargetLowering] Use APInt::isSubsetOf to simplify an expression. NFC


  Commit: 7a6acd9844d61e48cbfecbdd1cbbb53080fc7059
      https://github.com/llvm/llvm-project/commit/7a6acd9844d61e48cbfecbdd1cbbb53080fc7059
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-09 (Fri, 09 Aug 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Format/TokenAnnotator.cpp

  Log Message:
  -----------
  [clang] Use llvm::is_contained (NFC) (#102720)


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

  Changed paths:
    M llvm/test/tools/llvm-objdump/ELF/RISCV/source-interleave.ll

  Log Message:
  -----------
  [llvm-objdump,test] Fix source-interleave.ll when /proc/self/cwd is unavailable

e.g. on Mach-O


  Commit: 9a227ba3e129eaa89498b97421afefb1e9d681df
      https://github.com/llvm/llvm-project/commit/9a227ba3e129eaa89498b97421afefb1e9d681df
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Descriptor.h
    M clang/lib/AST/Interp/Disasm.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/InterpBlock.h
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/test/AST/Interp/unions.cpp

  Log Message:
  -----------
  [clang][Interp] Start implementing unions and changing the active member (#102723)


  Commit: 5c717d6b1de0029b632f4f3f0f706b0d9135ba1e
      https://github.com/llvm/llvm-project/commit/5c717d6b1de0029b632f4f3f0f706b0d9135ba1e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_ref.h
    M libcxx/include/__bit/rotate.h
    M libcxx/include/__chrono/zoned_time.h
    M libcxx/include/__format/format_context.h
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/include/memory_resource
    M libcxx/modules/std/mdspan.inc
    M libcxx/modules/std/new.inc
    M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
    M libcxx/test/tools/clang_tidy_checks/header_exportable_declarations.cpp

  Log Message:
  -----------
  [libc++] re-enable clang-tidy in the CI and fix any issues (#102658)

It looks like we've accidentally disabled clang-tidy in the CI. This
re-enables it and fixes the issues accumulated while it was disabled.


  Commit: 979abf142f606bf43a5500e59d72f1286a7180c7
      https://github.com/llvm/llvm-project/commit/979abf142f606bf43a5500e59d72f1286a7180c7
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

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

Always go through toAPValue() first and pretty-print that. In the
future, I think we could get rid of the individual toDiagnosticString()
implementations. This way we also get the correct printing for floats.


  Commit: 86691f8d7e86176db7409ccafb7a79964221720a
      https://github.com/llvm/llvm-project/commit/86691f8d7e86176db7409ccafb7a79964221720a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Do not call dtors of union members (#102739)


  Commit: 3b57f6b4c76d9b54b1c42591fdddf0ddc86dc964
      https://github.com/llvm/llvm-project/commit/3b57f6b4c76d9b54b1c42591fdddf0ddc86dc964
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Handle nested unions (#102743)


  Commit: 22c77f235416d137ea83875c16901fdf32b57159
      https://github.com/llvm/llvm-project/commit/22c77f235416d137ea83875c16901fdf32b57159
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M polly/include/polly/CodeGen/BlockGenerators.h
    M polly/include/polly/CodeGen/IslExprBuilder.h
    M polly/include/polly/CodeGen/IslNodeBuilder.h
    M polly/include/polly/CodeGen/LoopGenerators.h
    M polly/include/polly/CodeGen/LoopGeneratorsGOMP.h
    M polly/include/polly/CodeGen/LoopGeneratorsKMP.h
    M polly/include/polly/Support/ScopHelper.h
    M polly/lib/CodeGen/BlockGenerators.cpp
    M polly/lib/CodeGen/IslExprBuilder.cpp
    M polly/lib/CodeGen/IslNodeBuilder.cpp
    M polly/lib/CodeGen/LoopGeneratorsGOMP.cpp
    M polly/lib/CodeGen/LoopGeneratorsKMP.cpp
    M polly/lib/Support/ScopHelper.cpp

  Log Message:
  -----------
  [Polly] Use separate DT/LI/SE for outlined subfn. NFC. (#102460)

DominatorTree, LoopInfo, and ScalarEvolution are function-level analyses
that expect to be called only on instructions and basic blocks of the
function they were original created for. When Polly outlined a parallel
loop body into a separate function, it reused the same analyses seemed
to work until new checks to be added in #101198.

This patch creates new analyses for the subfunctions. GenDT, GenLI, and
GenSE now refer to the analyses of the current region of code. Outside
of an outlined function, they refer to the same analysis as used for the
SCoP, but are substituted within an outlined function.

Additionally to the cross-function queries of DT/LI/SE, we must not
create SCEVs that refer to a mix of expressions for old and generated
values. Currently, SCEVs themselves do not "remember" which
ScalarEvolution analysis they were created for, but mixing them is just
as unexpected as using DT/LI across function boundaries. Hence
`SCEVLoopAddRecRewriter` was combined into `ScopExpander`.
`SCEVLoopAddRecRewriter` only replaced induction variables but left
SCEVUnknowns to reference the old function. `SCEVParameterRewriter`
would have done so but its job was effectively superseded by
`ScopExpander`, and now also `SCEVLoopAddRecRewriter`. Some issues
persist put marked with a FIXME in the code. Changing them would
possibly cause this patch to be not NFC anymore.


  Commit: 59f7a806182543c3d1198ad69c478afcc1443521
      https://github.com/llvm/llvm-project/commit/59f7a806182543c3d1198ad69c478afcc1443521
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/math.yaml

  Log Message:
  -----------
  [libc] Fix `scablnf16` using `float16` instead of `_Float16`


  Commit: 955be526cbb29d8d5cf5ca344cecac4fd00f9790
      https://github.com/llvm/llvm-project/commit/955be526cbb29d8d5cf5ca344cecac4fd00f9790
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    R lld/test/COFF/Inputs/except_handler3.lib
    M lld/test/COFF/safeseh-md.s

  Log Message:
  -----------
  [LLD][NFC] Don't use x64 import library for x86 target in safeseh-md tests. (#102736)

Use llvm-lib to generate input library instead of a binary blob.


  Commit: 2849ebb19c4c9bfe9e3ec716e0f2b1bfe5dd3607
      https://github.com/llvm/llvm-project/commit/2849ebb19c4c9bfe9e3ec716e0f2b1bfe5dd3607
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h

  Log Message:
  -----------
  [LLD][NFC] Make InputFile::getMachineType const. (#102737)


  Commit: 5f26497da7de10c4eeec33b5a5cfcb47e96836cc
      https://github.com/llvm/llvm-project/commit/5f26497da7de10c4eeec33b5a5cfcb47e96836cc
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp

  Log Message:
  -----------
  [mlir][vector] Use `DenseI64ArrayAttr` in vector.multi_reduction (#102637)

This prevents some unnecessary conversions to/from int64_t and
IntegerAttr.


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

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

  Log Message:
  -----------
  [clang][Interp] Only zero-init first union member (#102744)

Zero-initializing all of them accidentally left the last member active.
Only initialize the first one.


  Commit: 1c269929d03e4a664a1f05d494b8fefe291ef8c0
      https://github.com/llvm/llvm-project/commit/1c269929d03e4a664a1f05d494b8fefe291ef8c0
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [Clang][Sema][OpenMP] Allow `thread_limit` to accept multiple expressions (#102715)


  Commit: 8d908b8cc5f4b3aeb2303437a9c2d35654279fd9
      https://github.com/llvm/llvm-project/commit/8d908b8cc5f4b3aeb2303437a9c2d35654279fd9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Ignore unnamed bitfields when zeroing records (#102749)

Including unions, where this is more important.


  Commit: 9d6cec5f349d4e26ac8610565dbbe4678a965278
      https://github.com/llvm/llvm-project/commit/9d6cec5f349d4e26ac8610565dbbe4678a965278
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/AST/Interp/unions.cpp

  Log Message:
  -----------
  [clang][Interp] Fix activating via indirect field initializers (#102753)

Pointer::activate() propagates up anyway, so that is handled. But we
need to call activate() in any case since the parent might not be a
union, but the activate() is still needed. Always call it and hope that
the InUnion flag takes care of the potential performance problems.


  Commit: 8a61bfcf8f3e569d7f1d8fcb8958c02ec4aa6e7f
      https://github.com/llvm/llvm-project/commit/8a61bfcf8f3e569d7f1d8fcb8958c02ec4aa6e7f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
    M llvm/utils/TableGen/Basic/SDNodeProperties.h
    M llvm/utils/TableGen/Basic/SequenceToOffsetTable.h
    M llvm/utils/TableGen/Common/AsmWriterInst.h
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenHwModes.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/CXXPredicates.h
    M llvm/utils/TableGen/Common/GlobalISel/CodeExpander.h
    M llvm/utils/TableGen/Common/GlobalISel/CodeExpansions.h
    M llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTableExecutorEmitter.h
    M llvm/utils/TableGen/Common/GlobalISel/PatternParser.h
    M llvm/utils/TableGen/Common/GlobalISel/Patterns.h
    M llvm/utils/TableGen/Common/InfoByHwMode.h
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/Common/PredicateExpander.h
    M llvm/utils/TableGen/Common/SubtargetFeatureInfo.h
    M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.h

  Log Message:
  -----------
  [NFC] Fix TableGen include guards to match paths (#102746)

- Fix include guards for headers under utils/TableGen to match their
paths.


  Commit: 9bb7c11f4eed1de09c7b160f02ac258ec9129920
      https://github.com/llvm/llvm-project/commit/9bb7c11f4eed1de09c7b160f02ac258ec9129920
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-divrem-insertpt-conflict.mir

  Log Message:
  -----------
  [GISel] Handle more opcodes in constant_fold_binop (#102640)

Update the list of opcodes handled by the constant_fold_binop combine to
match the ones that are folded in CSEMIRBuilder::buildInstr.


  Commit: 8101d1863cc3a6ca0ca49962903f2d7651b25659
      https://github.com/llvm/llvm-project/commit/8101d1863cc3a6ca0ca49962903f2d7651b25659
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-08-10 (Sat, 10 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
    A llvm/test/Transforms/AlignmentFromAssumptions/domtree-crash.ll

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

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 two 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.


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

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [Serialization] Fix a warning

This patch fixes:

  clang/lib/Serialization/ASTReader.cpp:11484:13: error: unused
  variable '_' [-Werror,-Wunused-variable]


  Commit: 4ce2f988b28445dadd067e6990aa6fb3db81a184
      https://github.com/llvm/llvm-project/commit/4ce2f988b28445dadd067e6990aa6fb3db81a184
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [Serialization] Use traditional for loops (NFC) (#102761)

The use of _ requires either:

- (void)_ and curly braces, or
- [[maybe_unused]].

For simple repetitions like these, we can use traditional for loops
for readable warning-free code.


  Commit: 496b224dc2fabe7c9f72e02fb5096f2b0fdd9e9b
      https://github.com/llvm/llvm-project/commit/496b224dc2fabe7c9f72e02fb5096f2b0fdd9e9b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp] Handle union copy/move ctors (#102762)

They don't have a body and we need to implement them ourselves. Use the
Memcpy op to do that.


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

  Changed paths:
    M compiler-rt/test/asan/TestCases/Linux/aligned_delete_test.cpp
    M compiler-rt/test/asan/TestCases/Linux/new_delete_mismatch.cpp
    M compiler-rt/test/hwasan/TestCases/new-test.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/new_delete_test.cpp
    M compiler-rt/test/scudo/aligned-new.cpp

  Log Message:
  -----------
  [sanitizer,test] Restore -fno-sized-deallocation coverage

-fsized-deallocation was recently made the default for C++17 onwards
(#90373). While here, remove unneeded -faligned-allocation.


  Commit: 80eea015ba4c1cf1182067579cd385dfdcb2e118
      https://github.com/llvm/llvm-project/commit/80eea015ba4c1cf1182067579cd385dfdcb2e118
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M compiler-rt/lib/dfsan/dfsan.cpp
    M compiler-rt/lib/dfsan/dfsan_allocator.cpp
    M compiler-rt/lib/dfsan/dfsan_chained_origin_depot.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/dfsan/dfsan_interceptors.cpp
    M compiler-rt/lib/dfsan/dfsan_thread.cpp

  Log Message:
  -----------
  [dfsan] Use namespace qualifier and internalize accidentally exported functions. NFC


  Commit: f3e950a2fe04dcfcc9202125c99d29451df2be0c
      https://github.com/llvm/llvm-project/commit/f3e950a2fe04dcfcc9202125c99d29451df2be0c
  Author: Tobias Hieta <tobias at hieta.se>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    A llvm/utils/release/merge-release-pr.py

  Log Message:
  -----------
  [Utils] Add new merge-release-pr.py script. (#101630)

This script helps the release managers merge backport PR's.

It does the following things:

* Validate the PR, checks approval, target branch and many other things.
* Rebases the PR
* Checkout the PR locally
* Pushes the PR to the release branch
* Deletes the local branch

I have found the script very helpful to merge the PR's.


  Commit: b167ada89631fc18e073c2b6295b10e3085b8c88
      https://github.com/llvm/llvm-project/commit/b167ada89631fc18e073c2b6295b10e3085b8c88
  Author: Usman Nadeem <mnadeem at quicinc.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-unfold-select.ll
    M llvm/test/Transforms/DFAJumpThreading/max-path-length.ll

  Log Message:
  -----------
  [DFAJumpThreading] Rewrite the way paths are enumerated (#96127)

I tried to add a limit to number of blocks visited in the paths()
function but even with a very high limit the transformation coverage was
being reduced.

After looking at the code it seemed that the function was trying to
create paths of the form
`SwitchBB...DeterminatorBB...SwitchPredecessor`. This is inefficient
because a lot of nodes in those paths (nodes before DeterminatorBB)
would be irrelevant to the optimization. We only care about paths of the
form `DeterminatorBB_Pred DeterminatorBB...SwitchBB`. This weeds out a
lot of visited nodes.

In this patch I have added a hard limit to the number of nodes visited
and changed the algorithm for path calculation. Primarily I am
traversing the use-def chain for the PHI nodes that define the state. If
we have a hole in the use-def chain (no immediate predecessors) then I
call the paths() function.

I also had to the change the select instruction unfolding code to insert
redundant one input PHIs to allow the use of the use-def chain in
calculating the paths.

The test suite coverage with this patch (including a limit on nodes
visited) is as follows:

    Geomean diff:
      dfa-jump-threading.NumTransforms: +13.4%
      dfa-jump-threading.NumCloned: +34.1%
      dfa-jump-threading.NumPaths: -80.7%

Compile time effect vs baseline (pass enabled by default) is mostly
positive:
https://llvm-compile-time-tracker.com/compare.php?from=ad8705fda25f64dcfeb6264ac4d6bac36bee91ab&to=5a3af6ce7e852f0736f706b4a8663efad5bce6ea&stat=instructions:u

Change-Id: I0fba9e0f8aa079706f633089a8ccd4ecf57547ed


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

  Changed paths:
    M compiler-rt/lib/dfsan/dfsan.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp

  Log Message:
  -----------
  [dfsan] Use namespace qualifier. NFC


  Commit: 2ba1cc8ea53cd76fbeac79dad837dcae32cc7e59
      https://github.com/llvm/llvm-project/commit/2ba1cc8ea53cd76fbeac79dad837dcae32cc7e59
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [Clang][CodeGen] Fix bad codegen when building Clang with latest MSVC (#102681)

Before this PR, when using the latest MSVC `Microsoft (R) C/C++
Optimizing Compiler Version 19.40.33813 for x64` one of the Clang unit
test used to fail: `CodeGenObjC/gnustep2-direct-method.m`, see full
failure log:
[here](https://github.com/llvm/llvm-project/pull/100517#issuecomment-2266269490).

This PR temporarily shuffles around the code to make the MSVC inliner/
optimizer happy and avoid the bug.

MSVC bug report:
https://developercommunity.visualstudio.com/t/Bad-code-generation-when-building-LLVM-w/10719589?port=1025&fsid=e572244a-cde7-4d75-a73d-9b8cd94204dd


  Commit: c5a4291fb704b4cff469bab18ff7ebab41807564
      https://github.com/llvm/llvm-project/commit/c5a4291fb704b4cff469bab18ff7ebab41807564
  Author: Ameer J <52414509+ameerj at users.noreply.github.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add BreakBinaryOperations configuration (#95013)

By default, clang-format packs binary operations, but it may be
desirable to have compound operations be on individual lines instead of
being packed.

This PR adds the option `BreakBinaryOperations` to break up large
compound binary operations to be on one line each.

This applies to all logical and arithmetic/bitwise binary operations

Maybe partially addresses #79487 ?
Closes #58014 
Closes #57280


  Commit: 986bc3d0719af653fecb77e8cfc59f39bec148fd
      https://github.com/llvm/llvm-project/commit/986bc3d0719af653fecb77e8cfc59f39bec148fd
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    A clang/test/Format/list-ignored.cpp
    M clang/tools/clang-format/ClangFormat.cpp
    M clang/tools/clang-format/git-clang-format

  Log Message:
  -----------
  [clang-format] Fix a serious bug in `git clang-format -f` (#102629)

With the --force (or -f) option, git-clang-format wipes out input files
excluded by a .clang-format-ignore file if they have unstaged changes.

This patch adds a hidden clang-format option --list-ignored that lists
such excluded files for git-clang-format to filter out.

Fixes #102459.


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

  Changed paths:
    M llvm/unittests/tools/llvm-exegesis/X86/SubprocessMemoryTest.cpp

  Log Message:
  -----------
  [llvm-exegesis][unittests] Also disable SubprocessMemoryTest on SPARC (#102755)

Three `llvm-exegesis` tests
```
  LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/SubprocessMemoryTest/DefinitionFillsCompletely
  LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/SubprocessMemoryTest/MultipleDefinitions
  LLVM-Unit :: tools/llvm-exegesis/./LLVMExegesisTests/SubprocessMemoryTest/OneDefinition
```
`FAIL` on Linux/sparc64 like
```
llvm/unittests/tools/llvm-exegesis/X86/SubprocessMemoryTest.cpp:68: Failure
Expected equality of these values:
  SharedMemoryMapping[I]
    Which is: '\0'
  ExpectedValue[I]
    Which is: '\xAA' (170)
```
It seems like this test only works on little-endian hosts: three
sub-tests are already disabled on powerpc and s390x (both big-endian),
and the fourth is additionally guarded against big-endian hosts (making
the other guards unnecessary).

However, since it's not been analyzed if this is really an endianess
issue, this patch disables the whole test on powerpc and s390x as before
adding sparc to the mix.

Tested on `sparc64-unknown-linux-gnu` and `x86_64-pc-linux-gnu`.


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

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

  Log Message:
  -----------
  [Analysis] Use llvm::set_is_subset (NFC) (#102766)


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

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

  Log Message:
  -----------
  [LegalizeTypes] Use APInt::getLowBitsSet instead of getAllOnes+zext. NFC


  Commit: 3c3df1bef84bd509bdd2b6033bc9bb3653826388
      https://github.com/llvm/llvm-project/commit/3c3df1bef84bd509bdd2b6033bc9bb3653826388
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-10 (Sat, 10 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
    R llvm/test/Transforms/AlignmentFromAssumptions/domtree-crash.ll

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

Reverts llvm/llvm-project#101198

Breaks multiple bots:
https://lab.llvm.org/buildbot/#/builders/72/builds/2103
https://lab.llvm.org/buildbot/#/builders/164/builds/1909
https://lab.llvm.org/buildbot/#/builders/66/builds/2706


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

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

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

Reverts llvm/llvm-project#102735

Breaks https://lab.llvm.org/buildbot/#/builders/52/builds/1496


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll

  Log Message:
  -----------
  [RISCV] Add IR tests for bf16 vmerge and vmv.v.v. NFC (#102775)


  Commit: 4ac42afbccf616a3644e19f2945ccd9ad1b66ccf
      https://github.com/llvm/llvm-project/commit/4ac42afbccf616a3644e19f2945ccd9ad1b66ccf
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

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

  Log Message:
  -----------
  [InstCombine] Use llvm::set_is_subset (NFC) (#102778)


  Commit: 242f4e85eb5caa462a9835ac85c49e4a78dc1703
      https://github.com/llvm/llvm-project/commit/242f4e85eb5caa462a9835ac85c49e4a78dc1703
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCPseudoProbe.h
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/tools/llvm-profgen/ProfiledBinary.h

  Log Message:
  -----------
  [profgen][NFC] Pass parameter as const_ref

Pass `ProbeNode` parameter of `trackInlineesOptimizedAway` as const
reference.

Reviewers: wlei-llvm, WenleiHe

Reviewed By: WenleiHe

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


  Commit: cd15d12f477516a323c1f14b451173feaecc0774
      https://github.com/llvm/llvm-project/commit/cd15d12f477516a323c1f14b451173feaecc0774
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-08-10 (Sat, 10 Aug 2024)

  Changed paths:
    M llvm/lib/MC/MCPseudoProbe.cpp
    M llvm/tools/llvm-profgen/ProfileGenerator.cpp

  Log Message:
  -----------
  [MC][profgen][NFC] Expand auto for MCDecodedPseudoProbe

Expand autos in select places in preparation to #102789.

Reviewers: dcci, maksfb, WenleiHe, rafaelauler, ayermolo, wlei-llvm

Reviewed By: WenleiHe, wlei-llvm

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


  Commit: 073b0578b79904647e601937954e800b918f2b29
      https://github.com/llvm/llvm-project/commit/073b0578b79904647e601937954e800b918f2b29
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [Target] Construct SmallVector<MachineMemOperand *> with ArrayRef (NFC) (#102779)


  Commit: 712ab805140068a7b4719a38de3fee904841dbb3
      https://github.com/llvm/llvm-project/commit/712ab805140068a7b4719a38de3fee904841dbb3
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Properly adjust instance pointer in virtual calls (#102800)

`getDeclPtr()` will not just return what we want, but in this case a
pointer to the `vu` local variable.


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

  Changed paths:
    M clang/test/AST/Interp/cxx20.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Add a failing test case (#102801)


  Commit: 3036bcd23e15a22944d8a10b5f6e667de494a558
      https://github.com/llvm/llvm-project/commit/3036bcd23e15a22944d8a10b5f6e667de494a558
  Author: Sebastian Neubauer <Flakebi at users.noreply.github.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/docs/MeetupGuidelines.rst

  Log Message:
  -----------
  [Docs] Update meetup contact mail address (#99321)

Arnaud is no longer active.


  Commit: a245a984fd41bc4e9ae225219cb7859d53cd83a4
      https://github.com/llvm/llvm-project/commit/a245a984fd41bc4e9ae225219cb7859d53cd83a4
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [NFC][libclang/python] Fix code highlighting in release notes (#102807)

This corrects a release note introduced in #98745


  Commit: 35d3625a4d50d70a8b6348d6bb0be143b9006f53
      https://github.com/llvm/llvm-project/commit/35d3625a4d50d70a8b6348d6bb0be143b9006f53
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [VPlan] Move VPWidenLoadRecipe::execute to VPlanRecipes.cpp (NFC).

Move VPWidenLoadRecipe::execute to VPlanRecipes.cpp in line with
other ::execute implementations that don't depend on anything
defined in LoopVectorization.cpp


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

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/perfhint.ll

  Log Message:
  -----------
  AMDGPU: Try to add some more amdgpu-perf-hint tests (#102644)

This test has hardly any test coverage, and no IR tests. Add a few
more tests involving calls, and add some IR checks. This pass needs
a lot of work to improve the test coverage, and to actually use
the cost model instead of making up its own accounting scheme.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/perfhint.ll

  Log Message:
  -----------
  NewPM/AMDGPU: Port AMDGPUPerfHintAnalysis to new pass manager (#102645)

This was much more difficult than I anticipated. The pass is
not in a good state, with poor test coverage. The legacy PM
does seem to be relying on maintaining the map state between
different SCCs, which seems bad. The pass is going out of its
way to avoid putting the attributes it introduces onto non-callee
functions. If it just added them, we could use them directly
instead of relying on the map, I would think.

The NewPM path uses a ModulePass; I'm not sure if we should be
using CGSCC here but there seems to be some missing infrastructure
to support backend defined ones.


  Commit: f070f61fc0b4c731a031fbe9f8e7360c337791c4
      https://github.com/llvm/llvm-project/commit/f070f61fc0b4c731a031fbe9f8e7360c337791c4
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [CI][libclang] Add PR autolabeling for libclang (#102809)

This automatically adds the `clang:as-a-library` label on PRs for the C
and Python bindings and the libclang library

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: 4589bf90aa1849b3851945fb611f5c96af821332
      https://github.com/llvm/llvm-project/commit/4589bf90aa1849b3851945fb611f5c96af821332
  Author: Mike Crowe <mac at mcrowe.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp

  Log Message:
  -----------
  [clang-tidy] Fix modernize-use-std-format lit test signature (#102759)

My fix for my original fix of issue #92896 in
666d224248707f373577b5b049b5b0229100006c modified the function signature
for fmt::sprintf to more accurately match the real implementation in
libfmt but failed to do the same for absl::StrFormat. The latter fix
applied equally well to absl::StrFormat so it's important that its test
verifies that the bug is fixed too.


  Commit: 7024cecf03e6b5c1fd0fe1292ed18c7b808396f7
      https://github.com/llvm/llvm-project/commit/7024cecf03e6b5c1fd0fe1292ed18c7b808396f7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [LV] Collect profitable VFs in ::getBestVF. (NFCI)

Move collectig profitable VFs to ::getBestVF, in preparation for
retiring selectVectorizationFactor.


  Commit: 4399dbe331bd9840e7d709266196a8b9f26d658c
      https://github.com/llvm/llvm-project/commit/4399dbe331bd9840e7d709266196a8b9f26d658c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll

  Log Message:
  -----------
  [LV] Adjust test for #48188 to use AVX level closer to report.

Update AVX level for https://github.com/llvm/llvm-project/issues/48188
to be closer to the one used in the preproducer.


  Commit: 5286656609418c766272ff78e62fda41671ef4cb
      https://github.com/llvm/llvm-project/commit/5286656609418c766272ff78e62fda41671ef4cb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/predicate-switch.ll

  Log Message:
  -----------
  [LV] Regenerate check lines in preparation for #99808.

Regenerate check lines for test to avoid unrelated changes in
https://github.com/llvm/llvm-project/pull/99808.


  Commit: 94e6786b8007b1d9b871cb5750a80973d685580b
      https://github.com/llvm/llvm-project/commit/94e6786b8007b1d9b871cb5750a80973d685580b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp

  Log Message:
  -----------
  [llvm] Construct SmallVector with ArrayRef (NFC) (#102799)


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

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h
    M llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h
    M llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
    M llvm/unittests/CodeGen/GlobalISel/CMakeLists.txt
    A llvm/unittests/CodeGen/GlobalISel/InstructionSelectTest.cpp

  Log Message:
  -----------
  [RFC][GlobalISel] InstructionSelect: Allow arbitrary instruction erasure (#97670)

See https://discourse.llvm.org/t/rfc-globalisel-instructionselect-allow-arbitrary-instruction-erasure


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

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

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


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

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

  Log Message:
  -----------
  [GlobalISel] Combiner: Install Observer into MachineFunction

The Combiner doesn't install the Observer into the MachineFunction.
This probably went unnoticed, because MachineFunction::getObserver() is
currently only used in constrainOperandRegClass(), but this might cause
issues down the line.

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


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

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

  Log Message:
  -----------
  [clang][Interp] Propagate InUnion flag to base classes (#102804)


  Commit: 65c72139be5314ce4d844745d3706d46dbad77d5
      https://github.com/llvm/llvm-project/commit/65c72139be5314ce4d844745d3706d46dbad77d5
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
    M llvm/include/llvm/CodeGen/GlobalISel/GISelWorkList.h
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp

  Log Message:
  -----------
  [GlobalISel] Don't remove from unfinalized GISelWorkList

Remove a hack from GISelWorkList caused by the Combiner removing
instructions from an unfinalized GISelWorkList during the DCE phase.
This is in preparation for larger changes to the WorkListMaintainer.

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


  Commit: 846dccce9cd030a1984a4d4336267cd2850e6bd8
      https://github.com/llvm/llvm-project/commit/846dccce9cd030a1984a4d4336267cd2850e6bd8
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    A lld/test/COFF/implib-machine.s

  Log Message:
  -----------
  [LLD][COFF] Validate import library machine type. (#102738)


  Commit: 257c479b91c6b7cd6f69b894d110abc6c30c7839
      https://github.com/llvm/llvm-project/commit/257c479b91c6b7cd6f69b894d110abc6c30c7839
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [LegalizeTypes][RISCV] Use SExtOrZExtPromotedOperands to promote operands for USUBSAT. (#102781)

It doesn't matter which extend we use to promote the operands. Use
whatever is the most efficient.

The custom handler for RISC-V was using SIGN_EXTEND when the Zbb
extension is enabled so we no longer need that.


  Commit: 249db518e324f8658bf5b2c0e3c0a1ee789d784b
      https://github.com/llvm/llvm-project/commit/249db518e324f8658bf5b2c0e3c0a1ee789d784b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/nsan/CMakeLists.txt
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan_interceptors.cpp
    A compiler-rt/lib/nsan/nsan_thread.cpp
    A compiler-rt/lib/nsan/nsan_thread.h
    A compiler-rt/test/nsan/Posix/tls_reuse.c

  Log Message:
  -----------
  [nsan] Add NsanThread and clear static TLS shadow

On thread creation, asan/hwasan/msan/tsan unpoison the thread stack and
static TLS blocks in case the blocks reuse previously freed memory that
is possibly poisoned. glibc nptl/allocatestack.c allocates thread stack
using a hidden, non-interceptable function.

nsan is similar: the shadow types for the thread stack and static TLS
blocks should be set to unknown, otherwise if the static TLS blocks
reuse previous shadow memory, and `*p += x` instead of `*p = x` is used
for the first assignment, the mismatching user and shadow memory could
lead to false positives.

NsanThread is also needed by the next patch to use the sanitizer
allocator.

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


  Commit: 167c71ad860a44f31ea8b6b5accf84a7c52a89ba
      https://github.com/llvm/llvm-project/commit/167c71ad860a44f31ea8b6b5accf84a7c52a89ba
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  Bump CI container clang version to 18.1.8 (#102803)

This patch bumps the CI container LLVM version to 18.1.8. This should've
been bumped a while ago, but I just noticed that it was out of date.
This also allows us to drop a patch that we manually had to add as it is
by default included in v18.


  Commit: d1bc41fdd1f531de2a0fdd02de03d43a11de6767
      https://github.com/llvm/llvm-project/commit/d1bc41fdd1f531de2a0fdd02de03d43a11de6767
  Author: DarshanRamakant <darshanbhatsirsi at gmail.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp

  Log Message:
  -----------
  [mlir][affine] Fix crash in mlir::affine::getForInductionVarOwner() (#102625)

This change fixes a crash when getOwner()->getParent() is a nullptr


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/no_switch.ll
    M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll

  Log Message:
  -----------
  [LV] Support generating masks for switch terminators. (#99808)

Update createEdgeMask to created masks where the terminator in Src is a
switch. We need to handle 2 separate cases:

1. Dst is not the default desintation. Dst is reached if any of the
cases with destination == Dst are taken. Join the conditions for each
case where destination == Dst using a logical OR.
2. Dst is the default destination. Dst is reached if none of the cases
with destination != Dst are taken. Join the conditions for each case
where the destination is != Dst using a logical OR and negate it.

Edge masks are created for every destination of cases and/or 
default when requesting a mask where the source is a switch.

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

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


  Commit: 2438f41bc45fc5e86bd4e9f77fae198719eed313
      https://github.com/llvm/llvm-project/commit/2438f41bc45fc5e86bd4e9f77fae198719eed313
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  Make msan_allocator.cpp more conventional. NFC

nsan will port msan_allocator.cpp.


  Commit: 1d0d1f20e7733e3a230f30282c7339f2d3be19c0
      https://github.com/llvm/llvm-project/commit/1d0d1f20e7733e3a230f30282c7339f2d3be19c0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  [msan] Remove unneeded nullness CHECK

The pointer will immediate be dereferenced.


  Commit: 41345925f9393518be8029cfb1ea80cfeb5631b4
      https://github.com/llvm/llvm-project/commit/41345925f9393518be8029cfb1ea80cfeb5631b4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [lldb] Construct SmallVector with ArrayRef (NFC) (#102793)


  Commit: 60680f7181e10f0344a96ed421490bc2cd1798ca
      https://github.com/llvm/llvm-project/commit/60680f7181e10f0344a96ed421490bc2cd1798ca
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    A llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll

  Log Message:
  -----------
  [LV] Handle SwitchInst in ::isPredicatedInst.

After f0df4fbd0c7b, isPredicatedInst needs to handle SwitchInst as well.
Handle it the same as BranchInst.

This fixes a crash in the newly added test and improves the results for
one of the existing tests in predicate-switch.ll

Should fix https://lab.llvm.org/buildbot/#/builders/113/builds/2099.


  Commit: 32973b08d8cb02c213d96df453ff323470304645
      https://github.com/llvm/llvm-project/commit/32973b08d8cb02c213d96df453ff323470304645
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [CMake] Followup to #102396 and restore old DynamicLibrary symbols behavior (#102671)

Followup to #102138 and #102396, restore more old behavior to fix
ppc64-aix bot.


  Commit: 1753008bbbc317511c07ed30eef21e0494d63de8
      https://github.com/llvm/llvm-project/commit/1753008bbbc317511c07ed30eef21e0494d63de8
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.h
    M llvm/lib/CodeGen/SelectionDAG/MatchContext.h
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.h
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h
    M llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h
    M llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/R600ISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/R600MachineScheduler.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendELF.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendWinCOFF.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
    M llvm/lib/Target/SystemZ/SystemZMachineScheduler.h
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
    M llvm/unittests/CodeGen/MLRegAllocDevelopmentFeatures.cpp

  Log Message:
  -----------
  [NFC] Eliminate top-level "using namespace" from some headers. (#102751)

- Eliminate top-level "using namespace" from some headers.


  Commit: 1b71c471c7d0216fa7fc5c0b45b5926d1fabfaf4
      https://github.com/llvm/llvm-project/commit/1b71c471c7d0216fa7fc5c0b45b5926d1fabfaf4
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmarkMain.cpp
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/startup/linux/do_start.cpp
    M libc/test/IntegrationTest/test.h
    M libc/test/UnitTest/LibcTestMain.cpp
    M libc/utils/HdrGen/PrototypeTestGen/PrototypeTestGen.cpp

  Log Message:
  -----------
  libc: Remove `extern "C"` from main declarations (#102825)

This is invalid in C++, and clang recently started warning on it as of
#101853


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

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmarkMain.cpp
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/startup/linux/do_start.cpp
    M libc/test/IntegrationTest/test.h
    M libc/test/UnitTest/LibcTestMain.cpp
    M libc/utils/HdrGen/PrototypeTestGen/PrototypeTestGen.cpp

  Log Message:
  -----------
  Revert "libc: Remove `extern "C"` from main declarations" (#102827)

Reverts llvm/llvm-project#102825


  Commit: 0a2a319ea6c8dc59fd3f0e284766361b8deca51c
      https://github.com/llvm/llvm-project/commit/0a2a319ea6c8dc59fd3f0e284766361b8deca51c
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan.cpp
    M compiler-rt/lib/rtsan/rtsan.h
    M compiler-rt/lib/rtsan/rtsan_interceptors.cpp

  Log Message:
  -----------
  [rtsan] Make sure rtsan gets initialized on mac (#100188)

Intermittently on my mac I was getting the same nullptr crash in dlsym.

We need to make sure rtsan gets initialized on mac between when the
binary starts running, and the first intercepted function is called.
Until that point we should use the DlsymAllocator.


  Commit: af09dd692232fe6f06650e5b29710206d516fb38
      https://github.com/llvm/llvm-project/commit/af09dd692232fe6f06650e5b29710206d516fb38
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  [lldb] Silence warning

This fixes:
```
[6831/7617] Building CXX object
tools\lldb\source\Target\CMakeFiles\lldbTarget.dir\ThreadPlanSingleThreadTimeout.cpp.obj
C:\src\git\llvm-project\lldb\source\Target\ThreadPlanSingleThreadTimeout.cpp(66)
: warning C4715:
'lldb_private::ThreadPlanSingleThreadTimeout::StateToString': not all
control paths return a value
```


  Commit: 20baa9a9eccda9bd61951f3f97b1d197f8b66dfc
      https://github.com/llvm/llvm-project/commit/20baa9a9eccda9bd61951f3f97b1d197f8b66dfc
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M openmp/runtime/src/kmp_affinity.cpp

  Log Message:
  -----------
  [openmp][runtime] Silence warnings

This fixes several of those when building with MSVC on Windows:
```
[3625/7617] Building CXX object
projects\openmp\runtime\src\CMakeFiles\omp.dir\kmp_affinity.cpp.obj
C:\src\git\llvm-project\openmp\runtime\src\kmp_affinity.cpp(2637):
warning C4062: enumerator 'KMP_HW_UNKNOWN' in switch of enum 'kmp_hw_t'
is not handled
C:\src\git\llvm-project\openmp\runtime\src\kmp.h(628): note: see
declaration of 'kmp_hw_t'
```


  Commit: 7202fe5829319a70ac05232af7206781a8a5437f
      https://github.com/llvm/llvm-project/commit/7202fe5829319a70ac05232af7206781a8a5437f
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_win.cpp

  Log Message:
  -----------
  [compiler-rt] Silence warnings

This fixes a few of these warnings, when building with Clang ToT on
Windows:
```
[622/7618] Building CXX object
projects\compiler-rt\lib\sanitizer_common\CMakeFiles\RTSanitizerCommonSymbolizer.x86_64.dir\sanitizer_symbolizer_win.cpp.obj
C:\src\git\llvm-project\compiler-rt\lib\sanitizer_common\sanitizer_symbolizer_win.cpp(74,3):
warning: cast from 'FARPROC' (aka 'long long (*)()') to
'decltype(::StackWalk64) *' (aka 'int (*)(unsigned long, void *, void *,
_tagSTACKFRAME64 *, void *, int (*)(void *, unsigned long long, void *,
unsigned long, unsigned long *), void *(*)(void *, unsigned long long),
unsigned long long (*)(void *, unsigned long long), unsigned long long
(*)(void *, void *, _tagADDRESS64 *))') converts to incompatible
function type [-Wcast-function-type-mismatch]
```

This is similar to https://github.com/llvm/llvm-project/pull/97905


  Commit: a819b0e55fafab0c6c4b059fc0132620f43ac38a
      https://github.com/llvm/llvm-project/commit/a819b0e55fafab0c6c4b059fc0132620f43ac38a
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/TargetThreadWindows.cpp

  Log Message:
  -----------
  [lldb] Silence warning

This fixes the following warning, when building with Clang ToT on
Windows:
```
[6668/7618] Building CXX object
tools\lldb\source\Plugins\Process\Windows\Common\CMakeFiles\lldbPluginProcessWindowsCommon.dir\TargetThreadWindows.cpp.obj
C:\src\git\llvm-project\lldb\source\Plugins\Process\Windows\Common\TargetThreadWindows.cpp(182,22):
warning: cast from 'FARPROC' (aka 'long long (*)()') to
'GetThreadDescriptionFunctionPtr' (aka 'long (*)(void *, wchar_t **)')
converts to incompatible function type [-Wcast-function-type-mismatch]
```

This is similar to: https://github.com/llvm/llvm-project/pull/97905


  Commit: e79e6015e9fe47fa2fd17ebe1f018c6e0ab86fb7
      https://github.com/llvm/llvm-project/commit/e79e6015e9fe47fa2fd17ebe1f018c6e0ab86fb7
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp

  Log Message:
  -----------
  [lldb] Fix dangling expression

This fixes the following:
```
[6603/7618] Building CXX object
tools\lldb\source\Plugins\ObjectFile\PECOFF\CMakeFiles\lldbPluginObjectFilePECOFF.dir\WindowsMiniDump.cpp.obj
C:\src\git\llvm-project\lldb\source\Plugins\ObjectFile\PECOFF\WindowsMiniDump.cpp(29,25):
warning: object backing the pointer will be destroyed at the end of the
full-expression [-Wdangling-gsl]
   29 |   const auto &outfile = core_options.GetOutputFile().value();
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
	 1 warning generated.
```


  Commit: e2f9c1853349a5dc86ccd0e85e09af245c418aa8
      https://github.com/llvm/llvm-project/commit/e2f9c1853349a5dc86ccd0e85e09af245c418aa8
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    A compiler-rt/lib/builtins/cpu_model/aarch64/fmv/getauxval.inc
    R compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc
    A compiler-rt/lib/builtins/cpu_model/aarch64/lse_atomics/getauxval.inc
    R compiler-rt/lib/builtins/cpu_model/aarch64/lse_atomics/sysauxv.inc

  Log Message:
  -----------
  [builtins] Rename sysauxv to getauxval to reflect the function called. NFCI (#102796)


  Commit: 80ff391190226b57fc3b192f7c941778c4ed2126
      https://github.com/llvm/llvm-project/commit/80ff391190226b57fc3b192f7c941778c4ed2126
  Author: Ryan Holt <ryanholt at mathworks.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M mlir/unittests/Support/CyclicReplacerCacheTest.cpp

  Log Message:
  -----------
  [mlir] Fix build after ec50f5828f25 (#101021)

This commit fixes what appears to be invalid C++ -- a lambda capturing a
variable before it is declared. The code compiles with GCC and Clang but
not MSVC.


  Commit: efc6b50d2d93fa571572ee3ef1d4565c09ad1610
      https://github.com/llvm/llvm-project/commit/efc6b50d2d93fa571572ee3ef1d4565c09ad1610
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/test/Transforms/LoopVectorize/X86/amdlibm-calls.ll

  Log Message:
  -----------
  [LoopVectorize][X86][AMDLibm] Add Missing AMD LibM trig vector intrinsics (#101125)

Adding the following linked to their docs:
-
[amd_vrs16_acosf](https://github.com/amd/aocl-libm-ose/blob/9c0b67293ba01e509a6308247d82a8f1adfbbc67/scripts/libalm.def#L221)
-
[amd_vrd2_cosh](https://github.com/amd/aocl-libm-ose/blob/9c0b67293ba01e509a6308247d82a8f1adfbbc67/scripts/libalm.def#L124)
-
[amd_vrs16_tanhf](https://github.com/amd/aocl-libm-ose/blob/9c0b67293ba01e509a6308247d82a8f1adfbbc67/scripts/libalm.def#L224)


  Commit: 4399f2a5ef38df381c2b65052621131890194d59
      https://github.com/llvm/llvm-project/commit/4399f2a5ef38df381c2b65052621131890194d59
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  [NFC] [C++20] [Modules] Adjust the implementation of wasDeclEmitted to make it more clear

The preivous implementation of wasDeclEmitted may be confusing that
why we need to filter the declaration not from modules. Now adjust the
implementations to avoid the problems.


  Commit: 435654b3d20e338fa6ca6c8d3b7358839f1db5dc
      https://github.com/llvm/llvm-project/commit/435654b3d20e338fa6ca6c8d3b7358839f1db5dc
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-11 (Sun, 11 Aug 2024)

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

  Log Message:
  -----------
  Revert "[CMake] Followup to #102396 and restore old DynamicLibrary symbols behavior (#102671)"

This reverts commit 32973b08d8cb02c213d96df453ff323470304645. This fix
doesn't fix the build failure as expected and making few other
configuration broken too.


  Commit: 62ced8116ba5274991af0e94cfdf873593c7764d
      https://github.com/llvm/llvm-project/commit/62ced8116ba5274991af0e94cfdf873593c7764d
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/test/CodeGenObjC/no-sanitize.m
    M llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    A llvm/test/Instrumentation/AddressSanitizer/asan-pass-second-run.ll
    M llvm/test/Instrumentation/AddressSanitizer/missing_dbg.ll
    A llvm/test/Instrumentation/DataFlowSanitizer/dfsan-pass-second-run.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/hwasan-pass-second-run.ll
    A llvm/test/Instrumentation/MemorySanitizer/msan-pass-second-run.ll
    A llvm/test/Instrumentation/ThreadSanitizer/tsan-pass-second-run.ll

  Log Message:
  -----------
  [Sanitizer] Make sanitizer passes idempotent (#99439)

This PR changes the sanitizer passes to be idempotent. 
When any sanitizer pass is run after it has already been run before,
double instrumentation is seen in the resulting IR. This happens because
there is no check in the pass, to verify if IR has been instrumented
before.

This PR checks if "nosanitize_*" module flag is already present and if
true, return early without running the pass again.


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

  Changed paths:
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/test/IR/invalid-builtin-types.mlir
    M mlir/test/python/ir/builtin_types.py

  Log Message:
  -----------
  [mlir][IR] Auto-generate element type verification for VectorType (#102449)

#102326 enables verification of type parameters that are type
constraints. The element type verification for `VectorType` (and maybe
other builtin types in the future) can now be auto-generated.

Also remove redundant error checking in the vector type parser: element
type and dimensions are already checked by the verifier (which is called
from `getChecked`).

Depends on #102326.


  Commit: c6062d38f74e600c185c30eec7afaa8d0a007424
      https://github.com/llvm/llvm-project/commit/c6062d38f74e600c185c30eec7afaa8d0a007424
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Cleanup CheckActive()

Assert that the given pointer is in a union if it's not active and use a
range-based for loop to find the active field.


  Commit: 558d7adaae4871134a87457bd07e21fdbe001c08
      https://github.com/llvm/llvm-project/commit/558d7adaae4871134a87457bd07e21fdbe001c08
  Author: zhicong zhong <zhiczhong at outlook.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
    M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
    M mlir/test/Dialect/Linalg/generalize-named-ops.mlir

  Log Message:
  -----------
  [mlir][linalg] fix linalg.batch_reduce_matmul auto cast (#102585)

Fix the auto-cast of `linalg.batch_reduce_matmul` from `cast_to_T(A *
cast_to_T(B)) + C` to `cast_to_T(A) * cast_to_T(B) + C`


  Commit: 27ed9b47977ff99e182b74f653d4d125d2baa896
      https://github.com/llvm/llvm-project/commit/27ed9b47977ff99e182b74f653d4d125d2baa896
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h

  Log Message:
  -----------
  [clang][Interp][NFC] Move ctor compilation to compileConstructor

In preparation for having a similar function for destructors.


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

  Changed paths:
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  Revert "[NFC] [C++20] [Modules] Adjust the implementation of wasDeclEmitted to make it more clear"

This reverts commit 4399f2a5ef38df381c2b65052621131890194d59.
This fails with Modules/aarch64-sme-keywords.cppm


  Commit: 7389545d0d7002c5b384ba70d5e38499e9899069
      https://github.com/llvm/llvm-project/commit/7389545d0d7002c5b384ba70d5e38499e9899069
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    A llvm/test/CodeGen/AMDGPU/div-rem-by-constant-64.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll
    A llvm/test/CodeGen/ARM/div-by-constant-to-mul-crash.ll

  Log Message:
  -----------
  Reapply "[AMDGPU] Always lower s/udiv64 by constant to MUL" (#101942)

Reland #100723, fixing the ARM issue at the cost of a small loss of optimization in `test/CodeGen/AMDGPU/fshr.ll`

Solves #100383


  Commit: d469794d0cdfd2fea50a6ce0c0e33abb242d744c
      https://github.com/llvm/llvm-project/commit/d469794d0cdfd2fea50a6ce0c0e33abb242d744c
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    A clang/test/SemaCXX/gh102293.cpp

  Log Message:
  -----------
  [clang] Avoid triggering vtable instantiation for C++23 constexpr dtor (#102605)

In C++23 anything can be constexpr, including a dtor of a class whose
members and bases don't have constexpr dtors. Avoid early triggering of
vtable instantiation int this case.

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


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

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Don't pass -DBUILD_EXAMPLES to the build (#102838)

The only use in `opt.cpp` was removed in
d291f1fd094538af705541045c0d9c3ceb85e71d.


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

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

  Log Message:
  -----------
  [DataLayout] Move `operator=` to cpp file (NFC) (#102849)

`DataLayout` isn't exactly cheap to copy (448 bytes on a 64-bit host).
Move `operator=` to cpp file to improve compilation time. Also move
`operator==` closer to `operator=` and add a couple of FIXMEs.


  Commit: 50f4168e40790bd91123824ee338643ac18ccc0b
      https://github.com/llvm/llvm-project/commit/50f4168e40790bd91123824ee338643ac18ccc0b
  Author: pvanhout <pierre.vanhoutryve at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h

  Log Message:
  -----------
  [GlobalISel] Fix implementation of CheckNumOperandsLE/GE

The condition was backwards - it was rejecting when the condition was met.

Fixes #102719


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll

  Log Message:
  -----------
  [VPlan] Mark VPVectorPointer as only using the first part of the ptr.

VPVectorPointerRecipe only uses the first part of the pointer operand,
so mark it accordingly.

Follow-up suggested as part of
https://github.com/llvm/llvm-project/pull/99808.


  Commit: c8b5d30f707757a4fe4d9d0bb01f762665f6942f
      https://github.com/llvm/llvm-project/commit/c8b5d30f707757a4fe4d9d0bb01f762665f6942f
  Author: DarshanRamakant <darshanbhatsirsi at gmail.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/IndexingUtils.h
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][Transforms] Add missing check in tosa::transpose::verify() (#102099)

The tosa::transpose::verify() should make sure
that the permutation numbers are within the size of 
the input array. Otherwise it will cause a cryptic array
out of bound assertion later.Fix #99513.


  Commit: 273e0a4c56b7fa9e7a6f4b94ec9a9c7d71104466
      https://github.com/llvm/llvm-project/commit/273e0a4c56b7fa9e7a6f4b94ec9a9c7d71104466
  Author: Tim Gymnich <tgymnich at icloud.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.mir

  Log Message:
  -----------
  [AMDGPU] add missing checks in processBaseWithConstOffset (#102310)

fixes https://github.com/llvm/llvm-project/issues/102231 by inserting
missing checks.


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/apint-call-cast-target.ll
    M llvm/test/Transforms/InstCombine/call-cast-target.ll
    M llvm/test/Transforms/InstCombine/call.ll
    M llvm/test/Transforms/InstCombine/opaque-ptr.ll

  Log Message:
  -----------
  [InstCombine] Don't change fn signature for calls to declarations (#102596)

transformConstExprCastCall() implements a number of highly dubious
transforms attempting to make a call function type line up with the
function type of the called function. Historically, the main value this
had was to avoid function type mismatches due to pointer type
differences, which is no longer relevant with opaque pointers.

This patch is a step towards reducing the scope of the transform, by
applying it only to definitions, not declarations. For declarations, the
declared signature might not match the actual function signature, e.g.
`void @fn()` is sometimes used as a placeholder for functions with
unknown signature. The implementation already bailed out in some cases
for declarations, but I think it would be safer to disable the transform
entirely.

For the test cases, I've updated some of them to use definitions
instead, so that the test coverage is preserved.


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

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/test/tools/llvm-readobj/ELF/note-core.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [llvm][llvm-readobj] Add NT_ARM_FPMR corefile note type (#102594)

This contains the fpmr register which was added in Armv9.5-a. This
register mainly contains controls for fp8 formats.

It was added to the Linux Kernel in

https://github.com/torvalds/linux/commit/4035c22ef7d43a6c00d6a6584c60e902b95b46af.


  Commit: b68086241b2f386fc5cc53af2b3ee90624104dc4
      https://github.com/llvm/llvm-project/commit/b68086241b2f386fc5cc53af2b3ee90624104dc4
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp

  Log Message:
  -----------
  [analyzer][NFC] Trivial refactoring of region invalidation (#102456)

This commit removes `invalidateRegionsImpl()`, moving its body to
`invalidateRegions(ValueList Values, ...)`, because it was a completely
useless layer of indirection.

Moreover I'm fixing some strange indentation within this function body
and renaming two variables to the proper `UpperCamelCase` format.


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

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll

  Log Message:
  -----------
  [VPlan] Replace hard-coded value number in test with pattern.

Make test more robust w.r.t. future changes.


  Commit: d12250ca7bea22ed12caf44fe80b203d83db75bb
      https://github.com/llvm/llvm-project/commit/d12250ca7bea22ed12caf44fe80b203d83db75bb
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [NFC][Clang] clang-format a function declaration


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

  Changed paths:
    M llvm/include/llvm/ObjectYAML/DWARFYAML.h
    M llvm/lib/ObjectYAML/DWARFEmitter.cpp
    M llvm/lib/ObjectYAML/DWARFYAML.cpp
    M llvm/test/tools/yaml2obj/ELF/DWARF/debug-info.yaml
    M llvm/tools/obj2yaml/dwarf2yaml.cpp

  Log Message:
  -----------
  [dwarf2yaml] Correctly emit type and split unit headers (#102471)

(DWARFv5) split units have an extra `dwo_id` field in the header. Type
units have `type_signature` and `type_offset`.


  Commit: db0603cb7b8534bffdd0459f5eb5a3b98ea962ef
      https://github.com/llvm/llvm-project/commit/db0603cb7b8534bffdd0459f5eb5a3b98ea962ef
  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/X86/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll

  Log Message:
  -----------
  [LV] Only OR unique edges when creating block-in masks.

This removes redundant ORs of matching masks.

Follow-up to f0df4fbd0c7b to reduce the number of redundant ORs for
masks.


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

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Add KnownBits::add and KnownBits::sub helper wrappers. (#99468)


  Commit: e607360fcde2994080bb8cec9d4be3a4091fe9a9
      https://github.com/llvm/llvm-project/commit/e607360fcde2994080bb8cec9d4be3a4091fe9a9
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
    M clang/test/Analysis/pointer-sub-notes.c
    M clang/test/Analysis/pointer-sub.c

  Log Message:
  -----------
  [clang][analyzer] Remove array bounds check from PointerSubChecker (#102580)

At pointer subtraction only pointers are allowed that point into an
array (or one after the end), this fact was checker by the checker. This
check is now removed because it is a special case of array indexing
error that is handled by different checkers (like ArrayBoundsV2).


  Commit: 32a62ebdeab0c10d5311cf812e021717636d4514
      https://github.com/llvm/llvm-project/commit/32a62ebdeab0c10d5311cf812e021717636d4514
  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
    A lldb/test/Shell/SymbolFile/DWARF/x86/dwp-hash-collision.s

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

I ran into this when LTO completely emptied two compile units, so they
ended up with the same hash (see #100375). Although, ideally, the
compiler would try to ensure we don't end up with a hash collision even
in this case, guaranteeing their absence is practically impossible. This
patch ensures this situation does not bring down lldb.


  Commit: ebf530c4e98f09366865dd8c98fff88467e7db72
      https://github.com/llvm/llvm-project/commit/ebf530c4e98f09366865dd8c98fff88467e7db72
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/Decomposer.cpp
    M flang/lib/Lower/OpenMP/Decomposer.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp

  Log Message:
  -----------
  [Flang][OpenMP] NFC: Use ConstructQueue::const_iterator (#102612)

This patch replaces `ConstructQueue::iterator` arguments with
`ConstructQueue::const_iterator` where it's used as a pointer to an
element inside of a `const ConstructQueue &` passed along with it.

Since these functions don't intend to modify the list or any elements in
it, keeping constness consistent between both makes it simpler to work
with.


  Commit: 908c89e04b6019bdb08bb5f1c861af42046db623
      https://github.com/llvm/llvm-project/commit/908c89e04b6019bdb08bb5f1c861af42046db623
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  [analyzer][NFC] Improve documentation of `invalidateRegion` methods (#102477)

... within the classes `StoreManager` and `ProgramState` and describe
the connection between the two methods.


  Commit: 670d208ffc156b5b8f01aee7439847b01b18d05d
      https://github.com/llvm/llvm-project/commit/670d208ffc156b5b8f01aee7439847b01b18d05d
  Author: Max Beck-Jones <max.beck-jones at arm.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve2-histcnt.ll

  Log Message:
  -----------
  [AArch64] Implement promotion type legalisation for histogram intrinsic (#101017)

Currently the histogram intrinsic
(llvm.experimental.vector.histogram.add) only allows i32 and i64 types
for the memory locations to be updated, matching the restrictions of the
histcnt instruction. This patch adds support for the legalisation of
smaller types (i8 and i16) via promotion.


  Commit: a0241e710fcae9f439e57d3a294b1ace97c6906c
      https://github.com/llvm/llvm-project/commit/a0241e710fcae9f439e57d3a294b1ace97c6906c
  Author: Giuseppe Rossini <giuseppe.rossini at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

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

  Log Message:
  -----------
  Fix late comment review for #102038 (#102869)


  Commit: 4915fddbb2d79b5d67794b88c23da8d296968d0e
      https://github.com/llvm/llvm-project/commit/4915fddbb2d79b5d67794b88c23da8d296968d0e
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/Frontend/MultiplexConsumer.h
    M clang/include/clang/Serialization/ASTDeserializationListener.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Frontend/MultiplexConsumer.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/Modules/pr102684.cppm

  Log Message:
  -----------
  [Serialization] Add a callback to register new created predefined decls for DeserializationListener (#102855)

Close https://github.com/llvm/llvm-project/issues/102684

The root cause of the issue is, it is possible that the predefined decl
is not registered at the beginning of writing a module file but got
created during the process of writing from reading.

This is incorrect. The predefined decls should always be predefined
decls.

Another deep thought about the issue is, we shouldn't read any new
things after we start to write the module file. But this is another
deeper question.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-half-conversions.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce width of X86ISD::BLENDV nodes when upper elements are not demanded.

Prep work for #83402


  Commit: 70feafdb27b45018f5f72e8f1359fdf9889c3f2a
      https://github.com/llvm/llvm-project/commit/70feafdb27b45018f5f72e8f1359fdf9889c3f2a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/IR/AutoUpgrade.cpp
    A llvm/test/Bitcode/amdgpu-unsafe-fp-atomics-upgrade.ll

  Log Message:
  -----------
  IR/AMDGPU: Autoupgrade amdgpu-unsafe-fp-atomics attribute (#101698)

Delete the attribute and annotate any atomicrmw instructions in the
function with new metadata.


  Commit: 2ad3bcded84be3bdbddca9698afe2614a4d7916b
      https://github.com/llvm/llvm-project/commit/2ad3bcded84be3bdbddca9698afe2614a4d7916b
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/CMakeLists.txt
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    A mlir/include/mlir/Dialect/DLTI/TransformOps/CMakeLists.txt
    A mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.h
    A mlir/include/mlir/Dialect/DLTI/TransformOps/DLTITransformOps.td
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Dialect/DLTI/CMakeLists.txt
    M mlir/lib/Dialect/DLTI/DLTI.cpp
    A mlir/lib/Dialect/DLTI/TransformOps/CMakeLists.txt
    A mlir/lib/Dialect/DLTI/TransformOps/DLTITransformOps.cpp
    A mlir/test/Dialect/DLTI/query.mlir

  Log Message:
  -----------
  [MLIR][DLTI][Transform] Introduce transform.dlti.query - 2nd attempt (#102652)

This transform op makes it possible to query attributes associated to IR
by means of the DLTI dialect.

The op takes both a `key` and a target `op` to perform the query at.
Facility functions automatically find the closest ancestor op which
defines the appropriate DLTI interface or has an attribute implementing
a DLTI interface. By default the lookup uses the data layout interfaces
of DLTI. If the optional `device` parameter is provided, the lookup
happens with respect to the interfaces for TargetSystemSpec and
TargetDeviceSpec.

This op uses new free-standing functions in the `dlti` namespace to not
only look up specifications via the `DataLayoutSpecOpInterface` and on
`ModuleOp`s but also on any ancestor op that has an appropriate DLTI
attribute.


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

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

  Log Message:
  -----------
  AMDGPU: Use GCNTargetMachine in AMDGPUCodeGenPassBuilder (#102805)

R600 has a separate CodeGenPassBuilder anyway.


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

  Changed paths:
    M lldb/test/API/commands/register/register/register_command/TestRegisters.py

  Log Message:
  -----------
  [lldb][test][AArch64] Regex match field values in register test

As these are flags they can be set or not depending on what the system
libraries did prior to loading the program.


  Commit: 05b75e006bf20638aa56cd7bc282d44512aa915e
      https://github.com/llvm/llvm-project/commit/05b75e006bf20638aa56cd7bc282d44512aa915e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-late-codegenprepare.ll

  Log Message:
  -----------
  AMDGPU/NewPM: Port AMDGPULateCodeGenPrepare to new pass manager (#102806)


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

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
    M llvm/test/Transforms/StructurizeCFG/AMDGPU/uniform-regions.ll

  Log Message:
  -----------
  StructurizeCFG: Add SkipUniformRegions pass parameter to new PM version (#102812)

Keep respecting the old cl::opt for now.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-half-conversions.ll

  Log Message:
  -----------
  [X86] Fold extract_subvector(fp_to_uint(x)) case to match existing fp_to_sint fold (necessary to fix #83402 on AVX512 targets).

Prep work for #83402


  Commit: baabcb28983edf8f20e39b89e2b1745412073b44
      https://github.com/llvm/llvm-project/commit/baabcb28983edf8f20e39b89e2b1745412073b44
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Mesh/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    A mlir/include/mlir/Dialect/Mesh/IR/TensorShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/InferTypeOpInterface.h
    M mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/CMakeLists.txt
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    A mlir/lib/Dialect/Mesh/Interfaces/TensorShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/test/Dialect/Linalg/mesh-sharding-propagation.mlir
    M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
    M mlir/test/Dialect/Mesh/canonicalization.mlir
    M mlir/test/Dialect/Mesh/invalid.mlir
    M mlir/test/Dialect/Mesh/ops.mlir
    M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
    M mlir/test/Dialect/Mesh/sharding-propagation.mlir
    M mlir/test/Dialect/Mesh/simplifications.mlir
    M mlir/test/Dialect/Mesh/spmdization.mlir
    A mlir/test/Dialect/Tensor/mesh-spmdization.mlir
    M mlir/test/lib/Dialect/Mesh/TestReshardingSpmdization.cpp

  Log Message:
  -----------
  [mlir][mesh] Shardingcontrol (#102598)

This is a fixed copy of #98145 (necessary after it got reverted).

@sogartar @yaochengji
This PR adds the following to #98145:
- `UpdateHaloOp` accepts a `memref` (instead of a tensor) and not
returning a result to clarify its inplace-semantics
- `UpdateHaloOp` accepts `split_axis` to allow multiple mesh-axes per
tensor/memref-axis (similar to `mesh.sharding`)
- The implementation of `Shardinginterface` for tensor operation
(`tensor.empty` for now) moved from the tensor library to the mesh
interface library. `spmdize` uses features from `mesh` dialect.
@rengolin agreed that `tensor` should not depend on `mesh` so this
functionality cannot live in a `tensor`s lib. The unfulfilled dependency
caused the issues leading to reverting #98145. Such cases are generally
possible and might lead to re-considering the current structure (like
for tosa ops).
- rebased onto latest main
--------------------------
Replacing `#mesh.sharding` attribute with operation `mesh.sharding`
- extended semantics now allow providing optional `halo_sizes` and
`sharded_dims_sizes`
- internally a sharding is represented as a non-IR class
`mesh::MeshSharding`

What previously was
```mlir
%sharded0 = mesh.shard %arg0 <@mesh0, [[0]]> : tensor<4x8xf32>
%sharded1 = mesh.shard %arg1 <@mesh0, [[0]]> annotate_for_users : tensor<16x8xf32>
```
is now
```mlir
%sharding = mesh.sharding @mesh0, [[0]] : !mesh.sharding
%0 = mesh.shard %arg0 to %sharding : tensor<4x8xf32>
%1 = mesh.shard %arg1 to %sharding annotate_for_users : tensor<16x8xf32>
```
and allows additional annotations to control the shard sizes:
```mlir
mesh.mesh @mesh0 (shape = 4)
%sharding0 = mesh.sharding @mesh0, [[0]] halo_sizes = [1, 2] : !mesh.sharding
%0 = mesh.shard %arg0 to %sharding0 : tensor<4x8xf32>
%sharding1 = mesh.sharding @mesh0, [[0]] sharded_dims_sizes = [3, 5, 5, 3] : !mesh.sharding
%1 = mesh.shard %arg1 to %sharding1 annotate_for_users : tensor<16x8xf32>
```
- `mesh.shard` op accepts additional optional attribute `force`, useful
for halo updates
- Some initial spmdization support for the new semantics
- Support for `tensor.empty` reacting on `sharded_dims_sizes` and
`halo_sizes` in the sharding
- New collective operation `mesh.update_halo` as a spmdized target for
shardings with `halo_sizes`

---------

Co-authored-by: frank.schlimbach <fschlimb at smtp.igk.intel.com>
Co-authored-by: Jie Fu <jiefu at tencent.com>


  Commit: 6ca678074ba58e3db50a764400f6137782d338cf
      https://github.com/llvm/llvm-project/commit/6ca678074ba58e3db50a764400f6137782d338cf
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/TypedPointerType.cpp

  Log Message:
  -----------
  Clean up after transition into opaque pointers. NFC (#102631)

LegacyPointerTypes is not used any longer and can be removed from
the LLVM context.

Also remove a copy-pasted code comment in TypedPointerType that
doesn't make sense (since there is no special case for address space
zero in the TypedPointerType::get implementation).


  Commit: 1ff06c54b70dd4c1971bf07a5d3a5467c16cca65
      https://github.com/llvm/llvm-project/commit/1ff06c54b70dd4c1971bf07a5d3a5467c16cca65
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [verifier] Get rid of getResolverFunctionType. NFC (#102631)

With opaque pointers we can just get the pointer type for the
resolver function by using PointerType::get, making the
GlobalIFunc::getResolverFunctionType function obsolete.


  Commit: 145aff6d924714b625de1d83247583df2ab73763
      https://github.com/llvm/llvm-project/commit/145aff6d924714b625de1d83247583df2ab73763
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/examples/BrainF/BrainFDriver.cpp
    M llvm/examples/ExceptionDemo/ExceptionDemo.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/unittests/Transforms/Utils/ScalarEvolutionExpanderTest.cpp

  Log Message:
  -----------
  Clean up pointer casts etc after opaque pointers transition. NFC (#102631)


  Commit: 7fe486acfa9ca58a82c1ef42e1baf479d4ad7102
      https://github.com/llvm/llvm-project/commit/7fe486acfa9ca58a82c1ef42e1baf479d4ad7102
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/Target/TargetMachine.cpp

  Log Message:
  -----------
  TargetMachine: Move trivial setter/getter to header

The others are already inline here.


  Commit: c7107ca7f899e300a507f24ac6ce2dc1ff43977e
      https://github.com/llvm/llvm-project/commit/c7107ca7f899e300a507f24ac6ce2dc1ff43977e
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td

  Log Message:
  -----------
  [AMDGPU][NFCI] Mark AGPRs and VGPRs with different flags in HWEncoding. (#102650)

Simplifies checks for AGPRs and VGPRs and makes them more explicit and
less fragile.


  Commit: 772785311eadeec2a0c0b7686e93578cf7131b50
      https://github.com/llvm/llvm-project/commit/772785311eadeec2a0c0b7686e93578cf7131b50
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/test/MC/AMDGPU/expressions.s
    M llvm/test/MC/AMDGPU/flat-scratch.s
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/out-of-range-registers.s
    M llvm/test/MC/AMDGPU/reg-syntax-err.s
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s
    M llvm/test/MC/AMDGPU/smem.s
    M llvm/test/MC/AMDGPU/smrd-err.s
    M llvm/test/MC/AMDGPU/smrd.s
    M llvm/test/MC/AMDGPU/sop1-err.s
    M llvm/test/MC/AMDGPU/sop1.s
    M llvm/test/MC/AMDGPU/sop2.s
    M llvm/test/MC/AMDGPU/trap.s
    M llvm/test/MC/AMDGPU/vop_sdwa.s
    M llvm/test/MC/AMDGPU/xnack-mask.s

  Log Message:
  -----------
  [AMDGPU][AsmParser] Eliminate validateExeczVcczOperands(). (#102600)

Mention the names of unavailable registers in error messages to not make
the diagnostics for execz/vccz less rich than it was.

Clean up unnecessary name qualifications while there.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: 21ef272ec1974244710fc639f98674eae3f8b02c
      https://github.com/llvm/llvm-project/commit/21ef272ec1974244710fc639f98674eae3f8b02c
  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
    A lldb/test/Shell/SymbolFile/DWARF/x86/mixed-debug-names-complete-type-search.test

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

…Type

This is needed to ensure we find a type if its definition is in a CU
that wasn't indexed. This can happen if the definition is in some
precompiled code (e.g. the c++ standard library) which was built with
different flags than the rest of the binary.


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

  Changed paths:
    M lldb/unittests/Host/linux/SupportTest.cpp

  Log Message:
  -----------
  [lldb][test] Disable procfile by thread ID test when LLVM_ENABLE_THREADS is not defined

When LLVM_ENABLE_THREADS is not defined, llvm::get_threadid returns 0 which
makes this test case fail.

This is a pretty niche setting, Linaro uses it to stop lld crashing our 32 bit
containers. So the test will get plenty of runs elsewhere.

In lldb's code it's not getting the current thread ID anyway, it's using
a value it got from ptrace. So even if that copy of lldb was built with
LLVM_ENABLE_THREADS off, it should still be able to debug threads.


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

  Changed paths:
    M clang/lib/Sema/TreeTransform.h
    M clang/test/OpenMP/target_teams_ast_print.cpp

  Log Message:
  -----------
  [Clang][OpenMP] Fix the wrong transform of `num_teams` claused introduced in #99732 (#102716)


  Commit: 895ca18a1c5a93ebc2b9bcc4673c138a908827a2
      https://github.com/llvm/llvm-project/commit/895ca18a1c5a93ebc2b9bcc4673c138a908827a2
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/ps4-linker.c
    M clang/test/Driver/ps4-pic.c
    M clang/test/Driver/ps5-linker.c
    M clang/test/Driver/ps5-pic.c

  Log Message:
  -----------
  [PS4/PS5][Driver] Allow -static in PlayStation drivers (#102020)

On PlayStation, allow users to supply -static to the linker, via the
driver.

An initial step. Later changes will have the PS5 driver supply
additional options to the linker, if and when -static is passed.

SIE tracker: TOOLCHAIN-16704


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

  Changed paths:
    A llvm/test/Transforms/IndVarSimplify/pr102597.ll

  Log Message:
  -----------
  [IndVars] Add test for #102597 (NFC)


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

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/concurrent_base.py

  Log Message:
  -----------
  [lldb][test] Break early when walking backtrace in concurrent tests

We only need to see that 1 frame of the stack is in user code. No need
to carry on looking.

Doing so actually caused a test failure on Armv8 Ubuntu Jammy where
a libc function does not have a display name. I'm sure I'm going to
get stung by this elsewhere, but for this test, breaking early
sidesteps the problem.


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

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Transforms/IndVarSimplify/pr102597.ll

  Log Message:
  -----------
  [SCEV] Fix incorrect extension in computeConstantDifference()

The Mul factor was zero-extended here, resulting in incorrect
results for integers larger than 64-bit.

As we currently only multiply by 1 or -1, just split this into
two cases -- there's no need for a full multiplication here.

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


  Commit: 1b936e4812ab395328203f65cacd4ffe02bb318e
      https://github.com/llvm/llvm-project/commit/1b936e4812ab395328203f65cacd4ffe02bb318e
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-08-12 (Mon, 12 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-add-sub-za16.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fmlas16.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mopa.ll
    M llvm/test/MC/AArch64/SME2/bfadd-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfadd.s
    M llvm/test/MC/AArch64/SME2/bfmla-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmla.s
    M llvm/test/MC/AArch64/SME2/bfmls-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmls.s
    M llvm/test/MC/AArch64/SME2/bfmopa-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmopa.s
    M llvm/test/MC/AArch64/SME2/bfmops-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfmops.s
    M llvm/test/MC/AArch64/SME2/bfsub-diagnostics.s
    M llvm/test/MC/AArch64/SME2/bfsub.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SME2p1/directive-arch_extension.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Add FEAT_SME_B16B16 and remove FEAT_B16B16 (#102501)

Implement FEAT_SME_B16B16 to enable ZA-targeting non-widening SME
BFloat16 instructions. Remove the now redundant FEAT_B16B16 which has
been replaced by FEAT_SVE_B16B16 and FEAT_SME_B16B16 (this commit), see
https://github.com/llvm/llvm-project/pull/101480/ for the details and
reasoning of this change to LLVM.

FEAT_SME_B16B16 is documented under the latest Armv9.4 feature
documentation:

https://developer.arm.com/documentation/109697/0100/Feature-descriptions/The-Armv9-4-architecture-extensio

- Changes to Clang AArch64 frontend
- Change target guard of SME2 ZA-targeting non-widening BFloat16
intrinsics to 'sme-b16b16'

- Changes to LLVM AArch64 backend
  - llvm/lib/Target/AArch64/AArch64Features.td
- Create FeatureSMEB16B16, which implies FeatureSME2 and
FeatureSVEB16B16
	- Remove FeatureB16B16
	- Fix description of FeatureSVEB16B16
  - llvm/lib/Target/AArch64/AArch64InstrInfo.td
	- Create HasSMEB16B16 predicate
  - llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
- Change predictication of SME2 ZA-targeting non-widening BFloat16
instructions to new HasSMEB16B16
  - llvm/lib/Target/AArch64/AArch64.td
- Add HasSMEB16B16 to SME2Unsupported (FEAT_SME_B16B16 implies
FEAT_SME2)
  - llvm/lib/AArch64/AsmParser/AArch64AsmParser.cpp
	- Remove flag 'b16b16' mapping to removed FeatureB16B16
	- Add flag 'sme-b16b16' mapping to new FeatureSMEB16B16

- Changes to LLVM unit tests
  - llvm/unittests/TargetParser/TargetParserTest.cpp
	- Add new sme-b16b16 flag to existing target parser tests
	- Add tests for the sme-b16b16 dependencies:
- 'sme-b16b16' should enable 'sme2', 'sve-b16b16'. - Remove 'b16b16'
from bf16 dependency test

- Added MC tests
    - llvm/test/MC/AArch64/SME2p1
- To ensure that ZA-targeting multi-vector non-widening BFloat16
instructions are enabled by +sme-b16b16, and that this feature is
removed by +nosme-b61b6.

- Modidified tests
- All CodeGen, Semantic, and MC tests that are effected by the removal
of 'b16b16', have been modified to supply and/or expect 'sme-b16b16'
where appropriate.


  Commit: cd08fadd03904806fa26a1f117879ddae34fbf67
      https://github.com/llvm/llvm-project/commit/cd08fadd03904806fa26a1f117879ddae34fbf67
  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/X86/induction-costs.ll

  Log Message:
  -----------
  [LV] Include chains feeding inductions in cost precomputation.

Include chain of ops feeding inductions in cost precomputation for
inductions, not just the induction increment. In VPlan, those
instructions will be cleaned up, as both phi and increment are generated
by VPWidenIntOrFpInductionRecipe independently.

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


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

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/lifetime.ll

  Log Message:
  -----------
  [SPIR-V] Emit valid Lifestart/Lifestop instructions (#98475)

This PR fixes emission of valid OpLifestart/OpLifestop instructions.
According to
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpLifetimeStart:
"Size must be 0 if Pointer is a pointer to a non-void type or the
Addresses
[capability](https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#Capability)
is not declared.". The `Size` argument is set the corresponding
intrinsics arguments, so Size is not zero we must ensure that Pointer
has the required type by inserting a bitcast if needed.


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

  Changed paths:
    M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCCodeEmitter.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVRegisterBanks.td
    M llvm/lib/Target/SPIRV/SPIRVRegisterInfo.td
    M llvm/test/CodeGen/SPIRV/SampledImageRetType.ll
    M llvm/test/CodeGen/SPIRV/atomicrmw.ll
    M llvm/test/CodeGen/SPIRV/basic_int_types.ll
    M llvm/test/CodeGen/SPIRV/empty.ll
    M llvm/test/CodeGen/SPIRV/event-zero-const.ll
    M llvm/test/CodeGen/SPIRV/expect.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_double.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_half.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_double.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_float.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_half.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_cache_controls/basic-load-store.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_usm_storage_classes/intel-usm-addrspaces.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/all.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/any.ll
    M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/imad.ll
    M llvm/test/CodeGen/SPIRV/instructions/atomic.ll
    M llvm/test/CodeGen/SPIRV/instructions/integer-casts.ll
    M llvm/test/CodeGen/SPIRV/instructions/ptrcmp.ll
    M llvm/test/CodeGen/SPIRV/linkage/link-attribute.ll
    M llvm/test/CodeGen/SPIRV/literals.ll
    M llvm/test/CodeGen/SPIRV/lshr-constexpr.ll
    M llvm/test/CodeGen/SPIRV/opencl/image.ll
    M llvm/test/CodeGen/SPIRV/pointers/irtrans-added-int-const-32-64.ll
    M llvm/test/CodeGen/SPIRV/pointers/type-deduce-global-dup.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpImageSampleExplicitLod.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpImageWrite.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpVectorInsertDynamic_i16.ll
    M llvm/test/CodeGen/SPIRV/transcoding/SampledImage.ll
    M llvm/test/CodeGen/SPIRV/transcoding/cl-types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fadd.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll
    M llvm/test/CodeGen/SPIRV/transcoding/image_with_access_qualifiers.ll
    M llvm/test/CodeGen/SPIRV/transcoding/non32.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_extended_types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_shuffle.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_shuffle_relative.ll
    M llvm/test/CodeGen/SPIRV/types/or-i1.ll
    M llvm/test/CodeGen/SPIRV/unnamed-global.ll
    M llvm/test/CodeGen/SPIRV/var-uniform-const.ll

  Log Message:
  -----------
  [SPIR-V] Rework usage of virtual registers' types and classes (#101732)

This PR contains changes in virtual register processing aimed to improve
correctness of emitted MIR between passes from the perspective of
MachineVerifier. This potentially helps to detect previously missed
flaws in code emission and harden the test suite. As a measure of
correctness and usefulness of this PR we may use a mode with expensive
checks set on, and MachineVerifier reports problems in the test suite.

In order to satisfy Machine Verifier requirements to MIR correctness not
only a rework of usage of virtual registers' types and classes is
required, but also corrections into pre-legalizer and instruction
selection logics. Namely, the following changes are introduced:
* scalar virtual registers have proper bit width,
* detect register class by SPIR-V type,
* add a superclass for id virtual register classes,
* fix Tablegen rules used for instruction selection,
* fixes of minor existed issues (missed flag for proper representation
of a null constant for OpenCL vs. HLSL, wrong usage of integer virtual
registers as a synonym of any non-type virtual register).


  Commit: 34514ce09a0cbcfd948a1c6b97a3e8674551add1
      https://github.com/llvm/llvm-project/commit/34514ce09a0cbcfd948a1c6b97a3e8674551add1
  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

  Log Message:
  -----------
  [SLP][NFC]Use local getShuffleCost function across the code, NFC.


  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: 6cf3e7d06706fe79e87d1816c92b074416b5f8f8
      https://github.com/llvm/llvm-project/commit/6cf3e7d06706fe79e87d1816c92b074416b5f8f8
  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
    M llvm/lib/IR/Module.cpp
    M llvm/unittests/Analysis/ValueLatticeTest.cpp
    M llvm/unittests/CodeGen/LowLevelTypeTest.cpp
    M llvm/unittests/IR/VectorTypesTest.cpp

  Log Message:
  -----------
  [DataLayout] Use member initialization (NFC) (#103712)

This also adds a default constructor and a few uses of it.


  Commit: 98119718603c6e623b34e3d2160b65b26d9bfcdc
      https://github.com/llvm/llvm-project/commit/98119718603c6e623b34e3d2160b65b26d9bfcdc
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M .github/workflows/pr-code-format.yml

  Log Message:
  -----------
  [GitHub] Run format job on stacked PRs (#102957)

Currently the formatter only runs for the main branch, which prevents
the formatter from running for stacked PRs, which have to target user
branches instead of main.


  Commit: f53e3550632d786ccc41388455436e813221feb3
      https://github.com/llvm/llvm-project/commit/f53e3550632d786ccc41388455436e813221feb3
  Author: wldfngrs <wldfngrs at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/math.yaml

  Log Message:
  -----------
  [libc] Add definitions for totalordermag(,f, l, f128), dsqrt(l, f128), fsqrt(, l, f128) to math.yaml. (#103494)

Added auto function hdrgen specification for functions:  totalordermag(,f, l, f128), dsqrt(l, f128), fsqrt(, l, f128)


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

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.private.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll

  Log Message:
  -----------
  [AMDGPU] Generate checks for llvm.amdgcn.is.private/shared (#103859)

Also combine the GlobalISel tests into the SelectionDAG ones.


  Commit: b72ac6f97a5335e79659711d49db8f2694c02a0e
      https://github.com/llvm/llvm-project/commit/b72ac6f97a5335e79659711d49db8f2694c02a0e
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/include/mlir/IR/Matchers.h
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/test/Transforms/loop-invariant-code-motion.mlir

  Log Message:
  -----------
  [MLIR] Let matchers work on int ranges (#102494)

This commit adds three matchers that unlike the m_NonZero matcher
not only match constants, but also operations that implement the
InferIntRangeInterface. These matchers can then match a non-zero value
or a value that is not minus one based on the inferred range. Additionally,
the commit uses the new matchers in the getSpeculatability functions of
Arith's signed and unsigned integer divisions. At the moment, the
matchers only look at the defining operation to avoid expensive IR walks.

This range based matchers can be useful when hoisting divisions out of
a loop, which requires knowing the divisor is non-zero and not minus one
for signed divisions. Just checking for a constant divisor may not be
sufficient, if the divisor is, for example, the result of an operation that
returns the number of threads of a team of threads.


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

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

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - fold extractions from UNPCK nodes.

Allow subvector extraction as long as at least one operand extraction is free.

Refactor existing cases into a switch statement to allow easier reuse + future expansion.


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

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

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - fold extractions from BLENDI nodes.


  Commit: b006007e4a22ae5cd8660c3f3fd645d1b67a6ca7
      https://github.com/llvm/llvm-project/commit/b006007e4a22ae5cd8660c3f3fd645d1b67a6ca7
  Author: Shao-Ce SUN <sunshaoce at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [NFC][VP] Reduce parameters in `LoopVectorizePass::runImpl` (#103551)

It seems that the parameters can be passed through the class members.


  Commit: 5ececb4745a37f7b3dfade12e44e95c6b5e3c5bf
      https://github.com/llvm/llvm-project/commit/5ececb4745a37f7b3dfade12e44e95c6b5e3c5bf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  LowerAtomic: Use explicit alignment in lowerAtomicCmpXchgInst (#103767)


  Commit: 340be6cb792833b619bf260d6d1f20336008d588
      https://github.com/llvm/llvm-project/commit/340be6cb792833b619bf260d6d1f20336008d588
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    R clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp
    R clang/test/Analysis/malloc-overflow.c
    R clang/test/Analysis/malloc-overflow.cpp
    R clang/test/Analysis/malloc-overflow2.c
    M clang/www/analyzer/potential_checkers.html
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer] Delete `alpha.security.MallocOverflow` (#103059)

...because it is too noisy to be useful right now, and its architecture
is terrible, so it can't act a starting point of future development.

The main problem with this checker is that it tries to do (or at least
fake) path-sensitive analysis without actually using the established
path-sensitive analysis engine.

Instead of actually tracking the symbolic values and the known
constraints on them, this checker blindly gropes the AST and uses
heuristics like "this variable was seen in a comparison operator
expression that is not a loop condition, so it's probably not too large"
(which was improved in a separate commit to at least ignore comparison
operators that appear after the actual `malloc()` call).

This might have been acceptable in 2011 (when this checker was added),
but since then we developed a significantly better standard approach for
analysis and this old relic doesn't deserve to remain in the codebase.

Needless to say, this primitive approach causes lots of false positives
(and presumably false negatives as well), which ensures that this alpha
checker won't be missed by the users.

Moreover, the goals of this checker would be questionable even if it had
a perfect implementation. It's very aggressive to assume that the
argument of malloc can overflow by default (unless the checker sees a
bounds check); and this produces too many false positives -- perhaps
even for an optin checker. It may be possible to eventually create a
useful (and properly path-sensitive) optin checker for these kinds of
suspicious code, but this is a very low priority goal.

Also note that we already have `alpha.security.TaintedAlloc` which
provides more practical heuristics for detecting somewhat similar
"argument of malloc may be too large" vulnerabilities.


  Commit: 3f0d3fd3dea659330025712ea7fa914fd6af038b
      https://github.com/llvm/llvm-project/commit/3f0d3fd3dea659330025712ea7fa914fd6af038b
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    A clang/test/Driver/print-enabled-extensions/riscv-rocket-rv64.c

  Log Message:
  -----------
  [clang][test][RISCV] Add simple litmus test for --print-enabled-extensions

There's some coverage in RISCVISAInfoTest, but it's worth adding a quick
test to ensure nothing happens to the frontend handling of this option.


  Commit: 66bd5d79891ddb8bf0d31d78c4973f6d20dcb571
      https://github.com/llvm/llvm-project/commit/66bd5d79891ddb8bf0d31d78c4973f6d20dcb571
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/Interpreter/delayed-template-parsing-pch.cpp

  Log Message:
  -----------
  [clang-repl] Fix PCH with delayed template parsing (#103028)

When instantiating a delayed template, the recorded token stream is
passed to `Parser::ParseLateTemplatedFuncDef` which will append the
current token "so it doesn't get lost". With incremental extensions
enabled, this is `repl_input_end` which subsequently needs support for
(de)serialization.


  Commit: 0edd07770f7b6bd8120f52d80db6ef1a1f66e519
      https://github.com/llvm/llvm-project/commit/0edd07770f7b6bd8120f52d80db6ef1a1f66e519
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU: Preserve alignment when custom expanding atomicrmw (#103768)


  Commit: 3efcc8ec7d7e3ed3c7a4bc3ca4bb4ba66adc7e2b
      https://github.com/llvm/llvm-project/commit/3efcc8ec7d7e3ed3c7a4bc3ca4bb4ba66adc7e2b
  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.ll

  Log Message:
  -----------
  [LV] Add test where diff checks not used when re-trying with RT checks.


  Commit: 91e602f3a97faf4d78650ed9e67b781df2459e1d
      https://github.com/llvm/llvm-project/commit/91e602f3a97faf4d78650ed9e67b781df2459e1d
  Author: h-vetinari <h.vetinari at gmx.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  [clang][NFC] sort C standards on status page in reverse chronological order (#102844)

Put the newest standards first, same as for the [C++ status
page](https://clang.llvm.org/cxx_status.html).

The diff is pretty busted, but I swear I copy & pasted faithfully 😅 

The only change beyond shuffling sections around is unfolding the
sections for C99/C11 (6dbce28763153ca20138b139b9455056f173ee22), which
isn't necessary anymore now that they're safely tucked away towards the
end of the page.


  Commit: 486adc500c8ecb855936830e380ea2d3c3bfb137
      https://github.com/llvm/llvm-project/commit/486adc500c8ecb855936830e380ea2d3c3bfb137
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

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

This reverts commit 2d53f0aab7851b09e8773eb1ca8bd1aa85d20d4b.

This causes warnings when building with MSVC.


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

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

  Log Message:
  -----------
  [gn build] Port 486adc500c8e


  Commit: 1f995b55347bb76a4251fa6727ceb83b6a4ddf56
      https://github.com/llvm/llvm-project/commit/1f995b55347bb76a4251fa6727ceb83b6a4ddf56
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp

  Log Message:
  -----------
  [M68k] Remove use of APInt::getRawData(). NFC (#103529)

getRawData exposes some internal details of APInt.

The code was iterating over the uint64_t pieces and then iterating
breaking them into 4 uint16_t pieces.

This patch changes the code to extract 16-bit pieces directly from the
APInt without using getRawData.


  Commit: 5e990b0b7f4cf60e6b700ba4f7c76005c0d53086
      https://github.com/llvm/llvm-project/commit/5e990b0b7f4cf60e6b700ba4f7c76005c0d53086
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalMerge.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/test/CodeGen/PowerPC/merge-private.ll

  Log Message:
  -----------
  [PowerPC][GlobalMerge] Reduce TOC usage by merging internal and private global data (#101224)

This patch aims to reduce TOC usage by merging internal and private
global data.

Moreover, we also add the GlobalMerge pass within the PPCTargetMachine
pipeline, which is disabled by default. This transformation can be
enabled by -ppc-global-merge.


  Commit: 8320b97ab9f25d726379832342f3d5d48962368d
      https://github.com/llvm/llvm-project/commit/8320b97ab9f25d726379832342f3d5d48962368d
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll

  Log Message:
  -----------
  [InstCombine] Fold an unsigned comparison of `add nsw X, C` with a constant into a signed comparison (#103480)

Given an unsigned integer comparison of `add nsw X, C1` with some
constant `C2` we can fold it into a signed comparison of `X` and `C2 -
C1` under the following conditions:
  * There's a `nsw` flag on the addition
  * `C2` is non-negative
  * `X + C1` is non-negative
  * `C2 - C1` is non-negative


  Commit: 019ef522756886caa258daf68d877f84abc1b878
      https://github.com/llvm/llvm-project/commit/019ef522756886caa258daf68d877f84abc1b878
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-soft-float-abi-errors.c

  Log Message:
  -----------
  [clang][AArch64] Point the nofp ABI check diagnostics at the callee (#103392)

... whereever we have the Decl for it, and even when we don't keep the
SourceLocation of it aimed at the call site.

Fixes: #102983


  Commit: 80c5ccd867ebfaabaaf330c90d79cc45ae003647
      https://github.com/llvm/llvm-project/commit/80c5ccd867ebfaabaaf330c90d79cc45ae003647
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/stdc.td

  Log Message:
  -----------
  [libc][math] Fix missing const in hdrgen signatures for totalordermag* (#103935)


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

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

  Log Message:
  -----------
  [SLP][NFC]Use transform nodes before building external uses, NFC.

In preparing for the future upcoming patches, just moving the call to
the proper place, which is NFC for now.


  Commit: 5ce326ccb1f4326e643682a701417b481fe343cd
      https://github.com/llvm/llvm-project/commit/5ce326ccb1f4326e643682a701417b481fe343cd
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [SelectionDAG] Construct SmallVector with ArrayRef (NFC) (#103705)


  Commit: bd4217747de6e7bd15e008404ab6769667387689
      https://github.com/llvm/llvm-project/commit/bd4217747de6e7bd15e008404ab6769667387689
  Author: Manupa Karunaratne <manupa.karunaratne at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [MLIR][AMDGPU] Add rocdl.attr translation for waves_per_eu & unsafe_fp_atomics (#103732)

This commit adds support amdgpu-unsafe-gp-atomics attr plumbing
via introduction of `rocdl.unsafe_fp_atomics`.

This adds the missing translation for amdgpu-waves-per-eu attr.


  Commit: 1115dee248e68a155001ac3712a189299d104863
      https://github.com/llvm/llvm-project/commit/1115dee248e68a155001ac3712a189299d104863
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [Analysis] Use range-based for loops (NFC) (#103540)


  Commit: 4c2f90f362e401162533ffede924ac3890c70577
      https://github.com/llvm/llvm-project/commit/4c2f90f362e401162533ffede924ac3890c70577
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M mlir/examples/toy/Ch6/toyc.cpp
    M mlir/examples/toy/Ch7/toyc.cpp
    A mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    R mlir/lib/Dialect/LLVMIR/IR/LLVMInlining.cpp
    R mlir/lib/Dialect/LLVMIR/IR/LLVMInlining.h
    M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp

  Log Message:
  -----------
  [MLIR][LLVM] Turn the inliner interface into a promised interface (#103927)

This commit changes the LLVM dialect's inliner interface to no longer be
registered at dialect initialization. Instead, it is now a promised
interface, that needs to be registered explicitly. This change is
desired to avoid pulling in a lot of dependencies into the
`MLIRLLVMDialect` library, especially considering future patches that
plan to extend it further with strong IR analysis.


  Commit: 20b2c9f10fe09f2c5cbd3da7f0af8df24f62e899
      https://github.com/llvm/llvm-project/commit/20b2c9f10fe09f2c5cbd3da7f0af8df24f62e899
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Use GatheredScalars vector instead of the original E->Scalars, NFC

GateredScalars is a full copy of the E->Scalars in this places and can
be safely used for now. Unifies the code across the function.


  Commit: 294ed6a1eb090627441ee0426a64d8f71985fce3
      https://github.com/llvm/llvm-project/commit/294ed6a1eb090627441ee0426a64d8f71985fce3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Use if init statement to reduce scope of variable. NFC


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/ARM/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/Mips/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/div.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/Thumb2/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll

  Log Message:
  -----------
  [TargetLowering][AMDGPU][ARM][RISCV][X86] Teach SimplifyDemandedBits to combine (srl (sra X, C1), ShAmt) -> sra(X, C1+ShAmt) (#101751)

If the upper bits of the shr aren't demanded.

This helps with cases where the outer srl was originally an sra and was
converted to a srl by SimplifyDemandedBits before it had a chance to
combine with the inner sra. This can occur when the inner sra was part
of a sign_extend_inreg expansion.

There are some regressions in ARM and Thumb2.


  Commit: b5e47d2e409f2fb70c9397fccf4a74660c319bb0
      https://github.com/llvm/llvm-project/commit/b5e47d2e409f2fb70c9397fccf4a74660c319bb0
  Author: Bangtian Liu <liubangtian at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir

  Log Message:
  -----------
  [mlir][vector] Add extra check on distribute types to avoid crashes (#102952)

This PR addresses the issue detailed in
https://github.com/iree-org/iree/issues/17948.

The problem occurs when distributed types are set to NULL, leading to
compilation crashes.

---------

Signed-off-by: Bangtian Liu <liubangtian at gmail.com>


  Commit: 8345289ded788f4df79f59df76df0c0437c3df64
      https://github.com/llvm/llvm-project/commit/8345289ded788f4df79f59df76df0c0437c3df64
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
    M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp

  Log Message:
  -----------
  [LLVM] Fix missing includes for function declarations that will be needed for explicit symbol visibility (#103900)

In multiple source files function definitions never sees there
declaration in a header because its never included causing linker errors
when explicit symbol visibility macros\dllexport are added to the
declarations.

Most of these were originally found by @tstellar in
https://github.com/llvm/llvm-project/pull/67502

TargetRegistry.h is needed in MCExternalSymbolizer.cpp for
createMCSymbolizer
Analysis/Passes.h is needed in LazyValueInfo.cpp and RegionInfo.cpp for
createLazyValueInfoPassin and createRegionInfoPass
Transforms/Scalar.h is needed in SpeculativeExecution.cpp for
createSpeculativeExecutionPass


  Commit: f0fe6c66cb507cb9bd9abdbccf42b85ef32aabba
      https://github.com/llvm/llvm-project/commit/f0fe6c66cb507cb9bd9abdbccf42b85ef32aabba
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  [AMDGPU][NFC] Rename isHi() to isHi16Reg() for clarity. (#103888)

And declare it to take an MCRegister.

Also rename related entities and remove a comment for the function that
depending on its purpose is either irrelevant or misleading.


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

  Changed paths:
    M compiler-rt/test/hwasan/TestCases/hwasan_symbolize_stack_uas.cpp

  Log Message:
  -----------
  Do not use dirname in test (#103395)

Suggested in
https://github.com/llvm/llvm-project/pull/95308#discussion_r1714317539


  Commit: 234cb4c6e3a382a5c0b3396647a1839699944ec0
      https://github.com/llvm/llvm-project/commit/234cb4c6e3a382a5c0b3396647a1839699944ec0
  Author: Froster <34234343+Fros1er at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-complex-splats.ll

  Log Message:
  -----------
  [SelectionDAG] Scalarize binary ops of splats before legal types (#100749)

Fixes #65072. This allows binary ops of splats to be scalarized if the
operation isn't legal on the element type isn't legal, but is legal on
the type it will be legalized to. I assume if an Op is legal both in
scalar and vector, choose scalar version should always be better no
matter what the type is.

There are some cases that my approach can't scalarize, for example:
``` llvm
; test/CodeGen/RISCV/rvv/select-int.ll
define <vscale x 4 x i64> @select_nxv4i64(i1 zeroext %c, <vscale x 4 x i64> %a, <vscale x 4 x i64> %b) {
  %v = select i1 %c, <vscale x 4 x i64> %a, <vscale x 4 x i64> %b
  ret <vscale x 4 x i64> %v
}
```
https://godbolt.org/z/xzqrKrxvK
`xor (splat i1, splat i1)` is generated in late step after LegalizeType,
from select. I didn't figure out how to make `xor i1, i1` legal at this
time.

---------

Co-authored-by: Luke Lau <luke at igalia.com>


  Commit: fdc4955086681b0c4fc109ba8e77762a8d67c1f3
      https://github.com/llvm/llvm-project/commit/fdc4955086681b0c4fc109ba8e77762a8d67c1f3
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  Revert "[scudo] Separated committed and decommitted entries." (#104045)

Reverts llvm/llvm-project#101409

This caused some memory usage regressions and it has a known bug in page
releasing.


  Commit: d0c16a614247c36b8b1c8d7bff42d01e7b03ade3
      https://github.com/llvm/llvm-project/commit/d0c16a614247c36b8b1c8d7bff42d01e7b03ade3
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  Fix prctl test to execute all test cases if the first condition fails. (#102987)


  Commit: d213981c80626698a07b11ce872acba098a863d4
      https://github.com/llvm/llvm-project/commit/d213981c80626698a07b11ce872acba098a863d4
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [clang] Implement `__builtin_is_implicit_lifetime()` (#101807)

This intrinsic supports [P2647R1](https://wg21.link/p2674r1) "A trait
for implicit lifetime types".
Resolves #98627

---------

Co-authored-by: Timm Baeder <tbaeder at redhat.com>


  Commit: 9c7020507f19a69e8d53829ab959e2bc56f7c2f1
      https://github.com/llvm/llvm-project/commit/9c7020507f19a69e8d53829ab959e2bc56f7c2f1
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [libc++] Remove duplicate C++17 LWG issues from the CSVs

- LWG2308 was voted into C++14 in the 2014 Issaquah meeting
- LWG2682 was voted into C++20 in San Diego 2018, not C++17 in Issaquah
- LWG2769 was voted into C++17 in Kona 2017, not Issaquah 2016


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

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/sink-vector-broadcast.mlir
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir

  Log Message:
  -----------
  [mlir][vector] Add tests for `populateSinkVectorBroadcastPatterns` (1/n) (#102286)

Adds tests for scalable vectors in:
  * sink-vector-broadcast.mlir

This test file excercises patterns grouped under
`populateSinkVectorBroadcastPatterns`, which includes:
  * `ReorderElementwiseOpsOnBroadcast`,
  * `ReorderCastOpsOnBroadcast`.

Right now there are only tests for the former. However, I've noticed
that "vector-reduce-to-contract.mlir" contains tests for the latter and
I've left a few TODOs to group these tests back together in one file.

Additionally, added some helpful `notifyMatchFailure` messages in
`ReorderElementwiseOpsOnBroadcast`.


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

  Changed paths:
    M llvm/lib/TextAPI/RecordsSlice.cpp

  Log Message:
  -----------
  [TextAPI] Use range-based for loops (NFC) (#103530)


  Commit: cce2271eab8173f5c27c1e99863a056a9430c252
      https://github.com/llvm/llvm-project/commit/cce2271eab8173f5c27c1e99863a056a9430c252
  Author: Walter Erquinigo <a20012251 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [LLDB][OSX] Add a fallback support exe directory (#103458)

LLDB on OSX is looking at a `bin` directory sibling to the `lib` one
that contains liblldb for its supporting executables. This works well
for CMake, however, for other build systems like bazel, it's not that
easy to have that build structure, for which it's much easier to also
use the `lib` directory as a fallback under the absence of `bin`.
This shouldn't break anything, but instead should make it a bit easier
for LLDB to work with different build systems and folder structures.


  Commit: 7e5cd8f1b6c5263ed5e2cc03d60c8779a8d3e9f7
      https://github.com/llvm/llvm-project/commit/7e5cd8f1b6c5263ed5e2cc03d60c8779a8d3e9f7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Mechanical adjustments for the C++14 Paper status files

Make sure Cxx14Papers.csv has the same columns as the other CSV files.
Somehow this was missed in my previous passes to standardize this.


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

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

  Log Message:
  -----------
  [libc++] Add mechanical update to CxxPapers.rst to git-blame-ignore-revs


  Commit: 36a0f20ac3c564fd5953a8dc60b8ab9323945cdc
      https://github.com/llvm/llvm-project/commit/36a0f20ac3c564fd5953a8dc60b8ab9323945cdc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/test/CodeGen/AMDGPU/bug-v4f64-subvector.ll

  Log Message:
  -----------
  AMDGPU/NewPM: Fill out addPreISelPasses (#102814)

This specific callback should now be at parity with the old
pass manager version. There are still some missing IR passes
before this point.

Also I don't understand the need for the RequiresAnalysisPass at the
end. SelectionDAG should just be using the uncached getResult?


  Commit: 27667285fe130b87ebda53e8335fc277292c751d
      https://github.com/llvm/llvm-project/commit/27667285fe130b87ebda53e8335fc277292c751d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h

  Log Message:
  -----------
  CodeGen/NewPM: Add ExpandLarge* passes to isel IR passes (#102815)


  Commit: 5eb6330ef6de633e119a6679efce1f9018110eb1
      https://github.com/llvm/llvm-project/commit/5eb6330ef6de633e119a6679efce1f9018110eb1
  Author: quanwanandy <quanwanandy at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

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

Tested w/ bazel locally.


  Commit: 0eb1fc88680e2df430a5cb68be5e6a671b43c82d
      https://github.com/llvm/llvm-project/commit/0eb1fc88680e2df430a5cb68be5e6a671b43c82d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/src/chrono.cpp
    M libcxx/src/filesystem/filesystem_clock.cpp

  Log Message:
  -----------
  [libcxx] Set `_LIBCPP_HAS_CLOCK_GETTIME` for GPU targets (#99243)

Summary:
I am attempting to get the GPU to build and support libc++. One issue
I've encountered is that it will look for `timeval` unless this macro is
set. We can support `CLOCK_MONOTONIC` on the GPU fairly easily as we
have access to a fixed-frequency clock via `__builtin_readsteadycounter`
intrinsics with a known frequency. This also requires `CLOCK_REALTIME`
which we can't support, but provide anyway from the GPU `libc` to make
this happy. It will return an error so at least that will be obvious.

I may need a more consistent configuration for this in the future, maybe
I should put a common macro in a different common header that's just
`__GPU__`? I don't know where I would put such a thing however.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - treat oneuse extractions from loads as free

Allows further reductions in instruction vector widths


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

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll

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


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-pack-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll

  Log Message:
  -----------
  [X86] concat(permv3(x0,m0,y0),permv3(x0,m1,y0)) -> permv3(concat(x0,u),m3,concat(y0,u))

Reference the lowest subvector if higher subvectors match - this often occurs in length changing shuffles.

Fixes #103564


  Commit: a0be7053d7ce4c93dfb10f5566b611069083994f
      https://github.com/llvm/llvm-project/commit/a0be7053d7ce4c93dfb10f5566b611069083994f
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZ.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.h
    M llvm/lib/Target/SystemZ/SystemZCallingConv.td
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    A llvm/test/CodeGen/SystemZ/mixed-ptr-sizes.ll

  Log Message:
  -----------
  [SystemZ][z/OS] Continuation of __ptr32 support (#103393)

This is a continuation of the __ptr32 support added here
https://github.com/llvm/llvm-project/commit/135fecd4441068667ef23f56098befd0c42f89f2


  Commit: 715c3033af4d38e80c110f0de8e9ddecb5a22fc3
      https://github.com/llvm/llvm-project/commit/715c3033af4d38e80c110f0de8e9ddecb5a22fc3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Support G_SEXT_INREG for Zbb. (#102682)


  Commit: 6b652f6edaa84a9e4934885f6f12b973efb1b810
      https://github.com/llvm/llvm-project/commit/6b652f6edaa84a9e4934885f6f12b973efb1b810
  Author: Malavika Samak <malavika.samak at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/SemaCXX/warn-unsafe-buffer-usage-field-attr.cpp

  Log Message:
  -----------
  [attributes][-Wunsafe-buffer-usage] Support adding unsafe_buffer_usage attribute to struct fields (#101585)

Extend the unsafe_buffer_usage attribute, so they can also be added to
struct fields. This will cause the compiler to warn about the unsafe
field at their access sites.

Co-authored-by: MalavikaSamak <malavika2 at apple.com>


  Commit: bdf4b9a00c13044b6e989f58f0e505c7236c4a3a
      https://github.com/llvm/llvm-project/commit/bdf4b9a00c13044b6e989f58f0e505c7236c4a3a
  Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [NVPTX] Fix typo causing GCC warning (#103045)

Solves typo found by @mikaelholmen here:
https://github.com/llvm/llvm-project/pull/98551#discussion_r1714824883


  Commit: 21cea3f3be51d5c3856b87fed301b5fc3dddade4
      https://github.com/llvm/llvm-project/commit/21cea3f3be51d5c3856b87fed301b5fc3dddade4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/test/CodeGen/AMDGPU/promote-alloca-addrspacecast.ll

  Log Message:
  -----------
  AMDGPU: Stop promoting allocas with addrspacecast users (#104051)

We cannot promote this case unless we know the value is only
observed through flat operations. We cannot analyze this through
a call. PointerMayBeCaptured was an imprecise check for this.
A callee with a nocapture attribute may still cast to private and
observe the address space, so really we need a different notion
of nocapture.

I doubt this was of any use anyway. The promotable cases should
have optimized out addrspacecast to begin earlier.

Fixes #66669
Fixes #104035


  Commit: 3287a2ebcaf0197f68905917a0d7eba35df831e2
      https://github.com/llvm/llvm-project/commit/3287a2ebcaf0197f68905917a0d7eba35df831e2
  Author: David Green <david.green at arm.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Add some uxtw peephole tests. NFC


  Commit: c4ae8b150476d834f0f8f010e6e76048c836b4ca
      https://github.com/llvm/llvm-project/commit/c4ae8b150476d834f0f8f010e6e76048c836b4ca
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement Instruction flags (#103343)

This patch implements sandboxir::Instruction flags.


  Commit: 0dedd6fe1409ab02945bb5f903a23335aa79b590
      https://github.com/llvm/llvm-project/commit/0dedd6fe1409ab02945bb5f903a23335aa79b590
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Adjust concept definition locus (#103867)

Per [basic.scope], the locus of a concept is immediately after the
introduction of its name.

This let us provide better diagnostics for attempt to define recursive
concepts.

Note that recursive concepts are not supported per
https://eel.is/c++draft/basic#scope.pdecl-note-3, but there is no
normative wording for that restriction. This is a known defect
introduced by
[p1787r6](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1787r6.html).

Fixes #55875


  Commit: 0ca0d55c14d9a4ed694f4fddf0f16616178ca7a4
      https://github.com/llvm/llvm-project/commit/0ca0d55c14d9a4ed694f4fddf0f16616178ca7a4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/math.yaml

  Log Message:
  -----------
  [libc] Fix 'float type' incorrectly being used as the return type


  Commit: 0f08aa43a611c6eecd6d930dd7e8f3f03e5a4300
      https://github.com/llvm/llvm-project/commit/0f08aa43a611c6eecd6d930dd7e8f3f03e5a4300
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU: Avoid manually reconstructing atomicrmw (#103769)

When introducing the address space predicates, move and mutate
the original instruction, and clone for the shared case.


  Commit: 4d08bb11eea5907fa9cdfe4c7bc9d5c91e79c6a7
      https://github.com/llvm/llvm-project/commit/4d08bb11eea5907fa9cdfe4c7bc9d5c91e79c6a7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/include/complex
    M libcxx/include/optional
    A libcxx/test/std/numerics/complex.number/complex.special/gh_101960_ambiguous_ctor.pass.cpp
    A libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/gh_101960_internal_ctor.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Fix ambiguous constructors for std::complex and std::optional (#103409)

Fixes #101960


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

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
    A clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl

  Log Message:
  -----------
  [HLSL] Split out the ROV attribute from the resource attribute, make it a new spellable attribute. (#102414)

Much like #98193, this PR takes some more data out of the resource
attribute, specifically the ROV data.
This PR introduces a new attribute called HLSLROVAttr, which contains
data on whether or not the decl the attribute applies to is an ROV.
Tests were added to ensure the attribute is found on the AST.
This attribute may take any boolean condition as an argument. If the
condition is true, then the object the attribute applies to "is" an ROV.
Fixes #https://github.com/llvm/llvm-project/issues/102392


  Commit: 15e1e3b234884eb19b30e230ff783a13b499686f
      https://github.com/llvm/llvm-project/commit/15e1e3b234884eb19b30e230ff783a13b499686f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 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
    M flang/test/Lower/allocatable-polymorphic.f90

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

Updated version of #102686. The issue was that in some rebox case the
addendum presence flag should be updated and not always taken from the
"from" box. This is the case when reboxing a fir.class to a fir.box that
doesn't require an addendum for example.

Open a new review since there is a bit of additional code in the CodeGen
part.


  Commit: 86db2154bc27bf64212b91c76ed67b7dd1fc5eb0
      https://github.com/llvm/llvm-project/commit/86db2154bc27bf64212b91c76ed67b7dd1fc5eb0
  Author: jjalowie <jakub.jalowiec at intel.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/utils/vscode/package.json
    M mlir/utils/vscode/src/mlirContext.ts

  Log Message:
  -----------
  [vscode-mlir] Added per-LSP-server executable arguments (#79671)

Each LSP server type (mlir-lsp-server, pdll-lsp-server and
tblgen-lsp-server) should have a different "additional_server_args"
entry in the config for passing arguments to the server such as
`--log=verbose`.


  Commit: 74d23f15b6867898892f851db40a25f62dad4397
      https://github.com/llvm/llvm-project/commit/74d23f15b6867898892f851db40a25f62dad4397
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M offload/DeviceRTL/include/Allocator.h
    M offload/DeviceRTL/include/Types.h
    M offload/DeviceRTL/src/Misc.cpp
    M offload/DeviceRTL/src/State.cpp
    A offload/test/api/omp_device_alloc.c
    M openmp/docs/design/Runtimes.rst

  Log Message:
  -----------
  [OpenMP] Implement 'omp_alloc' on the device (#102526)

Summary:
The 'omp_alloc' function should be callable from a target region. This
patch implemets it by simply calling `malloc` for every non-default
trait value allocator. All the special access modifiers are
unimplemented and return null. The null allocator returns null as the
spec states it should not be usable from the target.


  Commit: 394162f356069ddccf1f941abf20959809644926
      https://github.com/llvm/llvm-project/commit/394162f356069ddccf1f941abf20959809644926
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/Driver/nvlink-wrapper.c
    M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td

  Log Message:
  -----------
  [Clang] Fix 'nvlink-wrapper' not ignoring `-plugin` like lld does (#104056)

Summary:
This caused issues with
https://gitlab.e4s.io/uo-public/llvm-openmp-offloading/-/jobs/301520
because adding `-flto` caused it to pass `-plugin` sometimes, which
isn't supported.


  Commit: 3b7b2f2efc8be3077b919bef12669a85886840b5
      https://github.com/llvm/llvm-project/commit/3b7b2f2efc8be3077b919bef12669a85886840b5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [libcxx] Add fallback to standard C when `unistd` is unavailable (#102005)

Summary:
This utility function gets a temp file to use for tests. It either uses
WIN32 or POSIX to create it. Some targets only follow the C standard,
and this test case will fail. This patch simply adds a fallback that
uses the `tmpnam` function from standard C. This function isn't ideal,
but it is good enough for our use-case.

---------

Co-authored-by: Mark de Wever <zar-rpg at xs4all.nl>


  Commit: 23617f2dc094e3f960d9e0aedaa87a0866e8dc2d
      https://github.com/llvm/llvm-project/commit/23617f2dc094e3f960d9e0aedaa87a0866e8dc2d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M libcxx/src/include/overridable_function.h

  Log Message:
  -----------
  [libcxx] Disable invalid `__start/__stop` reference on NVPTX (#99381)

Summary:
The logic for this `__is_function_overridden` check requires accessing a
runtime array normally created by the linker. The NVPTX target is an
`__ELF__` target, however it does not support emitting the
`__start/__stop` symbols for C-identifier named sections. This needs to
be disabled explicitly so that the user can compile this with anything.


  Commit: 51ed383d3803051922ab5f7ff19a38454a415ddb
      https://github.com/llvm/llvm-project/commit/51ed383d3803051922ab5f7ff19a38454a415ddb
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/Relocations.h
    M lld/MachO/SyntheticSections.cpp
    A lld/test/MachO/objc-relative-method-lists-simple-x86.s

  Log Message:
  -----------
  [lld-macho] Make relative method lists work on x86-64 (#103905)

Local data is referenced in Objective-C metadata via section + offset
relocations on x86-64 rather than via symbols. Without this change, we
would crash on incorrect casts of the referents to `Defined`.

A basic test based on the existing `objc-relative-method-lists-simple.s`
adopted to x86-64 is added.


  Commit: 9e8706140440d79bb7040d5461e9d31ea75cc7bb
      https://github.com/llvm/llvm-project/commit/9e8706140440d79bb7040d5461e9d31ea75cc7bb
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

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

  Log Message:
  -----------
  [libcxx] Adjust inline assembly constraints for the AMDGPU target (#101747)

Summary:
These assembly constraints are illegal / invalid on the AMDGPU target.
The `r` constraint is only valid on inputs and the `m` constraint isn't
accepted at all. The NVPTX target can handle them because it uses a more
permissive virtual machine (PTX is an IR). Simply add exceptions on the
target to make these work.


  Commit: 2dec83cc8e21a72e8718b5b3f009a19d6634fad3
      https://github.com/llvm/llvm-project/commit/2dec83cc8e21a72e8718b5b3f009a19d6634fad3
  Author: Carlos Galvez <carlosgalvezp at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/SemaCXX/Inputs/enum-constexpr-conversion-system-header.h
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp

  Log Message:
  -----------
  [clang] Turn -Wenum-constexpr-conversion into a hard error (#102364)

The warning has been active for a few releases now, first only in user
code, later in system headers, and finally as an error by default.

Therefore, we believe it is now time to transition into a hard error, as
required by the C++ Standard. The main affected C++ projects have by now
fixed the error, or there's a pending patch for review that does it.

Fixes #59036


  Commit: 161e250add9556443b0de085837e3a0403626f6c
      https://github.com/llvm/llvm-project/commit/161e250add9556443b0de085837e3a0403626f6c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M offload/test/api/omp_device_alloc.c

  Log Message:
  -----------
  [OpenMP] Fix buildbot failing on allocator test


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

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

  Log Message:
  -----------
  [TargetLowering] Remove unncessary null check. NFC


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

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

  Log Message:
  -----------
  [SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC


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

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  [flang][cuda] Use cuda runtime API (#103488)

CUDA Fortran is meant to be an equivalent to the runtime API. Therefore,
it makes more sense to use the cuda rt API in the allocators for CUF.

@bdudleback


  Commit: 2c12c1e755a1bf453b246027b450b3b8e30fb016
      https://github.com/llvm/llvm-project/commit/2c12c1e755a1bf453b246027b450b3b8e30fb016
  Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86MachineFunctionInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    A llvm/test/CodeGen/X86/fp-clobbered-by-eh.ll

  Log Message:
  -----------
  [X86] Check if an invoked function clobbers fp or bp (#103446)

In most cases when an instruction or function call clobbers fp and/or bp
register, we can fix it by save/restore the clobbered register. But we
still can't handle it when an invoked function clobbers fp and/or bp
according to its calling convention. This patch detects this case and
reports error instead of silently generating wrong code.


  Commit: 099bf20c3f8a9258b2d6cc39d0618fd45e6dfb4f
      https://github.com/llvm/llvm-project/commit/099bf20c3f8a9258b2d6cc39d0618fd45e6dfb4f
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/dot-product.ll

  Log Message:
  -----------
  [NVPTX] Add idp2a, idp4a intrinsics (#102763)

Add support for `llvm.nvvm.idp2a` and `llvm.nvvm.idp4a` which correspond
directly to `dp2a` and `dp4a` PTX instructions.


  Commit: 6cafebef4a7a50ad28b46f34f18dc9d3e3e57e40
      https://github.com/llvm/llvm-project/commit/6cafebef4a7a50ad28b46f34f18dc9d3e3e57e40
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-vaarg-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll

  Log Message:
  -----------
  [RISCV][GISel] Remove support for s32 G_VAARG on RV64. (#102533)

Part of making s32 not legal for RV64. Unfortunately, generic
widening/narrowing is not implement for this operation so I had to
remove all tests.

I don't think clang uses G_VAARG on RISC-V so this shouldn't be a big
deal in practice.


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

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv

  Log Message:
  -----------
  [libc++] Remove non-existent LWG issue from the .csv files

We can only track existing LWG issues because we need a valid LWG issue
number for all issues. I'll create another GH issue to track creating
that LWG issue instead.


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

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  Revert "[flang][cuda] Use cuda runtime API" (#104232)

Reverts llvm/llvm-project#103488


  Commit: a95ad2da36b6a996b05c79df6b385cd98bac286d
      https://github.com/llvm/llvm-project/commit/a95ad2da36b6a996b05c79df6b385cd98bac286d
  Author: Ian Wood <75152913+IanWood1 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
    A mlir/test/Dialect/Tensor/bubble-reshapes.mlir
    M mlir/test/lib/Dialect/Tensor/TestTensorTransforms.cpp

  Log Message:
  -----------
  [mlir] Add bubbling patterns for non intersecting reshapes (#103401)

Refactored @Max191's PR https://github.com/llvm/llvm-project/pull/94637
to move it to `Tensor`

>From the original PR
>This PR adds fusion by expansion patterns to push a tensor.expand_shape
up through a tensor.collapse_shape with non-intersecting reassociations.
Sometimes parallel collapse_shape ops like this can block propagation of
expand_shape ops, so this allows them to pass through each other.

I'm not sure if I put the code/tests in the right places, so let me know
where those go if they aren't.

cc @MaheshRavishankar @hanhanW

---------

Co-authored-by: Max Dawkins <max.dawkins at gmail.com>


  Commit: 372ddcd1baf2c17fd544e458e15221044df66a5d
      https://github.com/llvm/llvm-project/commit/372ddcd1baf2c17fd544e458e15221044df66a5d
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/lib/Analysis/Analysis.cpp
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [DXIL][Analysis] Boilerplate for DXILResourceAnalysis pass

Broke this out into its own commit to make the next one easier to
review.

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


  Commit: 1ca9fe6db3345556c5c6853b3aba8ff209e572df
      https://github.com/llvm/llvm-project/commit/1ca9fe6db3345556c5c6853b3aba8ff209e572df
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll

  Log Message:
  -----------
  Reapply "[Attributor][AMDGPU] Enable AAIndirectCallInfo for AMDAttributor (#100952)"

This reverts commit 36467bfe89f231458eafda3edb916c028f1f0619.


  Commit: 28d577ecefa1557f5dea5566bf33b885c563d14b
      https://github.com/llvm/llvm-project/commit/28d577ecefa1557f5dea5566bf33b885c563d14b
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Analysis/DXILResource.cpp
    A llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  [DXIL][Analysis] Implement enough of DXILResourceAnalysis for buffers

This implements the DXILResourceAnalysis pass for `dx.TypedBuffer` and
`dx.RawBuffer` types. This should be sufficient to lower
`dx.handle.fromBinding` for this set of types, but it leaves a number
of TODOs around for other resource types.

This also includes a straightforward `print` method in `ResourceInfo`
to make the analysis testable. This is deliberately different than the
printer in `lib/Target/DirectX/DXILResource.cpp`, which attempts to
print bindings in a format compatible with the comments `dxc` prints.
We will eventually want to make that functionality driven by this
analysis pass, but it isn't sufficient for testing so we need both.

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


  Commit: 3265dfe3e620d526ca15dcecaa1c68e63ceaba45
      https://github.com/llvm/llvm-project/commit/3265dfe3e620d526ca15dcecaa1c68e63ceaba45
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/float-convert.ll

  Log Message:
  -----------
  [RISCV] Add signext attribute to return of fmv_x_w test in float-convert.ll. NFC

This shows that Zfinx generates a sext.w instruction on RV64.
The fadd.s should have filled the upper bits of the GPR with sign
bits so this is unnecessary. Proving it is unnecessary might be
difficult though.


  Commit: 4bac8fd8904904bc7d502f39851eef50b5afff73
      https://github.com/llvm/llvm-project/commit/4bac8fd8904904bc7d502f39851eef50b5afff73
  Author: Connie <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    A llvm/utils/lit/tests/Inputs/check_path.py
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt
    A llvm/utils/lit/tests/Inputs/shtest-cat/cat_nonprinting.bin
    A llvm/utils/lit/tests/Inputs/shtest-cat/lit.cfg
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-0.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat-error-1.txt
    R llvm/utils/lit/tests/Inputs/shtest-shell/cat_nonprinting.bin
    R llvm/utils/lit/tests/Inputs/shtest-shell/check_path.py
    M llvm/utils/lit/tests/Inputs/shtest-shell/valid-shell.txt
    A llvm/utils/lit/tests/shtest-cat.py
    M llvm/utils/lit/tests/shtest-shell.py

  Log Message:
  -----------
  [llvm-lit][test][NFC] Moved cat command tests into separate lit test file (#102366)

This patch separates the lit tests that check for the functionality of
lit's built-in cat command into its own test file and folder. This is a
prerequisite for https://github.com/llvm/llvm-project/pull/101530.


  Commit: e9b7983fc6826eceb819a3cdb0301c401847ade4
      https://github.com/llvm/llvm-project/commit/e9b7983fc6826eceb819a3cdb0301c401847ade4
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py

  Log Message:
  -----------
  [llvm-lit] Fix Unhashable TypeError when using lit's internal shell (#101590)

When using the lit internal shell with the command:
```
LIT_USE_INTERNAL_SHELL=1 ninja check-compiler-rt
```
The follow error is encountered:
```
File "TestRunner.py", line 770, in _executeShCmd
    inproc_builtin = inproc_builtins.get(args[0], None)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'GlobItem'
```
This error is in a compiler-rt file:
```
TestCases/Linux/long-object-path.cpp
```
This error occurs because `args[0]` is of type `GlobItem`, which is not
hashable, leading to a `TypeError` when it is passed in
`inproc_builtins.get()`. To resolve this issue, I have updated the
implementation to ensure that `args[0]` is hashable before it is used in
`inproc_builtins`.
fixes: #102389
[link to
RFC](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


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

  Changed paths:
    M clang/lib/Headers/__clang_cuda_math.h
    M clang/lib/Headers/__clang_hip_math.h
    A clang/test/Headers/gpu_disabled_math.cpp

  Log Message:
  -----------
  [Clang] Add `__CLANG_GPU_DISABLE_MATH_WRAPPERS` macro for offloading math (#98234)

Summary:
Currently we replace all math calls with vendor specific ones. This
patch introduces a macro `__CLANG_GPU_DISABLE_MATH_WRAPPERS` that when
defined will disable this.

I went this route instead of a flag for two reasons. One, I think we
have too many flags as is, and we already have `-nogpuinc` to cover
disabling these wrappers entirely, so this would be a really specific
subset of that. Second, these math headers aren't easily decoupled by
simply not including a single header from the clang driver layer.
There's the cmath and the regular math forward declares it would disable
as well.

Note, this currently causes errors because the GPU `libm` doesn't have
`powi`, that's an NVIDIA extension I'll add to LLVM libm.


  Commit: 743e99dcf5146dd4e2c20d20800e91595da47be9
      https://github.com/llvm/llvm-project/commit/743e99dcf5146dd4e2c20d20800e91595da47be9
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocator.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp

  Log Message:
  -----------
  Reland "[flang][cuda] Use cuda runtime API #103488"

CUDA Fortran is meant to be an equivalent to the runtime API. Therefore, it
makes more sense to use the cuda rt API in the allocators for CUF.


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

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

  Log Message:
  -----------
  [bazel] Port 4bac8fd8904904bc7d502f39851eef50b5afff73 (#104278)


  Commit: 48809fafbc083a2e4c03f70406b712ff18b42554
      https://github.com/llvm/llvm-project/commit/48809fafbc083a2e4c03f70406b712ff18b42554
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/SemaHLSL/BuiltIns/normalize-errors.hlsl
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/test/CodeGen/DirectX/normalize.ll

  Log Message:
  -----------
  Remove unused variable, and unneeded extract element instruction (#103489)

This PR removes an unneeded extract element instruction from codegen,
along with the variable that captured that instruction's return value.


  Commit: 4f7ce107de0c3ae0fb5748f98bc696b6eec7aad9
      https://github.com/llvm/llvm-project/commit/4f7ce107de0c3ae0fb5748f98bc696b6eec7aad9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/rv64zfh-half-convert.ll
    M llvm/test/CodeGen/RISCV/rv64zfhmin-half-convert.ll

  Log Message:
  -----------
  [RISCV] Don't combine (sext_inreg (fmv_x_anyexth X), i16) with Zhinx.

With Zfh and Zfhmin this combine creates a fmv_x_signexth node so we can
remember that the result is sign extended. This become a fmv.x.h
instruction which sign extends its result.

With Zhinx, fmv_x_signexth becomes a COPY_TO_REGCLASS. In order for
this to guarantee the result is properly sign extended we need all
producers of a GPRF16 register class to guarantee the rest of the
GPR is sign extended. I don't think we've done that. bitcasts from i16
to f16 definitely don't do it.

The safest thing to do is to not do this combine so the sign_extend_inreg
will emit a shift pair. This is also consistent with the code generated
for Zfinx on RV64, we don't assume the upper 32 bits are sign extended.


  Commit: 539bf499615dbbfe98deaac1021f351eaad330ea
      https://github.com/llvm/llvm-project/commit/539bf499615dbbfe98deaac1021f351eaad330ea
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  [Sanitizers] Disable prctl test on Android.


  Commit: 2b959bd7f21bc7550a99fb160997002b7e4f1b62
      https://github.com/llvm/llvm-project/commit/2b959bd7f21bc7550a99fb160997002b7e4f1b62
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/test/Misc/warning-flags.c
    M clang/test/SemaTemplate/temp_explicit.cpp

  Log Message:
  -----------
  [Clang] Error on extraneous template headers by default. (#104046)

As discussed here

https://github.com/llvm/llvm-project/issues/99296#issuecomment-2240807413

Fixes #99296
Fixes #50294


  Commit: 9a666deecb9ff6ca3a6b12e6c2877e19b74b54da
      https://github.com/llvm/llvm-project/commit/9a666deecb9ff6ca3a6b12e6c2877e19b74b54da
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    A clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    A clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  [Clang] Overflow Pattern Exclusions (#100272)

Introduce "-fsanitize-overflow-pattern-exclusion=" which can be used to
disable sanitizer instrumentation for common overflow-dependent code
patterns.

For a wide selection of projects, proper overflow sanitization could
help catch bugs and solve security vulnerabilities. Unfortunately, in
some cases the integer overflow sanitizers are too noisy for their users
and are often left disabled. Providing users with a method to disable
sanitizer instrumentation of common patterns could mean more projects
actually utilize the sanitizers in the first place.

One such project that has opted to not use integer overflow (or
truncation) sanitizers is the Linux Kernel. There has been some
discussion[1] recently concerning mitigation strategies for unexpected
arithmetic overflow. This discussion is still ongoing and a succinct
article[2] accurately sums up the discussion. In summary, many Kernel
developers do not want to introduce more arithmetic wrappers when
most developers understand the code patterns as they are.

Patterns like:

    if (base + offset < base) { ... }

or

    while (i--) { ... }

or

    #define SOME -1UL

are extremely common in a code base like the Linux Kernel. It is
perhaps too much to ask of kernel developers to use arithmetic wrappers
in these cases. For example:

    while (wrapping_post_dec(i)) { ... }

which wraps some builtin would not fly. This would incur too many
changes to existing code; the code churn would be too much, at least too
much to justify turning on overflow sanitizers.

Currently, this commit tackles three pervasive idioms:

1. "if (a + b < a)" or some logically-equivalent re-ordering like "if (a > b + a)"
2. "while (i--)" (for unsigned) a post-decrement always overflows here
3. "-1UL, -2UL, etc" negation of unsigned constants will always overflow

The patterns that are excluded can be chosen from the following list:

- add-overflow-test
- post-decr-while
- negated-unsigned-const

These can be enabled with a comma-separated list:

    -fsanitize-overflow-pattern-exclusion=add-overflow-test,negated-unsigned-const

"all" or "none" may also be used to specify that all patterns should be
excluded or that none should be.

[1] https://lore.kernel.org/all/202404291502.612E0A10@keescook/
[2] https://lwn.net/Articles/979747/

CCs: @efriedma-quic @kees @jyknight @fmayer @vitalybuka
Signed-off-by: Justin Stitt <justinstitt at google.com>
Co-authored-by: Bill Wendling <morbo at google.com>


  Commit: 9a9ca9850f3c6b278e052745f51a87296d9fedd2
      https://github.com/llvm/llvm-project/commit/9a9ca9850f3c6b278e052745f51a87296d9fedd2
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
    M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
    M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir

  Log Message:
  -----------
  [mlir][MemRef] Add more ops to narrow type support, strided metadata expansion (#102228)

- Add support fef memory_space_cast to strided metadata expansion and
narrow type emulation
- Add support for expand_shape to narrow type emulation (like
collapse_shape, it's a noop after linearization) and to
expand-strided-metadata (mirroring the collapse_shape pattern)
- Add support for memref.dealloc to narrow type emulation (it is a
trivial rewrite) and for memref.copy (which is unsupported when it is
used for a layout change but a trivial rewrite otherwise)


  Commit: 564efe26745c5bb7236b095d5b42881cdc64a284
      https://github.com/llvm/llvm-project/commit/564efe26745c5bb7236b095d5b42881cdc64a284
  Author: pcc <peter at pcc.me.uk>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    A llvm/utils/git/linkify

  Log Message:
  -----------
  utils/git: Add linkify script.

This script linkifies (i.e. makes clickable in the terminal) text that appears
to be a pull request or issue reference (e.g. #12345 or PR12345) or a
40-character commit hash (e.g. abc123). You can configure git to automatically
send the output of commands that pipe their output through a pager, such as
`git log` and `git show`, through this script by running this command from
within your LLVM checkout:

git config core.pager 'llvm/utils/git/linkify | pager'

The pager command is run from the root of the repository even if the git
command is run from a subdirectory, so the relative path should always work.

It requires OSC 8 support in the terminal. For a list of compatible terminals,
see https://github.com/Alhadis/OSC8-Adoption

Reviewers: MaskRay

Reviewed By: MaskRay

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


  Commit: 7275919cd5fc89c42a52168c9f4411b4e5421c95
      https://github.com/llvm/llvm-project/commit/7275919cd5fc89c42a52168c9f4411b4e5421c95
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Use clang_cc1 and specify the target explicitly.


  Commit: 5873aa83b871393b5ada4c2033445d5fd52d7461
      https://github.com/llvm/llvm-project/commit/5873aa83b871393b5ada4c2033445d5fd52d7461
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Remove '-emit-llvm' and use '-triple'


  Commit: 4411d1e3926d67c393e6a7bdb910bbe77507ff26
      https://github.com/llvm/llvm-project/commit/4411d1e3926d67c393e6a7bdb910bbe77507ff26
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  [sanitizer] Remove GetCurrentThread nullness checks from Allocate

The nullness check is unreachable.

* For the main thead and pthread_create created threads, the `*Allocate` functions must be called after `*_current_thread` is set.
set.
* For threads created by Linux's `clone`, static TLS is either reused or
  set to a new value (CLONE_SETTLS).

Make this change for asan/msan and possibly extend the change to other
sanitizers. (asan supports many platforms and I am not 100% certain that
all platforms have the property.)

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


  Commit: aca01bff07c225dbace6cb7743072ddfe78c43f0
      https://github.com/llvm/llvm-project/commit/aca01bff07c225dbace6cb7743072ddfe78c43f0
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    A llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    M llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll

  Log Message:
  -----------
  [ctx_prof] CtxProfAnalysis: populate module data (#102930)

Continuing from #102084, which introduced the analysis, we now populate
it with info about functions contained in the module.

When we will update the profile due to e.g. inlined callsites, we'll
ingest the callee's counters and callsites to the caller. We'll move
those to the caller's respective index space (counter and callers), so
we need to know and maintain where those currently end.

We also don't need to keep profiles not pertinent to this module.

This patch also introduces an arguably much simpler way to track the
GUID of a function from the frontend compilation, through ThinLTO, and
into the post-thinlink compilation step, which doesn't rely on keeping
names around. A separate RFC and patches will discuss extending this to
the current PGO (instrumented and sampled) and other consumers as an
infrastructural component.


  Commit: bd47ba705607033c3dab0037a8d64159b58bedb4
      https://github.com/llvm/llvm-project/commit/bd47ba705607033c3dab0037a8d64159b58bedb4
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF][NFC] Allow non-GotSection for addAddendOnlyRelocIfNonPreemptible (#104228)

This was done as an afterthought in c3c9e4531287 without justification.
Nothing relies on it being a specific kind of section, and downstream in
CHERI LLVM we pass a non-GotSection to this function. Thus revert this
overly-restrictive change and allow downstreams to pass other section
types again.

This partially reverts commit c3c9e45312874ff890723f54cabfd41e43b2dbc4.


  Commit: 0df91893efc752a76c7bbe6b063d66c8a2fa0d55
      https://github.com/llvm/llvm-project/commit/0df91893efc752a76c7bbe6b063d66c8a2fa0d55
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M lld/MachO/ObjC.cpp
    M lld/test/MachO/objc-category-merging-minimal.s

  Log Message:
  -----------
  [lld-macho] Fix crash: ObjC category merge + relative method lists (#104081)

A crash was happening when both ObjC Category Merging and Relative
method lists were enabled.

ObjC Category Merging creates new data sections and adds them by calling
`addInputSection`. `addInputSection` uses the symbols within the added
section to determine which container to actually add the section to.

The issue is that ObjC Category merging is calling `addInputSection`
before actually adding the relevant symbols the the added section. This
causes `addInputSection` to add the `InputSection` to the wrong
container, eventually resulting in a crash.

To fix this, we ensure that ObjC Category Merging calls
`addInputSection` only after the symbols have been added to the
`InputSection`.


  Commit: abaa53199ed03b2e9de9fd373cbcfcc88e5348ff
      https://github.com/llvm/llvm-project/commit/abaa53199ed03b2e9de9fd373cbcfcc88e5348ff
  Author: LiqinWeng <liqin.weng at spacemit.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/test/CodeGen/RISCV/riscv-codegen-prepare-atp.ll

  Log Message:
  -----------
  [RISCV] Implement RISCVTTIImpl::shouldConsiderAddressTypePromotion for RISCV (#102560)

This optimization helps reduce repeated calculations of base addresses
by extracting type extensions when the same base address is accessed
multiple times but its offset is a constant.


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

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

  Log Message:
  -----------
  [OpenMP] Use range-based for loops (NFC) (#103511)


  Commit: b4dc9869381f91af419ec170837ac324d09525e5
      https://github.com/llvm/llvm-project/commit/b4dc9869381f91af419ec170837ac324d09525e5
  Author: Daniel Wedzicha <55595431+boredhuman at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm

  Log Message:
  -----------
  [LLDB][OSX] Removed semi colon generating a warning during build (#104398)

Singular warning I noticed when compiling lldb.

Co-authored-by: Daniel <d.wedzicha at efg.gg>


  Commit: e0d173d44161bf9b68243845666d58999e74f759
      https://github.com/llvm/llvm-project/commit/e0d173d44161bf9b68243845666d58999e74f759
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/MicrosoftMangle.cpp
    A clang/test/CodeGenCXX/mangle-ms-auto-return.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-memptrs.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-nullptr.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates.cpp

  Log Message:
  -----------
  [Clang] [AST] Fix placeholder return type name mangling for MSVC 1920+ / VS2019+ (#102848)

Partial fix for https://github.com/llvm/llvm-project/issues/92204.
This PR just fixes VS2019+ since that is the suite of compilers that I
require link compatibility with at the moment.
I still intend to fix VS2017 and to update llvm-undname in future PRs.
Once those are also finished and merged I'll close out
https://github.com/llvm/llvm-project/issues/92204.
I am hoping to get the llvm-undname PR up in a couple of weeks to be
able to demangle the VS2019+ name mangling.

MSVC 1920+ mangles placeholder return types for non-templated functions
with "@".
For example `auto foo() { return 0; }` is mangled as `?foo@@YA at XZ`.

MSVC 1920+ mangles placeholder return types for templated functions as
the qualifiers of the AutoType followed by "_P" for `auto` and "_T" for
`decltype(auto)`.
For example `template<class T> auto foo() { return 0; }` is mangled as
`??$foo at H@@YA?A_PXZ` when `foo` is instantiated as follows `foo<int>()`.

Lambdas with placeholder return types are still mangled with clang's
custom mangling since MSVC lambda mangling hasn't been deciphered yet.
Similarly any pointers in the return type with an address space are
mangled with clang's custom mangling since that is a clang extension.

We cannot augment `mangleType` to support this mangling scheme as the
mangling schemes for variables and functions differ.
auto variables are encoded with the fully deduced type where auto return
types are not.
The following two functions with a static variable are mangled the same
```
template<class T>
int test()
{
    static int i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
    return i;
}

template<class T>
int test()
{
    static auto i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
    return i;
}
```
Inside `mangleType` once we get to mangling the `AutoType` we have no
context if we are from a variable encoding or some other encoding.
Therefore it was easier to handle any special casing for `AutoType`
return types with a separate function instead of using the `mangleType`
infrastructure.


  Commit: 6e2d9df02502e16659e4a9397260baf9df224f17
      https://github.com/llvm/llvm-project/commit/6e2d9df02502e16659e4a9397260baf9df224f17
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/overflow-idiom-exclusion-fp.c
    M clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Fix testcases. Use -emit-llvm and not -S. Use LABEL checking.


  Commit: 94b8b11ac305ebe730e6b70b2463811de395cb40
      https://github.com/llvm/llvm-project/commit/94b8b11ac305ebe730e6b70b2463811de395cb40
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [Clang][NFC] Move FindCountedByField into FieldDecl (#104235)

FindCountedByField can be used in more places than CodeGen. Move it into
FieldDecl to avoid layering issues.


  Commit: 07a8cbaf8dc16bebf6e875173d20299d9cc47cc5
      https://github.com/llvm/llvm-project/commit/07a8cbaf8dc16bebf6e875173d20299d9cc47cc5
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-14 (Wed, 14 Aug 2024)

  Changed paths:
    R clang/test/CodeGen/overflow-idiom-exclusion.c

  Log Message:
  -----------
  Remove failing test until it can be fixed properly.


  Commit: fb9e685fc41b8abc87725f8509624b3a80330dee
      https://github.com/llvm/llvm-project/commit/fb9e685fc41b8abc87725f8509624b3a80330dee
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    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/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    A llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
    A llvm/test/CodeGen/Mips/fp-maximumnum-minimumnum.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  Intrinsic: introduce minimumnum and maximumnum for IR and SelectionDAG (#96649)

C23 introduced new functions fminimum_num and fmaximum_num, and they
follow the minimumNumber and maximumNumber of IEEE754-2019. Let's
introduce new intrinsics to support them.

This patch introduces support only support for scalar values. The
support of
  vector (vp, vp.reduce, vector.reduce),
  experimental.constrained
will be added in future patches.

With this patch, MIPSr6 and LoongArch can work out of box with
fcanonical and fmax/fmin.

Aarch64/PowerPC64 can use the same login as MIPSr6 and LoongArch, while
they have no fcanonical support yet.
I will add it in future patches.

The FMIN/FMAX of RISC-V instructions follows the
minimumNumber/maximumNumber of IEEE754-2019. We can just add it in
future patch.

Background

https://discourse.llvm.org/t/rfc-fix-llvm-min-f-and-llvm-max-f-intrinsics/79735
Currently we have fminnum/fmaxnum, which have different behavior on
different platform for NUM vs sNaN:
   1) Fallback to fmin(3)/fmax(3): return qNaN.
   2) ARM64/ARM32+Neon: same as libc.
   3) MIPSr6/LoongArch/RISC-V: return NUM.

And the fix of fminnum/fmaxnum to follow minNUM/maxNUM of IEEE754-2008
will submit as separated patches.


  Commit: 8d037107287b85dcc8a0f0af75bd8ae5c07facb5
      https://github.com/llvm/llvm-project/commit/8d037107287b85dcc8a0f0af75bd8ae5c07facb5
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [ctx_prof] Remove an unneeded include in CtxProfAnalysis.cpp


  Commit: 372842b30f8e611765e3cb9f06b8265d2e79f3f6
      https://github.com/llvm/llvm-project/commit/372842b30f8e611765e3cb9f06b8265d2e79f3f6
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/X86/cmpccxadd-builtins.c
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/test/CodeGen/X86/cmpccxadd-intrinsics.ll
    M llvm/test/MC/Disassembler/X86/apx/cmpccxadd.txt
    M llvm/test/MC/Disassembler/X86/cmpccxadd-64.txt
    M llvm/test/MC/X86/apx/cmpccxadd-att.s
    M llvm/test/MC/X86/apx/cmpccxadd-intel.s
    M llvm/test/MC/X86/cmpccxadd-att-alias.s
    M llvm/test/MC/X86/cmpccxadd-att.s
    M llvm/test/MC/X86/cmpccxadd-intel-alias.s
    M llvm/test/MC/X86/cmpccxadd-intel.s

  Log Message:
  -----------
  [X86][MC] Remove CMPCCXADD's CondCode flavor. (#103898)

To align with gas's latest changes.
relate gas patch:
https://sourceware.org/pipermail/binutils/2024-May/134360.html


  Commit: 1e34706232e5f2865ff918ba8e9f840f38cdef07
      https://github.com/llvm/llvm-project/commit/1e34706232e5f2865ff918ba8e9f840f38cdef07
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [mlir][tosa] Add verifier for `tosa.table` (#103708)

This patch adds a verifier to `tosa.table` which fixes a crash. Fix
#103086.


  Commit: 3eaf483c296bd95411bc855674707f289790e2a2
      https://github.com/llvm/llvm-project/commit/3eaf483c296bd95411bc855674707f289790e2a2
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp

  Log Message:
  -----------
  [include-cleaner] Remove two commented-out lines of code.


  Commit: 12763a06526f5fee46d8d11953b1188bad9e7b0e
      https://github.com/llvm/llvm-project/commit/12763a06526f5fee46d8d11953b1188bad9e7b0e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [VPlan] Move VPWidenStoreRecipe::execute to VPlanRecipes.cpp (NFC).

Move VPWidenStoreRecipe::execute to VPlanRecipes.cpp in line with
other ::execute implementations that don't depend on anything
defined in LoopVectorization.cpp


  Commit: fa343be414f9364911b947f109f3df5539e23068
      https://github.com/llvm/llvm-project/commit/fa343be414f9364911b947f109f3df5539e23068
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Fix warnings in #102848 [-Wunused-but-set-variable]


  Commit: 845431a54fc2befacdfea27a852f003ad61ba720
      https://github.com/llvm/llvm-project/commit/845431a54fc2befacdfea27a852f003ad61ba720
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    R llvm/test/Assembler/datalayout-invalid-function-ptr-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-i8-alignment.ll
    R llvm/test/Assembler/datalayout-invalid-stack-natural-alignment.ll
    R llvm/test/Assembler/invalid-datalayout-alloca-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-globals-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout-index-size.ll
    R llvm/test/Assembler/invalid-datalayout-program-addrspace.ll
    R llvm/test/Assembler/invalid-datalayout1.ll
    R llvm/test/Assembler/invalid-datalayout10.ll
    R llvm/test/Assembler/invalid-datalayout11.ll
    R llvm/test/Assembler/invalid-datalayout12.ll
    R llvm/test/Assembler/invalid-datalayout13.ll
    R llvm/test/Assembler/invalid-datalayout14.ll
    R llvm/test/Assembler/invalid-datalayout15.ll
    R llvm/test/Assembler/invalid-datalayout16.ll
    R llvm/test/Assembler/invalid-datalayout17.ll
    R llvm/test/Assembler/invalid-datalayout18.ll
    R llvm/test/Assembler/invalid-datalayout19.ll
    R llvm/test/Assembler/invalid-datalayout2.ll
    R llvm/test/Assembler/invalid-datalayout20.ll
    R llvm/test/Assembler/invalid-datalayout21.ll
    R llvm/test/Assembler/invalid-datalayout22.ll
    R llvm/test/Assembler/invalid-datalayout23.ll
    R llvm/test/Assembler/invalid-datalayout24.ll
    R llvm/test/Assembler/invalid-datalayout3.ll
    R llvm/test/Assembler/invalid-datalayout4.ll
    R llvm/test/Assembler/invalid-datalayout5.ll
    R llvm/test/Assembler/invalid-datalayout6.ll
    R llvm/test/Assembler/invalid-datalayout7.ll
    R llvm/test/Assembler/invalid-datalayout8.ll
    R llvm/test/Assembler/invalid-datalayout9.ll
    M llvm/unittests/IR/DataLayoutTest.cpp

  Log Message:
  -----------
  [UnitTests] Convert some data layout parsing tests to GTest (#104346)

For now, the testcases are grouped in a single TEST. I'll sort them out
and add more testcases in follow-up commits.


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

  Changed paths:
    M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-le-specific.mlir
    M mlir/test/IR/elements-attr-interface.mlir
    M mlir/test/Target/LLVMIR/llvmir-le-specific.mlir

  Log Message:
  -----------
  [mlir][test] XFAIL little-endian-only tests on SPARC (#103726)

3 MLIR tests `FAIL` on SPARC, both Solaris/sparcv9 and Linux/sparc64:
```
  MLIR :: Conversion/ArithToSPIRV/arith-to-spirv-le-specific.mlir
  MLIR :: IR/elements-attr-interface.mlir
  MLIR :: Target/LLVMIR/llvmir-le-specific.mlir
```
The issue is always the same: the tests in question are
little-endian-only currently, so this patch `XFAIL`s them on `sparc*` as
is already done for `s390x`.

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


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

  Changed paths:
    M flang/test/Lower/default-initialization-globals.f90

  Log Message:
  -----------
  [flang][test] Fix Lower/default-initialization-globals.f90 on SPARC (#103722)

`Flang :: Lower/default-initialization-globals.f90` `FAIL`s on SPARC,
both Solaris/sparcv9 and Linux/sparc64.

The failure mode is same as on AIX/PowerPC, so both targets being
big-endian, this patch treats them the same.

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


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

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

  Log Message:
  -----------
  [DataLayout] Move '*AlignElem' structs and enum inside DataLayout (NFC) (#103723)

This makes `LayoutAlignElem` / `PointerAlignElem` and `AlignTypeEnum`
inner types of `DataLayout`. The types are also renamed to match their
meaning (LangRef refers to them as "specification" and "specifier").

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


  Commit: 3d06de544b8397a6b93a4fdb52650579237b77fa
      https://github.com/llvm/llvm-project/commit/3d06de544b8397a6b93a4fdb52650579237b77fa
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/CodeOwners.rst

  Log Message:
  -----------
  [lldb] Remove Phabricator usernames from Code Owners file (#102590)

Removing them simplifies the content and means we don't confuse anyone
who joined after the Phabricator shutdown.

You could use them for review archaeology but this is only a subset of
the names you'd encounter there anyway. So I don't think this is a good
reason to keep them here. With a couple of exceptions the
Phabricator/GitHub names are the same and/or related to their full name
anyway.


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

  Changed paths:
    M flang/test/Driver/fveclib-codegen.f90

  Log Message:
  -----------
  [flang][test] Run Driver/fveclib-codegen.f90 for aarch64 and x86_64 (#103730)

`Flang :: Driver/fveclib-codegen.f90` currently `FAIL`s on SPARC, both
Solaris/sparcv9 and Linux/sparc64:
```
bin/flang-new -S -Ofast -fveclib=LIBMVEC -o - /vol/llvm/src/llvm-project/local/flang/test/Driver/fveclib-codegen.f90

flang/test/Driver/fveclib-codegen.f90:11:10: error: CHECK: expected string not found in input
! CHECK: _ZGVbN4vv_powf
         ^
```
The code in question only contains calls to `powf`. Given that `glibc`
only supports `libmvec` on `aarch64` and `x86_64`, this test targets
only those if possible.

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


  Commit: 6f6422f4a2b8647a59936c131e50a79906d89510
      https://github.com/llvm/llvm-project/commit/6f6422f4a2b8647a59936c131e50a79906d89510
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp

  Log Message:
  -----------
  [lldb][test] Mark sys_info zdump test unsupported on 32 bit Arm Linux

Until https://github.com/llvm/llvm-project/pull/103056 lands
or another more appropriate check can be found.

This test fails on Ubuntu Focal where zdump is built with 32 bit time_t
but passes on Ubuntu Jammy where zdump is built with 64 bit time_t.

Marking it unsupported means Linaro can upgrade its bots to Ubuntu
Jammy without getting an unexpected pass.


  Commit: 141536544f4ec1d1bf24256157f4ff1a3bc07dae
      https://github.com/llvm/llvm-project/commit/141536544f4ec1d1bf24256157f4ff1a3bc07dae
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A mlir/include/mlir/Analysis/SliceWalk.h
    M mlir/lib/Analysis/CMakeLists.txt
    A mlir/lib/Analysis/SliceWalk.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir

  Log Message:
  -----------
  [MLIR][LLVM]: Add an IR utility to perform slice walking (#103053)

This commit introduces a slicing utility that can be used to walk
arbitrary IR slices. It additionally ships logic to determine control
flow predecessors, which allows users to walk backward slices without
dealing with both `RegionBranchOpInterface` and `BranchOpInterface`.

This utility is used to improve the `noalias` propagation in the LLVM
dialect's inliner interface. Before this change, it broke down as soon
as pointer were passed through region control flow operations.


  Commit: 5f15c1776a462940464743dbc9e82c46fe7e14aa
      https://github.com/llvm/llvm-project/commit/5f15c1776a462940464743dbc9e82c46fe7e14aa
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/docs/ProgrammersManual.rst

  Log Message:
  -----------
  [llvm][Docs] `_or_null` -> `_if_present` in Programmer's Manual (#98586)

`cast_or_null` is deprecated.

https://github.com/llvm/llvm-project/blob/062844615db5e141da118c1ad780bf102537f40a/llvm/include/llvm/Support/Casting.h#L717-L722


  Commit: 05dfac23f1121aabb9675a38628e919689f993b0
      https://github.com/llvm/llvm-project/commit/05dfac23f1121aabb9675a38628e919689f993b0
  Author: Jorge Botto <23462171+jf-botto at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] Adding m_FPToUI and m_FPToSI to SDPatternMatch.h (#104044)

Adds m_FPToUI/m_FPToSI matchers for ISD::FP_TO_UINT/ISD::FP_TO_SINT in SDPatternMatch.h with suitable test coverage.

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


  Commit: 9a9ce9112fd7ed87d305d3e4f9b05c98a04f2382
      https://github.com/llvm/llvm-project/commit/9a9ce9112fd7ed87d305d3e4f9b05c98a04f2382
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port for 141536544f4ec1d1bf24256157f4ff1a3bc07dae


  Commit: 7227b44f928a87b5d7fb05bd1539fdfb6d4958dc
      https://github.com/llvm/llvm-project/commit/7227b44f928a87b5d7fb05bd1539fdfb6d4958dc
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/darwin-print-target-triple.c

  Log Message:
  -----------
  [clang][driver] Fix -print-target-triple OS version for apple targets (#104037)

The target needs to be initialized in order to compute the correct
target triple from the command line. Without initialized targets the OS
component of the triple might not reflect what would be computed by the
driver for an actual compiler invocation.

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


  Commit: 3a3990cb05858e7892a4825c677891a980f1cea8
      https://github.com/llvm/llvm-project/commit/3a3990cb05858e7892a4825c677891a980f1cea8
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Move assert for wrapper syms and block args to genLoopNestOp (#103731)

This patch adds an assert to `genLoopNestClauses` to ensure the number
of symbols and corresponding loop wrapper entry block arguments have the
same size. This is checked by some of the callers, but it makes more
sense moving it into the function itself and avoid having to replicate
it.


  Commit: 8107810cad24d41fe43c6777370c7b81ca83ad84
      https://github.com/llvm/llvm-project/commit/8107810cad24d41fe43c6777370c7b81ca83ad84
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    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.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
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/dxil_ver.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_0.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_1.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_2.ll
    M llvm/test/CodeGen/DirectX/legacy_cb_layout_3.ll
    M llvm/test/CodeGen/DirectX/lib_entry.ll
    M llvm/test/Frontend/HLSL/empty_cs_entry.ll

  Log Message:
  -----------
  [DirectX] Use a more consistent pass name for DXILTranslateMetadata

This updates the "dxil-metadata-emit" pass flag to be spelled
"dxil-translate-metadata" to better match the pass name.

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


  Commit: 894d3eebe2109f7dec488d3415d5c6236e55a0da
      https://github.com/llvm/llvm-project/commit/894d3eebe2109f7dec488d3415d5c6236e55a0da
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Remove empty line.


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

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/Bufferization/Transforms/finalizing-bufferize.mlir
    M mlir/test/Transforms/test-legalize-type-conversion.mlir

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Build unresolved materialization for replaced ops (#101514)

When inserting an argument/source/target materialization, the dialect
conversion framework first inserts a "dummy"
`unrealized_conversion_cast` op (during the rewrite process) and then
(in the "finialize" phase) replaces these cast ops with the IR generated
by the type converter callback.

This is the case for all materializations, except when ops are being
replaced with values that have a different type. In that case, the
dialect conversion currently directly emits a source materialization.
This commit changes the implementation, such that a temporary
`unrealized_conversion_cast` is also inserted in that case.

This commit simplifies the code base: all materializations now happen in
`legalizeUnresolvedMaterialization`. This commit makes it possible to
decouple source/target/argument materializations from the dialect
conversion (to reduce the complexity of the code base). Such
materializations can then also be optional. This will be implemented in
a follow-up commit.

Depends on #101476.

---------

Co-authored-by: Jakub Kuderski <jakub at nod-labs.com>


  Commit: a2830d6aa2e8ad0da0e58f1642ed09723602e838
      https://github.com/llvm/llvm-project/commit/a2830d6aa2e8ad0da0e58f1642ed09723602e838
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Revert "Remove empty line."

Accidental commit.

This reverts commit 894d3eebe2109f7dec488d3415d5c6236e55a0da.


  Commit: ed8cfb651327a00f6ccf2b26890ee921f16f64a2
      https://github.com/llvm/llvm-project/commit/ed8cfb651327a00f6ccf2b26890ee921f16f64a2
  Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/IR/SCF.cpp

  Log Message:
  -----------
  [NFC][mlir][scf] Fix misspelling of replace (#101683)


  Commit: 5e95571a90b1ec193b735b7312c5c2559d7ee5ea
      https://github.com/llvm/llvm-project/commit/5e95571a90b1ec193b735b7312c5c2559d7ee5ea
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/Analysis/asm.cpp

  Log Message:
  -----------
  [analyzer] Do not reason about locations passed as inline asm input (#103714)

If pointer is passed as input operand for inline assembly, it's possible
that asm block will change memory behind this pointer. So if pointer is
passed inside inline asm block, it's better to not guess and assume
memory has unknown state.

Without such change, we observed a lot of FP with hand-written `memcpy`
and friends.


  Commit: 05f663081513c6293f80469132d083e2603ed036
      https://github.com/llvm/llvm-project/commit/05f663081513c6293f80469132d083e2603ed036
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/MicrosoftMangle.cpp
    R clang/test/CodeGenCXX/mangle-ms-auto-return.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-memptrs.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates-nullptr.cpp
    M clang/test/CodeGenCXX/mangle-ms-auto-templates.cpp

  Log Message:
  -----------
  Revert "[Clang] [AST] Fix placeholder return type name mangling for MSVC 1920+ / VS2019+ (#102848)"

It cause builds to start failing with

  Invalid type expected
  UNREACHABLE executed at clang/lib/AST/MicrosoftMangle.cpp:2551!

see comments on the PR.

> Partial fix for https://github.com/llvm/llvm-project/issues/92204.
> This PR just fixes VS2019+ since that is the suite of compilers that I
> require link compatibility with at the moment.
> I still intend to fix VS2017 and to update llvm-undname in future PRs.
> Once those are also finished and merged I'll close out
> https://github.com/llvm/llvm-project/issues/92204.
> I am hoping to get the llvm-undname PR up in a couple of weeks to be
> able to demangle the VS2019+ name mangling.
>
> MSVC 1920+ mangles placeholder return types for non-templated functions
> with "@".
> For example `auto foo() { return 0; }` is mangled as `?foo@@YA at XZ`.
>
> MSVC 1920+ mangles placeholder return types for templated functions as
> the qualifiers of the AutoType followed by "_P" for `auto` and "_T" for
> `decltype(auto)`.
> For example `template<class T> auto foo() { return 0; }` is mangled as
> `??$foo at H@@YA?A_PXZ` when `foo` is instantiated as follows `foo<int>()`.
>
> Lambdas with placeholder return types are still mangled with clang's
> custom mangling since MSVC lambda mangling hasn't been deciphered yet.
> Similarly any pointers in the return type with an address space are
> mangled with clang's custom mangling since that is a clang extension.
>
> We cannot augment `mangleType` to support this mangling scheme as the
> mangling schemes for variables and functions differ.
> auto variables are encoded with the fully deduced type where auto return
> types are not.
> The following two functions with a static variable are mangled the same
> ```
> template<class T>
> int test()
> {
>     static int i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
>     return i;
> }
>
> template<class T>
> int test()
> {
>     static auto i = 0; // "?i@?1???$test at H@@YAHXZ at 4HA"
>     return i;
> }
> ```
> Inside `mangleType` once we get to mangling the `AutoType` we have no
> context if we are from a variable encoding or some other encoding.
> Therefore it was easier to handle any special casing for `AutoType`
> return types with a separate function instead of using the `mangleType`
> infrastructure.

This reverts commit e0d173d44161bf9b68243845666d58999e74f759
and the wollow-up fa343be414f9364911b947f109f3df5539e23068.


  Commit: 36231a5b5525b950daf1b7430859061b31a8e01e
      https://github.com/llvm/llvm-project/commit/36231a5b5525b950daf1b7430859061b31a8e01e
  Author: David Green <david.green at arm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/test/CodeGen/AArch64/machine-outliner-unsafe-stack-call.mir
    A llvm/test/CodeGen/AArch64/verify-memop.mir

  Log Message:
  -----------
  [AArch64] Add verification for MemOp immediate ranges (#97561)

This adds an implementation of AArch64InstrInfo::verifyInstruction for
AArch64, and adds some basic verification of the range of immediate
ranges of memory operations using the information from getMemOpInfo.

Some extra memory operations have been added to getMemOpInfo, along with
the equivalent opcodes to getLoadStoreImmIdx to ensure we use the
correct index.

Please let us know if this starts reporting verification failures, Thanks.


  Commit: 33190490c667aaf8b08d5af8b8ce84524f856e80
      https://github.com/llvm/llvm-project/commit/33190490c667aaf8b08d5af8b8ce84524f856e80
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/large-offset-ldr-merge.mir

  Log Message:
  -----------
  [AArch64] merge index address with large offset into base address

A case for this transformation, https://gcc.godbolt.org/z/nhYcWq1WE
Fold
  mov     w8, #56952
  movk    w8, #15, lsl #16
  ldrb    w0, [x0, x8]
into
  add     x0, x0, 1036288
  ldrb    w0, [x0, 3704]

Only LDRBBroX is supported for the first time.
Fix https://github.com/llvm/llvm-project/issues/71917

Note: This PR is try relanding the commit 32878c2065 with fix crash for PR79756
  this crash is exposes when there is MOVKWi instruction in the head of a block,
but without MOVZWi


  Commit: 43ffe2eed0d9f73789dbe213023733d164999306
      https://github.com/llvm/llvm-project/commit/43ffe2eed0d9f73789dbe213023733d164999306
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll

  Log Message:
  -----------
  [AArch64] Fold more load.x into load.i with large offset

The list of load.x is refer to canFoldIntoAddrMode on D152828.
Also support LDRSroX missed in canFoldIntoAddrMode


  Commit: 79658d65c3c7a075382b74d81e74714e2ea9bd2d
      https://github.com/llvm/llvm-project/commit/79658d65c3c7a075382b74d81e74714e2ea9bd2d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  InferAddressSpaces: Make getPredicatedAddrSpace less confusing (#104052)

This takes a pointer value and the user instruction. Name them as
such, and remove the null check which should be dead.


  Commit: 100c9c019cebf49427d9f3ea93db65f7e448a102
      https://github.com/llvm/llvm-project/commit/100c9c019cebf49427d9f3ea93db65f7e448a102
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/IR/DataLayout.cpp

  Log Message:
  -----------
  [DataLayout] Add helper predicates to sort specifications (NFC) (#104417)


  Commit: 43ba1097ee747b4ec5e757762ed0c9df6255a292
      https://github.com/llvm/llvm-project/commit/43ba1097ee747b4ec5e757762ed0c9df6255a292
  Author: Hua Tian <akiratian at tencent.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-live-intervals.mir

  Log Message:
  -----------
  [llvm][CodeGen] Resolve issues when updating live intervals in window scheduler (#101945)

Corrupted live interval information can cause window scheduling to crash
in some cases. By adding the missing MBB's live interval information in the
ModuloScheduleExpander, the information can be correctly analyzed in 
the window scheduler.


  Commit: 91ffc12a820164bdebb1a388b5d7f41a6f25ce04
      https://github.com/llvm/llvm-project/commit/91ffc12a820164bdebb1a388b5d7f41a6f25ce04
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/functions.cpp

  Log Message:
  -----------
  [clang][Interp] Pass callee decl to null_callee diagnostics (#104426)

The callee is null, not the full call expression.


  Commit: 7898866065f6c9b72b5fa3e45e565baf8a5e7609
      https://github.com/llvm/llvm-project/commit/7898866065f6c9b72b5fa3e45e565baf8a5e7609
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/tools/lldb-dap/package-lock.json
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-dap/src-ts/extension.ts

  Log Message:
  -----------
  [lldb-dap] Expose log path in extension settings (#103482)

lldb-dap already supports a log file which can be enabled by setting the
`LLDBDAP_LOG` environment variable. With this commit, the log location
can be set directly through the VS-Code extension settings.

Also, this commit bumps the version number, such that the new VS Code
extension gets published to the Marketplace.


  Commit: 57a19ac3365f1dc255e6f24fcb7afcde2ccef8f9
      https://github.com/llvm/llvm-project/commit/57a19ac3365f1dc255e6f24fcb7afcde2ccef8f9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

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

The only change vs. the first version of the patch is that I've made
DWARFUnit linking thread-safe/unit. This was necessary because, during
the
indexing step, two skeleton units could attempt to associate themselves
with the split unit.

The original commit message was:

I ran into this when LTO completely emptied two compile units, so they
ended up with the same hash (see #100375). Although, ideally, the
compiler would try to ensure we don't end up with a hash collision even
in this case, guaranteeing their absence is practically impossible. This
patch ensures this situation does not bring down lldb.


  Commit: 2e9f3f3b842538b55552aa22fdc0bf1966637ca8
      https://github.com/llvm/llvm-project/commit/2e9f3f3b842538b55552aa22fdc0bf1966637ca8
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    A llvm/test/tools/llvm-split/AMDGPU/declarations-debug.ll

  Log Message:
  -----------
  [AMDGPU][llvm-split] Fix another division by zero (#104421)

Somehow I missed this in #98888. It requires a log file, or the debug
flag to be passed.


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/basic.ll

  Log Message:
  -----------
  InferAddressSpaces: Restore non-instruction user check

Fixes regression after 79658d65c3c7a075382b74d81e74714e2ea9bd2d.
We were missing test coverage for the nested constant expression
case.


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

  Changed paths:
    M clang/lib/AST/Interp/Program.cpp
    M clang/lib/AST/Interp/Record.cpp
    M clang/test/Modules/enum-codegen.cpp

  Log Message:
  -----------
  [clang][Interp] Use first field decl for Record field lookup (#104412)


  Commit: 42555cdba48b7d6d27c9a7d5c730733e66dec9a1
      https://github.com/llvm/llvm-project/commit/42555cdba48b7d6d27c9a7d5c730733e66dec9a1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
    M llvm/test/Transforms/LoopVectorize/outer-loop-vec-phi-predecessor-order.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_hcfg_construction.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/vplan-vectorize-inner-loop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll

  Log Message:
  -----------
  [VPlan] Run VPlan optimizations on plans in native path.

Update buildVPlans (used in native path) to also run general VPlan
optimizations in another small step to align both codepaths.


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

  Changed paths:
    M libcxx/test/libcxx/language.support/support.dynamic/new_faligned_allocation.pass.cpp
    M libcxx/test/support/count_new.h

  Log Message:
  -----------
  [libcxx] Use `aligned_alloc` for testing instead of `posix_memalign` (#101748)

Summary:
The `aligned_alloc` function is the C11 replacement for
`posix_memalign`. We should favor the C standard over the POSIX standard
so more C library implementations can run the tests.


  Commit: 846f790216e1a0c40f8890d489904c3d716cc998
      https://github.com/llvm/llvm-project/commit/846f790216e1a0c40f8890d489904c3d716cc998
  Author: Tobias Stadler <mail at stadler-tobias.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h
    M llvm/lib/CodeGen/GlobalISel/Combiner.cpp

  Log Message:
  -----------
  [GlobalISel] Combiner: Observer-based DCE and retrying of combines

Continues the work for disabling fixed-point iteration in the Combiner
(#94291).

This introduces improved Observer-based heuristics in the
GISel Combiner to retry combining defs/uses of modified instructions and
for performing sparse dead code elimination.

I have experimented a lot with the heuristics and this seems to be the
minimal set of heuristics that allows disabling fixed-point iteration
for AArch64 CTMark O2 without regressions.
Enabling this globally would pass all regression tests for all official
targets (apart from small benign diffs), but I have made this fully
opt-in for now, because I can't quantify the impact for other targets.

This should mostly be on-par with how the WorkList-aware functions
in the InstCombiner and DAGCombiner handle rescheduling instructions
for recombining.

For performance numbers see my follow-up patch for AArch64 (#102167)

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


  Commit: bfce1aae76de05dd6ac9fbbd997295fe5aa280c0
      https://github.com/llvm/llvm-project/commit/bfce1aae76de05dd6ac9fbbd997295fe5aa280c0
  Author: Janek van Oirschot <janek.vanoirschot at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTUtils.h
    M llvm/test/MC/AMDGPU/amd_kernel_code_t.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx10.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx7.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx8.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx90a.s

  Log Message:
  -----------
  [AMDGPU] MCExpr printing helper with KnownBits support (#95951)

Walks over the MCExpr and uses KnownBits to deduce whether an expression
is known and if so, prints said known value. Should support the most
common MCExpr cases for AMDGPU metadata.


  Commit: d7aeea626dac64449fc67cf8ddf8f326a0157d91
      https://github.com/llvm/llvm-project/commit/d7aeea626dac64449fc67cf8ddf8f326a0157d91
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-prf.ll

  Log Message:
  -----------
  [AArch64] optimise SVE prefetch intrinsics with no active lanes (#103052)

This patch extends https://github.com/llvm/llvm-project/pull/73964 and
optimises away SVE prefetch intrinsics when predicate is zero.


  Commit: 82cf6558e50ea7fe024264cc2fb76ca20450fb82
      https://github.com/llvm/llvm-project/commit/82cf6558e50ea7fe024264cc2fb76ca20450fb82
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit tests for validating the merge base offset in vecotrs. NFC


  Commit: 569698443d2b1dad04dc4daa4559d754deabe64e
      https://github.com/llvm/llvm-project/commit/569698443d2b1dad04dc4daa4559d754deabe64e
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    R mlir/test/Dialect/GPU/subgroup-redule-lowering.mlir

  Log Message:
  -----------
  [mlir][gpu] Fix typo in test filename (#104053)

The word "redule" doesn't appear anywhere else in the MLIR codebase and
seems to be a typo of "reduce".


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

  Changed paths:
    M compiler-rt/test/profile/ContinuousSyncMode/darwin-proof-of-concept.c

  Log Message:
  -----------
  [CompilerRT][Tests] Fix profile/darwin-proof-of-concept.c (#104237)

Fix profile/darwin-proof-of-concept.c on AppleSilicon Mac where there is
a different page alignment. The previous fix to drop alignment is
actually breaking the tests on Apple Silicon Mac. Revert to the original
section alignment and requires an ARM64 target for this test to run.


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

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

  Log Message:
  -----------
  [CodeGen] Fix -Wcovered-switch-default in Combiner.cpp (NFC)

/llvm-project/llvm/lib/CodeGen/GlobalISel/Combiner.cpp:220:3:
error: default label in switch which covers all enumeration values [-Werror,-Wcovered-switch-default]
  default:
  ^
1 error generated.


  Commit: 026d963cb004689477d2b5798cbba5ad41c25a70
      https://github.com/llvm/llvm-project/commit/026d963cb004689477d2b5798cbba5ad41c25a70
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/Availability.h
    M clang/lib/AST/Availability.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    A clang/test/ExtractAPI/inherited_availability.m

  Log Message:
  -----------
  [clang][ExtractAPI] Compute inherited availability information (#103040)

Additionally this computes availability information for all platforms
ahead of possibly introducing a flag to enable this behavior.

rdar://123513706


  Commit: 6543bd718e6a4e4d6a8473b478f8a46d3eb1562a
      https://github.com/llvm/llvm-project/commit/6543bd718e6a4e4d6a8473b478f8a46d3eb1562a
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [DataLayout] Extract loop body into a function to reduce nesting (NFC) (#104420)

Also, use `iterator_range` version of `split`.

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


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

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC"

This reverts commit e1b15504a831e63af6fb9a6e83faaa10ef425ae6.

This causes compile-time regressions, see:
http://llvm-compile-time-tracker.com/compare.php?from=e687a9f2dd389a54a10456e57693f93df0c64c02&to=e1b15504a831e63af6fb9a6e83faaa10ef425ae6&stat=instructions:u

Probably some of the new SmallVector sizes are sub-optimal.


  Commit: 75cb7de404ee236d6297c551740a2681583d7e5e
      https://github.com/llvm/llvm-project/commit/75cb7de404ee236d6297c551740a2681583d7e5e
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A clang/test/CodeGen/bit-int-ubsan.c
    M compiler-rt/lib/ubsan/ubsan_value.cpp
    M compiler-rt/lib/ubsan/ubsan_value.h
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int-pass.c
    A compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  [ubsan] Display correct runtime messages for negative _BitInt (#96240)

Without this patch compiler-rt ubsan library has a bug displaying
incorrect values for variables of the _BitInt (previously called
_ExtInt) type. This patch affects affects both: generation of metadata
inside code generator and runtime part. The runtime part provided only
for i386 and x86_64 runtimes. Other runtimes should be updated to take
full benefit of this patch.
The patch is constructed the way to be backward compatible and int and
float type runtime diagnostics should be unaffected for not yet updated
runtimes.

This patch fixes issue
https://github.com/llvm/llvm-project/issues/64100.

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>


  Commit: 65ac12d3c9877ecf5b97552364e7eead887d94eb
      https://github.com/llvm/llvm-project/commit/65ac12d3c9877ecf5b97552364e7eead887d94eb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with incorrect minbitwidth analysis for reduced operands


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

  Changed paths:

  Log Message:
  -----------
  [GlobalISel] Combiner: Fix warning after #102163

Default case in covered switches is illegal.
https://llvm.org/docs/CodingStandards.html#don-t-use-default-labels-in-fully-covered-switches-over-enumerations

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


  Commit: 56140a8258a3498cfcd9f0f05c182457d43cbfd2
      https://github.com/llvm/llvm-project/commit/56140a8258a3498cfcd9f0f05c182457d43cbfd2
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll

  Log Message:
  -----------
  [SLP]Fix PR104422: Wrong value truncation

The minbitwidth restrictions can be skipped only for immediate reduced
values, for other nodes still need to check if external users allow
bitwidth reduction.

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


  Commit: 95daf1aedfe521704c601a26ad8011c6e237c38a
      https://github.com/llvm/llvm-project/commit/95daf1aedfe521704c601a26ad8011c6e237c38a
  Author: Snehasish Kumar <snehasishk at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/simplify-libcalls-new.ll

  Log Message:
  -----------
  Allow optimization of __size_returning_new variants. (#102258)

https://github.com/llvm/llvm-project/pull/101564 added support to TLI to
detect variants of operator new which provide feedback on the actual
size of memory allocated (http://wg21.link/P0901R5). This patch extends
SimplifyLibCalls to handle hot cold hinting of these variants.


  Commit: fcefe957ddfdc5a2fe9463757b597635e3436e01
      https://github.com/llvm/llvm-project/commit/fcefe957ddfdc5a2fe9463757b597635e3436e01
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/test/CodeGen/AMDGPU/scalarize-insert-subvector.ll

  Log Message:
  -----------
  [LegalizeTypes][AMDGPU]: Allow for scalarization of insert_subvector (#104236)

Legalization for when the inserted subvector is to be scalarized.

https://godbolt.org/z/vx3joWqoh


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p1.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang] Check explicit object parameter for defaulted operators properly (#100419)

Previously, the type of explicit object parameters was not considered
for relational operators. This was defined by CWG2586,
<https://cplusplus.github.io/CWG/issues/2586.html>. This fix also means
CWG2547 <https://cplusplus.github.io/CWG/issues/2547.html> is now fully
implemented. Fixes #100329, fixes #104413.

Now start rejecting invalid rvalue reference parameters, which weren't
checked for, and start accepting non-reference explicit object
parameters (like `bool operator==(this C, C) = default;`) which were
previously rejected for the object param not being a reference.

Also start rejecting non-reference explicit object parameters for
defaulted copy/move assign operators (`A& operator=(this A, const A&) =
default;` is invalid but was previously accepted). Fixes #104414.


  Commit: 2d52eb6a434fe47e67086f5ec1c3789bf6e7a604
      https://github.com/llvm/llvm-project/commit/2d52eb6a434fe47e67086f5ec1c3789bf6e7a604
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC


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

  Changed paths:
    M llvm/tools/llc/llc.cpp

  Log Message:
  -----------
  [NFC] Fix code line exceeding 80 columns (#104428)


  Commit: 11c2da8fb7dc4d5dede094fa61077827004a3997
      https://github.com/llvm/llvm-project/commit/11c2da8fb7dc4d5dede094fa61077827004a3997
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Narrow indices to e16 for LMUL > 1 when lowering vector_reverse (#104427)

The vector_shuffle lowering already does this to reduce register
pressure, so also do it here.


  Commit: 57abd4e4abb705a453134051743542de5fd396bc
      https://github.com/llvm/llvm-project/commit/57abd4e4abb705a453134051743542de5fd396bc
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    A clang/test/ExtractAPI/platform-serialization.c

  Log Message:
  -----------
  [clang][ExtractAPI] Emit environment component of target triple in SGF (#103273)

rdar://133533830


  Commit: 598970904736f3535939f6a5525022219e4ae517
      https://github.com/llvm/llvm-project/commit/598970904736f3535939f6a5525022219e4ae517
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_affinity.h
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_csupport.cpp
    M openmp/runtime/src/kmp_runtime.cpp
    M openmp/runtime/src/kmp_tasking.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/ompt-general.cpp

  Log Message:
  -----------
  [OpenMP] Miscellaneous small code improvements (#95603)

Removes a few uninitialized variables, possible resource leaks, and
redundant code.


  Commit: e63b7ba0eb497d10d643aa5e27461c6c1bf8e221
      https://github.com/llvm/llvm-project/commit/e63b7ba0eb497d10d643aa5e27461c6c1bf8e221
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/shl-factor.ll

  Log Message:
  -----------
  [InstCombine][NFC] Add tests for shifts of constants by common factor (#103471)


  Commit: 51328b78dc2b0be20e8d67f57f64445cec25162c
      https://github.com/llvm/llvm-project/commit/51328b78dc2b0be20e8d67f57f64445cec25162c
  Author: sp <james at rooted.gg>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp

  Log Message:
  -----------
  [NFC] Fix spelling of "definitely". (#104455)

This corrects the misspelling of "definitely" as "definately". No
functional changes.


  Commit: 64c856055aed97603510410fd2feab273e1d5b8a
      https://github.com/llvm/llvm-project/commit/64c856055aed97603510410fd2feab273e1d5b8a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Revert "[Object][x86-64] Add support for `R_X86_64_GLOB_DAT` relocations. (#103029)" (#103497)

This reverts commit 5ae9faa538d100ab38f6f4f99c924de0e4270272.

RelocationResolver is only supposed to handle static relocation types.
Introducing GLOB_DAT could negatively impact other RelocationResolver
users who solely handle static relocations and want to report errors for
dynamic relocations.

If GLOB_DAT is the sole required relocation, explicitly checking for it
in the caller would be more reliable. Additionally, the caller should
handle GLOB_DAT on other architectures.


  Commit: 46fb225f3ac602970ebb8973a5376cd9216ba38f
      https://github.com/llvm/llvm-project/commit/46fb225f3ac602970ebb8973a5376cd9216ba38f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstSimplify/fptoi-range.ll

  Log Message:
  -----------
  [InstSimplify] Add tests for f16 to i128 range (NFC)


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

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/Transforms/InstSimplify/fptoi-range.ll

  Log Message:
  -----------
  [ValueTracking] Fix f16 fptosi range for large integers

We were missing the signed flag on the negative value, so the
range was incorrectly interpreted for integers larger than 64-bit.

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


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

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Remove unused using declarations, reduce mem usage in containers, NFC"

This reverts commit 2d52eb6a434fe47e67086f5ec1c3789bf6e7a604 to fix
compile time regression found in https://llvm-compile-time-tracker.com/compare.php?from=fcefe957ddfdc5a2fe9463757b597635e3436e01&to=2d52eb6a434fe47e67086f5ec1c3789bf6e7a604&stat=instructions%3Au.


  Commit: 9e0ee0e104a2f10b04144837d6a138b04a0193f6
      https://github.com/llvm/llvm-project/commit/9e0ee0e104a2f10b04144837d6a138b04a0193f6
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M openmp/runtime/src/include/omp.h.var
    M openmp/runtime/src/include/omp_lib.F90.var
    M openmp/runtime/src/include/omp_lib.h.var
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_ftn_entry.h
    M openmp/runtime/src/kmp_runtime.cpp
    A openmp/runtime/test/ompt/misc/pause_stop_tool.c

  Log Message:
  -----------
  [OpenMP] Add support for pause with omp_pause_stop_tool (#97100)

This patch adds support for pause resource with a new enumerator
omp_pause_stop_tool. The expected behavior of this enumerator is
* omp_pause_resource: not allowed
* omp_pause_resource_all: equivalent to omp_pause_hard


  Commit: 6c270a8b9f1e1b80a6016aafb438db7dd89bcb99
      https://github.com/llvm/llvm-project/commit/6c270a8b9f1e1b80a6016aafb438db7dd89bcb99
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/test/Driver/sparc-target-features.c

  Log Message:
  -----------
  [SPARC][Driver] Add -m(no-)v8plus flags handling (#98713)

Implement handling for `-m(no-)v8plus` flags to allow the user to switch
between V8 and V8+ mode with 32-bit code.

Currently it only toggles the V8+ feature bit, ABI and codegen changes
will be done in future patches.


  Commit: e61776a0edce86ef01efaa708f43476c58173cae
      https://github.com/llvm/llvm-project/commit/e61776a0edce86ef01efaa708f43476c58173cae
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    A llvm/test/tools/llvm-readobj/ELF/Sparc/elf-headers.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [SPARC][Utilities] Add names for SPARC ELF flags in LLVM binary utilities (#102843)

This allows us to use and print readable names in LLVM binary utilities.


  Commit: 54154f9f06e08b7ab3c7294352601ca4c6e5e160
      https://github.com/llvm/llvm-project/commit/54154f9f06e08b7ab3c7294352601ca4c6e5e160
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  Fix single thread stepping timeout race condition (#104195)

This PR fixes a potential race condition in
https://github.com/llvm/llvm-project/pull/90930.

This race can happen because the original code set `m_info->m_isAlive =
true` **after** the timer thread is created. So if there is a context
switch happens and timer thread checks `m_info->m_isAlive` before main
thread got a chance to run `m_info->m_isAlive = true`, the timer thread
may treat `ThreadPlanSingleThreadTimeout` as not alive and simply exit
resulting in async interrupt never being sent to resume all threads
(deadlock).

The PR fixes the race by initializing all states **before** worker timer
thread creates.

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


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

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

  Log Message:
  -----------
  [bazel] Enable more lit self tests (#104285)

I assume the intent of the initial `*/*.py` was to also collect things
in `*.py`, but that's not what bazel does unless you use `**/*.py` which
is what we're doing now. A few of these tests fail so I explicitly
disabled them until someone has time to debug.


  Commit: d68d2172f9f1f0659b8b4bdbbeb1ccd290a614b5
      https://github.com/llvm/llvm-project/commit/d68d2172f9f1f0659b8b4bdbbeb1ccd290a614b5
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    A llvm/test/Transforms/InstCombine/lshr-ashr-of-uscmp.ll

  Log Message:
  -----------
  [InstCombine] Fold `ucmp/scmp(x, y) >> N` to `zext/sext(x < y)` when N is one less than the width of the result of `ucmp/scmp` (#104009)

Proof: https://alive2.llvm.org/ce/z/4diUqN

---------

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


  Commit: 062e69a647c7ea0bc3441223648f9989490abb7a
      https://github.com/llvm/llvm-project/commit/062e69a647c7ea0bc3441223648f9989490abb7a
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Semantics/OpenMP/complex.f90
    A flang/test/Semantics/OpenMP/present.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix 2 more regressions after #101009 (#101538)

PR #101009 exposed a semantic check issue with OPTIONAL dummy
arguments.
Another issue occurred when using %{re,im,len,kind}, as these also
need to be skipped when handling variables with implicitly defined
DSAs.

These issues were found by Fujitsu testsuite.


  Commit: e398da2b37fcc2696e1f5c661e5372844f4e1550
      https://github.com/llvm/llvm-project/commit/e398da2b37fcc2696e1f5c661e5372844f4e1550
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    R clang/test/CodeGen/overflow-idiom-exclusion-fp.c

  Log Message:
  -----------
  Revert "[Clang] Overflow Pattern Exclusions (#100272)"

This reverts commit 9a666deecb9ff6ca3a6b12e6c2877e19b74b54da.

Reason: broke buildbots

e.g., fork-ubsan.test started failing at
https://lab.llvm.org/buildbot/#/builders/66/builds/2819/steps/9/logs/stdio

  Clang :: CodeGen/compound-assign-overflow.c
  Clang :: CodeGen/sanitize-atomic-int-overflow.c
started failing with https://lab.llvm.org/buildbot/#/builders/52/builds/1570


  Commit: 7332713b8eea9bb84d8481376f62b8de7c0ddb3a
      https://github.com/llvm/llvm-project/commit/7332713b8eea9bb84d8481376f62b8de7c0ddb3a
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang] prevent null explicit object argument from being deduced (#104328)

Fixes #102025


  Commit: 29b0a251c14b248848f2bbad1618b66a0c173336
      https://github.com/llvm/llvm-project/commit/29b0a251c14b248848f2bbad1618b66a0c173336
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-objdump/XCOFF/private-headers.test
    M llvm/tools/llvm-objdump/XCOFFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Print out  xcoff file header for xcoff object file with option private-headers (#96350)

Print out the XCOFF file header and load section header for the XCOFF
object file using llvm-objdump with the --private-headers option.


  Commit: 75ea8e803a6560b5e16644bb25d6340926156503
      https://github.com/llvm/llvm-project/commit/75ea8e803a6560b5e16644bb25d6340926156503
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/test/AST/Interp/lifetimes.cpp

  Log Message:
  -----------
  [clang][Interp] Call move function for certain primitive types (#104437)


  Commit: 7493ea22f8027dc163ca521a71150d264891853c
      https://github.com/llvm/llvm-project/commit/7493ea22f8027dc163ca521a71150d264891853c
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/bit-int-ubsan.c

  Log Message:
  -----------
  [test]Fix test error due to CRT dependency (#104462)

Remove CRT dependency in headers stdint.h, stdio.h inside test
clang/test/CodeGen/bit-int-ubsan.c

---------

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>


  Commit: 52337d5f9d108f04b2ed06069b21a255c232dc1f
      https://github.com/llvm/llvm-project/commit/52337d5f9d108f04b2ed06069b21a255c232dc1f
  Author: Tim Northover <t.p.northover at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-objdump/macho-stabs-in-syms.yaml
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
  llvm-objdump: ensure a MachO symbol isn't STAB before looking up secion (#86667)

The section field has been repurposed for some STAB symbol types, and if
we blindly look it up we'll produce an error and terminate. Logic
already existed

Existing stabs test had a section that was in range. Unfortunately I
don't know of an easy way to produce stabs entries in LLVM (I thought
they died in the 90s until this came up) so I just binary-edited it to
cause a failure on existing llvm-objdump.


  Commit: 47721d46187f89c12a13d07b5857496301cf5d6e
      https://github.com/llvm/llvm-project/commit/47721d46187f89c12a13d07b5857496301cf5d6e
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/CompileUnit.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/FileSpecList.h
    A lldb/include/lldb/Utility/RealpathPrefixes.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Symbol/CompileUnit.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/source/Utility/CMakeLists.txt
    M lldb/source/Utility/FileSpecList.cpp
    A lldb/source/Utility/RealpathPrefixes.cpp
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/Makefile
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/TestBreakpoint.py
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/main.c
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/bar.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/real/qux.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink1/foo.h
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/symlink2
    A lldb/test/API/functionalities/breakpoint/breakpoint_with_realpath_and_source_map/to-be-mapped/README.md
    M lldb/unittests/Core/CMakeLists.txt
    R lldb/unittests/Core/FileSpecListTest.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/FileSpecListTest.cpp
    A lldb/unittests/Utility/MockSymlinkFileSystem.h
    A lldb/unittests/Utility/RealpathPrefixesTest.cpp

  Log Message:
  -----------
  [lldb] Realpath symlinks for breakpoints (#102223)

Improve the chance of resolving file/line breakpoints by realpath'ing the support files before doing a second match attempt, with some conditions applied.

A working [hello-world example](https://github.com/royitaqi/lldb_demos/blob/main/realpath/README.md).

See [patch](https://github.com/llvm/llvm-project/pull/102223) for more info about problem/motivation, details of the feature, new settings, telemetries and tests.


  Commit: 7ab2d504a1b30ce7a1338d23b0f443c8b24f94c4
      https://github.com/llvm/llvm-project/commit/7ab2d504a1b30ce7a1338d23b0f443c8b24f94c4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 47721d46187f


  Commit: 6cbd96e24c6a60cbc3dbb849d2ed7afc39c77a80
      https://github.com/llvm/llvm-project/commit/6cbd96e24c6a60cbc3dbb849d2ed7afc39c77a80
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/test/Parser/attr-order.cpp

  Log Message:
  -----------
  [Clang] handle both gnu and cpp11 attributes to ensure correct parsing inside extern block (#102864)

Fixes #101990


  Commit: 85da39debd8ee8c3186d88b462a924ea57b812ec
      https://github.com/llvm/llvm-project/commit/85da39debd8ee8c3186d88b462a924ea57b812ec
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/uninitialized_algorithms.h

  Log Message:
  -----------
  [libc++] Remove the allocator<const T> extension (#102655)

In LLVM 19 removed the extension with an opt-in macro. This finally
removes that option too and removes a few `const_cast`s where I know
that they exist only to support this extension.


  Commit: 8ffdc8765661b2f6e6fed32de9fd95c76ff7dc9f
      https://github.com/llvm/llvm-project/commit/8ffdc8765661b2f6e6fed32de9fd95c76ff7dc9f
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port 47721d46187f89c12a13d07b5857496301cf5d6e (#104481)

Made more difficult by many header circular dependencies


  Commit: 6bbbd301473a14a52d7ea1c5dae38ee20f97f1f2
      https://github.com/llvm/llvm-project/commit/6bbbd301473a14a52d7ea1c5dae38ee20f97f1f2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/tools/llvm-objdump/XCOFFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Fix a warning

This patch fixes:

  llvm/tools/llvm-objdump/XCOFFDump.cpp:85:12: error: unused variable
  'BytesFormatted' [-Werror,-Wunused-variable]


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

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw for __builtin_amdgcn_global_atomic_fadd_{f32|f64} (#96872)

Need to emit syncscope and new metadata to get the native instruction,
most of the time.


  Commit: 2b0a8fcf702fb63fca8ec6e11dca35baf70f058d
      https://github.com/llvm/llvm-project/commit/2b0a8fcf702fb63fca8ec6e11dca35baf70f058d
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclFriend.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/ODRHash.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/AST/ast-dump-funcs-json.cpp
    A clang/test/AST/cxx2c-variadic-friends.cpp
    A clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/Lexer/cxx-features.cpp
    A clang/test/Parser/cxx2c-variadic-friends-ext-diags.cpp
    A clang/test/Parser/cxx2c-variadic-friends.cpp
    A clang/test/SemaCXX/cxx2c-variadic-friends.cpp
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Implement C++26’s P2893R3 ‘Variadic friends’ (#101448)

Implement P2893R3 ‘Variadic friends’ for C++26.

This closes #98587.

Co-authored-by: Younan Zhang <zyn7109 at gmail.com>


  Commit: 932538199818554cee7347c17de3f4e004b75257
      https://github.com/llvm/llvm-project/commit/932538199818554cee7347c17de3f4e004b75257
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/test/CodeGen/PowerPC/merge-private.ll
    M llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll
    M llvm/test/DebugInfo/Symbolize/XCOFF/xcoff-symbolize-data.ll

  Log Message:
  -----------
  [PowerPC][GlobalMerge] Enable GlobalMerge by default on AIX (#101226)

This patch turns on the GlobalMerge pass by default on AIX and updates
LIT tests accordingly.


  Commit: 3dea42f3e5edc5a571081b7c5d58cce2fc4b2671
      https://github.com/llvm/llvm-project/commit/3dea42f3e5edc5a571081b7c5d58cce2fc4b2671
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [TargetLowering] Don't call SelectionDAG::getTargetLoweringInfo() from TargetLowering methods. NFC (#104197)

If we are inside a TargetLowering method,
`SelectionDAG::getTargetLoweringInfo()` should be the same as `this`.


  Commit: 9aa3b53ac52167aba6253a52805874948ce40c8f
      https://github.com/llvm/llvm-project/commit/9aa3b53ac52167aba6253a52805874948ce40c8f
  Author: Ziqing Luo <ziqing at udel.edu>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-in-container-span-construct.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix a small bug recently found (#102953)

`QualType::isConstantArrayType()` checks canonical type. So a following
cast should be applied to canonical type as well:

```
if (Ty->isConstantArrayType())
  cast<ConstantArrayType>(Ty.getCanonicalType());  //  cast<ConstantArrayType>(Ty) is incorrect
```


  Commit: 1d5c2ad4f15f250a0b71495543c5626581a58a7a
      https://github.com/llvm/llvm-project/commit/1d5c2ad4f15f250a0b71495543c5626581a58a7a
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp

  Log Message:
  -----------
  Reapply "Fix prctl to handle PR_GET_PDEATHSIG. (#101749)" (#104469)

Reapply with a fix. The fix is changing the arg2 type from u64 to int. 

This reverts commit 046524e8fe425cbc86c3371f2bf29fbb39d98435.


  Commit: 16f4e85860efcccbadca5d0a00a3872244efae08
      https://github.com/llvm/llvm-project/commit/16f4e85860efcccbadca5d0a00a3872244efae08
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  Revert "[sanitizer] Remove GetCurrentThread nullness checks from Allocate"

This reverts commit 4411d1e3926d67c393e6a7bdb910bbe77507ff26 for
breaking Darwin bots:
  AddressSanitizer-Unit :: ./Asan-x86_64-calls-Noinst-Test/10/16
  AddressSanitizer-Unit :: ./Asan-x86_64-calls-Noinst-Test/12/16
  AddressSanitizer-Unit :: ./Asan-x86_64-calls-Noinst-Test/13/16
  AddressSanitizer-Unit :: ./Asan-x86_64-inline-Noinst-Test/10/16
  AddressSanitizer-Unit :: ./Asan-x86_64-inline-Noinst-Test/12/16
  AddressSanitizer-Unit :: ./Asan-x86_64-inline-Noinst-Test/13/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-calls-Noinst-Test/10/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-calls-Noinst-Test/12/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-calls-Noinst-Test/13/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-inline-Noinst-Test/10/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-inline-Noinst-Test/12/16
  AddressSanitizer-Unit :: ./Asan-x86_64h-inline-Noinst-Test/13/16


  Commit: 55aa4ea1c7ff99aea69e07c9db6471f9ac31167a
      https://github.com/llvm/llvm-project/commit/55aa4ea1c7ff99aea69e07c9db6471f9ac31167a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/newhdrgen/yaml/math.yaml
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/atan2l.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/atan2l.cpp

  Log Message:
  -----------
  [libc] Add definition for `atan2l` on 64-bit long double platforms (#104489)

Summary:
This just adds `atan2l` for platforms that can implement it as an alias
to `atan2`.


  Commit: f377edb96abe9fd6fa458415f07b0f411e59cf24
      https://github.com/llvm/llvm-project/commit/f377edb96abe9fd6fa458415f07b0f411e59cf24
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/source/Utility/RealpathPrefixes.cpp

  Log Message:
  -----------
  (lldb) Fix PATH_MAX for Windows (#104493)

The build break was caused by a [previous
patch](https://github.com/llvm/llvm-project/pull/102223) using
`PATH_MAX` which is undefined in Windows.


  Commit: 062ae0427a99b0399483572a04eb055784e7fb0f
      https://github.com/llvm/llvm-project/commit/062ae0427a99b0399483572a04eb055784e7fb0f
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/SemaCXX/constexpr-vectors.cpp

  Log Message:
  -----------
  [Clang] [NFC] Rewrite constexpr vectors test to use element access (#102757)

Previously, this was using FileCheck to test against the emitted IR;
switch to using `static_assert`ions instead now that we can access
vector elements at compile-time.

Fixes #102463


  Commit: 50c876a486ebc1a8fbf6f20214b1cf914729c443
      https://github.com/llvm/llvm-project/commit/50c876a486ebc1a8fbf6f20214b1cf914729c443
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [nfc][ctx_prof] Remove the need for `PassBuilder` to know about `UseCtxProfile` (#104492)


  Commit: 2adc012c34b269f80a735c1ec2011f3a98175cbc
      https://github.com/llvm/llvm-project/commit/2adc012c34b269f80a735c1ec2011f3a98175cbc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store.mir

  Log Message:
  -----------
  [RISCV][GISel] Support nxv16p0 for RV32. (#101573)

Pointers are 32 bits on RV32 so nxv1p0 is lmul=mf2 and nxv16p0 is
lmul=m8.

Split the test so we can have different alignments and register class
sizes for rv32 and rv64 for the pointer tests.


  Commit: 6ec169d3501124770c3301dab8156c4640346c40
      https://github.com/llvm/llvm-project/commit/6ec169d3501124770c3301dab8156c4640346c40
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-15 (Thu, 15 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] Implement BinaryOperator (#104121)

This patch implements sandboxir::BinaryOperator mirroring
llvm::BinaryOperator.


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

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/MC/MCAsmInfoDarwin.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Replace HasAggressiveSymbolFolding with SetDirectiveSuppressesReloc. NFC

The variable and its comment could lead to confusion (AMDGPU
unnecessarily set it).


  Commit: 99a10f1fe8a7e4b0fdb4c6dd5e7f24f87e0d3695
      https://github.com/llvm/llvm-project/commit/99a10f1fe8a7e4b0fdb4c6dd5e7f24f87e0d3695
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsBPF.td
    M llvm/include/llvm/IR/IntrinsicsLoongArch.td
    M llvm/include/llvm/IR/IntrinsicsMips.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsSystemZ.td
    M llvm/include/llvm/IR/IntrinsicsVE.td
    M llvm/include/llvm/IR/IntrinsicsVEVL.gen.td
    M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
    M llvm/test/CodeGen/BPF/sockex2.ll
    A llvm/test/Transforms/DCE/intrinsics-bpf.ll
    A llvm/test/Transforms/DCE/intrinsics-loongarch.ll
    A llvm/test/Transforms/DCE/intrinsics-mips.ll
    A llvm/test/Transforms/DCE/intrinsics-nvvm.ll
    A llvm/test/Transforms/DCE/intrinsics-systemz.ll
    A llvm/test/Transforms/DCE/intrinsics-ve.ll
    A llvm/test/Transforms/DCE/intrinsics-wasm.ll
    R llvm/test/Transforms/DCE/nvvm-ldu-ldg-willreturn.ll

  Log Message:
  -----------
  Update load intrinsic attributes (#101562)

This patch adds default attributes to many intrinsics and the WillReturn
attribute to some as well. The defaults include WillReturn. The WillReturn
attribute is relevant for dead code elimination as intrinsics without
WillReturn are assumed to have side effects and cannot be removed even
if their return value is unused. It is also relevant for potential
changes to SDAG behavior regarding treatment of intrinsics that function
as loads.


  Commit: 290e4858fd3d1278ca8306da351f7ab89240306e
      https://github.com/llvm/llvm-project/commit/290e4858fd3d1278ca8306da351f7ab89240306e
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int-pass.c
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  [ubsan] Limit _BitInt ubsan tests to x86-64 platform only (#104494)

The patch https://github.com/llvm/llvm-project/pull/104462 broke Sun
Solaris build.
Limit the tests to the tested platform only.
Tests changed are
compiler-rt/test/ubsan/TestCases/Integer/bit-int-pass.c and
compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

---------

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>
Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>


  Commit: fcc318ff7960d7de8cbac56eb4f32b44b5261677
      https://github.com/llvm/llvm-project/commit/fcc318ff7960d7de8cbac56eb4f32b44b5261677
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Analysis/DXILResource.cpp
    R llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  Revert "[DXIL][Analysis] Implement enough of DXILResourceAnalysis for buffers" (#104504)

Reverts llvm/llvm-project#100699

This broke a few bots unfortunately.


  Commit: 89d0a5c9e8852444399645d474543730ca544ede
      https://github.com/llvm/llvm-project/commit/89d0a5c9e8852444399645d474543730ca544ede
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/resize_tls_dynamic.cpp

  Log Message:
  -----------
  [asan] De-prioritize VReport `DTLS_Find` (#104401)


  Commit: 274370d60332e76c374fd7bf87ade16319c2782c
      https://github.com/llvm/llvm-project/commit/274370d60332e76c374fd7bf87ade16319c2782c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/MC/MCAsmInfoDarwin.cpp

  Log Message:
  -----------
  MCAsmInfo: Replace some Mach-O specific check with isMachO(). NFC

`HasMachO*` might lure contributors to add other object file format
propery when it is not really necessary.


  Commit: 4e078e3797098daa40d254447c499bcf61415308
      https://github.com/llvm/llvm-project/commit/4e078e3797098daa40d254447c499bcf61415308
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/MC/MCAsmInfoDarwin.cpp

  Log Message:
  -----------
  [MC] Replace hasAltEntry() with isMachO()

All Mach-O targets have this property, so just remove this variable,
which could lure contributors to add unneeded object file format
specific properties.


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

  Changed paths:
    M flang/lib/Parser/provenance.cpp

  Log Message:
  -----------
  [flang] Make sure range is valid (#104281)

Attempt to solve #102495


  Commit: 99313575b6bb7d5acbe437c2022b6e5dc7f297f1
      https://github.com/llvm/llvm-project/commit/99313575b6bb7d5acbe437c2022b6e5dc7f297f1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix warning after #102953


  Commit: 9f1dc01e0ab4f91c4052a712ce590d2e86b81dc3
      https://github.com/llvm/llvm-project/commit/9f1dc01e0ab4f91c4052a712ce590d2e86b81dc3
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h

  Log Message:
  -----------
  [clang][NFC] Fix table of contents in `Sema.h`

Add APINotes and bounds safety to the table of contents, and move their declarations appropriately.


  Commit: c458e9e034b2c49a4b35eb732f08a30b338a9ae2
      https://github.com/llvm/llvm-project/commit/c458e9e034b2c49a4b35eb732f08a30b338a9ae2
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/test/SemaCXX/constexpr-vectors.cpp

  Log Message:
  -----------
  [Clang] Add target triple to fix failing test (#104513)

#102757 erroneously removed the target triple required for the test to
pass.


  Commit: c5b611a419ca8acab041ca52a94c6338bdcd1756
      https://github.com/llvm/llvm-project/commit/c5b611a419ca8acab041ca52a94c6338bdcd1756
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_location.py
    A clang/bindings/python/tests/cindex/test_source_range.py
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/CXSourceLocation.h
    M clang/lib/Basic/SourceManager.cpp
    M clang/tools/libclang/CXSourceLocation.cpp
    M clang/tools/libclang/libclang.map

  Log Message:
  -----------
  [libclang/python] Expose `clang_isBeforeInTranslationUnit` for `SourceRange.__contains__`

Add libclang function `clang_isBeforeInTranslationUnit` to allow checking the order between two source locations.
Simplify the `SourceRange.__contains__` implementation using this new function.
Add tests for `SourceRange.__contains__` and the newly added functionality.

Fixes #22617 
Fixes #52827


  Commit: 7156bcf2867f4ca98c8c9166e1ecb77daab08aa5
      https://github.com/llvm/llvm-project/commit/7156bcf2867f4ca98c8c9166e1ecb77daab08aa5
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    A llvm/test/Transforms/Attributor/reduced/aapointer_info_map_invalidation.ll

  Log Message:
  -----------
  [Attributor][FIX] Ensure we do not use stale references (#104495)

When copying map entries, we might run into resizing and invalidate the
RHS of the assignment. We dealt with this before and now use the proper
helper to avoid the problem in another place.

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


  Commit: 3333ec1183803fa5a2353e710b8b22db6a72e292
      https://github.com/llvm/llvm-project/commit/3333ec1183803fa5a2353e710b8b22db6a72e292
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/test/Driver/msse2avx.c
    M clang/tools/driver/cc1as_main.cpp

  Log Message:
  -----------
  [Driver] Make CodeGenOptions name match MCTargetOptions names

* Initialize `X86RelaxRelocations`.
* Fix #96860 test to actually test -Wa,-msse2avx for non-x86.


  Commit: 157c3fb8c794eaade5fb2a9b08a27c912603b085
      https://github.com/llvm/llvm-project/commit/157c3fb8c794eaade5fb2a9b08a27c912603b085
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FEnvImpl.h

  Log Message:
  -----------
  [libc] Make sure we have RISC-V f or d extension before using it (#104476)

This matches what we do for other architectures.


  Commit: 3c0a4f2645288e600e31c6753e9d237b3edb4542
      https://github.com/llvm/llvm-project/commit/3c0a4f2645288e600e31c6753e9d237b3edb4542
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [asan] Reduce priority of "contiguous_container:" VPrintf (#104402)

They are quite noisy in used in test application.


  Commit: 1f0834ad7192d8a73bbf15bb4ad8aa71f9a92ec6
      https://github.com/llvm/llvm-project/commit/1f0834ad7192d8a73bbf15bb4ad8aa71f9a92ec6
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h

  Log Message:
  -----------
  [NFC][sanitizer] Use `UNLIKELY` in VReport/VPrintf (#104403)


  Commit: 6dcfc84e903ca6b0fb652962bdbd054a05befc2b
      https://github.com/llvm/llvm-project/commit/6dcfc84e903ca6b0fb652962bdbd054a05befc2b
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [docs] Stress out the branch naming scheme for Graphite. (#104499)

This should make this nuance more discoverable, if the user's first instinct is to search for "Graphite" rather than "stacked reviews"


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

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/ohos.c
    M clang/test/Driver/relax.c

  Log Message:
  -----------
  [Driver] Reject -Wa,-mrelax-relocations= for non-x86

Similar to other target-specific -Wa, options.


  Commit: 572943e79080962cd70d30fe58a17a8bd0579fd7
      https://github.com/llvm/llvm-project/commit/572943e79080962cd70d30fe58a17a8bd0579fd7
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/API/SBThread.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.h
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py
    A lldb/test/API/python_api/sbsavecoreoptions/basic_minidump.yaml
    A lldb/test/API/python_api/sbsavecoreoptions/basic_minidump_different_pid.yaml

  Log Message:
  -----------
  [LLDB] Reapply #100443 SBSaveCore Thread list (#104497)

Reapply #100443 and #101770. These were originally reverted due to a
test failure and an MSAN failure. I changed the test attribute to
restrict to x86 (following the other existing tests). I could not
reproduce the test or the MSAN failure and no repo steps were provided.


  Commit: 039a86d057b144c963f7a30f9b4b8d3da200576d
      https://github.com/llvm/llvm-project/commit/039a86d057b144c963f7a30f9b4b8d3da200576d
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Use significant bits helpers in narrowing of build vectors [nfc] (#104511)


  Commit: 3e1d4ec671c59204e3e556cc58fd948894af1e1b
      https://github.com/llvm/llvm-project/commit/3e1d4ec671c59204e3e556cc58fd948894af1e1b
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
    A llvm/include/llvm/ExecutionEngine/Orc/LoadRelocatableObject.h
    A llvm/include/llvm/ExecutionEngine/Orc/MachO.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
    A llvm/lib/ExecutionEngine/Orc/LoadRelocatableObject.cpp
    A llvm/lib/ExecutionEngine/Orc/MachO.cpp
    A llvm/test/ExecutionEngine/JITLink/Generic/MachO_universal_binaries.test
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC] loadRelocatableObject: universal binary support, clearer errors (#104406)

ORC supports loading relocatable object files into a JIT'd process. The
raw "add object file" API (ObjectLayer::add) accepts plain relocatable
object files as llvm::MemoryBuffers only and does not check that the
object file's format or architecture are compatible with the process
that it will be linked in to. This API is flexible, but places the
burden of error checking and universal binary support on clients.

This commit introduces a new utility, loadRelocatableObject, that takes
a path to load and a target triple and then:
1. If the path does not exist, returns a FileError containing the
invalid path.
2. If the path points to a MachO universal binary, identifies and
returns MemoryBuffer covering the slice that matches the given triple
(checking that the slice really does contains a valid MachO relocatable
object with a compatible arch).
3. If the path points to a regular relocatable object file, verifies
that the format and architecture are compatible with the triple.

Clients can use loadRelocatableObject in the common case of loading
object files from disk to simplify their code.

Note: Error checking for ELF and COFF is left as a FIXME.

rdar://133653290


  Commit: ec29660c44e5e73d3b78f4884f9178036563fb25
      https://github.com/llvm/llvm-project/commit/ec29660c44e5e73d3b78f4884f9178036563fb25
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-15 (Thu, 15 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] Implement UnaryOperator (#104509)

This patch implements sandboxir::UnaryOperator mirroring
llvm::UnaryOperator.


  Commit: 9d63a09b452b641e3cc5d88066464b8250bd2bf7
      https://github.com/llvm/llvm-project/commit/9d63a09b452b641e3cc5d88066464b8250bd2bf7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/arm-target-as-mimplicit-it.s
    M clang/test/Driver/relax.c

  Log Message:
  -----------
  [Driver] Improve error message for -Wa,-x=unknown


  Commit: 84efc8ed463cd0ae90ecd02418442cb62b9a3ad2
      https://github.com/llvm/llvm-project/commit/84efc8ed463cd0ae90ecd02418442cb62b9a3ad2
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    A .github/workflows/commit-access-review.py
    A .github/workflows/commit-access-review.yml

  Log Message:
  -----------
  [workflows] Add a new workflow for checking commit access qualifications (#93301)

This workflow produces a list of users that should be moved to the LLVM
Triagers team. An admin will review the list and then manually move
people to the LLVM Triagers Team.

I've also added some documentation to the Developer Policy about the
Triage Role.

See
https://discourse.llvm.org/t/rfc2-new-criteria-for-commit-access/77110
for more details.


  Commit: 68f6e7467651f38e0b97343bfbc49e0ce69eaedf
      https://github.com/llvm/llvm-project/commit/68f6e7467651f38e0b97343bfbc49e0ce69eaedf
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_flags.inc
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/test/asan/TestCases/Linux/initialization-nobug-lld.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicators.cpp
    M compiler-rt/test/asan/TestCases/initialization-nobug.cpp

  Log Message:
  -----------
  [asan] Remove debug tracing from `report_globals` (#104404)

Printing globals registration is internal debug
tracing and should be controlled with verbosity.


  Commit: 4695c16a62261ce85ba28098f402ebcfb72798e9
      https://github.com/llvm/llvm-project/commit/4695c16a62261ce85ba28098f402ebcfb72798e9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 3e1d4ec671c5


  Commit: 26670e7fa4f032a019d23d56c6a02926e854e8af
      https://github.com/llvm/llvm-project/commit/26670e7fa4f032a019d23d56c6a02926e854e8af
  Author: royitaqi <royitaqi at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M lldb/include/lldb/lldb-private-types.h
    M lldb/source/Utility/RealpathPrefixes.cpp
    M lldb/unittests/Utility/FileSpecListTest.cpp
    M lldb/unittests/Utility/RealpathPrefixesTest.cpp

  Log Message:
  -----------
  [lldb] Correctly fix a usage of `PATH_MAX`, and fix unit tests (#104502)

# Part 1: Correctly fix a usage of `PATH_MAX`

TL;DR: Adding a typedef `lldb_private::PathSmallString` which contains a
hardcoded initial size (128).

# Part 2: Fix unit tests

After https://github.com/llvm/llvm-project/pull/104493 fixed the build
break for Windows, unit test failure showed up for Windows. The
root-cause is that the `FileSpec`'s in the unit tests are not
style-specific. The fix is to apply either `WindowsSpec` or `PosixSpec`
specifically.


  Commit: 812e049ac1c2424f96746ac4c453d6255b0a6ca5
      https://github.com/llvm/llvm-project/commit/812e049ac1c2424f96746ac4c453d6255b0a6ca5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/crel.c

  Log Message:
  -----------
  [Driver] Correctly handle -Wa,--crel -Wa,--no-crel

Follow-up to #97378


  Commit: 5d48248755f41245be031791ff6ea7a79a5a8912
      https://github.com/llvm/llvm-project/commit/5d48248755f41245be031791ff6ea7a79a5a8912
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    A flang/test/HLFIR/maxval-elemental.fir
    A flang/test/HLFIR/minval-elemental.fir

  Log Message:
  -----------
  [flang] Inline minval/maxval over elemental/designate (#103503)

This PR intends to optimize away `hlfir.elemental` operations, which
leave temporary buffers (`allocmem`) in FIR. We typically see elemental
operations in the arguments of reduction intrinsics, so extending
`OptimizedBufferization` shall be the first solution to get heap-free
code.

Here we newly handle `minval`/`maxval` along with other reduction
intrinsics. Those functions over elemental become do loops. Furthermore,
we take the same action with `hlfir.designate` in order to inline more
intrinsics, which otherwise call runtime routines.


  Commit: 6992c09dc9a99215e2a426d2524c0e12f11a7b57
      https://github.com/llvm/llvm-project/commit/6992c09dc9a99215e2a426d2524c0e12f11a7b57
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt

  Log Message:
  -----------
  [ORC] Add missing dependence on BinaryFormat library.

Commit 3e1d4ec671 introduced a dependence on BinaryFormat, but CMakeLists.txt
was not updated to include it.


  Commit: da25e08a4c8d5869ca66b1ff6ca3dbc291eea6e8
      https://github.com/llvm/llvm-project/commit/da25e08a4c8d5869ca66b1ff6ca3dbc291eea6e8
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/aarch64.c

  Log Message:
  -----------
  [builitins] Only try to use getauxval on Linux (#104047)

OpenBSD now has sys/auxv.h but does not use getauxval.


  Commit: 224b2800439ec0813a3fa861e98404624f18a6d7
      https://github.com/llvm/llvm-project/commit/224b2800439ec0813a3fa861e98404624f18a6d7
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/ExecutionEngine/JITLink/Generic/MachO_universal_binaries.test

  Log Message:
  -----------
  [ORC] Gate testcase for 3e1d4ec671c on x86-64 and aarch64 target support.

The testcase requires both of these targets.


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

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

  Log Message:
  -----------
  [CodeGen] Use a range-based for loop (NFC) (#104408)


  Commit: 3080c806712b59d5d9be6f9dedd02e0e02c32297
      https://github.com/llvm/llvm-project/commit/3080c806712b59d5d9be6f9dedd02e0e02c32297
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [PowerPC] Use range-based for loops (NFC) (#104410)


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

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp

  Log Message:
  -----------
  [llvm] Use llvm::any_of (NFC) (#104443)


  Commit: 217f5804ca7fe492910b4a001b06c420e5de1ba6
      https://github.com/llvm/llvm-project/commit/217f5804ca7fe492910b4a001b06c420e5de1ba6
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [Analysis] Use a range-based for loop (NFC) (#104445)


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

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/relax.c

  Log Message:
  -----------
  [Driver] Reject -Wa,-mrelax-relocations= for non-ELF


  Commit: 9088ac1e8335d32bed275fbd33f0cd1b9bd400d6
      https://github.com/llvm/llvm-project/commit/9088ac1e8335d32bed275fbd33f0cd1b9bd400d6
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/MicrosoftExtensions.cpp

  Log Message:
  -----------
  [Clang] [Sema] Error on reference types inside a union with msvc 1900+ (#102851)

Godbolt for reference: https://godbolt.org/z/ovKjvWc46

I can confirm that this extension is no longer valid in VS2017, VS2019
and VS2022 under `/permissive` and `/permissive-`

MSDN, https://learn.microsoft.com/en-us/cpp/porting/visual-cpp-what-s-new-2003-through-2015?view=msvc-170, says this extension was officially removed in VS2015.


  Commit: 293aa56ebce2a5f5eb97308364645f5685944a42
      https://github.com/llvm/llvm-project/commit/293aa56ebce2a5f5eb97308364645f5685944a42
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp

  Log Message:
  -----------
  [Sparc] Remove dead code (NFC) (#104264)


  Commit: 648f4d0658ab00cf1e95330c8811aaea9481a274
      https://github.com/llvm/llvm-project/commit/648f4d0658ab00cf1e95330c8811aaea9481a274
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-load.ll
    M llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-store.ll

  Log Message:
  -----------
  [ScalarizeMaskedMemIntr] Pre-commit tests for splat optimizations (#104527)

Commit tests that track the current behavior when the mask argument to a
llvm.masked.load or llvm.masked.store is a splat of a con-constant value
(that is, it does nothing special).


  Commit: c20e7b6fe105e4dffc8ecff77b03a049d327c567
      https://github.com/llvm/llvm-project/commit/c20e7b6fe105e4dffc8ecff77b03a049d327c567
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [HLSL] update default validator version to 1.8. (#104040)

Change default validator version to 1.8 in Options.td. 
Remove the default value set in HLSL.cpp.

Fixes #102963

This also helps #99910.


  Commit: 5f01fda4acae211fcf67b603a7c90bc557bc2aff
      https://github.com/llvm/llvm-project/commit/5f01fda4acae211fcf67b603a7c90bc557bc2aff
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [Bitcode] Use range-based for loops (NFC) (#104534)


  Commit: 019fbcc4d728895f0decab13738b5d89d01b1436
      https://github.com/llvm/llvm-project/commit/019fbcc4d728895f0decab13738b5d89d01b1436
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [mlir][tosa] Add missing check for new_shape of `tosa.reshape` (#104394)

This patch adds check for new_shape of `tosa.reshape`. Tensor dimension
with size less than -1 is invalid. Fix #103062.


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

  Changed paths:
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/unittests/Runtime/CUDA/CMakeLists.txt

  Log Message:
  -----------
  [flang][cuda] Add version in libCufRuntime name (#104506)


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr104480.ll

  Log Message:
  -----------
  [DAGCombiner] Don't let scalarizeBinOpOfSplats create illegal scalar MULHS/MULHU (#104518)

Type legalization lacks generic support for these operations. They are
normally only created when the type is legal. This scalarization case is
new.

We could update type legalization, but there some corner cases that make
it not straightforward. For example, if the promoted type isn't 2x the
narrow type we need to over promote.

Fixes #104480


  Commit: fe55c34d19628304e0ca6a0e14a0b786b93d0e02
      https://github.com/llvm/llvm-project/commit/fe55c34d19628304e0ca6a0e14a0b786b93d0e02
  Author: Zhaoshi Zheng <zhaoshiz at quicinc.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul-transpose-a.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/matmul.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/1d-depthwise-conv.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/fill-1d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/matmul.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_1d.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0_permute.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_1.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_1_permute.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dual_sparse_conv_2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/iterator-based-sqsum.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/lit.local.cfg
    M mlir/test/Integration/Dialect/SparseTensor/CPU/padded_sparse_conv_2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_abs.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_binary.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cast.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cmp.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_codegen_dim.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_codegen_foreach.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_collapse_shape.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex32.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex64.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_constant_to_sparse_tensor.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_1d_nwc_wcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_55.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nchw_fchw.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nhwc_hwcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d_ndhwc_dhwcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_block.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_dyn.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_element.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_ptr.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_sparse2dense.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_sparse2sparse.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_coo_test.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dilated_conv_2d_nhwc_hwcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dot.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_ds.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_empty.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand_shape.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_filter_conv2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_flatten.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_foreach_slices.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_generate.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_index.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_index_dense.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_1d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_2d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_mult_elt.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_reduction.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_simple.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_permute.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pooling_nhwc.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print_3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_quantized_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_prod.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_sum.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_min.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_prod.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reshape.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_rewrite_push_back.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_rewrite_sort_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_mm_fusion.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scale.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scf_nested.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_select.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_semiring_select.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sign.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sorted_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_storage.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_strided_conv_2d_nhwc_hwcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_c32.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tanh.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_mul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_transpose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_transpose_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_unary.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_vector_ops.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-vertical.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/multi-tile-transpose.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-f16f16f32.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-f32.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-f64.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-i8i8i32.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/ssve.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-setArmSVLBits.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile-fill.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/transfer-read-2d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/transfer-write-2d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/transpose.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-load-store.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-ops.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/arrays-of-scalable-vectors.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/contraction.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/scalable-interleave.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/sve.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/test-scalable-deinterleave.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/test-setArmVLBits.mlir
    M mlir/test/Integration/lit.local.cfg
    M mlir/test/lit.site.cfg.py.in

  Log Message:
  -----------
  [MLIR][test] Run SVE and SME Integration tests using qemu-aarch64 (#101568)

To run integration tests using qemu-aarch64 on x64 host, below flags are
added to the cmake command when building mlir/llvm:

      -DMLIR_INCLUDE_INTEGRATION_TESTS=ON \
      -DMLIR_RUN_ARM_SVE_TESTS=ON \
      -DMLIR_RUN_ARM_SME_TESTS=ON \
      -DARM_EMULATOR_EXECUTABLE="<...>/qemu-aarch64" \
      -DARM_EMULATOR_OPTIONS="-L /usr/aarch64-linux-gnu" \

-DARM_EMULATOR_MLIR_CPU_RUNNER_EXECUTABLE="<llvm_arm64_build_top>/bin/mlir-cpu-runner-arm64"
\
      -DARM_EMULATOR_LLI_EXECUTABLE="<llvm_arm64_build_top>/bin/lli" \
      -DARM_EMULATOR_UTILS_LIB_DIR="<llvm_arm64_build_top>/lib"

The last three above are prebuilt on, or cross-built for, an aarch64
host.

This patch introduced substittutions of "%native_mlir_runner_utils" etc. and use
them in SVE/SME integration tests. When configured to run using qemu-aarch64,
mlir runtime util libs will be loaded from ARM_EMULATOR_UTILS_LIB_DIR, if set.

Some tests marked with 'UNSUPPORTED: target=aarch64{{.*}}' are still run
when configured with ARM_EMULATOR_EXECUTABLE and the default target is
not aarch64.
A lit config feature 'mlir_arm_emulator' is added in
mlir/test/lit.site.cfg.py.in and to UNSUPPORTED list of such tests.


  Commit: ef6760116fa2fa21f78e7a3b499f77e1a3eb7b92
      https://github.com/llvm/llvm-project/commit/ef6760116fa2fa21f78e7a3b499f77e1a3eb7b92
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp

  Log Message:
  -----------
  [asan] Fix build breakage from report_globals change

https://github.com/llvm/llvm-project/pull/104404 broke the Windows
buildbot (https://lab.llvm.org/buildbot/#/builders/107/builds/1926).
This fixes forward by updating the flags in the tests accordingly.


  Commit: ac92dcc7562ca1c0b1ee84bcc678738aefbe5c18
      https://github.com/llvm/llvm-project/commit/ac92dcc7562ca1c0b1ee84bcc678738aefbe5c18
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Lower fixed reverse vector_shuffles through vector_reverse (#104461)

This teaches lowerVECTOR_REVERSE to handle fixed length vectors, and
then lowers reverse vector_shuffles through it.

The motiviation for this is to allow fixed length vectors to share a
potential optimization on vector_reverse in an upcoming patch (splitting
up LMUL > 1 vrgathers.vv)


  Commit: 0c02f6176242c37e6328255e396ccb717188c588
      https://github.com/llvm/llvm-project/commit/0c02f6176242c37e6328255e396ccb717188c588
  Author: nosba0957 <67941279+nosba0957 at users.noreply.github.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

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

  Log Message:
  -----------
  [RISCV][NFC] Fix typo: "wererenamed" to "were renamed" (#104530)

This commit corrects a typo in a comment from "wererenamed" to "were
renamed". No functional changes.


  Commit: 1900810b6fd7b913d04b23afd9cce7e83fff51d7
      https://github.com/llvm/llvm-project/commit/1900810b6fd7b913d04b23afd9cce7e83fff51d7
  Author: Wang Yaduo <wangyaduo at linux.alibaba.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll

  Log Message:
  -----------
  [RISCV] Simplify (srl (and X, Mask), Const) to TH_EXTU (#102802)


  Commit: 22219873987587d8b5d793ab5dea982a0887ac7c
      https://github.com/llvm/llvm-project/commit/22219873987587d8b5d793ab5dea982a0887ac7c
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Add scopes to conditional operator subexpressions (#104418)

We would otherwise try to destroy the variables from both branches after
the conditional operator was done.

However, doing so breaks the case where we create internal temporaries.
For those, add allocateTemporary(), which attaches the lifetime of the
temporary to the topmost scope. Since they never have record type, this
shouldn't create any issues.


  Commit: 698b42ccff69fde6509c6ad0baf262c257c039bb
      https://github.com/llvm/llvm-project/commit/698b42ccff69fde6509c6ad0baf262c257c039bb
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/test/Transforms/stack-arrays-hlfir.f90

  Log Message:
  -----------
  [flang][stack-arrays] Collect analysis results for OMP ws loops (#103590)

We missed collecting the analysis results for regions terminated with
`omp.yield`. This result in missing some opportunities for malloc
optimizations inside omp regions.


  Commit: 5cdd2042a01881decd71fbfb7a465e4927a854a3
      https://github.com/llvm/llvm-project/commit/5cdd2042a01881decd71fbfb7a465e4927a854a3
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Remove -riscv-v-vector-bits-max from reverse tests. NFC

There doesn't seem to be any difference in the output anymore between
the options.


  Commit: e4b24e68a2b55a59dc29700ae6a281c2d4665af0
      https://github.com/llvm/llvm-project/commit/e4b24e68a2b55a59dc29700ae6a281c2d4665af0
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Use shufflevector in shuffle reverse tests. NFC

Fixed length @llvm.vector.reverses are converted to vector_shuffle
nodes in SelectionDAGBuilder anyway, and this matches the name of the
test file.


  Commit: 8d71016eded39ee6a3d69a8219006f0327bea23c
      https://github.com/llvm/llvm-project/commit/8d71016eded39ee6a3d69a8219006f0327bea23c
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
    R llvm/test/CodeGen/RISCV/rvv/shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Merge shuffle reverse tests. NFC

shuffle-reverse.ll also tests reverse shuffles with two source
vectors, so copy them over.


  Commit: 4c77cc634d49782aceff77f7ec4e6183ec223020
      https://github.com/llvm/llvm-project/commit/4c77cc634d49782aceff77f7ec4e6183ec223020
  Author: Luke Boyer <lukeboyer4 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/lib/IR/Operation.cpp

  Log Message:
  -----------
  [mlir][IR] Fix `checkFoldResult` error message (#104559)

checkFoldResult error message has expected and actual backwards.


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

  Changed paths:
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h

  Log Message:
  -----------
  [Passes] clang-format initialization files (NFC)

These regularly get touched when adding or removing passes, and
always cause issues with clang-format.


  Commit: 7bef16a04dc42e7b0a7b8b27fb661b474f46a7ca
      https://github.com/llvm/llvm-project/commit/7bef16a04dc42e7b0a7b8b27fb661b474f46a7ca
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    R llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse-bitrotate.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Merge bitrotate crash test into shuffle reverse tests. NFC

Use vscale_range instead of having a separate test to run with +zvl1024b.


  Commit: 59d7df4255cc0de5d448aa7908f1f8407860c802
      https://github.com/llvm/llvm-project/commit/59d7df4255cc0de5d448aa7908f1f8407860c802
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td

  Log Message:
  -----------
  [NFC][X86] Refactor: merge avx512_binop_all2 into avx512_binop_all (#104561)


  Commit: 8ca5ff2743f6020e29ee923114e2762b53bd32b1
      https://github.com/llvm/llvm-project/commit/8ca5ff2743f6020e29ee923114e2762b53bd32b1
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    R clang/test/Driver/darwin-print-target-triple.c

  Log Message:
  -----------
  Revert "[clang][driver] Fix -print-target-triple OS version for apple targets" (#104563)

This reverts llvm/llvm-project#104037 /
7227b44f928a87b5d7fb05bd1539fdfb6d4958dc.

This change had the unintended consequence of making e.g. `clang -target
armv7-windows-gnu --print-target-triple` output
`thumbv7-unknown-windows-gnu` rather than `armv7-unknown-windows-gnu`.


  Commit: fc1b01963857b5c04980c713145a71d6b858ad8a
      https://github.com/llvm/llvm-project/commit/fc1b01963857b5c04980c713145a71d6b858ad8a
  Author: v01dXYZ <14996868+v01dXYZ at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/lib/CodeGen/SelectionDAG/MatchContext.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] SD Pattern Match: Operands patterns with VP Context  (#103308)

Currently, when using a VP match context with `sd_context_match`, only Opcode matching is possible (`m_Opc(Opcode)`).

This PR suggest a way to make patterns with Operands (eg `m_Node`, `m_Add`, ...) works with a VP context.

This PR blocks another PR https://github.com/llvm/llvm-project/pull/102877.

Co-authored-by: v01dxyz <v01dxyz at v01d.xyz>


  Commit: 75cb9edf09fdc091e5bc0f3d46a96c2877735a39
      https://github.com/llvm/llvm-project/commit/75cb9edf09fdc091e5bc0f3d46a96c2877735a39
  Author: Victor Perez <victor.perez at codeplay.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    A mlir/include/mlir/Conversion/GPUCommon/AttrToSPIRVConverter.h
    M mlir/include/mlir/Conversion/GPUToLLVMSPV/GPUToLLVMSPVPass.h
    A mlir/lib/Conversion/GPUCommon/AttrToSPIRVConverter.cpp
    M mlir/lib/Conversion/GPUCommon/CMakeLists.txt
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir

  Log Message:
  -----------
  [MLIR][GPU-LLVM] Add GPU to LLVM-SPV address space mapping (#102621)

Implement mapping:

- `global`: 1
- `workgroup`: 3
- `private`: 0

Add `addressSpaceToStorageClass`, mapping GPU address spaces to SPIR-V
storage classes to be able to use SPIR-V's
`storageClassToAddressSpace`, mapping SPIR-V storage classes to LLVM
address spaces according to our mapping above *by definition*.

---------

Signed-off-by: Victor Perez <victor.perez at codeplay.com>


  Commit: 61abc15a9f94b081cced18277de8ae571e4d853d
      https://github.com/llvm/llvm-project/commit/61abc15a9f94b081cced18277de8ae571e4d853d
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Update `cxx_dr_status.html`


  Commit: dc3b029dc744730e69abac987c38b2d08b465fba
      https://github.com/llvm/llvm-project/commit/dc3b029dc744730e69abac987c38b2d08b465fba
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Function.cpp
    M clang/lib/AST/Interp/Function.h

  Log Message:
  -----------
  [clang][Interp][NFC] Remove Function::Loc

Unused.


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

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll

  Log Message:
  -----------
  [X86] Add shuffle tests for #104482


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll

  Log Message:
  -----------
  [X86] lowerShuffleAsDecomposedShuffleMerge - don't lower to unpack+permute if either source is zero.

Fixes #104482


  Commit: 899a3df02427086f365e1308fd11ca8ab981e9df
      https://github.com/llvm/llvm-project/commit/899a3df02427086f365e1308fd11ca8ab981e9df
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Host/Socket.h
    M lldb/source/Host/common/Socket.cpp
    M lldb/tools/lldb-server/Acceptor.cpp

  Log Message:
  -----------
  [lldb][NFC] Moved FindSchemeByProtocol() from Acceptor to Socket (#104439)

This is the prerequisite for #104238.


  Commit: cc78639453d91250dddaded0e084e5b81fefff3c
      https://github.com/llvm/llvm-project/commit/cc78639453d91250dddaded0e084e5b81fefff3c
  Author: lancesix <98881381+lancesix at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][NFC] AMDGPUUsage.rst: document corefile format (#104419)

This patch adds a description of the core file format used for AMDGPU.

Reference implementation for creating and loading AMDGPU core dump is
available in
[ROCgdb-6.2](https://github.com/ROCm/ROCgdb/tree/rocm-6.2.x/gdb)


  Commit: 7d77fb2971e36233f69634380ae55421e5fd70a1
      https://github.com/llvm/llvm-project/commit/7d77fb2971e36233f69634380ae55421e5fd70a1
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port for 75cb9edf09fdc091e5bc0f3d46a96c2877735a39


  Commit: 65390f9d6f0aa5f7bc5125d73337eb658e162d0a
      https://github.com/llvm/llvm-project/commit/65390f9d6f0aa5f7bc5125d73337eb658e162d0a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/SimplifyCFG/sink-and-convert-switch.ll

  Log Message:
  -----------
  [SimplifyCFG] Add test for #104567 (NFC)


  Commit: 6a84af704f57defd919a4ec2e34b70a48d548719
      https://github.com/llvm/llvm-project/commit/6a84af704f57defd919a4ec2e34b70a48d548719
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [LAA] Use computeConstantDifference() (#103725)

Use computeConstantDifference() instead of casting getMinusSCEV() to
SCEVConstant. This can be much faster in some cases, because
computeConstantDifference() computes the result without creating new
SCEV expressions.

This improves LTO/ThinLTO compile-time for lencod by more than 10%.

I've verified that computeConstantDifference() does not produce worse
results than the previous code for anything in llvm-test-suite. This
required raising the iteration cutoff to 6. I ended up increasing it to
8 just to be on the safe side (for code outside llvm-test-suite), and
because this doesn't materially affect compile-time anyway (we'll almost
always bail out earlier).


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

  Changed paths:
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/builtin-assumed-addrspace.ll

  Log Message:
  -----------
  InferAddressSpaces: Convert test to generated checks

Also use named values


  Commit: a426ffdee1ca7814f2684b6104c48f5669815aad
      https://github.com/llvm/llvm-project/commit/a426ffdee1ca7814f2684b6104c48f5669815aad
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp

  Log Message:
  -----------
  [include-cleaner] Add handling for new/delete expressions (#104033)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-half-conversions.ll

  Log Message:
  -----------
  [X86] SimplifyDemandedVectorEltsForTargetNode - reduce width of X86 conversions nodes when upper elements are not demanded. (#102882)

Fixes #83402


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

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

  Log Message:
  -----------
  [DataLayout] Refactor parsing of "ni" specification (#104546)

Split off of #104545 to reduce patch size.
This introduces `parseAddrSpace` function, intended as a replacement for
`getAddrSpace`, which doesn't check for trailing characters after the
address space number. `getAddrSpace` will be removed after switching all
uses to `parseAddrSpace`.

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


  Commit: 8aa9d6206ce55bdaaf422839c351fbd63f033b89
      https://github.com/llvm/llvm-project/commit/8aa9d6206ce55bdaaf422839c351fbd63f033b89
  Author: Alan Wu <XrXr at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [compiler-rt] Stop using x86 builtin on AArch64 with GCC (#93890)

Previously, building `multc3.c` on A64 with GCC 7 or up but 9 and lower
will attempt to reference `__builtin_copysignq`, an [x86-specific
intrinsic][1]:

```
$ gcc -c multc3.c
In file included from fp_lib.h:24,
                 from multc3.c:14:
multc3.c: In function '__multc3':
int_math.h:71:32: warning: implicit declaration of function '__builtin_copysignq'; did you mean '__builtin_copysign'? [-Wimplicit-function-declaration]
 #define crt_copysignf128(x, y) __builtin_copysignq((x), (y))
                                ^~~~~~~~~~~~~~~~~~~
```

This is because `__has_builtin` is from GCC 10, and defined to 0 at the
top of int_math.h for affected GCC versions, so the fallback definition
is used. But `__builtin_copysignq` is unavailable on A64.

Use version detection to find `__builtin_copysignf128` instead. It's
available since GCC 7 and [available][2] on both x86 and A64, given this
macro is only used when `CRT_HAS_IEEE_TF`.

---

I realize this is fixing a problem for an out-of-tree build
configuration, but help would be greatly appreciated. Rust
[builds](https://github.com/rust-lang/compiler-builtins) `multc3.c` with
GCC 8 and this mis-selection is causing [build
issues](https://github.com/rust-lang/rust/issues/125619) way downstream.

ref: d2ce3e9621411f3391def327f89e3a650918989f

[1]: https://gcc.gnu.org/onlinedocs/gcc/x86-Built-in-Functions.html
[2]: https://gcc.gnu.org/gcc-7/changes.html


  Commit: 9f430de4b2577fb0a0169b6409a6267db927c08d
      https://github.com/llvm/llvm-project/commit/9f430de4b2577fb0a0169b6409a6267db927c08d
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/docs/Dialects/ArmSME.md

  Log Message:
  -----------
  [mlir][ArmSME][docs] Fix broken link (NFC)


  Commit: 7417b4cd138f7384bba83f7eb62a890303f82600
      https://github.com/llvm/llvm-project/commit/7417b4cd138f7384bba83f7eb62a890303f82600
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg20xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add a new test for CWG2091 (#104573)

This patch adds a test from
https://github.com/llvm/llvm-project/issues/42233, and updates CWG2091
status from `2.7` to `10`.


  Commit: 1cdf1e693425ae6830883d2fc0eaaa601a8250d8
      https://github.com/llvm/llvm-project/commit/1cdf1e693425ae6830883d2fc0eaaa601a8250d8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/AST/Interp/Context.cpp
    M clang/test/AST/Interp/enums.cpp

  Log Message:
  -----------
  [clang][Interp] Fix classifying enum types (#104582)

We used to always return PT_IntAP(s) for them.


  Commit: 7e23a23d5e4fa367842546af9f92dcdef869ef9a
      https://github.com/llvm/llvm-project/commit/7e23a23d5e4fa367842546af9f92dcdef869ef9a
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/scmp.ll
    M llvm/test/Transforms/InstCombine/ucmp.ll

  Log Message:
  -----------
  [InstCombine] Fold an unsigned icmp of ucmp/scmp with a constant to an icmp of the original arguments (#104471)

Proofs: https://alive2.llvm.org/ce/z/9mv8HU


  Commit: e8e88873ab528eb9a44804e6e68953bb058eceb7
      https://github.com/llvm/llvm-project/commit/e8e88873ab528eb9a44804e6e68953bb058eceb7
  Author: wr7 <d-wr7 at outlook.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/lib/IR/Core.cpp

  Log Message:
  -----------
  [llvm-c] Add non-cstring versions of LLVMGetNamedFunction and LLVMGetNamedGlobal (#103396)

Add `LLVMGetNamedFunctionWithLength` and `LLVMGetNamedGlobalWithLength`

As far as i know, it isn't currently possible to use
`LLVMGetNamedFunction` and `LLVMGetNamedGlobal` with non-null-terminated
strings.

These new functions are more convenient for C programs that use
non-null-terminated strings or for languages like Rust that primarily
use non-null-terminated strings.


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll

  Log Message:
  -----------
  [InstCombine] Add i128 test for select of lshr/ashr transform (NFC)


  Commit: 5d28678277195e0b136198323ef4afa4561f8796
      https://github.com/llvm/llvm-project/commit/5d28678277195e0b136198323ef4afa4561f8796
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll

  Log Message:
  -----------
  [InstCombine] Fix incorrect zero ext in select of lshr/ashr fold

The -1 constant should be sign extended, not zero extended.

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


  Commit: ff906403dd8c9791eaa3168faeb546a5266ceac0
      https://github.com/llvm/llvm-project/commit/ff906403dd8c9791eaa3168faeb546a5266ceac0
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/preserve.ll

  Log Message:
  -----------
  Add FPMR register and update dependencies of FP8 instructions (#102910)

Currently FP8 instructions are missing dependecies on system registers,
namely FPMR and FPCR. This patch fixes this issue.


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

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

  Log Message:
  -----------
  [SLP][REVEC] Fix CreateInsertElement does not use the correct result if MinBWs applied. (#104558)


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

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-logic-of-compare.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-overflow.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/fold-global-offsets.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-sameopcode-hands-crash.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-swap-compare-operands.mir
    M llvm/test/CodeGen/AArch64/setcc_knownbits.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Disable fixed-point iteration in all Combiners

Disable fixed-point iteration in all AArch64 Combiners after #102163.
See inline comments for justification of test changes.

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


  Commit: aa427b1aae445ed46d9f60c5e2eaac61bdf76be3
      https://github.com/llvm/llvm-project/commit/aa427b1aae445ed46d9f60c5e2eaac61bdf76be3
  Author: RichardLuo <CommAdama at outlook.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libcxx/src/filesystem/path.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.compare.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_relative_and_proximate.pass.cpp

  Log Message:
  -----------
  [libc++] Fix backslash as root dir breaks lexically_relative, lexically_proximate and hash_value on Windows (#99780)

Various functions like hash_value, lexically_proximate and lexically_relative
would incorrectly handle backslashes in the root directory on Windows, causing
behavior that is inconsistent with the equality comparison for a path.


  Commit: 710a552dedbf1a28cebac78b481cb78138fbc454
      https://github.com/llvm/llvm-project/commit/710a552dedbf1a28cebac78b481cb78138fbc454
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-ext.mir

  Log Message:
  -----------
  [GlobalIsel] Revisit ext of ext. (#102769)

Credits:
https://reviews.llvm.org/D86516

combine-ext.mir

Notable semantic changes:
InstCombine does not mix zero and sign extend,
  see CastInst::isEliminableCastPair.
New version has legality checks.
Folds sext/zext of anyext -> sext/zext
Support for nneg

Future work:
nneg zext of sext -> sext
sext of nneg zext -> sext


  Commit: 3e5a4ac31abd9021dd7996287ebb96af45daef04
      https://github.com/llvm/llvm-project/commit/3e5a4ac31abd9021dd7996287ebb96af45daef04
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td

  Log Message:
  -----------
  [mlir][spirv] Update documentation. NFC (#104584)


  Commit: 8173ad703152e0b7f3689da76d5337ea8522e11c
      https://github.com/llvm/llvm-project/commit/8173ad703152e0b7f3689da76d5337ea8522e11c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [InstCombine] Regenerate test checks (NFC)


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

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

  Log Message:
  -----------
  [X86] Fold extract_subvector(int_to_fp(x)) vXi32/vXf32 cases to match existing fp_to_int folds


  Commit: 11ebc9d30eb5d58c41386bd0e5a350884d5d1020
      https://github.com/llvm/llvm-project/commit/11ebc9d30eb5d58c41386bd0e5a350884d5d1020
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/demorgan.ll
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll

  Log Message:
  -----------
  [InstCombine] Regenerate test checks (NFC)


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

  Changed paths:
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll

  Log Message:
  -----------
  [PhaseOrdering] Regenerate test checks (NFC)


  Commit: 14d57e21e1cc76de554314015e11a9d6e9b797f5
      https://github.com/llvm/llvm-project/commit/14d57e21e1cc76de554314015e11a9d6e9b797f5
  Author: Kadir Cetinkaya <kadircet at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [include-cleaner] fix 32-bit buildbots after a426ffdee1ca7814f2684b6


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

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

  Log Message:
  -----------
  [InstCombine] Add nsw tests for A + -B fold (NFC)


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add.ll

  Log Message:
  -----------
  [InstCombine] Preserve nsw in A + -B fold

This was already done for -B + A, but not for A + -B.

Proof: https://alive2.llvm.org/ce/z/F3V2yZ


  Commit: 83bf1d661213cb8ec8e79ac085f793009721aaf5
      https://github.com/llvm/llvm-project/commit/83bf1d661213cb8ec8e79ac085f793009721aaf5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/fast-math.ll

  Log Message:
  -----------
  [InstCombine] Thwart complexity-based canonicalization in sqrt test (NFC)


  Commit: 60bffe221a1d615ffc7c6b632287d0fbd27ef863
      https://github.com/llvm/llvm-project/commit/60bffe221a1d615ffc7c6b632287d0fbd27ef863
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/fast-math.ll

  Log Message:
  -----------
  [InstCombine] Handle commuted variant of sqrt transform


  Commit: 99696b35bc8a0054e0b0c1a26e8dd5049fa8c41b
      https://github.com/llvm/llvm-project/commit/99696b35bc8a0054e0b0c1a26e8dd5049fa8c41b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libcxx/include/span
    M libcxx/test/std/containers/views/views.span/span.cons/copy.pass.cpp

  Log Message:
  -----------
  [libc++] Fix rejects-valid in std::span copy construction (#104500)

Trying to copy-construct a std::span from another std::span holding an
incomplete type would fail as we evaluate the SFINAE for the range-based
constructor. The problem was that we checked for __is_std_span after
checking for the range being a contiguous_range, which hard-errored
because of arithmetic on a pointer to incomplete type.

As a drive-by, refactor the whole test and format it.

Fixes #104496


  Commit: ef6e7affbb7b0eb4976c1019c788bcadfc34ecd6
      https://github.com/llvm/llvm-project/commit/ef6e7affbb7b0eb4976c1019c788bcadfc34ecd6
  Author: Rafael Ubal <rubal at mathworks.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir] [tosa] Bug fixes in shape inference pass (#104146)

This change addresses 2 bugs in the TOSA shape inference pass
(`--tosa-infer-shapes`). The included unit test contains a detailed
description of the issues.

- Input IR

```
func.func @main(%arg0: tensor<1x2x8xf32>) {
  %0 = tosa.cast %arg0 : (tensor<1x2x8xf32>) -> tensor<?x2x8xf32>

  %c0 = arith.constant 0 : index
  %dim = tensor.dim %0, %c0 : tensor<?x2x8xf32>

  %expanded_0 = tensor.expand_shape %0 [[0], [1, 2], [3]] output_shape [%dim, 1, 4, 8] : tensor<?x2x8xf32> into tensor<?x1x2x8xf32>
  %expanded_1 = tensor.expand_shape %0 [[0], [1, 2], [3]] output_shape [%dim, 1, 4, 8] : tensor<?x2x8xf32> into tensor<?x1x2x8xf32>
  return
}
```

- Output IR

```
module {
  func.func @main(%arg0: tensor<1x2x8xf32>) {
  %0 = tosa.cast %arg0 : (tensor<1x2x8xf32>) -> tensor<1x2x8xf32>

  // This cast was previously inserted between both 'tensor.expand_shape' ops.
  %cast = tensor.cast %0 : tensor<1x2x8xf32> to tensor<?x2x8xf32>

  %c0 = arith.constant 0 : index
  %dim = tensor.dim %0, %c0 : tensor<1x2x8xf32>

  // The operand of the first 'tensor.expand_shape' op was not previously updated
  // from '%0' to '%cast' due to an invalidation of the iterator traversing the
  // use list of the 'tosa.cast' op.
  %expanded_0 = tensor.expand_shape %cast [[0], [1, 2], [3]] output_shape [%dim, 1, 4, 8] : tensor<?x2x8xf32> into tensor<?x1x2x8xf32>
  %expanded_1 = tensor.expand_shape %cast [[0], [1, 2], [3]] output_shape [%dim, 1, 4, 8] : tensor<?x2x8xf32> into tensor<?x1x2x8xf32>
  return
}
```


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

  Changed paths:
    M clang/docs/ClangFormattedStatus.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/lib/AST/ASTContext.cpp
    A clang/lib/AST/ByteCode/Boolean.h
    A clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    A clang/lib/AST/ByteCode/ByteCodeEmitter.h
    A clang/lib/AST/ByteCode/Compiler.cpp
    A clang/lib/AST/ByteCode/Compiler.h
    A clang/lib/AST/ByteCode/Context.cpp
    A clang/lib/AST/ByteCode/Context.h
    A clang/lib/AST/ByteCode/Descriptor.cpp
    A clang/lib/AST/ByteCode/Descriptor.h
    A clang/lib/AST/ByteCode/Disasm.cpp
    A clang/lib/AST/ByteCode/DynamicAllocator.cpp
    A clang/lib/AST/ByteCode/DynamicAllocator.h
    A clang/lib/AST/ByteCode/EvalEmitter.cpp
    A clang/lib/AST/ByteCode/EvalEmitter.h
    A clang/lib/AST/ByteCode/EvaluationResult.cpp
    A clang/lib/AST/ByteCode/EvaluationResult.h
    A clang/lib/AST/ByteCode/Floating.cpp
    A clang/lib/AST/ByteCode/Floating.h
    A clang/lib/AST/ByteCode/Frame.cpp
    A clang/lib/AST/ByteCode/Frame.h
    A clang/lib/AST/ByteCode/Function.cpp
    A clang/lib/AST/ByteCode/Function.h
    A clang/lib/AST/ByteCode/FunctionPointer.h
    A clang/lib/AST/ByteCode/Integral.h
    A clang/lib/AST/ByteCode/IntegralAP.h
    A clang/lib/AST/ByteCode/Interp.cpp
    A clang/lib/AST/ByteCode/Interp.h
    A clang/lib/AST/ByteCode/InterpBlock.cpp
    A clang/lib/AST/ByteCode/InterpBlock.h
    A clang/lib/AST/ByteCode/InterpBuiltin.cpp
    A clang/lib/AST/ByteCode/InterpFrame.cpp
    A clang/lib/AST/ByteCode/InterpFrame.h
    A clang/lib/AST/ByteCode/InterpShared.cpp
    A clang/lib/AST/ByteCode/InterpShared.h
    A clang/lib/AST/ByteCode/InterpStack.cpp
    A clang/lib/AST/ByteCode/InterpStack.h
    A clang/lib/AST/ByteCode/InterpState.cpp
    A clang/lib/AST/ByteCode/InterpState.h
    A clang/lib/AST/ByteCode/MemberPointer.cpp
    A clang/lib/AST/ByteCode/MemberPointer.h
    A clang/lib/AST/ByteCode/Opcode.h
    A clang/lib/AST/ByteCode/Opcodes.td
    A clang/lib/AST/ByteCode/Pointer.cpp
    A clang/lib/AST/ByteCode/Pointer.h
    A clang/lib/AST/ByteCode/PrimType.cpp
    A clang/lib/AST/ByteCode/PrimType.h
    A clang/lib/AST/ByteCode/Primitives.h
    A clang/lib/AST/ByteCode/Program.cpp
    A clang/lib/AST/ByteCode/Program.h
    A clang/lib/AST/ByteCode/Record.cpp
    A clang/lib/AST/ByteCode/Record.h
    A clang/lib/AST/ByteCode/Source.cpp
    A clang/lib/AST/ByteCode/Source.h
    A clang/lib/AST/ByteCode/State.cpp
    A clang/lib/AST/ByteCode/State.h
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    R clang/lib/AST/Interp/Boolean.h
    R clang/lib/AST/Interp/ByteCodeEmitter.cpp
    R clang/lib/AST/Interp/ByteCodeEmitter.h
    R clang/lib/AST/Interp/Compiler.cpp
    R clang/lib/AST/Interp/Compiler.h
    R clang/lib/AST/Interp/Context.cpp
    R clang/lib/AST/Interp/Context.h
    R clang/lib/AST/Interp/Descriptor.cpp
    R clang/lib/AST/Interp/Descriptor.h
    R clang/lib/AST/Interp/Disasm.cpp
    R clang/lib/AST/Interp/DynamicAllocator.cpp
    R clang/lib/AST/Interp/DynamicAllocator.h
    R clang/lib/AST/Interp/EvalEmitter.cpp
    R clang/lib/AST/Interp/EvalEmitter.h
    R clang/lib/AST/Interp/EvaluationResult.cpp
    R clang/lib/AST/Interp/EvaluationResult.h
    R clang/lib/AST/Interp/Floating.cpp
    R clang/lib/AST/Interp/Floating.h
    R clang/lib/AST/Interp/Frame.cpp
    R clang/lib/AST/Interp/Frame.h
    R clang/lib/AST/Interp/Function.cpp
    R clang/lib/AST/Interp/Function.h
    R clang/lib/AST/Interp/FunctionPointer.h
    R clang/lib/AST/Interp/Integral.h
    R clang/lib/AST/Interp/IntegralAP.h
    R clang/lib/AST/Interp/Interp.cpp
    R clang/lib/AST/Interp/Interp.h
    R clang/lib/AST/Interp/InterpBlock.cpp
    R clang/lib/AST/Interp/InterpBlock.h
    R clang/lib/AST/Interp/InterpBuiltin.cpp
    R clang/lib/AST/Interp/InterpFrame.cpp
    R clang/lib/AST/Interp/InterpFrame.h
    R clang/lib/AST/Interp/InterpShared.cpp
    R clang/lib/AST/Interp/InterpShared.h
    R clang/lib/AST/Interp/InterpStack.cpp
    R clang/lib/AST/Interp/InterpStack.h
    R clang/lib/AST/Interp/InterpState.cpp
    R clang/lib/AST/Interp/InterpState.h
    R clang/lib/AST/Interp/MemberPointer.cpp
    R clang/lib/AST/Interp/MemberPointer.h
    R clang/lib/AST/Interp/Opcode.h
    R clang/lib/AST/Interp/Opcodes.td
    R clang/lib/AST/Interp/Pointer.cpp
    R clang/lib/AST/Interp/Pointer.h
    R clang/lib/AST/Interp/PrimType.cpp
    R clang/lib/AST/Interp/PrimType.h
    R clang/lib/AST/Interp/Primitives.h
    R clang/lib/AST/Interp/Program.cpp
    R clang/lib/AST/Interp/Program.h
    R clang/lib/AST/Interp/Record.cpp
    R clang/lib/AST/Interp/Record.h
    R clang/lib/AST/Interp/Source.cpp
    R clang/lib/AST/Interp/Source.h
    R clang/lib/AST/Interp/State.cpp
    R clang/lib/AST/Interp/State.h
    A clang/test/AST/ByteCode/arrays.cpp
    A clang/test/AST/ByteCode/atomic.c
    A clang/test/AST/ByteCode/atomic.cpp
    A clang/test/AST/ByteCode/bitfields.cpp
    A clang/test/AST/ByteCode/builtin-align-cxx.cpp
    A clang/test/AST/ByteCode/builtin-constant-p.cpp
    A clang/test/AST/ByteCode/builtin-functions.cpp
    A clang/test/AST/ByteCode/builtins.cpp
    A clang/test/AST/ByteCode/c.c
    A clang/test/AST/ByteCode/c23.c
    A clang/test/AST/ByteCode/codegen.cpp
    A clang/test/AST/ByteCode/comma.cpp
    A clang/test/AST/ByteCode/complex.c
    A clang/test/AST/ByteCode/complex.cpp
    A clang/test/AST/ByteCode/cond.cpp
    A clang/test/AST/ByteCode/const-eval.c
    A clang/test/AST/ByteCode/const-fpfeatures.cpp
    A clang/test/AST/ByteCode/const-temporaries.cpp
    A clang/test/AST/ByteCode/constexpr-frame-describe.cpp
    A clang/test/AST/ByteCode/constexpr-nqueens.cpp
    A clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
    A clang/test/AST/ByteCode/crash-GH49103-2.cpp
    A clang/test/AST/ByteCode/cxx03.cpp
    A clang/test/AST/ByteCode/cxx11.cpp
    A clang/test/AST/ByteCode/cxx17.cpp
    A clang/test/AST/ByteCode/cxx20.cpp
    A clang/test/AST/ByteCode/cxx23.cpp
    A clang/test/AST/ByteCode/cxx26.cpp
    A clang/test/AST/ByteCode/cxx2a.cpp
    A clang/test/AST/ByteCode/cxx98.cpp
    A clang/test/AST/ByteCode/depth-limit.cpp
    A clang/test/AST/ByteCode/depth-limit2.cpp
    A clang/test/AST/ByteCode/enums-targets.cpp
    A clang/test/AST/ByteCode/enums.cpp
    A clang/test/AST/ByteCode/eval-order.cpp
    A clang/test/AST/ByteCode/floats.cpp
    A clang/test/AST/ByteCode/functions.cpp
    A clang/test/AST/ByteCode/hlsl.hlsl
    A clang/test/AST/ByteCode/if.cpp
    A clang/test/AST/ByteCode/intap.cpp
    A clang/test/AST/ByteCode/invalid.cpp
    A clang/test/AST/ByteCode/lambda.cpp
    A clang/test/AST/ByteCode/lifetimes.cpp
    A clang/test/AST/ByteCode/literals.cpp
    A clang/test/AST/ByteCode/loops.cpp
    A clang/test/AST/ByteCode/memberpointers.cpp
    A clang/test/AST/ByteCode/ms.cpp
    A clang/test/AST/ByteCode/mutable.cpp
    A clang/test/AST/ByteCode/new-delete.cpp
    A clang/test/AST/ByteCode/nullable.cpp
    A clang/test/AST/ByteCode/objc.mm
    A clang/test/AST/ByteCode/opencl.cl
    A clang/test/AST/ByteCode/pointer-addition.c
    A clang/test/AST/ByteCode/records.cpp
    A clang/test/AST/ByteCode/references.cpp
    A clang/test/AST/ByteCode/shifts.cpp
    A clang/test/AST/ByteCode/spaceship.cpp
    A clang/test/AST/ByteCode/switch.cpp
    A clang/test/AST/ByteCode/sycl.cpp
    A clang/test/AST/ByteCode/unions.cpp
    A clang/test/AST/ByteCode/vectors.cpp
    A clang/test/AST/ByteCode/weak.cpp
    R clang/test/AST/Interp/arrays.cpp
    R clang/test/AST/Interp/atomic.c
    R clang/test/AST/Interp/atomic.cpp
    R clang/test/AST/Interp/bitfields.cpp
    R clang/test/AST/Interp/builtin-align-cxx.cpp
    R clang/test/AST/Interp/builtin-constant-p.cpp
    R clang/test/AST/Interp/builtin-functions.cpp
    R clang/test/AST/Interp/builtins.cpp
    R clang/test/AST/Interp/c.c
    R clang/test/AST/Interp/c23.c
    R clang/test/AST/Interp/codegen.cpp
    R clang/test/AST/Interp/comma.cpp
    R clang/test/AST/Interp/complex.c
    R clang/test/AST/Interp/complex.cpp
    R clang/test/AST/Interp/cond.cpp
    R clang/test/AST/Interp/const-eval.c
    R clang/test/AST/Interp/const-fpfeatures.cpp
    R clang/test/AST/Interp/const-temporaries.cpp
    R clang/test/AST/Interp/constexpr-frame-describe.cpp
    R clang/test/AST/Interp/constexpr-nqueens.cpp
    R clang/test/AST/Interp/constexpr-subobj-initialization.cpp
    R clang/test/AST/Interp/crash-GH49103-2.cpp
    R clang/test/AST/Interp/cxx03.cpp
    R clang/test/AST/Interp/cxx11.cpp
    R clang/test/AST/Interp/cxx17.cpp
    R clang/test/AST/Interp/cxx20.cpp
    R clang/test/AST/Interp/cxx23.cpp
    R clang/test/AST/Interp/cxx26.cpp
    R clang/test/AST/Interp/cxx2a.cpp
    R clang/test/AST/Interp/cxx98.cpp
    R clang/test/AST/Interp/depth-limit.cpp
    R clang/test/AST/Interp/depth-limit2.cpp
    R clang/test/AST/Interp/enums-targets.cpp
    R clang/test/AST/Interp/enums.cpp
    R clang/test/AST/Interp/eval-order.cpp
    R clang/test/AST/Interp/floats.cpp
    R clang/test/AST/Interp/functions.cpp
    R clang/test/AST/Interp/hlsl.hlsl
    R clang/test/AST/Interp/if.cpp
    R clang/test/AST/Interp/intap.cpp
    R clang/test/AST/Interp/invalid.cpp
    R clang/test/AST/Interp/lambda.cpp
    R clang/test/AST/Interp/lifetimes.cpp
    R clang/test/AST/Interp/literals.cpp
    R clang/test/AST/Interp/loops.cpp
    R clang/test/AST/Interp/memberpointers.cpp
    R clang/test/AST/Interp/ms.cpp
    R clang/test/AST/Interp/mutable.cpp
    R clang/test/AST/Interp/new-delete.cpp
    R clang/test/AST/Interp/nullable.cpp
    R clang/test/AST/Interp/objc.mm
    R clang/test/AST/Interp/opencl.cl
    R clang/test/AST/Interp/pointer-addition.c
    R clang/test/AST/Interp/records.cpp
    R clang/test/AST/Interp/references.cpp
    R clang/test/AST/Interp/shifts.cpp
    R clang/test/AST/Interp/spaceship.cpp
    R clang/test/AST/Interp/switch.cpp
    R clang/test/AST/Interp/sycl.cpp
    R clang/test/AST/Interp/unions.cpp
    R clang/test/AST/Interp/vectors.cpp
    R clang/test/AST/Interp/weak.cpp
    A clang/unittests/AST/ByteCode/CMakeLists.txt
    A clang/unittests/AST/ByteCode/Descriptor.cpp
    A clang/unittests/AST/ByteCode/toAPValue.cpp
    M clang/unittests/AST/CMakeLists.txt
    R clang/unittests/AST/Interp/CMakeLists.txt
    R clang/unittests/AST/Interp/Descriptor.cpp
    R clang/unittests/AST/Interp/toAPValue.cpp

  Log Message:
  -----------
  [clang] Rename all AST/Interp stuff to AST/ByteCode (#104552)

"Interp" clashes with the clang interpreter and people often confuse
this.


  Commit: 2fe59d5259ec921668d87d111be55db0b047aa68
      https://github.com/llvm/llvm-project/commit/2fe59d5259ec921668d87d111be55db0b047aa68
  Author: Robin Caloudis <robin.caloudis at gmx.de>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libcxx/include/__math/traits.h
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/std/numerics/c.math/isinf.pass.cpp
    M libcxx/test/std/numerics/c.math/isnan.pass.cpp

  Log Message:
  -----------
  [libc++][math] Fix acceptance of convertible types in `std::isnan()` and `std::isinf()` (#98952)

Following up on https://github.com/llvm/llvm-project/pull/98841.

Changes:
- Properly test convertible types for `std::isnan()` and `std::inf()`
- Tighten conditional in `cmath.pass.cpp` (Find insights on `_LIBCPP_PREFERRED_OVERLOAD` below)
- Tighten preprocessor guard in `traits.h`

Insights into why `_LIBCPP_PREFERRED_OVERLOAD` is needed:

(i) When libc++ is layered on top of glibc on Linux, glibc's `math.h` is
    included. When compiling with `-std=c++03`, this header brings the
    function declaration of `isinf(double)` [1] and `isnan(double)` [2]
    into scope. This differs from the C99 Standard as only the macros
    `#define isnan(arg)` and `#define isinf(arg)` are expected.

    Therefore, libc++ needs to respect the presense of the `double` overload
    and cannot redefine it as it will conflict with the declaration already
    in scope. For `-std=c++11` and beyond this issue is fixed, as glibc
    guards both the `isinf` and `isnan` by preprocessor macros.

(ii) When libc++ is layered on top of Bionic's libc, `math.h` exposes a
     function prototype for `isinf(double)` with return type `int`. This
     function prototype in Bionic's libc is not guarded by any preprocessor
     macros [3].

`_LIBCPP_PREFERRED_OVERLOAD` specifies that a given overload is a better match
than an otherwise equally good function declaration. This is implemented in
modern versions of Clang via `__attribute__((__enable_if__))`, and not elsewhere.
See [4] for details. We use `_LIBCPP_PREFERRED_OVERLOAD` to define overloads in
the global namespace that displace the overloads provided by the C
libraries mentioned above.

[1]: https://github.com/bminor/glibc/blob/fe9408087583fd7a6f61bb0dbcf2fd4e83186afa/math/bits/mathcalls.h#L185-L194
[2]: https://github.com/bminor/glibc/blob/fe9408087583fd7a6f61bb0dbcf2fd4e83186afa/math/bits/mathcalls.h#L222-L231
[3]: https://cs.android.com/android/platform/superproject/+/master:bionic/libc/include/math.h;l=322-323;drc=master?hl=fr-BE%22https:%2F%2Fsupport.google.com%2Fmerchants%2Fanswer%2F188494%5C%22%22https:%2F%2Fsupport.google.com%2Fmerchants%2Fanswer%2F188494%5C%22
[4]: https://github.com/llvm/llvm-project/commit/5fd17ab1b093f6b59aabb27f6c2c2278e65c2707


  Commit: c4bf949171a72383d5ba4d2b587d4cc496aacebb
      https://github.com/llvm/llvm-project/commit/c4bf949171a72383d5ba4d2b587d4cc496aacebb
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    A mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    A mlir/test/Dialect/Linalg/transform-tile-winograd.mlir

  Log Message:
  -----------
  [mlir][linalg] Implement TilingInterface for winograd operators (#96184)

In order to support arbitrary size input data of conv2d, implement
TilingInterface for winograd operations. Before converting winograd
operations into nested loops with matrix multiply, tile the input of
conv2d into the supported size first.

Add a transform operation structured.decompose_winograd_op to decompose
winograd operations. Before applying the transform op, use
tile_using_for to tile the input data into supported size. The test case
shows how to tile and decompose winograd operations.


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

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

  Log Message:
  -----------
  [Bazel] Port AST/ByteCode #104552


  Commit: 7aa4726f44587791ed4f41a13c68e8f499ed34f0
      https://github.com/llvm/llvm-project/commit/7aa4726f44587791ed4f41a13c68e8f499ed34f0
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [CodeGen] Use range-based for loops (NFC) (#104536)


  Commit: 66878ff69293c4008707261592d448d5896239e7
      https://github.com/llvm/llvm-project/commit/66878ff69293c4008707261592d448d5896239e7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonCopyHoisting.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMemAbsolute.cpp

  Log Message:
  -----------
  [Hexagon] Use range-based for loops (NFC) (#104538)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    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:
  -----------
  [RISCV] Don't support TRUNCATE_SSAT_U. (#104468)

RISC-V doesn't have an instruction for this. We were treating it the
same as TRUNCATE_USAT_U.


  Commit: 321de07b778a16e88c589ab0af05ad10c906af13
      https://github.com/llvm/llvm-project/commit/321de07b778a16e88c589ab0af05ad10c906af13
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [DAGCombiner] Remove TRUNCATE_(S/U)SAT_(S/U) from an assert that isn't tested. NFC (#104466)


  Commit: 82fe79357f54d4db4c4e2c46bbfbd4345022ae22
      https://github.com/llvm/llvm-project/commit/82fe79357f54d4db4c4e2c46bbfbd4345022ae22
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
    A llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
    R llvm/utils/gn/secondary/clang/unittests/AST/Interp/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/BUILD.gn

  Log Message:
  -----------
  [gn] Port AST/ByteCode #104552


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

  Changed paths:
    M llvm/utils/TableGen/Common/DAGISelMatcher.h

  Log Message:
  -----------
  [TableGen] Sign extend constants based on size for EmitIntegerMatcher. (#104550)

I'm planning to add a getSignedConstant to SelectionDAG and use it for
EmitInteger in SelectionDAGISel which already uses int64_t.
getSignedConstant will assert that the constant has the correct number
of significant bits for the VT.

This patch ensures that tablegen emits constants in this form.


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

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

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

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

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


  Commit: 4a57e834f7de83d85d994c63647aa957279c354e
      https://github.com/llvm/llvm-project/commit/4a57e834f7de83d85d994c63647aa957279c354e
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    A clang/test/SemaHLSL/Types/typedefs.hlsl

  Log Message:
  -----------
  [HLSL] Flesh out basic type typedefs (#104479)

We had a few missing typedefs that are supported by DXC. Specifically
1-element vectors, size-explicit 32-bit types and size-explicit floating
point types.

This adds the typedefs and a test file that just verifies the expected
sizes and vector element counts.

I needed to add some of these missing typedefs to address #102964, and
thought instead I should try and be a bit comprehensive and put it in a
separate PR.

Nothing complicated here, just typedefs and static asserts to verify
them.


  Commit: a434cac523da6db542350fd747967520aaae8fbb
      https://github.com/llvm/llvm-project/commit/a434cac523da6db542350fd747967520aaae8fbb
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/ThreadElfCore.h
    M lldb/unittests/Process/CMakeLists.txt
    A lldb/unittests/Process/elf-core/CMakeLists.txt
    A lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp

  Log Message:
  -----------
  [lldb] Add Populate Methods for ELFLinuxPrPsInfo and ELFLinuxPrStatus (#104109)

To create elf core files there are multiple notes in the core file that
contain these structs as the note. These populate methods take a Process
and produce fully specified structures that can be used to fill these
note sections. The pr also adds tests to ensure these structs are
correctly populated.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    R mlir/test/Dialect/Vector/sink-vector-broadcast.mlir
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir
    A mlir/test/Dialect/Vector/vector-sink.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Group re-order patterns together (#102856)

Group all patterns that re-order vector.transpose and vector.broadcast
Ops (*) under `populateSinkVectorOpsPatterns`. These patterns are
normally used to "sink" redundant Vector Ops, hence grouping together.
Example:

```mlir
%at = vector.transpose %a, [1, 0]: vector<4x2xf32> to vector<2x4xf32>
%bt = vector.transpose %b, [1, 0]: vector<4x2xf32> to vector<2x4xf32>
%r = arith.addf %at, %bt : vector<2x4xf32>
```
would get converted to:
```mlir
%0 = arith.addf %a, %b : vector<4x2xf32>
%r = vector.transpose %0, [1, 0] : vector<2x4xf32>
```

This patch also moves all tests for these patterns so that all of them
are:
  * run under one test-flag: `test-vector-sink-patterns`,
  * located in one file: "vector-sink.mlir".

To facilitate this change:
  * `-test-sink-vector-broadcast` is renamed as
    `test-vector-sink-patterns`,
  * "sink-vector-broadcast.mlir" is renamed as "vector-sink.mlir",
  * tests for `ReorderCastOpsOnBroadcast` and
    `ReorderElementwiseOpsOnTranspose` patterns are moved from
    "vector-reduce-to-contract.mlir" to "vector-sink.mlir",
  * `ReorderElementwiseOpsOnTranspose` patterns are removed from
    `populateVectorReductionToContractPatterns` and added to (newly
    created) `populateSinkVectorOpsPatterns`,
  * `ReorderCastOpsOnBroadcast` patterns are removed from
    `populateVectorReductionToContractPatterns` - these are already
    present in `populateSinkVectorOpsPatterns`.

This should allow us better layering and more straightforward testing.
For the latter, the goal is to be able to easily identify which pattern
a particular test is exercising (especially when it's a specific
pattern).

NOTES FOR DOWNSTREAM USERS

In order to preserve the current functionality, please make sure to add
  * `populateSinkVectorOpsPatterns`,

wherever you are using `populateVectorReductionToContractPatterns`.
Also, rename `populateSinkVectorBroadcastPatterns` as
`populateSinkVectorOpsPatterns`.

(*) I didn't notice any other re-order patterns.


  Commit: b221c37082707e35b492baa9ae8045c56b3ced0b
      https://github.com/llvm/llvm-project/commit/b221c37082707e35b492baa9ae8045c56b3ced0b
  Author: R <rqou at berkeley.edu>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Allow YAML file to control multilib selection (#98856)

This changes the bare-metal driver logic such that it _always_ tries
multilib.yaml if it exists, and it falls back to the hardwired/default
RISC-V multilib selection only if a multilib.yaml doesn't exist. In
contrast, the current behavior is that RISC-V can never use
multilib.yaml, but other targets will try it if it exists.

The flags `-march=` and `-mabi=` are exposed for multilib.yaml to match
on. There is no attempt to help YAML file creators to duplicate the
existing hard-wired multilib reuse logic -- they will have to implement
it using `Mappings`.

This should be backwards-compatible with existing sysroots, as
multilib.yaml was previously never used for RISC-V, and the behavior
doesn't change after this PR if the file doesn't exist.


  Commit: 1164e4aef2844ac3d35153ffe6376db9abda704a
      https://github.com/llvm/llvm-project/commit/1164e4aef2844ac3d35153ffe6376db9abda704a
  Author: stefankoncarevic <skoncare at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    A mlir/test/Conversion/AMDGPUToROCDL/dpp.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Implement AMDGPU DPP operation in MLIR. (#89233)

Defined AMDGPU DPP operation in mlir to represent semantics. Introduced
a new enumeration attribute for different permutations and allowed for
different types of arguments. Implemented constant attribute handling
for ROCDL::DPPMovOp operation. The operation now correctly accepts
constant attributes for dppCtrl, rowMask, bankMask, boundCtrl, and
passes them to the corresponding LLVM intrinsic.


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

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [SelectionDAG][X86] Add SelectionDAG::getSignedConstant and use it in a few places. (#104555)

PR #80309 proposes to have users of APInt's uint64_t
constructor opt-in to implicit truncation. Currently, that patch
requires SelectionDAG::getConstant to opt-in.

This patch adds getSignedConstant so we can start fixing some of the
cases that require implicit truncation.


  Commit: 97f0ab71c002e8a14142be3a117b3091ab75c552
      https://github.com/llvm/llvm-project/commit/97f0ab71c002e8a14142be3a117b3091ab75c552
  Author: Andrey Timonin <timonina1909 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    A mlir/test/Conversion/SCFToEmitC/switch.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Target/Cpp/invalid.mlir
    A mlir/test/Target/Cpp/switch.mlir

  Log Message:
  -----------
  [mlir][emitc] Add 'emitc.switch' op to the dialect (#102331)

This PR is continuation of the [previous
one](https://github.com/llvm/llvm-project/pull/101478). As a result, the
`emitc::SwitchOp` op was developed inspired by `scf::IndexSwitchOp`.

Main points of PR:

- Added the `emitc::SwitchOp` op  to the EmitC dialect + CppEmitter
- Corresponding tests were added
- Conversion from the SCF dialect to the EmitC dialect for the op


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

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
    M llvm/utils/TableGen/Basic/SDNodeProperties.cpp
    M llvm/utils/TableGen/Basic/SDNodeProperties.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/PatternParser.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp
    M llvm/utils/TableGen/SearchableTableEmitter.cpp
    M polly/lib/Support/GICHelper.cpp

  Log Message:
  -----------
  [TableGen] Refactor Intrinsic handling in TableGen (#103980)

CodeGenIntrinsic changes:
  - Use `const` Record pointers, and `StringRef` when possible.
  - Default initialize several fields with their definition instead of in
 the constructor.
- Simplify various string checks in the constructor using StringRef
starts_with()/ends_with() functions.
- Eliminate first argument to `setDefaultProperties` and use `TheDef`
class member instead.

IntrinsicEmitter changes:
  - Emit `namespace llvm::Intrinsic` instead of nested namespaces.
  - End generated comments with a .
  - Use range based for loops, and early continue within loops.
  - Emit `static constexpr` instead of `static const` for arrays.
- Change `compareFnAttributes` to use std::tie() to compare intrinsic
attributes and return a default value when all attributes are equal.

STLExtras:
  - Add std::replace wrapper which takes a range.


  Commit: d8c2874172ebe70d34c08dea5fcf885283c93562
      https://github.com/llvm/llvm-project/commit/d8c2874172ebe70d34c08dea5fcf885283c93562
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/bit-int-ubsan.c

  Log Message:
  -----------
  [test] Prevent generation of the bigendian code inside clang test CodeGen/bit-int-ubsan.c (#104607)

Add missing -triple x86_64-pc-linux-gnu line into RUN line, which should be here.

---------

Co-authored-by: Eänolituri Lómitaurë <vladislav.aranov at ericsson.com>
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Paul Kirth <paulkirth at google.com>
Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>


  Commit: 3f18a0a71cc29c502591a3d29a1845a011415f2a
      https://github.com/llvm/llvm-project/commit/3f18a0a71cc29c502591a3d29a1845a011415f2a
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation-invalid-roots.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll

  Log Message:
  -----------
  [nfc] Improve testability of PGOInstrumentationGen (#104490)

Passing to the `PGOInstrumentationGen` pass whether it needs to produce contextual profiling instrumentation as a flag, in the process restructuring a bit the places that need to be aware of that (some were unnecessarily in `PGOInstrumentationUse`)


  Commit: aba3476111fbc06f652453c13c99ca029646df47
      https://github.com/llvm/llvm-project/commit/aba3476111fbc06f652453c13c99ca029646df47
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp

  Log Message:
  -----------
  [RISCV] Move vmv.v.v peephole from SelectionDAG to RISCVVectorPeephole (#100367)

This is split off from #71764, and moves only the vmv.v.v part of
performCombineVMergeAndVOps to work on MachineInstrs.

In retrospect trying to handle PseudoVMV_V_V and PseudoVMERGE_VVM in the
same function makes the code quite hard to read, so this just does it in
a separate peephole.

This turns out to be simpler since for PseudoVMV_V_V we don't need to
convert the Src instruction to a masked variant, and we don't need to
create a fake all ones mask.


  Commit: ab5102d61d1fc0b3b5f2dbaa268ffa5fef295cad
      https://github.com/llvm/llvm-project/commit/ab5102d61d1fc0b3b5f2dbaa268ffa5fef295cad
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-16 (Fri, 16 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 AtomicRMWInst (#104529)

This patch implements sandboxir::AtomicRMWInst mirroring
llvm::AtomicRMWInst.


  Commit: f668708796b981733a5816f2efed0d5195af923d
      https://github.com/llvm/llvm-project/commit/f668708796b981733a5816f2efed0d5195af923d
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/include/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [libc] Disable old headergen checks unless enabled (#104522)

Old Headergen needed extra build rules to ensure that it worked in
runtimes mode. This patch disables those checks if new headergen is
enabled. Also some new headers were not being properly built with
new headergen, and that's also fixed.


  Commit: fbef911dc3ed5ab2c857736de9e68bec4c578410
      https://github.com/llvm/llvm-project/commit/fbef911dc3ed5ab2c857736de9e68bec4c578410
  Author: Billy Zhu <billyzhu at modular.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Fix cyclic dependencies for macos (#104528)

Similar to https://github.com/llvm/llvm-project/pull/104481. Replace
more "Utility" dependencies with "UtilityHeaders" to avoid cyclic
dependency when building on macos.


  Commit: db279c72f2fea755c8e66cc1f0a69954764e9284
      https://github.com/llvm/llvm-project/commit/db279c72f2fea755c8e66cc1f0a69954764e9284
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/CMakeLists.txt
    A llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
    A llvm/lib/Target/DirectX/DXILFinalizeLinkage.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/test/CodeGen/DirectX/conflicting-bitcast-insert.ll
    A llvm/test/CodeGen/DirectX/finalize_linkage.ll
    M llvm/test/CodeGen/DirectX/omit-bitcast-insert.ll

  Log Message:
  -----------
  [HLSL] Change default linkage of HLSL functions to internal (#95331)

An HLSL function has internal linkage by default unless it is:
1. shader entry point function
2. marked with the `export` keyword
(https://github.com/llvm/llvm-project/issues/92812)
3. patch constant function (not implemented yet)

This PR adds a link-time pass `DXILFinalizeLinkage` that updates the
linkage of functions to make sure only shader entry points and exported
functions are visible from the module (have _program linkage_). All
other functions will be updated to have internal linkage.

Related spec update: microsoft/hlsl-specs#295

Fixes #llvm/llvm-project#92071


  Commit: 907c7eb311077c5da434bf67858b1173a351d800
      https://github.com/llvm/llvm-project/commit/907c7eb311077c5da434bf67858b1173a351d800
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/test/Transforms/Attributor/reduced/openmp_opt_constant_type_crash.ll
    M llvm/test/Transforms/OpenMP/barrier_removal.ll
    M llvm/test/Transforms/OpenMP/heap-to-shared-missing-declarations.ll
    M llvm/test/Transforms/OpenMP/nested_parallelism.ll
    M llvm/test/Transforms/OpenMP/spmdization_kernel_env_dep.ll

  Log Message:
  -----------
  [Attributor] Enable `AAAddressSpace` in `OpenMPOpt` (#104363)

This reverts commit e592c2dcf5b7d2da6c2564f5d9990aa34079bad4.

We can finally reland the PR since the issue that caused the PR to be
reverted has been resolved in
https://github.com/llvm/llvm-project/pull/104051.


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

  Changed paths:
    M clang/include/clang/APINotes/APINotesReader.h
    M clang/include/clang/APINotes/APINotesWriter.h
    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
    A clang/test/APINotes/Inputs/Headers/Fields.apinotes
    A clang/test/APINotes/Inputs/Headers/Fields.h
    M clang/test/APINotes/Inputs/Headers/module.modulemap
    A clang/test/APINotes/fields.cpp

  Log Message:
  -----------
  [APINotes] Support fields of C/C++ structs

This allows annotating fields of C/C++ structs using API Notes.

Previously API Notes supported Objective-C properties, but not fields.

rdar://131548377


  Commit: 9f89d31d5185015f8eea9c0f3d35e7ba9d353e67
      https://github.com/llvm/llvm-project/commit/9f89d31d5185015f8eea9c0f3d35e7ba9d353e67
  Author: Kendal Harland <3987220+kendalharland at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/utils/lit/lit/formats/googletest.py

  Log Message:
  -----------
  [lldb][test] Mark gtest cases as XFAIL if the test suite is XFAIL (#102986)

When a test case inside of a gtest suite fails, we report a failure
which causes the entire `ninja check-lldb` invocation to fail, even if
the outer test case is marked as XFAIL - each test case result is
reported as its own lit test run. This PR updates lit so it checks
whether each test case's parent test suite is XFAIL before setting the
status to FAIL.

This is especially problematic because the failing tests can't manually
be marked as XFAIL, due to
https://github.com/llvm/llvm-project/issues/102264.

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

### Repro instructions

1. Modify any gtest test case to generate a failure.
2. Mark the outer lit test with XFAIL using either `--xfail-tests` flag
or `LIT_XFAIL` env var.
3. Run the tests
4. Observe the lit test is XFAIL as expected, but the failed child test
cases show up as separate failures.

Co-authored-by: kendal <kendal at thebrowser.company>


  Commit: 0551926fda739c1023a41978efb55047013e70d6
      https://github.com/llvm/llvm-project/commit/0551926fda739c1023a41978efb55047013e70d6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [Clang][OMPX] Add the code generation for multi-dim `thread_limit` clause (#102717)


  Commit: 89a1f144f3890d9bd8ab30537b36f8c18038719b
      https://github.com/llvm/llvm-project/commit/89a1f144f3890d9bd8ab30537b36f8c18038719b
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M lld/MachO/Driver.cpp
    M lld/test/MachO/objc-category-conflicts.s
    M lld/test/MachO/objc-category-merging-complete-test.s
    M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
    M lld/test/MachO/objc-category-merging-minimal.s
    M lld/test/MachO/objc-category-merging-swift.s
    M lld/test/MachO/objc-relative-method-lists-simple.s

  Log Message:
  -----------
  [LLD, MachO] Default objc_relative_method_lists on MacOS10.16+/iOS14+ (#104519)

This patch makes `-objc_relative_method_lists` default on MacOS
10.16+/iOS 14+. Manual override still work if command line argument is
provided.

To test this change, many explict arguments are removed from the test
files. Some explict `-objc_no_objc_relative_method_lists` are also added
for tests that don't support this yet.

This commit tries to revive #101360, which exposes a bug that breaks CI.
#104081 has fixed that bug.


  Commit: 97919864ec9227001f7bcb5594197b304ace9482
      https://github.com/llvm/llvm-project/commit/97919864ec9227001f7bcb5594197b304ace9482
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/include/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  Revert "[libc] Disable old headergen checks unless enabled" (#104627)

Reverts llvm/llvm-project#104522

Caused crashes on Fuchsia


  Commit: 8becb80c43d567d12126a539514040e93892ef1a
      https://github.com/llvm/llvm-project/commit/8becb80c43d567d12126a539514040e93892ef1a
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    R llvm/test/CodeGen/AArch64/print-mrs-system-register.ll
    R llvm/test/MC/AArch64/arm64-target-specific-sysreg.s
    R llvm/test/tools/llvm-objdump/MachO/AArch64/Inputs/print-mrs.obj.macho-aarch64
    R llvm/test/tools/llvm-objdump/MachO/AArch64/macho-print-mrs.test

  Log Message:
  -----------
  [AArch64] Remove apple-a7-sysreg. (#102709)

This feature provided CPM_IOACC_CTL_EL3, a lone system register that has
been carried over since the original ARM64 implementation, where it was
the only processor-specific register in a long list of architectural
sysregs. We don't need it here.

It's been used as a generic processor-specific sysreg in tests, but the
functionality they target is now better covered in other more exhaustive
tests.


  Commit: f999b321d7317fa9e59ce597bd3d63b7035fe774
      https://github.com/llvm/llvm-project/commit/f999b321d7317fa9e59ce597bd3d63b7035fe774
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.h

  Log Message:
  -----------
  [DirectX] Add missing Analysis usage to DXILResourceMDWrapper

This analysis can't be used with other analyses if this isn't set.

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


  Commit: 535b209cb3b485a66083d7c4386c16c2df0000a8
      https://github.com/llvm/llvm-project/commit/535b209cb3b485a66083d7c4386c16c2df0000a8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [SelectionDAGISel] Use getSignedConstant for OPC_EmitInteger.


  Commit: 51ede55ee2acd3383d990c5fc8882d4b021b87b4
      https://github.com/llvm/llvm-project/commit/51ede55ee2acd3383d990c5fc8882d4b021b87b4
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Analysis/DXILResource.cpp
    A llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  Re-Apply "[DXIL][Analysis] Implement enough of DXILResourceAnalysis for buffers" (#104517)

Some build configs allow `llvm_unreachable` in a constexpr context, but
not all, so these functions that map a fully covered enum to a string
can't be constexpr. This version fixes that by dropping constexpr from
those functions.

This reverts commit fcc318ff7960d7de8cbac56eb4f32b44b5261677, reapplying
28d577ecefa1557f5dea5566bf33b885c563d14b.

Original message follows:

This implements the DXILResourceAnalysis pass for `dx.TypedBuffer` and
`dx.RawBuffer` types. This should be sufficient to lower
`dx.handle.fromBinding` for this set of types, but it leaves a number of
TODOs around for other resource types.

This also includes a straightforward `print` method in `ResourceInfo` to
make the analysis testable. This is deliberately different than the
printer in `lib/Target/DirectX/DXILResource.cpp`, which attempts to
print bindings in a format compatible with the comments `dxc` prints. We
will eventually want to make that functionality driven by this analysis
pass, but it isn't sufficient for testing so we need both.


  Commit: 3e7ca5f1efabb488663caec371e408d74c634d84
      https://github.com/llvm/llvm-project/commit/3e7ca5f1efabb488663caec371e408d74c634d84
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [SDAG] Read-only intrinsics must have WillReturn and !Throws attributes to be treated as loads (#99999)

This change avoids deleting `!willReturn` intrinsics for which the
return value is unused when building the SDAG. Currently, calls to
read-only intrinsics not marked with `IntrWillReturn` cannot be deleted
at the LLVM IR level but may be deleted when building the SDAG. 
These calls are unsafe to remove from the IR because the functions are
`!willReturn` and should also be unsafe to remove fromthe SDAG for
the same reason. This change aligns the behavior of the SDAG to that
of LLVM IR. This change also requires that intrinsics not have the
`Throws` attribute to be treated as loads for the same reason.


  Commit: 3c603f857c26fd979ebff3a469c41ecc24bf548f
      https://github.com/llvm/llvm-project/commit/3c603f857c26fd979ebff3a469c41ecc24bf548f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [libcxx][fix] Rename incorrect filename variable

Summary:
This used an old name I forgot to fix, linter didn't catch it because it
was behind `ifdef` and the branch which I tested it on I forgot to
update the one I landed.


  Commit: 845461093c6275022e90fb6af15fc330b246b86a
      https://github.com/llvm/llvm-project/commit/845461093c6275022e90fb6af15fc330b246b86a
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix generated header definitions in cmake (#104628)

Some new headers were not being properly built with
new headergen, since they were using the old "add_gen_header" instead of
the new "add_header_macro". This patch fixes the issue.


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

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

  Log Message:
  -----------
  AMDGPU: Rename type helper functions in atomic handling

Requested on #95394


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

  Changed paths:
    M clang/lib/Driver/Types.cpp
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  [flang][cuda][driver] Make sure flang does not switch to cc1 (#104613)

Flang is switch to cc1 when we use `-x cuda`. Make sure we can use fc1
with cuda fortran input.

The current pipeline will fail at MLIR level for the moment. 

#104483


  Commit: 464fa3b3b047518699689b57c473c87701986593
      https://github.com/llvm/llvm-project/commit/464fa3b3b047518699689b57c473c87701986593
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/docs/PointerAuth.md
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
    A llvm/test/MC/AArch64/arm64e-authenticated-pointer-reloc.s

  Log Message:
  -----------
  [AArch64][MachO] Encode @AUTH to ARM64_RELOC_AUTHENTICATED_POINTER.

This adds MachO support for emission of authenticated pointer
relocations.

We already support AArch64AuthMCExpr, to represent assembly expressions
such as:
  .quad <symbol>@AUTH(<key>, <discriminator> [, addr])
For example:
  .quad _g3 at AUTH(ib, 1234, addr)

These @AUTH expressions lower to a new kind of MachO relocation:
  ARM64_RELOC_AUTHENTICATED_POINTER (11)

The relocation points to the referenced symbol.
The other data, describing the signing scheme and original addend
(only 32 bits instead of 64), is encoded into the addend (in the
relocated location):

  |63|62|61-51|50-49|  48  |47     -     32|31  -  0|
  | 1| 0|  0  | key | addr | discriminator | addend |


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

  Changed paths:
    M clang/lib/Driver/Types.cpp
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  Revert "[flang][cuda][driver] Make sure flang does not switch to cc1" (#104632)

Reverts llvm/llvm-project#104613


  Commit: cf721e29c6a3f220bd66475b7d29aff7fe9d56e3
      https://github.com/llvm/llvm-project/commit/cf721e29c6a3f220bd66475b7d29aff7fe9d56e3
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCMergeStringPool.cpp
    A llvm/test/CodeGen/PowerPC/mergeable-string-pool-tls.ll

  Log Message:
  -----------
  [PowerPC] Do not merge TLS constants within PPCMergeStringPool.cpp (#94059)

This patch prevents thread-local constants to be merged within
PPCMergeStringPool.cpp.

The PPCMergeStringPool pass primarily merges non-thread-local constants
together, and thread-local constants should not be mixed together with
other (non-thread-local) constants. In the event that thread-local and
other non-thread-local constants are pooled together, the
llvm.threadlocal.address intrinsic can fail as it expects its argument
to be a thread-local global value, but the merged string structure
created by the PPCMergeStringPool pass is not thread-local as a whole.


  Commit: 1aa8a6f6917edbdcad53afad3b00c7e86aa57ffe
      https://github.com/llvm/llvm-project/commit/1aa8a6f6917edbdcad53afad3b00c7e86aa57ffe
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [VPlan] Compute cost for most opcodes in VPWidenRecipe (NFCI). (#98764)

Implement VPWidenRecipe::computeCost for most cases (except 
UDiv,SDiv,URem,SRem which require additional logic).

Note that this specializes `::computeCost` instead of `::cost`, as
`VPRecipeBase::cost` is responsible for skipping cost-computations
for pre-computed recipes for now.

The most recent version of the VPlan-based cost model introduction 
has been committed on Jul 10 (b841e2eca3b5c8b) and we should
probably give it at least a week in case additional mismatches surface.

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


  Commit: 71d54faa65f490f2a2825e591c3eb25ff7996221
      https://github.com/llvm/llvm-project/commit/71d54faa65f490f2a2825e591c3eb25ff7996221
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h

  Log Message:
  -----------
  [DirectX] Revert specialized createOp methods part of #101250

In 8cf85653b6f5 "[DirectX] Make DXILOpBuilder's API more useable" we introduced
specialized createOp methods for each DirectX op for convenience, but the API
is buggy and untested. It also isn't actually as useful as I imagined it would
be since we don't have argument names or const-ness represented in DXIL.td
currently. Remove these methods for now and we can reintroduce them if we
actually need them later.

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


  Commit: 7ff377ba60bf9e615f3efc60268fbd74b75e54c4
      https://github.com/llvm/llvm-project/commit/7ff377ba60bf9e615f3efc60268fbd74b75e54c4
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CFGPrinter.h
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/GraphWriterTest.cpp

  Log Message:
  -----------
  [Analysis] Fix null ptr dereference when using WriteGraph without branch probability info (#104102)

The call to 'CFGInfo->getBPI()->getEdgeProbability(Node, SuccBB);' fails
when BPI is not provided. In this case we can give up and not print any
edge attributes.

---------

Co-authored-by: tnowicki <tnowicki.nowicki at amd.com>


  Commit: f5b81aa6ec371c13794aac82eb246a1a92966b43
      https://github.com/llvm/llvm-project/commit/f5b81aa6ec371c13794aac82eb246a1a92966b43
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    A llvm/test/Instrumentation/InstrProfiling/conditional-counter-updates.ll

  Log Message:
  -----------
  [InstrProf] Support conditional counter updates (#102542)

This patch adds support for conditional counter updates in single byte
counters mode to reduce the write contention by first checking whether
the counter is set before overwriting it.

---------

Co-authored-by: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>


  Commit: 0e4f7c7207d26e141e271dc88102905d14815596
      https://github.com/llvm/llvm-project/commit/0e4f7c7207d26e141e271dc88102905d14815596
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

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


  Commit: 808933f60b574c45087d8255ff113083c4536d85
      https://github.com/llvm/llvm-project/commit/808933f60b574c45087d8255ff113083c4536d85
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [MC] Drop whitespace padding in AMDGPU combined asm/disasm tests. (#104433)

A follow-up from

<https://github.com/llvm/llvm-project/pull/92895#discussion_r1684390909>.


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

  Changed paths:
    M clang/lib/Driver/Types.cpp
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  Reland "[flang][cuda][driver] Make sure flang does not switch to cc1 (#104613)"

Flang is switch to cc1 when we use `-x cuda`. Make sure we can use fc1
with cuda fortran input.

The current pipeline will fail at MLIR level for the moment.


  Commit: 8c5d76ac508ece0b41cfd33247d1f0551c80a9e8
      https://github.com/llvm/llvm-project/commit/8c5d76ac508ece0b41cfd33247d1f0551c80a9e8
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp

  Log Message:
  -----------
  [SandboxIR][Tracker][NFC] GenericSetterWithIdx (#104615)

This patch adds a generic change tracker class, similar to
GenericSetter, but for getter/setter functions that also take an index
argument. For example: `Foo:get(Idx)` and `Foo::set(Idx, Val)`. These
setter/getter patterns are common enough that using a common
implementation seems beneficial.


  Commit: de9338fc625d8d67c18032492b2e743cd53f4b37
      https://github.com/llvm/llvm-project/commit/de9338fc625d8d67c18032492b2e743cd53f4b37
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/lib/Driver/Types.cpp
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  Revert "Reland "[flang][cuda][driver] Make sure flang does not switch to cc1 (#104613)""

This reverts commit af81b4f9f98f6ac89f876637f065d6525e374468.


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

  Changed paths:
    M clang/lib/Driver/Types.cpp
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  Reland "[flang][cuda][driver] Make sure flang does not switch to cc1 (#104613)"

Flang is switch to cc1 when we use `-x cuda`. Make sure we can use fc1
with cuda fortran input.

The current pipeline will fail at MLIR level for the moment.


  Commit: fd9aa5e40d903e8411b924d94348c0e348cf50db
      https://github.com/llvm/llvm-project/commit/fd9aa5e40d903e8411b924d94348c0e348cf50db
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M flang/test/Driver/cuda-option.f90

  Log Message:
  -----------
  [flang][cuda] Remove run line


  Commit: 13779ec29ed724666407bd60f8c4cc8228107ea5
      https://github.com/llvm/llvm-project/commit/13779ec29ed724666407bd60f8c4cc8228107ea5
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp
    R llvm/test/Assembler/getInt.ll
    M llvm/unittests/IR/DataLayoutTest.cpp

  Log Message:
  -----------
  [DataLayout] Refactor parsing of "p" specification (#104583)

Split off of #104545 to reduce patch size.
Similar to #104546, this introduces `parseSize` and `parseAlignment`,
which are improved versions of `getInt` tailored for specific needs.

I'm not a GTest guru, so the tests are not ideal.


  Commit: 4a0bbbcbcf6ebc87e794e7b86b9f4651bffcd806
      https://github.com/llvm/llvm-project/commit/4a0bbbcbcf6ebc87e794e7b86b9f4651bffcd806
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/full-non-schedulable-overlap.ll

  Log Message:
  -----------
  [SLP]Fix PR104637: do not create new nodes for fully overlapped non-schedulable nodes

If the scalars do not require scheduling and were already vectorized,
but in the different order, compiler still tries to create the new node.
It may cause the compiler crash for the gathered operands. Instead need
to consider such nodes as full overlap and just reshuffle vectorized
node.

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


  Commit: f33d519cd471b1eec41c8b26f892ddb66bf8144f
      https://github.com/llvm/llvm-project/commit/f33d519cd471b1eec41c8b26f892ddb66bf8144f
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-16 (Fri, 16 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] Implement ConstantInt (#104639)

This patch implements a very basic version of sandboxir::ConstantInt. It
is missing most of the factory functions present in llvm::ConstantInt,
but these will be added later.


  Commit: 70995a1a3379ed3c21b1c5da6723f04166cb0ae6
      https://github.com/llvm/llvm-project/commit/70995a1a3379ed3c21b1c5da6723f04166cb0ae6
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
    M llvm/test/CodeGen/X86/bfloat.ll
    M llvm/test/CodeGen/X86/shuffle-half.ll
    M llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-load.ll
    M llvm/test/Transforms/ScalarizeMaskedMemIntrin/X86/expand-masked-store.ll

  Log Message:
  -----------
  [ScalarizeMaskedMemIntr] Optimize splat non-constant masks (#104537)

In cases (like the ones added in the tests) where the condition of a
masked load or store is a splat but not a constant (that is, a masked
operation is being used to implement patterns like "load if the current
lane is in-bounds, otherwise return 0"), optimize the 'scalarized' code
to perform an aligned vector load/store if the splat constant is true.

Additionally, take a few steps to preserve aliasing information and
names when nothing is scalarized while I'm here.

As motivation, some LLVM IR users will genatate masked load/store in
cases that map to this kind of predicated operation (where either the
vector is loaded/stored or it isn't) in order to take advantage of
hardware primitives, but on AMDGPU, where we don't have a masked load or
store, this pass would scalarize a load or store that was intended to be
- and can be - vectorized while also introducing expensive branches.

Fixes #104520

Pre-commit tests at #104527


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

  Changed paths:
    M libc/config/gpu/entrypoints.txt

  Log Message:
  -----------
  [libc] Add missing math definitions for round and scal for GPU (#104636)

Summary:
These can be enabled


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

  Changed paths:
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/test/CodeGen/Mips/Fast-ISel/bswap1.ll

  Log Message:
  -----------
  [Mips] Fix fast isel for i16 bswap. (#103398)

We need to mask the SRL result to 8 bits before ORing in the SLL. This
is needed in case bits 23:16 of the input aren't zero. They will have
been shifted into bits 15:8.

We don't need to AND the result with 0xffff. It's ok if the upper 16
bits of the register are garbage.

Fixes #103035.


  Commit: e4f3735d5f600b17b8f86956162d41ce82096685
      https://github.com/llvm/llvm-project/commit/e4f3735d5f600b17b8f86956162d41ce82096685
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/basic/basic.start/basic.start.main/p3.cpp

  Log Message:
  -----------
  [Clang] fix crash by avoiding invalidation of extern main declaration during strictness checks (#104594)

Fixes #104570


  Commit: bfdeceada36c0f14a7bb2e264f0b801e442368a7
      https://github.com/llvm/llvm-project/commit/bfdeceada36c0f14a7bb2e264f0b801e442368a7
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [NFC][cxxabi] Apply `cp-to-llvm.sh` (#101970)


  Commit: 324b676a3d0449add8d4e24047680125f9b9a716
      https://github.com/llvm/llvm-project/commit/324b676a3d0449add8d4e24047680125f9b9a716
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll

  Log Message:
  -----------
  Revert "[AArch64] Fold more load.x into load.i with large offset"

This reverts commit 43ffe2eed0d9f73789dbe213023733d164999306.

Reason: buildbot breakage starting at https://lab.llvm.org/buildbot/#/builders/85/builds/1102

I manually bisected and found that clang crashed with 43ffe2eed0d9f73789dbe213023733d164999306 but not the immediately preceding commit (33190490c667aaf8b08d5af8b8ce84524f856e80)


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

  Changed paths:
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc] add support for enums comments in html generation (#101282)

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

This patch adds support for attaching comments to enums for HTML in
clang-doc. It changes the enum generation to table tags where as
perviously we're using lists which is more in line with what other doc
generators are doing. It also gives clang-doc the ability to show user
specified enum values


  Commit: 085b04b3a2e941a25cbf713cc3969c1254469289
      https://github.com/llvm/llvm-project/commit/085b04b3a2e941a25cbf713cc3969c1254469289
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    A compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    A llvm/test/Instrumentation/AddressSanitizer/instrument_initializer_without_global.ll

  Log Message:
  -----------
  [asan] Pre-commit test with global constructor without any global (#104620)

In this test `@initializer()` can access globals
outside of the module, but Asan does nothing to
detect that.


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

  Changed paths:
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/CodeGenCXX/amdgpu-kernel-arg-pointer-type.cpp

  Log Message:
  -----------
  [Clang] Fix sema checks thinking kernels aren't kernels (#104460)

Summary:
Currently we have some sema checks to make sure users don't apply
kernel-only attributes to non-kernel functions. However, this currently
did not correctly check for bare NVPTX / AMDGPU kernel attributes,
making it impossible to use them at all w/o CUDA enabled. This patch
fixes that by checking for the calling convention / attributes directly.


  Commit: 516c1a0e9a7f101e678bcc61620ccdebd5ef83d1
      https://github.com/llvm/llvm-project/commit/516c1a0e9a7f101e678bcc61620ccdebd5ef83d1
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement SwitchInst (#104641)

This patch implements sandboxir::SwitchInst mirroring llvm::SwitchInst.


  Commit: 981191aa94bfd3fce0852ee2c8ff2b23aba5a4a6
      https://github.com/llvm/llvm-project/commit/981191aa94bfd3fce0852ee2c8ff2b23aba5a4a6
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M flang/test/Lower/ident.f90

  Log Message:
  -----------
  [flang] Allow flexible name in llvm.ident (NFC) (#104543)


  Commit: cd3f48df82dae19493da838afd1c0aaf98c737eb
      https://github.com/llvm/llvm-project/commit/cd3f48df82dae19493da838afd1c0aaf98c737eb
  Author: Greg Roth <grroth at microsoft.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [NFC][DXIL] move replace/erase in DXIL intrinsic expansion to caller (#104626)

All expansions end with replacing the previous inrinsic with the new
expansion and erasing the old one. By moving this operation to the
caller, these expansion functions can be called in more contexts and a
small amount of duplicated code is consolidated.

Pre-req for #88056


  Commit: 8d8f56da3038dd8e36713f8a4926aeffd0f1f80b
      https://github.com/llvm/llvm-project/commit/8d8f56da3038dd8e36713f8a4926aeffd0f1f80b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/test/MC/AArch64/mapping-within-section.s

  Log Message:
  -----------
  [MC,AArch64] Remove unneeded STT_NOTYPE/STB_LOCAL code for mapping symbols and improve tests


  Commit: 4cf9a4266167c686e7e405ead5d6c1cd389eeca5
      https://github.com/llvm/llvm-project/commit/4cf9a4266167c686e7e405ead5d6c1cd389eeca5
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Adjust requires clause wrapping (#101550) (#102078)

Address #101550 by adding OwnLineWithBrace option for RequiresClausePosition. This permits placing a following '{' on the same line as the requires clause.

Thus, instead of:
```
bool Foo ()
  requires(true)
{
  return true;
}
```

we have:
```
bool Foo ()
  requires(true) {
  return true;
}
```

If the function body is empty, we'll get:
```
bool Foo ()
  requires(true) {}
```

I attempted to get a line break between the open and close braces, but
failed. Perhaps that's fine -- it's rare and only happens in the empty
body case.


  Commit: 6e0fc155782ff5307245a85c7b037a2998ec6c86
      https://github.com/llvm/llvm-project/commit/6e0fc155782ff5307245a85c7b037a2998ec6c86
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Remove feature implication from Zvknhb.

We don't have feature implications on any other Zvk extensions and
we have error messages in RISCVISAInfo if Zve or V is not enabled.
I'm working on testing and refactoring in that code so I'd like to
make it consistent.


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

  Changed paths:
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/test/Instrumentation/AddressSanitizer/instrument_initializer_without_global.ll

  Log Message:
  -----------
  [asan] Catch `initialization-order-fiasco` in modules without globals (#104621)

Those modules still can have global constructors and access
globals in other modules which are not initialized yet.


  Commit: 1ff630d5c32e73f5346e5cac0392762c11d1323d
      https://github.com/llvm/llvm-project/commit/1ff630d5c32e73f5346e5cac0392762c11d1323d
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    A llvm/test/CodeGen/NVPTX/brkpt.ll

  Log Message:
  -----------
  [LLVM][NVPTX] Add support for brkpt instruction (#104470)

This commit adds NVPTX codegen support for brkpt instruction
(https://docs.nvidia.com/cuda/parallel-thread-execution/#miscellaneous-instructions-brkpt)
with test under CodeGen/NVPTX/brkpt.ll


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

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

  Log Message:
  -----------
  [SelectionDAG][X86] Use getAllOnesConstant. NFC (#104640)

Part of an effort to make getConstant stricter about implicit truncation
when converting uint64_t to APInt.


  Commit: 34f941a2f96b804dd24c2a25770d899b018339ff
      https://github.com/llvm/llvm-project/commit/34f941a2f96b804dd24c2a25770d899b018339ff
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/test/Instrumentation/AddressSanitizer/instrument_initializer_without_global.ll

  Log Message:
  -----------
  Revert "[asan] Catch `initialization-order-fiasco` in modules without globals" (#104665)

Reverts llvm/llvm-project#104621

To many bots are broken, see #104621.


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

  Changed paths:
    M clang/test/CodeGen/sanitize-ignorelist-mainfile.c

  Log Message:
  -----------
  [CodeGen][asan] Use `%t` instead of `cd` in test


  Commit: 2f89c1c76ce22831bd7abebea99202a6d3313110
      https://github.com/llvm/llvm-project/commit/2f89c1c76ce22831bd7abebea99202a6d3313110
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Remove duplicate code by using getAddressableLocalMemorySize (#104604)


  Commit: 8041bf48337dcd8f02052c47b398216453e56168
      https://github.com/llvm/llvm-project/commit/8041bf48337dcd8f02052c47b398216453e56168
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-16 (Fri, 16 Aug 2024)

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

  Log Message:
  -----------
  [NFC][asan] Make 'Module &M' class member


  Commit: 067f2e9f18e1c92496202dc37428a89945f57c22
      https://github.com/llvm/llvm-project/commit/067f2e9f18e1c92496202dc37428a89945f57c22
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

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

  Log Message:
  -----------
  [SelectionDAG] Use getSignedConstant/getAllOnesConstant.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td

  Log Message:
  -----------
  [RISCV] Use getAllOnesConstant/getSignedConstant.


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

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-type-conversion.mlir

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Fix bug in `computeNecessaryMaterializations` (#104630)

There was a typo in the code path that removes unnecessary
materializations.

Before: Update `opResult` (result of an op different from `user`) in
mapping and remove `user`.
```
replaceMaterialization(rewriterImpl, opResult, inputOperands,
                       inverseMapping);
necessaryMaterializations.remove(materializationOps.lookup(user));
```

After: Update `user->getResults()` in mapping and remove `user`.
```
replaceMaterialization(rewriterImpl, user->getResults(), inputOperands,
                       inverseMapping);
necessaryMaterializations.remove(materializationOps.lookup(user));
```


  Commit: fc6300a5f7ef430e4ec86d16be0b146de7fbd16b
      https://github.com/llvm/llvm-project/commit/fc6300a5f7ef430e4ec86d16be0b146de7fbd16b
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    A llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.mir

  Log Message:
  -----------
  [AMDGPU] Disable inline constants for pseudo scalar transcendentals (#104395)

Prevent operand folding from inlining constants into pseudo scalar
transcendental f16 instructions.
However still allow literal constants.


  Commit: aad27bf534b59645f47a92f072af798687b1dd0d
      https://github.com/llvm/llvm-project/commit/aad27bf534b59645f47a92f072af798687b1dd0d
  Author: Giuseppe Rossini <giuseppe.rossini at amd.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  Add non-temporal support for LLVM masked loads (#104598)

This PR is adding non-temporal support to masked load as a `UnitAttr`
attribute. Non temporal load is quite an important feature for masked
loads to make the intrinsic usable from high level compilers


  Commit: 48ae61470104e9d7a8be5beb8739c24f52cc33c0
      https://github.com/llvm/llvm-project/commit/48ae61470104e9d7a8be5beb8739c24f52cc33c0
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
    A llvm/test/Transforms/InstCombine/pr96012.ll

  Log Message:
  -----------
  [InstCombine] Avoid infinite loop when negating phi nodes (#104581)

Closes https://github.com/llvm/llvm-project/issues/96012

---------

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


  Commit: 0da2ba811ac8a01509bc533428941fb9519c0715
      https://github.com/llvm/llvm-project/commit/0da2ba811ac8a01509bc533428941fb9519c0715
  Author: Daniil Fukalov <dfukalov at gmail.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFixedPoint.h
    M llvm/include/llvm/ADT/DynamicAPInt.h
    M llvm/include/llvm/ADT/SlowDynamicAPInt.h
    M llvm/include/llvm/ADT/SmallPtrSet.h
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/include/llvm/ADT/Statistic.h
    M llvm/include/llvm/Analysis/AliasAnalysis.h
    M llvm/include/llvm/Analysis/AliasSetTracker.h
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/include/llvm/Analysis/BlockFrequencyInfo.h
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/CGSCCPassManager.h
    M llvm/include/llvm/Analysis/CallGraph.h
    M llvm/include/llvm/Analysis/CaptureTracking.h
    M llvm/include/llvm/Analysis/CodeMetrics.h
    M llvm/include/llvm/Analysis/ConstraintSystem.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/include/llvm/Analysis/DomConditionCache.h
    M llvm/include/llvm/Analysis/DomPrinter.h
    M llvm/include/llvm/Analysis/DomTreeUpdater.h
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/InlineAdvisor.h
    M llvm/include/llvm/Analysis/InlineOrder.h
    M llvm/include/llvm/Analysis/InstructionSimplify.h
    M llvm/include/llvm/Analysis/InteractiveModelRunner.h
    M llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h
    M llvm/include/llvm/Analysis/LazyBranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/LazyCallGraph.h
    M llvm/include/llvm/Analysis/LazyValueInfo.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/Analysis/LoopInfo.h
    M llvm/include/llvm/Analysis/MLInlineAdvisor.h
    M llvm/include/llvm/Analysis/MemoryBuiltins.h
    M llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
    M llvm/include/llvm/Analysis/MemoryLocation.h
    M llvm/include/llvm/Analysis/MemoryProfileInfo.h
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/Analysis/MustExecute.h
    M llvm/include/llvm/Analysis/NoInferenceModelRunner.h
    M llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h
    M llvm/include/llvm/Analysis/OptimizationRemarkEmitter.h
    M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
    M llvm/include/llvm/Analysis/PtrUseVisitor.h
    M llvm/include/llvm/Analysis/RegionInfo.h
    M llvm/include/llvm/Analysis/RegionPrinter.h
    M llvm/include/llvm/Analysis/ReplayInlineAdvisor.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/SyntheticCountsUtils.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/UniformityAnalysis.h
    M llvm/include/llvm/Analysis/ValueLattice.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/MemoryProfileInfo.cpp
    M llvm/lib/Analysis/ValueLattice.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Transforms/Utils/SizeOpts.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/unittests/Analysis/MemoryProfileInfoTest.cpp
    M mlir/include/mlir/Analysis/Presburger/Fraction.h

  Log Message:
  -----------
  [NFC] Cleanup in ADT and Analysis headers. (#104484)

Remove unused directly includes and forward declarations in ADT and
Analysis headers.


  Commit: 27d37ee4d067f42e9a46a0871d3cb961323e5c85
      https://github.com/llvm/llvm-project/commit/27d37ee4d067f42e9a46a0871d3cb961323e5c85
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaAMDGPU.h
    M clang/include/clang/Sema/SemaARM.h
    M clang/include/clang/Sema/SemaAVR.h
    M clang/include/clang/Sema/SemaBPF.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/SemaCodeCompletion.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaHexagon.h
    M clang/include/clang/Sema/SemaLoongArch.h
    M clang/include/clang/Sema/SemaM68k.h
    M clang/include/clang/Sema/SemaMIPS.h
    M clang/include/clang/Sema/SemaMSP430.h
    M clang/include/clang/Sema/SemaNVPTX.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/SemaOpenCL.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/SemaPPC.h
    M clang/include/clang/Sema/SemaPseudoObject.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/Sema/SemaSYCL.h
    M clang/include/clang/Sema/SemaSwift.h
    M clang/include/clang/Sema/SemaSystemZ.h
    M clang/include/clang/Sema/SemaWasm.h
    M clang/include/clang/Sema/SemaX86.h
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaMIPS.cpp
    M clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaX86.cpp

  Log Message:
  -----------
  [clang][NFC] Clean up `Sema` headers

When various `Sema*.h` and `Sema*.cpp` files were created, cleanup of
`Sema.h` includes and forward declarations was left for the later.
Now's the time. This commit touches `Sema.h` and Sema components:
1. Unused includes are removed.
2. Unused forward declarations are removed.
3. Missing includes are added (those files are largely IWYU-clean now).
4. Includes were converted into forward declarations where possible.

As this commit focuses on headers, all changes to `.cpp` files were
minimal, and were aiming at keeping everything buildable.


  Commit: 362142c4bb5cc657151f592e507f552d5b9f7dde
      https://github.com/llvm/llvm-project/commit/362142c4bb5cc657151f592e507f552d5b9f7dde
  Author: Tomas Matheson <Tomas.Matheson at arm.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-targetattr.c
    A clang/test/Driver/aarch64-negative-modifiers-for-default-features.c
    M clang/test/Driver/arm-sb.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a12.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a13.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a14.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a15.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a16.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-a17.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-m4.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82ae.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/armv8.5a-ssbs-error.s
    M llvm/test/MC/AArch64/armv8.5a-ssbs.s
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-ssbs.txt
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/ARMTargetDefEmitter.cpp

  Log Message:
  -----------
  [AArch64] Add a check for invalid default features (#104435)

This adds a check that all ExtensionWithMArch which are marked as
implied features for an architecture are also present in the list of
default features. It doesn't make sense to have something mandatory but
not on by default.

There were a number of existing cases that violated this rule, and some
changes to which features are mandatory (indicated by the Implies
field).

This resulted in a bug where if a feature was marked as `Implies` but
was not added to `DefaultExt`, then for `-march=base_arch+nofeat` the
Driver would consider `feat` to have never been added and therefore
would do nothing to disable it (no `-target-feature -feat` would be
added, but the backend would enable the feature by default because of
`Implies`). See
clang/test/Driver/aarch64-negative-modifiers-for-default-features.c.

Note that the processor definitions do not respect the architecture
DefaultExts. These apply only when specifying `-march=<some architecture
version>`. So when a feature is moved from `Implies` to `DefaultExts` on
the Architecture definition, the feature needs to be added to all
processor definitions (that are based on that architecture) in order to
preserve the existing behaviour. I have checked the TRMs for many cases
(see specific commit messages) but in other cases I have just kept the
current behaviour and not tried to fix it.


  Commit: 76161451f5ca837b25769c7d142f8271b45d9b28
      https://github.com/llvm/llvm-project/commit/76161451f5ca837b25769c7d142f8271b45d9b28
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml/string.yaml
    M libc/spec/bsd_ext.td

  Log Message:
  -----------
  [libc] Fix type signature for strlcpy and strlcat (#104643)

Summary:
These should not be const on the destination pointer.


  Commit: 16929219b056fdbf9e0c93092904f2c5cac8a66f
      https://github.com/llvm/llvm-project/commit/16929219b056fdbf9e0c93092904f2c5cac8a66f
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIModeRegister.cpp
    M llvm/test/CodeGen/AMDGPU/fail.llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/mode-register-fptrunc.mir

  Log Message:
  -----------
  AMDGPU: Add tonearest and towardzero roundings for intrinsic llvm.fptrunc.round (#104486)

This work simplifies and generalizes the instruction definition for
intrinsic llvm.fptrunc.round. We no longer name the instruction with the
rounding mode. Instead, we introduce an immediate operand for the
rounding mode for the pseudo instruction. This immediate will be used to
set up the hardware mode register at the time the real instruction is
generated. We name the pseudo instruction as FPTRUNC_ROUND_F16_F32 (for
f32 -> f16), which is easy to generalize for other types.

"round.towardzero" and "round.tonearest" are added for f32 -> f16
truncating, in addition to the existing "round.upward" and
"round.downward". Other rounding modes are not supported by hardware at
this moment.


  Commit: 0b092dfee3c5d9d7e4bde636330ce39a656ee676
      https://github.com/llvm/llvm-project/commit/0b092dfee3c5d9d7e4bde636330ce39a656ee676
  Author: weiguozhi <57237827+weiguozhi at users.noreply.github.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

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

  Log Message:
  -----------
  [X86] Don't save/restore fp around longjmp instructions (#102556)

Longjmp instructions can also modify fp register, it is expected
behavior. We should not save/restore fp around these instructions.


  Commit: 107f3efdbedeecf4768fc0387db929e51ce96f85
      https://github.com/llvm/llvm-project/commit/107f3efdbedeecf4768fc0387db929e51ce96f85
  Author: Jesse Huang <jesse.huang at sifive.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/test/MC/RISCV/machine-csr-names-invalid.s
    M llvm/test/MC/RISCV/rv32-only-csr-names.s

  Log Message:
  -----------
  [RISCV][MC] Make error message of CSR with wrong extension more detailed (#104424)

Make the error message of lacking an extension for a CSR more
detailed and update related tests


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

  Changed paths:
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/test/AST/ByteCode/c.c

  Log Message:
  -----------
  [clang][bytecode] Classify 1-bit unsigned integers as bool (#104662)

This happens for enum types with bool parent types. isBooleanType()
returns false for them however.

The previous version did the same thing by re-classifying the enum
integer type, but that breaks with forward-declared enums.


  Commit: b21b907aeb36a4ce6b403944e9c440a3bba5c3e0
      https://github.com/llvm/llvm-project/commit/b21b907aeb36a4ce6b403944e9c440a3bba5c3e0
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M flang/lib/Evaluate/tools.cpp
    M flang/test/Semantics/data08.f90

  Log Message:
  -----------
  [flang] Handle Hollerith in data statement initialization in big endian (#103451)

Update to read the Hollerith literal in reverse order for big endian
environment.


  Commit: 555399d562201f3114fb22f883cd1b6710af1a0d
      https://github.com/llvm/llvm-project/commit/555399d562201f3114fb22f883cd1b6710af1a0d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/cxx23.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix shifting negative values (#104663)


  Commit: 69f76c782b554a004078af6909c19a11e3846415
      https://github.com/llvm/llvm-project/commit/69f76c782b554a004078af6909c19a11e3846415
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M lld/MinGW/Driver.cpp
    M lld/MinGW/Options.td
    M lld/test/MinGW/driver.test

  Log Message:
  -----------
  [LLD] [MinGW] Recognize the -rpath option (#102886)

GNU ld silently accepts the -rpath option for Windows targets, as a
no-op.

This has lead to some build systems (and users) passing this option
while building for Windows/MinGW, even if Windows doesn't have any
concept like rpath.

Older versions of Conan did include -rpath in the pkg-config files it
generated, see e.g.

https://github.com/conan-io/conan/blob/17c58f0c61931f9de218ac571cd97a8e0befa68e/conans/client/generators/pkg_config.py#L104-L114
and
https://github.com/conan-io/conan/blob/17c58f0c61931f9de218ac571cd97a8e0befa68e/conans/client/build/compiler_flags.py#L26-L34
- and see https://github.com/mstorsjo/llvm-mingw/issues/300 for user
reports about this issue.

Recognize the option in LLD for MinGW targets, to improve drop-in
compatibility compared to GNU ld, but produce a warning to alert users
that the option really has no effect for these targets.


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

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

  Log Message:
  -----------
  [SelectionDAG] Use getAllOnesConstant.


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

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp

  Log Message:
  -----------
  [ARM] Use SelectonDAG::getSignedConstant.


  Commit: 69115cce29d5dbbdacaa05aaedc89810aa58ef0c
      https://github.com/llvm/llvm-project/commit/69115cce29d5dbbdacaa05aaedc89810aa58ef0c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td

  Log Message:
  -----------
  [AArch64] Use SelectionDAG::getSignedConstant/getAllOnesConstant.


  Commit: 27a62ec72aed3faf1388600f485552471b580e3b
      https://github.com/llvm/llvm-project/commit/27a62ec72aed3faf1388600f485552471b580e3b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-17 (Sat, 17 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/TargetPassConfig.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/Transforms/Scalar.h
    A llvm/include/llvm/Transforms/Scalar/LoopTermFold.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Transforms/Scalar/CMakeLists.txt
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    A llvm/lib/Transforms/Scalar/LoopTermFold.cpp
    M llvm/lib/Transforms/Scalar/Scalar.cpp
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/Transforms/LoopStrengthReduce/RISCV/lsr-cost-compare.ll
    M llvm/test/Transforms/LoopStrengthReduce/RISCV/term-fold-crash.ll
    M llvm/test/Transforms/LoopStrengthReduce/lsr-term-fold-negative-testcase.ll
    M llvm/test/Transforms/LoopStrengthReduce/lsr-term-fold.ll
    M llvm/test/Transforms/LoopStrengthReduce/lsr-unreachable-bb-phi-node.ll

  Log Message:
  -----------
  [LSR] Split the -lsr-term-fold transformation into it's own pass (#104234)

This transformation doesn't actually use any of the internal state of
LSR and recomputes all information from SCEV.  Splitting it out makes
it easier to test.
    
Note that long term I would like to write a version of this transform
which *is* integrated with LSR's solver, but if that happens, we'll
just delete the extra pass.
    
Integration wise, I switched from using TTI to using a pass configuration
variable.  This seems slightly more idiomatic, and means we don't run
the extra logic on any target other than RISCV.


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

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

  Log Message:
  -----------
  [gn build] Port 27a62ec72aed


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

  Changed paths:
    M llvm/lib/Target/VE/VECustomDAG.cpp
    M llvm/lib/Target/VE/VEInstrInfo.td

  Log Message:
  -----------
  [VE] Use SelectionDAG::getSignedConstant/getAllOnesConstant.


  Commit: c4c9f39ba46b52ea88dffd54217f0205788751c6
      https://github.com/llvm/llvm-project/commit/c4c9f39ba46b52ea88dffd54217f0205788751c6
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-firstprivate.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Fix MLIR->LLVM value matching in privatization logic (#103718)

Fixes #102935

Updates matching logic for finding the LLVM value that corresponds to an
MLIR value. We need that matching to find the delayed privatizer for an
LLVM value being privatized.

The issue occures when there is an "indirect" correspondence between
MLIR and LLVM values: in some cases the values we are trying to match
stem from a pair of load/store ops that point to the same memref. This
PR adds such matching logic.


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

  Changed paths:
    M llvm/include/llvm/ADT/APInt.h

  Log Message:
  -----------
  [APInt] Replace enum with static constexpr member variables. NFC

With C++17 we no longer need the enum to prevent ODR use.


  Commit: 88f801037338a2c273a8f6dea8ebcb0c48a2cc06
      https://github.com/llvm/llvm-project/commit/88f801037338a2c273a8f6dea8ebcb0c48a2cc06
  Author: Mike Crowe <mac at mcrowe.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy] Correct typo in ReleaseNotes.rst (#104674)


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

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [PowerPC] Use MathExtras helpers to simplify code. NFC (#104691)


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

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

  Log Message:
  -----------
  [RISCV] Remove unused tablegen classes from unratified Zbp instructions. NFC

These weren't removed when we removed Zbp.


  Commit: 07bd3bb9b7eb34426a81de2b988f53f08611ab35
      https://github.com/llvm/llvm-project/commit/07bd3bb9b7eb34426a81de2b988f53f08611ab35
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Improve Pointer::print()

Do not access PointeeStorage.BS.Pointee if we have a non-block pointer
and extend printing to handle function pointers as well.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    A clang/test/AST/ByteCode/codegen.c

  Log Message:
  -----------
  [clang][bytecode] IntPointer::atOffset() should append (#104686)

... to current offset. This breaks other tests which this commit also
fixes. Namely, getIndex() should return the integer representation for
non-block pointers.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Analysis/builtin_signbit.cpp
    M clang/test/Sema/constant-builtins-2.c

  Log Message:
  -----------
  [Clang] `constexpr` builtin floating point classification / comparison functions (#94118)

As per [P0533R9](https://wg21.link/P0533R9), the corresponding C++
`[c.math.fpclass]` standard library functions for the C macros are now
`constexpr`.

The only classification function that wasn't already `constexpr` was
`__builtin_signbit`.
The floating point comparison functions `__builtin_isgreater`,
`__builtin_isgreaterequal`, `__builtin_isless`, `__builtin_islessequal`,
`__builtin_islessgreater` and `__builtin_isunordered` are now
`constexpr`.
The C23 macro `iseqsig` is not currently supported because
`__bulitin_iseqsig` doesn't exist yet (and C++26 is still currently
based on C18).

This also allows them to be constant folded in C, matching the behaviour
of GCC.


  Commit: 10fe531d6c9d46fb9584d33782f26d27887c72fd
      https://github.com/llvm/llvm-project/commit/10fe531d6c9d46fb9584d33782f26d27887c72fd
  Author: David Green <david.green at arm.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td

  Log Message:
  -----------
  [GlobalISel] Add and use an Opcode variable and update match-table-cxx.td checks. NFC


  Commit: c4092d326ae4989f54c5f01d3a077841fd76bc2f
      https://github.com/llvm/llvm-project/commit/c4092d326ae4989f54c5f01d3a077841fd76bc2f
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/Sema/c2x-nodiscard.c

  Log Message:
  -----------
  [Clang] warn on discarded [[nodiscard]] function results after casting in C (#104677)

Fixes #104391


  Commit: 71801707e33c235656b172fa7dfb8662473a95c2
      https://github.com/llvm/llvm-project/commit/71801707e33c235656b172fa7dfb8662473a95c2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/test/Sema/constant-builtins-2.c

  Log Message:
  -----------
  [clang][test] Remove bytecode interpreter RUN line from test

Specifically, from constant-builtins2. This breaks runners using
sanitizers.

See https://github.com/llvm/llvm-project/pull/94118


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll

  Log Message:
  -----------
  [LV] Don't cost branches and conditions to empty blocks.

Update the legacy cost model skip branches with successors blocks
that are empty or only contain dead instructions, together with their
conditions. Such branches and conditions won't result in any
generated code and will be cleaned up by VPlan transforms.

This fixes a difference between the legacy and VPlan-based cost model.

When running LV in its usual pipeline position, such dead blocks should
already have been cleaned up, but they might be generated manually or by
fuzzers.

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


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

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstSimplify/saturating-add-sub.ll

  Log Message:
  -----------
  [InstSimplify] Simplify `uadd.sat(X, Y) u>= X + Y` and `usub.sat(X, Y) u<= X, Y` (#104698)

These patterns are found in harfbuzz/typst.

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


  Commit: 29811a81f77c22523dbfffbd2d39ac731baea37b
      https://github.com/llvm/llvm-project/commit/29811a81f77c22523dbfffbd2d39ac731baea37b
  Author: PaulXiCao <paulxicao7 at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17.rst

  Log Message:
  -----------
  [libc++][docs] Fixing hyperlink for mathematical special function documentation (#104444)

Inter-documentation link for progress tracking of mathematical special
function is fixed.


  Commit: 6ed2a6bf0d26122210c8732d80431529784c4000
      https://github.com/llvm/llvm-project/commit/6ed2a6bf0d26122210c8732d80431529784c4000
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M flang/include/flang/Evaluate/integer.h
    M flang/lib/Evaluate/integer.cpp

  Log Message:
  -----------
  [Flang]: Use actual endianness for Integer<80> (#103928)

This PR is to use the actual endianness of the platform when instantiate
Integer<80> so that AIX (big-endian) will not get confused.


  Commit: d082f1f37d8cb7a0c6875537ba873a631b154d53
      https://github.com/llvm/llvm-project/commit/d082f1f37d8cb7a0c6875537ba873a631b154d53
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Boolean.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td

  Log Message:
  -----------
  [clang][bytecode] Only booleans can be inverted

No need to have the Inv() function be templated.


  Commit: e05307f6633ca405834a4fd24d858ffb676c9170
      https://github.com/llvm/llvm-project/commit/e05307f6633ca405834a4fd24d858ffb676c9170
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

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

  Log Message:
  -----------
  [clang][OpenMP] Avoid multiple calls to getCurrentDirective in DSAChecker, NFC


  Commit: dd40632b52d8da2146a12254afc900315ac3c2e4
      https://github.com/llvm/llvm-project/commit/dd40632b52d8da2146a12254afc900315ac3c2e4
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  [clang] fix divide by zero in ComplexExprEvaluator (#104666)

fix: #55390.

---------

Co-authored-by: Sergei Barannikov <barannikov88 at gmail.com>


  Commit: bbcb625798514f1cd6ef04818381d38ea26b23e5
      https://github.com/llvm/llvm-project/commit/bbcb625798514f1cd6ef04818381d38ea26b23e5
  Author: Mike Crowe <mac at mcrowe.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-member.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-member.cpp

  Log Message:
  -----------
  [clang-tidy] Support member functions with modernize-use-std-print/format (#104675)

These checks can be made to work on member functions quite easily and
it's not unknown to have at least printf-style functions as members.
Let's remove the restriction.


  Commit: de5ea2d122c31e1551654ff506c33df299f351b8
      https://github.com/llvm/llvm-project/commit/de5ea2d122c31e1551654ff506c33df299f351b8
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

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

  Log Message:
  -----------
  [clang][OpenMP] Change /* ParamName */ to /*ParamName=*/, NFC

Change
  foo(/* Index */ 0);
to
  foo(/*Index=*/0);

There was a mix of these two formats in the source. Clang-format treats
the latter one a bit better, so use that one consistently.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  [Clang] Do not allow `[[clang::lifetimebound]]` on explicit object member functions (#96113)

Previously, `[[clang::lifetimebound]]` applied to an explicit object
member function did nothing and was silently ignored.

Now issue the error diagnostic `'lifetimebound' attribute cannot be
applied; explicit object member function has no implicit object
parameter`


  Commit: 0d150db214e2aa13a825b563c7238e1243d61db1
      https://github.com/llvm/llvm-project/commit/0d150db214e2aa13a825b563c7238e1243d61db1
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    R clang/include/clang/Rewrite/Core/DeltaTree.h
    M clang/include/clang/Rewrite/Core/HTMLRewrite.h
    R clang/include/clang/Rewrite/Core/RewriteBuffer.h
    R clang/include/clang/Rewrite/Core/RewriteRope.h
    M clang/include/clang/Rewrite/Core/Rewriter.h
    M clang/lib/ARCMigrate/ARCMT.cpp
    M clang/lib/ARCMigrate/ObjCMT.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/Rewrite/HTMLPrint.cpp
    M clang/lib/Frontend/Rewrite/RewriteMacros.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Frontend/Rewrite/RewriteObjC.cpp
    M clang/lib/Rewrite/CMakeLists.txt
    R clang/lib/Rewrite/DeltaTree.cpp
    M clang/lib/Rewrite/HTMLRewrite.cpp
    R clang/lib/Rewrite/RewriteRope.cpp
    M clang/lib/Rewrite/Rewriter.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/Tooling/Core/Replacement.cpp
    M clang/unittests/Rewrite/CMakeLists.txt
    R clang/unittests/Rewrite/RewriteBufferTest.cpp
    A llvm/include/llvm/ADT/DeltaTree.h
    A llvm/include/llvm/ADT/RewriteBuffer.h
    A llvm/include/llvm/ADT/RewriteRope.h
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/DeltaTree.cpp
    A llvm/lib/Support/RewriteBuffer.cpp
    A llvm/lib/Support/RewriteRope.cpp
    M llvm/unittests/ADT/CMakeLists.txt
    A llvm/unittests/ADT/RewriteBufferTest.cpp

  Log Message:
  -----------
  [llvm][clang] Move RewriterBuffer to ADT. (#99770)

These classes are not specific to clang and useful for other rewriter
tools (flagged in previous review).


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

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Rewrite/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Rewrite/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0d150db214e2


  Commit: caa1070b1c880627b223dc3884860a64e4b510c7
      https://github.com/llvm/llvm-project/commit/caa1070b1c880627b223dc3884860a64e4b510c7
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/test/Driver/hip-toolchain-rdc.hip

  Log Message:
  -----------
  [HIP] search fatbin symbols for libs passed by -l (#104638)

For -fgpu-rdc linking, clang needs to collect undefined fatbin symbols
and resolve them to the embedded fatbin.

This has been done for object files and archive files passed as input
files to clang.

However, the same action is not performed for archive files passed
through -l options, which causes missing symbols.

This patch adds that.


  Commit: 5c13f9aea280f1d499be7eca45b85371b0240c48
      https://github.com/llvm/llvm-project/commit/5c13f9aea280f1d499be7eca45b85371b0240c48
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M libc/startup/gpu/amdgpu/start.cpp

  Log Message:
  -----------
  [libc] Add single threaded kernel attributes to AMDGPU startup utility (#104651)

Summary:
I fixed the errors here recently so I can actually use these. This
shouldn't impact much, just should hopefully make the code generated
slightly better.


  Commit: deb6b45c32687275a6d4e24326ffc9700f8ae52c
      https://github.com/llvm/llvm-project/commit/deb6b45c32687275a6d4e24326ffc9700f8ae52c
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h
    M libc/benchmarks/gpu/src/math/CMakeLists.txt
    A libc/benchmarks/gpu/src/math/atan2_benchmark.cpp
    M libc/benchmarks/gpu/timing/amdgpu/timing.h
    M libc/benchmarks/gpu/timing/nvptx/timing.h

  Log Message:
  -----------
  [libc][gpu] Add Atan2 Benchmarks (#104708)

This PR adds benchmarking for `atan2()`, `__nv_atan2()`, and
`__ocml_atan2_f64()` using the same setup as `sin()`. This PR also adds
support for throughout bencmarking for functions with 2 inputs.


  Commit: 79d021116d8434d28e179660d31f4bd6cdbccd62
      https://github.com/llvm/llvm-project/commit/79d021116d8434d28e179660d31f4bd6cdbccd62
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    A llvm/test/MC/ELF/relax-branch.s

  Log Message:
  -----------
  [MC] Add test that requires multiple relaxation steps

This can catch the code size regression
due to the reverted be5a845e4c29aadb513ae6e5e2879dccf37efdbb
("[MC] Compute fragment offsets eagerly").


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

  Changed paths:
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp

  Log Message:
  -----------
  [MIPS] Remove expensive LLVM_DEBUG relocation dump

The input is usually ordered by offset, so inspecting the output is
sufficient. The super expensive relocation dump is not conventional.


  Commit: 3496245ed3d0b4d24444260da77dcdb93512fb5a
      https://github.com/llvm/llvm-project/commit/3496245ed3d0b4d24444260da77dcdb93512fb5a
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

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

  Log Message:
  -----------
  [clang-format] Change GNU style language standard to LS_Latest (#104669)

Fixes #104655.


  Commit: 0224d8355d84b3eee2390cd13bb0b749ba40b0db
      https://github.com/llvm/llvm-project/commit/0224d8355d84b3eee2390cd13bb0b749ba40b0db
  Author: Frederic Cambus <fred at statdns.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M clang/tools/scan-build/man/scan-build.1

  Log Message:
  -----------
  Update Clang version from 19 to 20 in scan-build.1.

Similar to D110763.


  Commit: 70f3863b5f30e856278f399b068a30bc4d5d16c2
      https://github.com/llvm/llvm-project/commit/70f3863b5f30e856278f399b068a30bc4d5d16c2
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG][PatternMatch] Add support for matchers with flags; NFC

Add support for matching with `SDNodeFlags` i.e `add` with `nuw`.

This patch adds helpers for `or disjoint` or `zext nneg` with the same
names as we have in IR/PatternMatch api.

Closes #103060


  Commit: c6e16a49ef41261b01aabc27f4b806af6cc81a20
      https://github.com/llvm/llvm-project/commit/c6e16a49ef41261b01aabc27f4b806af6cc81a20
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp

  Log Message:
  -----------
  [TLI] Add support for inferring attr `cold`/`noreturn` on `std::terminate` and `__cxa_throw`

These functions are both inherently on the error path so `cold` seems
appropriate. `noreturn` is definitional.

Closes #101622


  Commit: 1a6bf94407af7962345ffaf6ac9e9a9766fd8913
      https://github.com/llvm/llvm-project/commit/1a6bf94407af7962345ffaf6ac9e9a9766fd8913
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCELFObjectWriter.h
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Remove ELFRelocationEntry::OriginalAddend

For MIPS's o32 ABI (REL), https://reviews.llvm.org/D19718 introduced
`OriginalAddend` to find the matching R_MIPS_LO16 relocation for
R_MIPS_GOT16 when STT_SECTION conversion is applicable.

    lw $2, %lo(local1)
    lui $2, %got(local1)

However, we could just store the original `Addend` in
`ELFRelocationEntry` and remove `OriginalAddend`.

Note: The relocation ordering algorithm in
https://reviews.llvm.org/D19718 is inefficient (#104562), which will be
addressed by another patch.


  Commit: f16125a13ce725b1e936468e08257c0fbb80c0fa
      https://github.com/llvm/llvm-project/commit/f16125a13ce725b1e936468e08257c0fbb80c0fa
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll

  Log Message:
  -----------
  [CodeGenPrepare][X86] Add tests for folding `urem` with loop invariant value; NFC


  Commit: c64ce8bf283120fd145a57d0e61f9697f719139d
      https://github.com/llvm/llvm-project/commit/c64ce8bf283120fd145a57d0e61f9697f719139d
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll

  Log Message:
  -----------
  [CodeGenPrepare] Folding `urem` with loop invariant value

```
for(i = Start; i < End; ++i)
   Rem = (i nuw+ IncrLoopInvariant) u% RemAmtLoopInvariant;
```
 ->
```
Rem = (Start nuw+ IncrLoopInvariant) % RemAmtLoopInvariant;
for(i = Start; i < End; ++i, ++rem)
   Rem = rem == RemAmtLoopInvariant ? 0 : Rem;
```

In its current state, only if `IncrLoopInvariant` and `Start` both
being zero.

Alive2 seemed unable to prove this (see:
https://alive2.llvm.org/ce/z/ATGDp3 which is clearly wrong but still
checks out...) so wrote an exhaustive test here:
https://godbolt.org/z/WYa561388

Closes #96625


  Commit: 7d5281a66d5d42c65cfb9d95eaf9aa01afb089fb
      https://github.com/llvm/llvm-project/commit/7d5281a66d5d42c65cfb9d95eaf9aa01afb089fb
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Fix preload-kernarg.ll test after attributor move (#98840)

Update was to stale version of the test with missing functions and extra
runlines that had been removed.


  Commit: 4eefc8d4cee1808f44710622c8c3b66281feb8a3
      https://github.com/llvm/llvm-project/commit/4eefc8d4cee1808f44710622c8c3b66281feb8a3
  Author: Bimo <rui.xu at intel.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/python/mlir/dialects/tensor.py
    M mlir/test/python/dialects/linalg/opdsl/emit_matmul.py
    M mlir/test/python/dialects/linalg/ops.py

  Log Message:
  -----------
  [MLIR][Python] enhance python api for tensor.empty (#103087)

Since we have extended `EmptyOp`, maybe we should also provide a
corresponding `tensor.empty` method. In the downstream usage, I tend to
use APIs with all lowercase letters to create ops, so having a
`tensor.empty` to replace the extended `tensor.EmptyOp` would keep my
code style consistent.


  Commit: 7f87b5bf0e2f0e01735e5abe724d7fe5c69d202e
      https://github.com/llvm/llvm-project/commit/7f87b5bf0e2f0e01735e5abe724d7fe5c69d202e
  Author: Tianqing Wang <tianqing.wang at intel.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SwitchLoweringUtils.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/unpredictable-brcond.ll

  Log Message:
  -----------
  [SelectionDAG][X86] Preserve unpredictable metadata for conditional branches in SelectionDAG, as well as JCCs generated by X86 backend. (#102101)

This builds on 09515f2c2, which preserves unpredictable metadata in
CodeGen for `select`. This patch does it for conditional branches.


  Commit: 731ae694a3d8f4d39e855c9a82c97d4f170fd48a
      https://github.com/llvm/llvm-project/commit/731ae694a3d8f4d39e855c9a82c97d4f170fd48a
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-18 (Sun, 18 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll

  Log Message:
  -----------
  Revert "[CodeGenPrepare] Folding `urem` with loop invariant value"

This reverts commit c64ce8bf283120fd145a57d0e61f9697f719139d.

Seems to be causing stage2 failures on buildbots. Reverting while I
investigate.


  Commit: a80a90e34b1f26422ebf56e922abe2c193607c81
      https://github.com/llvm/llvm-project/commit/a80a90e34b1f26422ebf56e922abe2c193607c81
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/rvv/zvbc.s
    A llvm/test/MC/RISCV/rvv/zvkgs.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV][MC] Support experimental extensions Zvbc32e and Zvkgs (#103709)

These two extensions add addtional instructions for carryless
multiplication with 32-bits elements and Vector-Scalar GCM
instructions.

Please see https://github.com/riscv/riscv-isa-manual/pull/1306.


  Commit: 82fdfd4aa7f60b1f8e715211b925a7f2bfe57ea9
      https://github.com/llvm/llvm-project/commit/82fdfd4aa7f60b1f8e715211b925a7f2bfe57ea9
  Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [TableGen] Print Error and not crash on dumping non-string values (#104568)

Co-authored-by: Akshat Oke <Akshat.Oke at amd.com>


  Commit: 7faf1a0868cb6a6a05e454044239292c454e0a71
      https://github.com/llvm/llvm-project/commit/7faf1a0868cb6a6a05e454044239292c454e0a71
  Author: Daniel Cederman <cederman at gaisler.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/DelaySlotFiller.cpp
    M llvm/lib/Target/Sparc/LeonFeatures.td
    M llvm/lib/Target/Sparc/LeonPasses.cpp
    M llvm/lib/Target/Sparc/LeonPasses.h
    M llvm/lib/Target/Sparc/Sparc.h
    M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
    M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
    A llvm/test/CodeGen/SPARC/tn0009.mir
    A llvm/test/CodeGen/SPARC/tn0010.mir
    A llvm/test/CodeGen/SPARC/tn0011.ll
    A llvm/test/CodeGen/SPARC/tn0012.mir
    A llvm/test/CodeGen/SPARC/tn0013.mir

  Log Message:
  -----------
  [Sparc] Add errata workaround pass for GR712RC and UT700 (#103843)

This patch adds a pass that provides workarounds for the errata
described in GRLIB-TN-0009, GRLIB-TN-0010, GRLIB-TN-0011, GRLIB-TN-0012,
and GRLIB-TN-0013, that are applicable to the GR712RC and UT700. The
documents are available for download from here:

https://www.gaisler.com/index.php/information/app-tech-notes

The pass will detect certain sensitive instruction sequences and prevent
them from occurring by inserting NOP instruction. Below is an overview
of each of the workarounds. A similar implementation is available in
GCC.

GRLIB-TN-0009:

* Insert NOPs to prevent the sequence (stb/sth/st/stf) -> (single
non-store/load instruction) -> (any store)

* Insert NOPs to prevent the sequence (std/stdf) -> (any store)

GRLIB-TN-0010:

* Insert a NOP between load instruction and atomic instruction (swap and
casa).

* Insert a NOP at branch target if load in delay slot and atomic
instruction at branch target.

* Do not allow functions to begin with atomic instruction.

GRLIB-TN-0011:

* Insert .p2align 4 before atomic instructions (swap and casa).

GRLIB-TN-0012:

* Place a NOP at the branch target of an integer branch if it is a
floating-point operation or a floating-point branch.

GRLIB-TN-0013:

* Prevent (div/sqrt) instructions in the delay slot.

* Insert NOPs to prevent the sequence (div/sqrt) -> (two or three
floating point operations or loads) -> (div/sqrt).

* Do not insert NOPs if any of the floating point operations have a
dependency on the destination register of the first (div/sqrt).

* Do not insert NOPs if one of the floating point operations is a
(div/sqrt).

* Insert NOPs to prevent (div/sqrt) followed by a branch.


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

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

  Log Message:
  -----------
  [RISCV] Add more tests for RISCVISAInfo::checkDependency(). NFC


  Commit: 164d1230f78b32647e1a6e948245e75f557a8068
      https://github.com/llvm/llvm-project/commit/164d1230f78b32647e1a6e948245e75f557a8068
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp

  Log Message:
  -----------
  [RISCV] Simplify reserse fixed regs (#104736)

Add a macro to simplify some codes.


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

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

  Log Message:
  -----------
  [RISCV] Merge some ISA error reporting together and make some errors more precise.

Loop over the extension names that have the same error message.

Print the name of Zvk* extensions instead of 'zvk*'.


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

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

  Log Message:
  -----------
  [RISCV] Add helper functions to exploit similarity of some RISCVISAInfo::checkDependency() error strings. NFC


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

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

  Log Message:
  -----------
  [RISCV] Make extension names lower case in RISCVISAInfo::checkDependency() error messages.


  Commit: 985d64b03accbed8500a85372d716367d89b61be
      https://github.com/llvm/llvm-project/commit/985d64b03accbed8500a85372d716367d89b61be
  Author: hev <wangrui at loongson.cn>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
    M llvm/test/CodeGen/LoongArch/can-not-realign-stack.ll
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf.ll
    M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
    M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll

  Log Message:
  -----------
  [LoongArch] Merge base and offset for LSX/LASX memory accesses (#104452)


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

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/CodeGen/Hexagon/block-addr.ll
    M llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll
    M llvm/test/Transforms/SimplifyCFG/X86/sink-common-code.ll
    M llvm/test/Transforms/SimplifyCFG/sink-and-convert-switch.ll

  Log Message:
  -----------
  [SimplifyCFG] Don't block sinking for allocas if no phi created (#104579)

SimplifyCFG sinking currently does not sink loads/stores of allocas,
because historically SROA was unable to handle the resulting IR. Since
then, SROA both learned to speculate loads/stores over selects and phis,
*and* SimplifyCFG sinking has been deferred to the end of the function
simplification pipeline, which means that SROA happens before it.

As such, I believe that this workaround should no longer be necessary.
Given how sensitive SimplifyCFG sinking seems to be, this patch takes a
very conservative step towards removing this, by allowing sinking if we
don't actually need to form a phi over the pointer argument.

This fixes https://github.com/llvm/llvm-project/issues/104567, where
sinking a store to an escaped alloca allows converting a switch into
arithmetic.


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

  Changed paths:
    M mlir/docs/BytecodeFormat.md

  Log Message:
  -----------
  [mlir][docs] Update Bytecode documentation (#99854)

There were some discrepancies between the dialect section documentation
and the implementation.


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

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

  Log Message:
  -----------
  [VPlan] Move some LoopVectorizationPlanner helpers to VPlan.cpp (NFC).

Members not requiring access to LoopVectorizationLegality or
LoopVectorizationCostModel can safely be moved out of the very large
LoopVectorization.cpp and are more accurately placed in VPlan.cpp


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

  Changed paths:
    M llvm/lib/Target/X86/X86ScheduleZnver2.td
    M llvm/test/tools/llvm-mca/X86/Znver2/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/Znver2/resources-avx2.s

  Log Message:
  -----------
  [X86] VPERM2*128 instructions aren't microcoded on znver2

This appears to be a copy+paste error from znver1 (which isn't really microcoded either - but it is rather complex!).

Confirmed with Agner + uops.info.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ScheduleZnver1.td
    M llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s

  Log Message:
  -----------
  [X86] VPERM2*128 instructions aren't microcoded on znver1

AMD refer to them as microcoded, but not in the same way as LLVM - the uop count and pipe usage is high but predictable

Confirmed with Agner + uops.info.


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

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

  Log Message:
  -----------
  [X86] Cleanup lowerShuffleWithUNPCK/PACK signatures to match (most) other lowerShuffle* methods. NFC.


  Commit: 9211977d134d81cbc7a24f13e244334484c31b87
      https://github.com/llvm/llvm-project/commit/9211977d134d81cbc7a24f13e244334484c31b87
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [AArch64][SME] Return false from produceCompactUnwindFrame if VG save required. (#104588)

The compact unwind format requires all registers are stored in pairs, so
return false from produceCompactUnwindFrame if we require saving VG.


  Commit: 63267ca9016aa334b329aa408716456b4e3799c8
      https://github.com/llvm/llvm-project/commit/63267ca9016aa334b329aa408716456b4e3799c8
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store-atomic.ll

  Log Message:
  -----------
  [LoongArch] Fix the assertion for atomic store with 'ptr' type


  Commit: 065d2d9c60da0214c17a8300385b22be1c26dc70
      https://github.com/llvm/llvm-project/commit/065d2d9c60da0214c17a8300385b22be1c26dc70
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining-alias-scopes.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Improve the noalias propagation during inlining (#104750)

This commit changes the LLVM dialect's inliner interface to properly
propagate noalias information to memory accesses that have different
underlying object. By always introducing an SSACopy intrinsic, it's
possible to understand that specific memory operations are using
unrelated pointers. Previously, the backwards slice walk did continue
beyond the boundary of the original function and failed to reason about
the "underlying objects".


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

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

  Log Message:
  -----------
  [VPlan] Rename getBestVF -> computeBestVF (NFC).

As suggested in https://github.com/llvm/llvm-project/pull/103033, more
accurately rename to computeBestVF, as it now does not simply return the
best VF, but directly computes it.


  Commit: de5deb7b07db39810c4b07870c75ccc8dccc5fe9
      https://github.com/llvm/llvm-project/commit/de5deb7b07db39810c4b07870c75ccc8dccc5fe9
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/aarch64-elf-pauthabi.c
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/test/CodeGen/AArch64/note-gnu-property-elf-pauthabi.ll
    M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [PAC][ELF][AArch64] Encode several ptrauth features in PAuth core info (#102508)

For llvm_linux platform, define the following meaning for bits 9, 10,
11:

- bit 9: set if indirect gotos signing is enabled;
- bit 10: set if type info vtable pointer discrimination is enabled;
- bit 11: set if function pointer type discrimination is enabled.


  Commit: b6d1df2afd0a464f3f37055f16fb9321a3b2eaaf
      https://github.com/llvm/llvm-project/commit/b6d1df2afd0a464f3f37055f16fb9321a3b2eaaf
  Author: Qiu Chaofan <qiucofan at cn.ibm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/flags.c
    A llvm/test/CodeGen/PowerPC/noredzone.ll

  Log Message:
  -----------
  [PowerPC] Support -mno-red-zone option (#94581)


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

  Changed paths:
    M lld/MachO/SyntheticSections.cpp

  Log Message:
  -----------
  [lld][MachO] Fix a suspicous assert in SyntheticSections.cpp

This was comparing some .size() (uint64_t) against the sizeof a size_t
which changes with system bitness. This produced a warning that
brought this to my attention.

These tests were failing too on 32 bit Arm only:
  lld :: MachO/objc-category-merging-complete-test.s
  lld :: MachO/objc-category-merging-minimal.s

The assert I think meant to check the value of target->wordSize,
not the size of its type. Which is a type that changes size between
systems.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp

  Log Message:
  -----------
  [mlir][vector] Populate sink patterns in apply_patterns.vector.reduction_to_contract (#104754)

This restores the functionality to before:
https://github.com/llvm/llvm-project/commit/42944da5ba7617bbc02f341e9ef401c325310a73
This fixes a buildbot failure:
https://lab.llvm.org/buildbot/#/builders/143/builds/1487


  Commit: 00def06c6e9a0582e85bef5f3a186839c48d1ae2
      https://github.com/llvm/llvm-project/commit/00def06c6e9a0582e85bef5f3a186839c48d1ae2
  Author: Tim Besard <tim.besard at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    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 C API for running the pipeline on a single function. (#103773)

By adding a new entrypoint, `LLVMRunPassesOnFunction`, as suggested in
https://discourse.llvm.org/t/newpm-c-api-questions/80598.

Also removes erroneous `LLVMConsumeError`s from the pass builder unit
tests as the string conversion already consumes the error, causing an
abort when the test would fail.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/unsafe-vf-hint-remark.ll

  Log Message:
  -----------
  [VPlan] Emit note when UserVF > MaxUserVF (NFCI).

As suggested in https://github.com/llvm/llvm-project/pull/103033, add a
remark when the UserVF is ignored due to it being larger than MaxUserVF.

Only changes behavior of diagnostic/debug output.


  Commit: abf69a167bbc99054871e3f9cc8810bbebcb6747
      https://github.com/llvm/llvm-project/commit/abf69a167bbc99054871e3f9cc8810bbebcb6747
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/scmp.ll
    M llvm/test/Transforms/InstCombine/select-select.ll
    M llvm/test/Transforms/InstCombine/ucmp.ll
    M llvm/test/Transforms/PhaseOrdering/partialord-ule.ll

  Log Message:
  -----------
  [InstCombine] Fold `(x < y) ? -1 : zext(x != y)` into `u/scmp(x,y)` (#101049)

This patch adds the aforementioned fold to InstCombine. This pattern is
produced after naive implementations of 3-way comparison in high-level
languages are transformed into LLVM IR and then optimized.

Proofs: https://alive2.llvm.org/ce/z/w4QLq_


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

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

  Log Message:
  -----------
  [VPlan] Rename getBestPlanFor -> getPlanFor (NFC).

As suggested in https://github.com/llvm/llvm-project/pull/103033, more
accurately rename to getPlanFor , as it simplify returns the VPlan for
VF, relying on the fact that there is a single VPlan for each VF at the
moment.


  Commit: 816068e462888f31f4bcf71f2f728eb77ff2ea15
      https://github.com/llvm/llvm-project/commit/816068e462888f31f4bcf71f2f728eb77ff2ea15
  Author: tcwzxx <tcwzxx at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [NFC][SLP] Remove useless code of the schedule (#104697)

Currently, the SLP schedule has two containers of `ScheduleData`:
`ExtraScheduleDataMap` and `ScheduleDataMap`. However, the
`ScheduleData` in `ExtraScheduleDataMap` is only used to indicate
whether the instruction is processed or not and does not participate in
the schedule, which is useless. `ScheduleDataMap` is sufficient for this
purpose. The `OpValue` member is used only in `ExtraScheduleDataMap`,
which is also useless.


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

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/icmp-codesize.ll
    M llvm/test/Analysis/CostModel/X86/icmp-latency.ll
    M llvm/test/Analysis/CostModel/X86/icmp-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/icmp.ll

  Log Message:
  -----------
  [CostModel][X86] Add cost tests for scmp/ucmp intrinsics


  Commit: 0cc6b464f8adb739e6f9bcc9bda8cff9bb1f1c2a
      https://github.com/llvm/llvm-project/commit/0cc6b464f8adb739e6f9bcc9bda8cff9bb1f1c2a
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/ExtendingLLVM.rst

  Log Message:
  -----------
  [docs] Update a filename, fix indentation (#103018)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [X86] LowerABD - simplify i32/i64 to use sub+sub+cmov instead of repeating nodes via abs (#102174)

Using X86ISD::SUB nodes directly allows us to drive the X86ISD::CMOV node with exact flags instead of trying to cleanup the generic codegen via ICMP/SUBO nodes.


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

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp
    M llvm/test/Transforms/InstCombine/crash.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/unittests/IR/DataLayoutTest.cpp
    M mlir/test/Target/LLVMIR/Import/import-failure.ll

  Log Message:
  -----------
  [DataLayout] Refactor parsing of i/f/v/a specifications (#104699)

Split off of #104545 to reduce patch size.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/test/Modules/merge-using-decls.cpp

  Log Message:
  -----------
  [clang][bytecode] Use first FieldDecl instead of asserting (#104760)

This assertion fails sometimes. We use the first decl for lookup later,
so let's use the first decl here as well.


  Commit: 13865b09c6b0c767a8c3d4f49662e6c503260976
      https://github.com/llvm/llvm-project/commit/13865b09c6b0c767a8c3d4f49662e6c503260976
  Author: David Green <david.green at arm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll

  Log Message:
  -----------
  [AArch64] Add fneg(fmul) and fmul(fneg) tests. NFC


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

  Changed paths:
    M clang/lib/AST/ByteCode/MemberPointer.cpp
    M clang/test/AST/ByteCode/memberpointers.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix member pointers to IndirectFieldDecls (#104756)


  Commit: a567d4598755219e535eb04d21b43c3624526714
      https://github.com/llvm/llvm-project/commit/a567d4598755219e535eb04d21b43c3624526714
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M compiler-rt/test/ubsan/TestCases/Integer/bit-int.c

  Log Message:
  -----------
  Require !windows instead of XFAIL'ing ubsan/TestCases/Integer/bit-int.c

The test would unexpectedly pass on Windows when there's 128-bit runtime
routines available. See comment on #104494


  Commit: 3188e9b4e0f106abd683829906a21a98655bb794
      https://github.com/llvm/llvm-project/commit/3188e9b4e0f106abd683829906a21a98655bb794
  Author: Julian Brown <julian.brown at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaOpenMP.cpp
    A clang/test/OpenMP/loop_collapse_1.c
    A clang/test/OpenMP/loop_collapse_2.cpp

  Log Message:
  -----------
  [clang][OpenMP] Diagnose badly-formed collapsed imperfect loop nests (#60678) (#101305)

This patch fixes a couple of cases where Clang aborts with loop nests
that are being collapsed (via the relevant OpenMP clause) into a new,
combined loop.

The problematic cases happen when a variable declared within the loop
nest is used in the (init, condition, iter) statement of a more
deeply-nested loop. I don't think these cases (generally?) fall under
the non-rectangular loop nest rules as defined in OpenMP 5.0+, but I
could be wrong (and anyway, emitting an error is better than crashing).

In terms of implementation: the crash happens because (to a first
approximation) all the loop bounds calculations are pulled out to the
start of the new, combined loop, but variables declared in the loop nest
"haven't been seen yet". I believe there is special handling for
iteration variables declared in "for" init statements, but not for
variables declared elsewhere in the "imperfect" parts of a loop nest.

So, this patch tries to diagnose the troublesome cases before they can
cause a crash. This is slightly awkward because at the point where we
want to do the diagnosis (SemaOpenMP.cpp), we don't have scope
information readily available. Instead we "manually" scan through the
AST of the loop nest looking for var decls (ForVarDeclFinder), then we
ensure we're not using any of those in loop control subexprs
(ForSubExprChecker). All that is only done when we have a "collapse"
clause.

Range-for loops can also cause crashes at present without this patch, so
are handled too.


  Commit: 7efa068f7a7ed4f42ba09cce73e8c09bb8b4e8ce
      https://github.com/llvm/llvm-project/commit/7efa068f7a7ed4f42ba09cce73e8c09bb8b4e8ce
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/load.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vislide-vx.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vlseg-vsseg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vmv.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vreduce.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vrgather.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/vshift-vmul.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvbc.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkg.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvkned.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvknhb.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksed.s
    A llvm/test/tools/llvm-mca/RISCV/SiFiveP400/zvksh.s

  Log Message:
  -----------
  [RISCV] Add vector and vector crypto to SiFiveP400 scheduler model (#102155)

The SiFiveP400 scheduler model did not support vector or vector crypto.
With the addition of the sifive-p470 processor, this model needs to support
these extensions.

The processors who use this model but do not have vector or vector
crypto will never produce these instructions, so there is no impact to these
processors.

Co-authored-by: Min Hsu <min.hsu at sifive.com>


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

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul-mixed-types.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/outerproduct-i8i8i32.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Remove XFAILs (#104758)

Buildbots have been updated to QEMU 9.0.2: 
https://github.com/llvm/llvm-project/pull/104758#issuecomment-2296592845


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

  Changed paths:
    M llvm/test/DebugInfo/COFF/AArch64/arm64-register-variables.ll
    M llvm/test/DebugInfo/COFF/ARMNT/arm-register-variables.ll

  Log Message:
  -----------
  [DebugInfo] Make tests SimplifyCFG-independent (NFC)

Run SimplifyCFG over the test input and disable the SimplifyCFG
run in the backend, so that these tests are not affected by changes
to SimplifyCFG.


  Commit: 79f6ae05c139d3d5b6446f8a265a3c6e3f5b18f8
      https://github.com/llvm/llvm-project/commit/79f6ae05c139d3d5b6446f8a265a3c6e3f5b18f8
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  [Clang][NFC] Fix potential null dereference in encodeTypeForFunctionPointerAuth (#104737)

This patch replaces getAs with castAs in
encodeTypeForFunctionPointerAuth to prevent dereferencing a potential
null pointer, enhancing type safety as reported by static analyzer tool.


  Commit: c60da1a271a6bb271e7703b2f7c71fbece67ab78
      https://github.com/llvm/llvm-project/commit/c60da1a271a6bb271e7703b2f7c71fbece67ab78
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  [clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)

- Introduce primitives for removing records from `APISet` and managing
the record chain of `RecordContext`
- Detect nested anonymous record types and remove them from the `APISet`
after they have been fully traversed and transfer ownership of child
records to the parent context (if any)


  Commit: a566635915730e6720e1b341f014c7c62af748bf
      https://github.com/llvm/llvm-project/commit/a566635915730e6720e1b341f014c7c62af748bf
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/AMDGPUCodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Move AMDGPUCodeGenPassBuilder into AMDGPUTargetMachine(NFC) (#103720)

This will allow us to reuse the existing flags and the static
functions while building the pipeline for new pass manager.


  Commit: 7dd6340bdadf86bd0facdea89d1876a5c36dc33b
      https://github.com/llvm/llvm-project/commit/7dd6340bdadf86bd0facdea89d1876a5c36dc33b
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/MathExtras.h
    M llvm/unittests/Support/MathExtrasTest.cpp

  Log Message:
  -----------
  MathExtras: template'ize alignToPowerOf2 (#97814)

Follow up on 5627794 (MathExtras: avoid unnecessarily widening types) to
change the overflow behavior of alignToPowerOf2 to only overflow if the
result is not representable in the return type. This allows us to
template'ize it, and avoid unnecessarily widening the types of
arguments.


  Commit: b18b4547f1bfaf6da37b29440a96176e807c2e6c
      https://github.com/llvm/llvm-project/commit/b18b4547f1bfaf6da37b29440a96176e807c2e6c
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  Revert "[clang][ExtractAPI] Stop dropping fields of nested anonymous record types when they aren't attached to variable declaration (#104600)"

This reverts commit c60da1a271a6bb271e7703b2f7c71fbece67ab78.


  Commit: a449b857241dd29a1164c483d3ee73612e45cbb4
      https://github.com/llvm/llvm-project/commit/a449b857241dd29a1164c483d3ee73612e45cbb4
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.cpp
    R llvm/lib/Target/AMDGPU/R600CodeGenPassBuilder.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.h

  Log Message:
  -----------
  [AMDGPU][R600] Move R600CodeGenPassBuilder into R600TargetMachine(NFC). (#103721)


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

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll

  Log Message:
  -----------
  [SimplifyCFG] Add tests for hoisting of commutative instructions (NFC)


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

  Changed paths:
    M lldb/unittests/Callback/TestBreakpointSetCallback.cpp

  Log Message:
  -----------
  [lldb][test] Fix cast dropping const warnin in TestBreakpointSetCallback.cpp

When building with gcc I get this warning:
```
<...>TestBreakpointSetCallback.cpp:58:25: warning: cast from type ‘const char*’ to type ‘void*’ casts away qualifiers [-Wcast-qual]
   58 |   void *baton = (void *)"hello";
      |                         ^~~~~~~
```

Use the address of a mutable global variable instead. All we care about
is that the address passed as the baton is the same one we get later.


  Commit: c7a54bfd1d25330199c96dd0a46cef1644b1b1ce
      https://github.com/llvm/llvm-project/commit/c7a54bfd1d25330199c96dd0a46cef1644b1b1ce
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h

  Log Message:
  -----------
  [lldb][ASTUtils] Remove unused SemaSourceWithPriorities::addSource API

As far as I can tell, this has always been unused. My hunch is that
this was supposed to mimick the `MultiplexExternalSemaSource::AddSource`
API which `SemaSourceWithPriorities` is based on.


  Commit: 0abb7791614947bc24931dd851ade31d02496977
      https://github.com/llvm/llvm-project/commit/0abb7791614947bc24931dd851ade31d02496977
  Author: Wesley Wiser <wwiser at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    A llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll

  Log Message:
  -----------
  [LLVM] [X86] Fix integer overflows in frame layout for huge frames (#101840)

Fix 32-bit integer overflows in the X86 target frame layout when dealing
with frames larger than 4gb. When this occurs, we'll scavenge a scratch
register to be able to hold the correct stack offset for frame locals.

This completes reapplying #84114.

Fixes #48911
Fixes #75944 
Fixes #87154


  Commit: 576aa3a50960f02e4dfe2d6ed2c55aa66006adcf
      https://github.com/llvm/llvm-project/commit/576aa3a50960f02e4dfe2d6ed2c55aa66006adcf
  Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/test/TableGen/dump.td

  Log Message:
  -----------
  [TableGen] Resolve References at top level (#104578)

Add a dummy resolver to resolve references outside records. This invokes
Fold() with isFinal to force resolution.

Fixes #102447

Co-authored-by: Akshat Oke <Akshat.Oke at amd.com>


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

  Changed paths:
    M lldb/unittests/Disassembler/x86/TestGetControlFlowKindx86.cpp

  Log Message:
  -----------
  [lldb][test] Fix GCC warnings in TestGetControlFlowKindX86.cpp

```
<...>/TestGetControlFlowKindx86.cpp:148:8: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
  148 |     if (kind == eInstructionControlFlowKindReturn)
      |        ^
```

Usually llvm is a "no braces for single line body" project but
for whatever reason gcc objects to it here. Perhaps because it's
within a for loop.

Added the newlines just for readability.


  Commit: 8d165136ac36a53e51b50c620a12039d6c1e628e
      https://github.com/llvm/llvm-project/commit/8d165136ac36a53e51b50c620a12039d6c1e628e
  Author: meehatpa <gune30 at gmail.com>
  Date:   2024-08-19 (Mon, 19 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 support for math.log2 and math.log10 to GLSL/OpenCL SPIRV Backends (#104608)

As log2 and log10 are not available in spirv, realize them as a
decomposition using spirv.CL.log/spirv.GL.Log.


  Commit: 7a06ebdeb6440d80fbcaeccd33314c6e039c6795
      https://github.com/llvm/llvm-project/commit/7a06ebdeb6440d80fbcaeccd33314c6e039c6795
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp

  Log Message:
  -----------
  [lldb] PopulatePrpsInfoTest can fail due to hardcoded priority value (#104617)

In implementing this test one of the assertions assumes that the
priority is the default in linux (0) but, evidently, some of the build
runners prioritize the test to, at least, 5. This ensures that
regardless of the priority the test passes by validating that its the
process's priority
```
fgrim at host001 :~/llvm-project/debug_build> nice -n 15 tools/lldb/unittests/Process/elf-core/ProcessElfCoreTests
[==========] Running 2 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 2 tests from ElfCoreTest
[ RUN      ] ElfCoreTest.PopulatePrpsInfoTest
[       OK ] ElfCoreTest.PopulatePrpsInfoTest (4 ms)
[ RUN      ] ElfCoreTest.PopulatePrStatusTest
[       OK ] ElfCoreTest.PopulatePrStatusTest (3 ms)
[----------] 2 tests from ElfCoreTest (7 ms total)

[----------] Global test environment tear-down
[==========] 2 tests from 1 test suite ran. (8 ms total)
[  PASSED  ] 2 tests.
===(10:03)===
fgrim at host001 :~/llvm-project/debug_build>
```


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

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

  Log Message:
  -----------
  [clang][bytecode] Discard NullToPointer cast SubExpr (#104782)

So we still properly abort if they fail.


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

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

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


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

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

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


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

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h

  Log Message:
  -----------
  [lldb][Python] Silence GCC warning for modules error workaround

```
lldb-python.h:16:30: warning: ‘g_fcxx_modules_workaround’ defined but not used [-Wunused-variable]
   16 | static llvm::Expected<bool> *g_fcxx_modules_workaround;
      |
```

Workaround originally added in 36cb29cbbe1b22dcd298ad65e1fabe899b7d7249.


  Commit: 42386dc46d8217b2dfed8dfc41afeec366ec2015
      https://github.com/llvm/llvm-project/commit/42386dc46d8217b2dfed8dfc41afeec366ec2015
  Author: Phil Camp <phil.camp at sony.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A llvm/test/tools/llvm-mca/JSON/X86/views-bottleneck.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-custom-parameters.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-anonymous-regions.s
    M llvm/test/tools/llvm-mca/JSON/X86/views-multiple-region.s
    M llvm/test/tools/llvm-mca/JSON/X86/views.s
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.h

  Log Message:
  -----------
  [llvm-mca] Add bottle-neck analysis to JSON output. (#90056)

This patch implements the bottle-neck analysis data in the JSON dump
mode.


  Commit: f95026dbf66e353128a3a3d7b55f3e52d5985535
      https://github.com/llvm/llvm-project/commit/f95026dbf66e353128a3a3d7b55f3e52d5985535
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    A clang/test/CodeGen/PowerPC/transparent_union.c

  Log Message:
  -----------
  [PowerPC] Fix codegen for transparent_union function params (#101738)

Update codegen for func param with transparent_union attr to be that of
the first union member.

PPC fix for: https://github.com/llvm/llvm-project/issues/76773


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

  Changed paths:
    M llvm/include/llvm/ADT/SmallPtrSet.h
    M llvm/lib/Support/SmallPtrSet.cpp

  Log Message:
  -----------
  [SmallPtrSet] Optimize find/erase

Port #100517 for DenseMap.

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


  Commit: e9b2e16dc98345bb1b91b1a6dacb3cec85f49e31
      https://github.com/llvm/llvm-project/commit/e9b2e16dc98345bb1b91b1a6dacb3cec85f49e31
  Author: eddyz87 <eddyz87 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    A clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/bpf-attr-bpf-fastcall.c
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    A llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll

  Log Message:
  -----------
  [BPF] introduce `__attribute__((bpf_fastcall))` (#101228)

This commit introduces attribute bpf_fastcall to declare BPF functions
that do not clobber some of the caller saved registers (R0-R5).

The idea is to generate the code complying with generic BPF ABI, but
allow compatible Linux Kernel to remove unnecessary spills and fills of
non-scratched registers (given some compiler assistance).

For such functions do register allocation as-if caller saved registers
are not clobbered, but later wrap the calls with spill and fill patterns
that are simple to recognize in kernel.

For example for the following C code:

     #define __bpf_fastcall __attribute__((bpf_fastcall))

     void bar(void) __bpf_fastcall;
     void buz(long i, long j, long k);

     void foo(long i, long j, long k) {
       bar();
       buz(i, j, k);
     }

First allocate registers as if:

    foo:
      call bar    # note: no spills for i,j,k (r1,r2,r3)
      call buz
      exit

And later insert spills fills on the peephole phase:

    foo:
      *(u64 *)(r10 - 8) = r1;  # Such call pattern is
      *(u64 *)(r10 - 16) = r2; # correct when used with
      *(u64 *)(r10 - 24) = r3; # old kernels.
      call bar
      r3 = *(u64 *)(r10 - 24); # But also allows new
      r2 = *(u64 *)(r10 - 16); # kernels to recognize the
      r1 = *(u64 *)(r10 - 8);  # pattern and remove spills/fills.
      call buz
      exit

The offsets for generated spills/fills are picked as minimal stack
offsets for the function. Allocated stack slots are not used for any
other purposes, in order to simplify in-kernel analysis.

Corresponding functionality had been merged in Linux Kernel as
[this](https://lore.kernel.org/bpf/172179364482.1919.9590705031832457529.git-patchwork-notify@kernel.org/)
patch set (the patch assumed that `no_caller_saved_regsiters` attribute
would be used by LLVM, naming does not matter for the Kernel).


  Commit: 9b65558d2f20463b1a32374165d6fa06696623e9
      https://github.com/llvm/llvm-project/commit/9b65558d2f20463b1a32374165d6fa06696623e9
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M lld/ELF/LinkerScript.cpp
    M lld/test/ELF/riscv-section-layout.s
    M lld/test/ELF/section-name.s

  Log Message:
  -----------
  [lld][ELF] Combine uniqued small data sections (#104485)

RISC-V GCC with `-fdata-sections` will emit `.sbss.<name>`,
`.srodata.<name>`, and `.sdata.<name>` sections for small data items of
different kinds. Clang/LLVM already emits `.srodata.*` sections, and we
intend to emit the other two section name patterns in #87040.

This change ensures that any input sections starting `.sbss` are
combined into one output section called `.sbss`, and the same
respectively for `.srodata` and `.sdata`. This also allows the existing
RISC-V specific code for determining an output order for `.sbss` and
`.sdata` sections to apply to placing the sections.


  Commit: 93d0f82272dc230ff4d53d48c43b2f1518754a7b
      https://github.com/llvm/llvm-project/commit/93d0f82272dc230ff4d53d48c43b2f1518754a7b
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/CodeReview.rst

  Log Message:
  -----------
  [docs] Add note about "Re-request review" (#104735)


  Commit: 7d60f4648b9f794b8965b84a7a5641dfc5e07fae
      https://github.com/llvm/llvm-project/commit/7d60f4648b9f794b8965b84a7a5641dfc5e07fae
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp

  Log Message:
  -----------
  [DirectX] Differentiate between 0/1 overloads in the OpBuilder. NFC

DXIL operations that only have one signature behave one of two ways - either
they are always suffixed with a type like `dx.op.ThreadId.i32` and hence have
exactly one overload, or they're never suffixed like `dx.op.CreateHandle` and
hence have zero overloads.

Update DXIL.td for operations that have one overload and remove the hack in the
builder that was adjusting names for unoverloaded ops.

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


  Commit: 6bb5a0b171e22ef0a17ae8bf9bf4a3f7ad682901
      https://github.com/llvm/llvm-project/commit/6bb5a0b171e22ef0a17ae8bf9bf4a3f7ad682901
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaTemplate/explicit-instantiation-cxx20.cpp

  Log Message:
  -----------
  [Clang] Check constraints for an explicit instantiation of a member function (#104438)

Because there may be multiple constrained function of the same type, we
need to perform overload resolution to find the best viable function to
specialize.


Fixes #46029


  Commit: f357fe371d3f752878abf1fb1d5fb550e2650c8e
      https://github.com/llvm/llvm-project/commit/f357fe371d3f752878abf1fb1d5fb550e2650c8e
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILOpTableGenDesign.rst
    M llvm/include/llvm/Support/DXILABI.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILConstants.h
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX] Disentangle DXIL.td's op types from LLVMType. NFC

LLVMType is both too broad and too narrow for defining DXIL operations, in
different ways. It's too broad in the sense that we don't need the full set of
MVTs - the set of types DXIL operations work on is much smaller. It's too
narrow in the sense that it's difficult to use it for the various fixed
structure types in DXIL, like `%dx.types.Handle` or `%dx.Types.ResRet.f32`.

Replace the usage of LLVMType in DXIL.td with DXILOpParamType, a simple class
that we can define an enum of types from. Further, use this to replace the
"ParameterKind" enum in DXILABI.h that has nothing to do with DXIL's ABI.

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


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

  Changed paths:
    M llvm/lib/TableGen/TGLexer.cpp
    A llvm/test/TableGen/invalid-macro-name-command-line.td

  Log Message:
  -----------
  [TableGen] Detect invalid -D arguments and fail (#102813)

- Detect invalid macro names specified on command line and fail if one
found.
- Specifically, -DXYZ=1 for example, will fail instead is being silently
accepted.


  Commit: 2258bc429b6f76ade78059f3c4f6c7c77f93a996
      https://github.com/llvm/llvm-project/commit/2258bc429b6f76ade78059f3c4f6c7c77f93a996
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll

  Log Message:
  -----------
  [AMDGPU] Simplify, fix and improve known bits for mbcnt (#104768)

Simplify by using KnownBits::add.

Fix GlobalISel path which was ignoring the known bits of src1.

Improve analysis of mbcnt.hi which adds at most 31 even in wave64.


  Commit: 564bd206588d330211914ba2e94bd13caa4e0431
      https://github.com/llvm/llvm-project/commit/564bd206588d330211914ba2e94bd13caa4e0431
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Save a copy in one case of addrspacecast (#104789)

Refactor legalization of addrspacecast local/private -> flat to avoid
building a copy in the nonnull case.


  Commit: 2575ea6e17889e6d83198fc1c80963f81485bfcc
      https://github.com/llvm/llvm-project/commit/2575ea6e17889e6d83198fc1c80963f81485bfcc
  Author: Samira Bazuzi <bazuzi at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/unittests/Analysis/FlowSensitive/ASTOpsTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Collect local variables referenced within a functio… (#104459)

…n/statement.

We don't need these for the same in-tree purposes as the other sets,
i.e. for making sure we model these Decls that are declared outside the
function, but we have an out-of-tree use for these sets that would
benefit from this simple addition and would avoid duplicating so much of
this code.


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

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

  Log Message:
  -----------
  [RISCV] Improve BCLRITwoBitsMaskHigh SDNodeXForm. NFC

Use getZExtValue instead of getSExtValue since we are going to
overwrite the sign extension on RV32. getZExtValue should be cheaper than
getSExtValue.

Use maskLeadingOnes to improve readability.


  Commit: 865952bbbb97655410d2c34c21938134059c4076
      https://github.com/llvm/llvm-project/commit/865952bbbb97655410d2c34c21938134059c4076
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsNVPTX.def
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/convert-sm89.ll

  Log Message:
  -----------
  [NVPTX] Add conversion intrinsics from/to fp8 types (e4m3, e5m2) (#102969)

PTX ISA 8.1 supports FP8 conversions:

https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt

This PR adds the support for:

- cvt.rn.satfinite{.relu}.f8x2type.f32 d, a, b;
- cvt.rn.satfinite{.relu}.f8x2type.f16x2 d, a;
- cvt.rn.{.relu}.f16x2.f8x2type d, a;

where .f8x2type = { .e4m3x2, .e5m2x2 };


  Commit: 4e332bba2f3a51966817088cb4dc4a9188955b64
      https://github.com/llvm/llvm-project/commit/4e332bba2f3a51966817088cb4dc4a9188955b64
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.h

  Log Message:
  -----------
  [asan] Change Apple back to fixed allocator base address (#104818)

This partially reverts https://github.com/llvm/llvm-project/pull/98511
- specifically, the SANITIZER_APPLE case - because of a suspected
breakage for clang on Mac
(https://g-issues.chromium.org/issues/360160858;
https://github.com/llvm/llvm-project/pull/98511#issuecomment-2296749757).


  Commit: e306db0ff0d348da49b44bd0bcae3df5bf8f02a9
      https://github.com/llvm/llvm-project/commit/e306db0ff0d348da49b44bd0bcae3df5bf8f02a9
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M flang/test/Semantics/kinds04_q16.f90

  Log Message:
  -----------
  [Flang] Fix test case for AIX(big-endian) system for issuing an extra message. (#104792)

The 10-byte FP on big-endian system such as AIX is not represented as a
valid number in FE, so Flang issues an extra WARNING message as
`underflow on REAL(10) to REAL(4) conversion` for `_10` for such a
number.
This PR is to fix the test case.


  Commit: d5617ada36705e871f329a7b0efb19ce6e6e2a1f
      https://github.com/llvm/llvm-project/commit/d5617ada36705e871f329a7b0efb19ce6e6e2a1f
  Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A compiler-rt/test/nsan/stable_sort.cpp
    A compiler-rt/test/nsan/swap.cpp

  Log Message:
  -----------
  [compiler-rt][nsan] Add more tests for shadow memory (#100906)

Add more tests for shadow memory.


  Commit: 05d17a1c705e1053f95b90aa37d91ce4f94a9287
      https://github.com/llvm/llvm-project/commit/05d17a1c705e1053f95b90aa37d91ce4f94a9287
  Author: David Green <david.green at arm.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/Target/ARM/ARMCallLowering.cpp
    M llvm/lib/Target/ARM/ARMCallLowering.h
    A llvm/test/CodeGen/AArch64/GlobalISel/endian_fallback.ll
    M llvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
    M llvm/test/CodeGen/ARM/GlobalISel/arm-param-lowering.ll

  Log Message:
  -----------
  [GlobalISel] Bail out early for big-endian (#103310)

If we continue through the function we can currently hit crashes. We can
bail out early and fall back to SDAG.

Fixes #103032


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

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

  Log Message:
  -----------
  [mlir][spirv] Add `GroupNonUniformBallotFindLSB` and `GroupNonUniformBallotFindMSB` ops (#104791)


  Commit: 51785856ec5fb6c3f17834b212086d9fc7183868
      https://github.com/llvm/llvm-project/commit/51785856ec5fb6c3f17834b212086d9fc7183868
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/lib/Transforms/Instrumentation/Instrumentation.cpp

  Log Message:
  -----------
  [NFC][Instrumentation] Use `Twine` in `createPrivateGlobalForString` (#104726)


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

  Changed paths:
    M llvm/test/Instrumentation/AddressSanitizer/global_metadata_array.ll
    M llvm/test/Instrumentation/AddressSanitizer/global_with_comdat.ll

  Log Message:
  -----------
  [NFC][asan] Don't `cd` after `split-file` (#104727)

Helps with copy-pasting of command line
with error.


  Commit: 5e8f4618ce9502190fac96eb8a856146acce2a3a
      https://github.com/llvm/llvm-project/commit/5e8f4618ce9502190fac96eb8a856146acce2a3a
  Author: Eduard Zingerman <eddyz87 at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    R clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    R clang/test/Sema/bpf-attr-bpf-fastcall.c
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    R llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    R llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll

  Log Message:
  -----------
  Revert "[BPF] introduce `__attribute__((bpf_fastcall))` (#101228)"

This reverts commit e9b2e16dc98345bb1b91b1a6dacb3cec85f49e31.
Reverting because of the test failure:
https://lab.llvm.org/buildbot/#/builders/187/builds/509


  Commit: 92a8ec7abbd853e89556c7b942f30054273af9c6
      https://github.com/llvm/llvm-project/commit/92a8ec7abbd853e89556c7b942f30054273af9c6
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

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

  Log Message:
  -----------
  LSV: fix style after cursory reading (NFC) (#104793)


  Commit: 22b4496e86c32127e997f3e7385ef64d2d80cc4b
      https://github.com/llvm/llvm-project/commit/22b4496e86c32127e997f3e7385ef64d2d80cc4b
  Author: Dmitry Yanovsky <kerambyte at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/unittests/ADT/FunctionExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Fix alignment check in unique_function constructor (#99403)

Right now the check fails for any state-capturing lambda since this
expression - `alignof(decltype(StorageUnion.InlineStorage))` - returns 1
for the alignment value and not 4/8 as expected
([MSVC|Clang|GCC](https://godbolt.org/z/eTEdq4xjM)). So this check fails
for pretty much any state-capturing callable we try to store into a
`unique_function` and we take the out-of-line storage path:

\llvm-project\llvm\include\llvm\ADT\FunctionExtras.h,
`UniqueFunctionBase` constructor (line ~266):

```
if (sizeof(CallableT) > InlineStorageSize ||
    alignof(CallableT) > alignof(decltype(StorageUnion.InlineStorage))) {
  // ...
}
```

The fix is simply to use an explicit const variable to store the
alignment value.

There is no easy way to unit-test the fix since inline storage is
considered to be an implementation detail so we shouldn't assume how the
lambda ends up being stored.


  Commit: 3b80a28c8f27536f49e5fa30a7e2b7050bad6cd6
      https://github.com/llvm/llvm-project/commit/3b80a28c8f27536f49e5fa30a7e2b7050bad6cd6
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M mlir/lib/Target/SPIRV/SPIRVBinaryUtils.cpp

  Log Message:
  -----------
  [mlir][spirv] Fix incorrect metadata in SPIR-V Header (#104242)

SRIP-V Generator Magic Number is a 32 bit word: The high order 16 bits
are a tool ID. The low order 16 bits are for verion number, currently
the tool id is not on the high order 16 bit so it must shifed

fixes: #99071


  Commit: 7597e0930638e0a20ca9bfc193a3d89575ce4469
      https://github.com/llvm/llvm-project/commit/7597e0930638e0a20ca9bfc193a3d89575ce4469
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/test/Parser/parser_overflow.c

  Log Message:
  -----------
  [clang] Increase the default expression nesting limit (#104717)

Increase the default expression nesting limit from 256 to 1024

Fixes: #94728

Compile time with different Bracket depth

Clang version 20.0.0git
(https://github.com/AmrDeveloper/llvm-project.git
673b9e08de8a661c9deed2ee497889312f059f3d)
Target: arm64-apple-darwin23.5.0

Bracket depth = 256, time = 0.243
Bracket depth = 512, time = 0.329
Bracket depth = 1024, time = 0.489
Bracket depth = 2048, time = 0.851


  Commit: 4c967afcc6f3a109e8a325a0327f869c4bfc57c2
      https://github.com/llvm/llvm-project/commit/4c967afcc6f3a109e8a325a0327f869c4bfc57c2
  Author: Michael Kenzel <michael.kenzel at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M libcxxabi/src/cxa_default_handlers.cpp

  Log Message:
  -----------
  [libc++abi] Remove unnecessary dependency on std::unique_ptr (#73277)

The demangling terminate handler uses a function `demangle()` to perform
the demangling. This function returns an `std::unique_ptr`, relying on
custom deleter and `const_cast` hacks to deal with the facts that only
one branch actually allocates, and that the pointer type needs to be
`const char*`. However, the destructor of the returned `std::unique_ptr`
will never actually run, because the sole place this function is ever
called is right before the terminate handler aborts the program. So all
this is unnecessary, and creates a dependency onto `<memory>`. This
change removes the `demangle()` function and replaces the call with an
immediately invoked lambda expression that simply returns a raw pointer
in both cases, which should be fine because the memory can never be
freed here anyways.


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

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h

  Log Message:
  -----------
  [ADT] Minor code cleanup in STLExtras.h (#104808)

- Remove unnecessary return from `replace`.
- Add comment for `min_element` and `max_element`.


  Commit: e8ca306fbefdb8385c53d6cc029251d1d5be7049
      https://github.com/llvm/llvm-project/commit/e8ca306fbefdb8385c53d6cc029251d1d5be7049
  Author: Dmitry Yanovsky <kerambyte at gmail.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/unittests/ADT/CountCopyAndMove.cpp
    M llvm/unittests/ADT/CountCopyAndMove.h
    M llvm/unittests/ADT/FunctionExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Add a missing call to a unique_function destructor after move (#98747)

Right now immediately after moving the captured state, we 'disarm' the
moved-from object's destructor by resetting the
`RHS.CallbackAndInlineFlag`. This means that we never properly destroy
the RHS object's captured state.


  Commit: 1393aeb91e88381ced7512788761e42bde8fd1cc
      https://github.com/llvm/llvm-project/commit/1393aeb91e88381ced7512788761e42bde8fd1cc
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expamd-masked-load.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-gather.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-scatter.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/expand-masked-store.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/AMDGPU/lit.local.cfg

  Log Message:
  -----------
  Pre-commit AMDGPU tests for masked load/store/scatter/gather (#104645)

I'm planning to fix the masked operation scalarazer to not generate
suboptimal code on AMD GPUs and other SIMT machines, and so am adding
tests now.


  Commit: 22825ddd88aa29994a8a260a31c959aed0b35b5b
      https://github.com/llvm/llvm-project/commit/22825ddd88aa29994a8a260a31c959aed0b35b5b
  Author: Scott Linder <Scott.Linder at amd.com>
  Date:   2024-08-19 (Mon, 19 Aug 2024)

  Changed paths:
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][Docs] DWARF aspace-aware base types

Propose an extension to base type DIEs such that DW_ATE_address-encoded
base types can include an architecture specific address space. Use this
to implement DW_OP_convert conversions between AMDGPU address space
addresses where meaningful.


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

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

  Log Message:
  -----------
  AMDGPU/NewPM: Start implementing addCodeGenPrepare (#102816)


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

  Changed paths:
    R .arcconfig
    R .arclint
    M .ci/generate-buildkite-pipeline-premerge
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    M .clang-tidy
    M .git-blame-ignore-revs
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    M .github/workflows/build-ci-container.yml
    A .github/workflows/ci-post-commit-analyzer-run.py
    A .github/workflows/ci-post-commit-analyzer.yml
    A .github/workflows/commit-access-review.py
    A .github/workflows/commit-access-review.yml
    M .github/workflows/containers/github-action-ci/stage1.Dockerfile
    M .github/workflows/containers/github-action-ci/stage2.Dockerfile
    M .github/workflows/docs.yml
    M .github/workflows/email-check.yaml
    A .github/workflows/get-llvm-version/action.yml
    M .github/workflows/issue-release-workflow.yml
    M .github/workflows/issue-subscriber.yml
    A .github/workflows/issue-write.yml
    M .github/workflows/libclang-abi-tests.yml
    M .github/workflows/libclang-python-tests.yml
    M .github/workflows/libcxx-build-and-test.yaml
    A .github/workflows/libcxx-restart-preempted-jobs.yaml
    M .github/workflows/llvm-bugs.yml
    M .github/workflows/llvm-project-tests.yml
    M .github/workflows/llvm-tests.yml
    M .github/workflows/merged-prs.yml
    M .github/workflows/new-prs.yml
    M .github/workflows/pr-code-format.yml
    A .github/workflows/pr-request-release-note.yml
    M .github/workflows/pr-subscriber.yml
    A .github/workflows/release-asset-audit.py
    A .github/workflows/release-asset-audit.yml
    A .github/workflows/release-binaries-all.yml
    A .github/workflows/release-binaries-save-stage/action.yml
    A .github/workflows/release-binaries-setup-stage/action.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-doxygen.yml
    M .github/workflows/release-lit.yml
    A .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/scorecard.yml
    M .github/workflows/set-release-binary-outputs.sh
    A .github/workflows/unprivileged-download-artifact/action.yml
    M .github/workflows/version-check.yml
    M bolt/CMakeLists.txt
    M bolt/cmake/modules/AddBOLT.cmake
    M bolt/docs/BAT.md
    M bolt/docs/CMakeLists.txt
    A bolt/docs/CommandLineArgumentReference.md
    A bolt/docs/HeatmapHeader.png
    M bolt/docs/Heatmaps.md
    M bolt/docs/OptimizingClang.md
    A bolt/docs/OptimizingLinux.md
    A bolt/docs/generate_doc.py
    M bolt/include/bolt/Core/AddressMap.h
    M bolt/include/bolt/Core/BinaryBasicBlock.h
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryData.h
    M bolt/include/bolt/Core/BinaryDomTree.h
    M bolt/include/bolt/Core/BinaryFunction.h
    A bolt/include/bolt/Core/BinaryFunctionCallGraph.h
    M bolt/include/bolt/Core/BinaryLoop.h
    M bolt/include/bolt/Core/BinarySection.h
    A bolt/include/bolt/Core/CallGraph.h
    A bolt/include/bolt/Core/CallGraphWalker.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugData.h
    A bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Core/FunctionLayout.h
    A bolt/include/bolt/Core/GDBIndex.h
    M bolt/include/bolt/Core/HashUtilities.h
    M bolt/include/bolt/Core/MCPlus.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Core/ParallelUtilities.h
    R bolt/include/bolt/Passes/BinaryFunctionCallGraph.h
    M bolt/include/bolt/Passes/BinaryPasses.h
    M bolt/include/bolt/Passes/CacheMetrics.h
    R bolt/include/bolt/Passes/CallGraph.h
    R bolt/include/bolt/Passes/CallGraphWalker.h
    M bolt/include/bolt/Passes/DominatorAnalysis.h
    M bolt/include/bolt/Passes/FrameAnalysis.h
    M bolt/include/bolt/Passes/HFSort.h
    M bolt/include/bolt/Passes/IndirectCallPromotion.h
    M bolt/include/bolt/Passes/MCF.h
    M bolt/include/bolt/Passes/ReachingDefOrUse.h
    M bolt/include/bolt/Passes/ReachingInsns.h
    M bolt/include/bolt/Passes/RegReAssign.h
    M bolt/include/bolt/Passes/ReorderFunctions.h
    M bolt/include/bolt/Passes/ReorderUtils.h
    M bolt/include/bolt/Passes/StokeInfo.h
    M bolt/include/bolt/Profile/BoltAddressTranslation.h
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Profile/ProfileReaderBase.h
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileReader.h
    M bolt/include/bolt/Profile/YAMLProfileWriter.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/include/bolt/Rewrite/MetadataManager.h
    M bolt/include/bolt/Rewrite/MetadataRewriter.h
    M bolt/include/bolt/Rewrite/MetadataRewriters.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/include/bolt/Utils/NameResolver.h
    M bolt/include/bolt/Utils/NameShortener.h
    M bolt/lib/CMakeLists.txt
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryData.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    A bolt/lib/Core/BinaryFunctionCallGraph.cpp
    M bolt/lib/Core/CMakeLists.txt
    A bolt/lib/Core/CallGraph.cpp
    A bolt/lib/Core/CallGraphWalker.cpp
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    A bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/DynoStats.cpp
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Core/FunctionLayout.cpp
    A bolt/lib/Core/GDBIndex.cpp
    M bolt/lib/Core/HashUtilities.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Passes/AsmDump.cpp
    R bolt/lib/Passes/BinaryFunctionCallGraph.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CMOVConversion.cpp
    M bolt/lib/Passes/CMakeLists.txt
    M bolt/lib/Passes/CacheMetrics.cpp
    R bolt/lib/Passes/CallGraph.cpp
    R bolt/lib/Passes/CallGraphWalker.cpp
    M bolt/lib/Passes/FixRISCVCallsPass.cpp
    M bolt/lib/Passes/FixRelaxationPass.cpp
    M bolt/lib/Passes/FrameAnalysis.cpp
    M bolt/lib/Passes/FrameOptimizer.cpp
    M bolt/lib/Passes/Hugify.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/Passes/JTFootprintReduction.cpp
    M bolt/lib/Passes/MCF.cpp
    M bolt/lib/Passes/PLTCall.cpp
    M bolt/lib/Passes/RegAnalysis.cpp
    M bolt/lib/Passes/RegReAssign.cpp
    M bolt/lib/Passes/ShrinkWrapping.cpp
    M bolt/lib/Passes/SplitFunctions.cpp
    M bolt/lib/Passes/StokeInfo.cpp
    M bolt/lib/Passes/TailDuplication.cpp
    M bolt/lib/Passes/ValidateInternalCalls.cpp
    M bolt/lib/Passes/ValidateMemRefs.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Profile/BoltAddressTranslation.cpp
    M bolt/lib/Profile/CMakeLists.txt
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/DataReader.cpp
    M bolt/lib/Profile/Heatmap.cpp
    R bolt/lib/Profile/ProfileReaderBase.cpp
    M bolt/lib/Profile/StaleProfileMatching.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/BoltDiff.cpp
    A bolt/lib/Rewrite/BuildIDRewriter.cpp
    M bolt/lib/Rewrite/CMakeLists.txt
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/JITLinkLinker.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/MetadataManager.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Rewrite/SDTRewriter.cpp
    M bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp
    M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
    M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/AArch64/CMakeLists.txt
    M bolt/lib/Target/RISCV/CMakeLists.txt
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/CMakeLists.txt
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Utils/CMakeLists.txt
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/runtime/CMakeLists.txt
    M bolt/runtime/instr.cpp
    M bolt/test/AArch64/Inputs/array_end.lld_script
    A bolt/test/AArch64/Inputs/build_id.ldscript
    A bolt/test/AArch64/build_id.c
    M bolt/test/AArch64/constant_island_pie_update.s
    A bolt/test/AArch64/dummy-return.s
    M bolt/test/AArch64/exclusive-instrument.s
    M bolt/test/AArch64/lit.local.cfg
    A bolt/test/AArch64/plt-call.test
    A bolt/test/AArch64/test-indirect-branch.s
    M bolt/test/AArch64/update-debug-reloc.test
    A bolt/test/AArch64/update-weak-reference-symbol.s
    M bolt/test/AArch64/veneer-gold.s
    M bolt/test/CMakeLists.txt
    R bolt/test/Inputs/lsda.ldscript
    A bolt/test/Inputs/plt-tailcall.c
    A bolt/test/RISCV/fake-label-no-entry.c
    R bolt/test/RISCV/unnamed-sym-no-entry.c
    A bolt/test/X86/Inputs/ambiguous_fragment.s
    A bolt/test/X86/Inputs/ambiguous_fragment.script
    A bolt/test/X86/Inputs/blarge_new.preagg.txt
    A bolt/test/X86/Inputs/blarge_new.yaml
    A bolt/test/X86/Inputs/blarge_new_bat.preagg.txt
    A bolt/test/X86/Inputs/blarge_new_bat_branchentry.preagg.txt
    A bolt/test/X86/Inputs/blarge_new_bat_order.preagg.txt
    A bolt/test/X86/Inputs/blarge_profile_stale_low_matched_blocks.yaml
    A bolt/test/X86/Inputs/build_id.yaml
    A bolt/test/X86/Inputs/dwarf4-df-input-lowpc-ranges-other.s
    A bolt/test/X86/Inputs/dwarf4-subprogram-multiple-ranges-other.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-ftu-ltu-mix-helper.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-ftu-ltu-mix-helper1.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-ftu-ltu-mix-main.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-df-input-lowpc-ranges-other.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-df-types-debug-names-main.s
    A bolt/test/X86/Inputs/dwarf5-subprogram-multiple-ranges-other.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-helper.s
    A bolt/test/X86/Inputs/dwarf5-types-debug-names-main.s
    A bolt/test/X86/Inputs/infer_no_exits.s
    A bolt/test/X86/Inputs/jump-table-fixed-ref-pic.s
    M bolt/test/X86/addr32.s
    A bolt/test/X86/ambiguous_fragment.test
    M bolt/test/X86/asm-func-debug.test
    M bolt/test/X86/avx512-trap.test
    M bolt/test/X86/bb-with-two-tail-calls.s
    M bolt/test/X86/block-reordering.test
    M bolt/test/X86/bolt-address-translation-internal-call.test
    A bolt/test/X86/bolt-address-translation-yaml.test
    M bolt/test/X86/bolt-address-translation.test
    M bolt/test/X86/branch-data.test
    M bolt/test/X86/broken_dynsym.test
    M bolt/test/X86/bug-function-layout-execount.s
    M bolt/test/X86/bug-reorder-bb-jrcxz.s
    A bolt/test/X86/build_id.test
    M bolt/test/X86/calculate-emitted-block-size.s
    M bolt/test/X86/call-zero.s
    M bolt/test/X86/cdsplit-call-scale.s
    M bolt/test/X86/cdsplit-symbol-names.s
    M bolt/test/X86/cfi-expr-rewrite.s
    M bolt/test/X86/cfi-instrs-count.s
    M bolt/test/X86/cfi-instrs-reordered.s
    M bolt/test/X86/checkvma-large-section.test
    M bolt/test/X86/ctc-and-unreachable.test
    M bolt/test/X86/debug-fission-single-convert.s
    M bolt/test/X86/debug-fission-single.s
    M bolt/test/X86/double-jump.test
    M bolt/test/X86/dwarf-handle-visit-loclist-error.s
    M bolt/test/X86/dwarf-test-df-logging.test
    M bolt/test/X86/dwarf3-lowpc-highpc-convert.s
    M bolt/test/X86/dwarf4-cross-cu-backward-different-abbrev.test
    M bolt/test/X86/dwarf4-cross-cu-forward-different-abbrev.test
    M bolt/test/X86/dwarf4-cross-cu-loclist-dwarf4-loclist--dwarf5-loclist.test
    M bolt/test/X86/dwarf4-df-basic.test
    M bolt/test/X86/dwarf4-df-call-site-change-low-pc.test
    M bolt/test/X86/dwarf4-df-change-in-dw-op-gnu-addr-index-main.test
    M bolt/test/X86/dwarf4-df-do-no-convert-low-pc-high-pc-to-ranges.test
    M bolt/test/X86/dwarf4-df-dualcu-loclist.test
    M bolt/test/X86/dwarf4-df-dualcu.test
    M bolt/test/X86/dwarf4-df-inlined-subroutine-lowpc-0.test
    A bolt/test/X86/dwarf4-df-input-lowpc-ranges-cus.test
    M bolt/test/X86/dwarf4-df-input-lowpc-ranges.test
    M bolt/test/X86/dwarf4-df-no-base.test
    M bolt/test/X86/dwarf4-do-no-convert-low-pc-high-pc-to-ranges.test
    M bolt/test/X86/dwarf4-duplicate-types.test
    R bolt/test/X86/dwarf4-ftypes-dwo-input-dwp-output.test
    R bolt/test/X86/dwarf4-ftypes-dwo-mono-input-dwp-output.test
    M bolt/test/X86/dwarf4-ftypes-dwp-input-dwo-output.test
    M bolt/test/X86/dwarf4-ftypes-dwp-input-dwp-output.test
    M bolt/test/X86/dwarf4-gdb-index-types-gdb-generated.test
    M bolt/test/X86/dwarf4-gdb-index-types-lld-generated.test
    M bolt/test/X86/dwarf4-invalid-reference-die-offset-no-internal-dwarf-error.s
    M bolt/test/X86/dwarf4-invalid-reference-die-offset-with-internal-dwarf-error-cant-parse-die.s
    M bolt/test/X86/dwarf4-invalid-reference-die-offset-with-internal-dwarf-error-invalid-die.s
    A bolt/test/X86/dwarf4-label-low-pc.s
    M bolt/test/X86/dwarf4-sibling.s
    M bolt/test/X86/dwarf4-size-0-inlined_subroutine.s
    M bolt/test/X86/dwarf4-split-dwarf-no-address.test
    M bolt/test/X86/dwarf4-split-gdb-index-types-gdb-generated.test
    A bolt/test/X86/dwarf4-subprogram-multiple-ranges-cus.test
    M bolt/test/X86/dwarf4-subprogram-multiple-ranges.test
    M bolt/test/X86/dwarf4-subprogram-single-gc-ranges.test
    M bolt/test/X86/dwarf4-subprogram-single-ranges.test
    M bolt/test/X86/dwarf4-types-dwarf5-types.test
    M bolt/test/X86/dwarf4-types-dwarf5.test
    M bolt/test/X86/dwarf4-types-forward-backward-cross-reference.s
    M bolt/test/X86/dwarf4-types.test
    M bolt/test/X86/dwarf5-addr-section-reuse.s
    M bolt/test/X86/dwarf5-call-pc-function-null-check.test
    M bolt/test/X86/dwarf5-call-pc.test
    M bolt/test/X86/dwarf5-cu-no-debug-addr.test
    M bolt/test/X86/dwarf5-debug-info-dwarf4-debug-line.s
    M bolt/test/X86/dwarf5-debug-line-not-modified.test
    M bolt/test/X86/dwarf5-debug-line.s
    M bolt/test/X86/dwarf5-debug-loclists.s
    A bolt/test/X86/dwarf5-debug-names-class-type-decl.s
    A bolt/test/X86/dwarf5-debug-names-cross-cu.s
    A bolt/test/X86/dwarf5-debug-names-dw-at-specification.s
    A bolt/test/X86/dwarf5-debug-names-enumeration-type-decl.s
    A bolt/test/X86/dwarf5-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-debug-names-skip-forward-decl.s
    A bolt/test/X86/dwarf5-debug-names-structure-type-decl.s
    A bolt/test/X86/dwarf5-debug-names.test
    M bolt/test/X86/dwarf5-df-call-site-change-low-pc.test
    M bolt/test/X86/dwarf5-df-change-in-dw-op-gnu-addr-index-main.test
    M bolt/test/X86/dwarf5-df-cu-function-gc.test
    A bolt/test/X86/dwarf5-df-debug-names-generate-debug-names.test
    A bolt/test/X86/dwarf5-df-debug-names.test
    M bolt/test/X86/dwarf5-df-dualcu-loclist.test
    M bolt/test/X86/dwarf5-df-dualcu.test
    M bolt/test/X86/dwarf5-df-inlined-subroutine-gc-sections-range.test
    M bolt/test/X86/dwarf5-df-inlined-subroutine-range-0.test
    A bolt/test/X86/dwarf5-df-input-lowpc-ranges-cus.test
    M bolt/test/X86/dwarf5-df-input-lowpc-ranges.test
    A bolt/test/X86/dwarf5-df-larger-batch-size.test
    A bolt/test/X86/dwarf5-df-main-debug-names-ftu-ltu-mix.test
    M bolt/test/X86/dwarf5-df-mono-dualcu.test
    A bolt/test/X86/dwarf5-df-one-cu-debug-names.test
    M bolt/test/X86/dwarf5-df-output-dir-same-name.test
    A bolt/test/X86/dwarf5-df-types-debug-names.test
    M bolt/test/X86/dwarf5-df-types-dup-dwp-input.test
    A bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
    A bolt/test/X86/dwarf5-df-types-modify-dwo-name.test
    A bolt/test/X86/dwarf5-df-types-one-cu-debug-names.test
    M bolt/test/X86/dwarf5-do-no-convert-low-pc-high-pc-to-ranges.test
    M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-gdb-generated-gdb11.test
    M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-gdb-generated-gdb9.test
    M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-lld-generated.test
    M bolt/test/X86/dwarf5-dwarf4-monolithic.test
    M bolt/test/X86/dwarf5-dwarf4-types-backward-forward-cross-reference.test
    M bolt/test/X86/dwarf5-empty-arange.test
    R bolt/test/X86/dwarf5-ftypes-dwo-mono-input-dwp-output.test
    M bolt/test/X86/dwarf5-ftypes-dwp-input-dwo-output.test
    M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb11.test
    M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb9.test
    M bolt/test/X86/dwarf5-gdb-index-types-lld-generated.test
    M bolt/test/X86/dwarf5-label-low-pc.s
    M bolt/test/X86/dwarf5-locaddrx.test
    M bolt/test/X86/dwarf5-locexpr-addrx.s
    M bolt/test/X86/dwarf5-locexpr-referrence.test
    M bolt/test/X86/dwarf5-loclist-offset-form.test
    M bolt/test/X86/dwarf5-lowpc-highpc-convert.s
    M bolt/test/X86/dwarf5-multiple-dw-op-addrx-locexpr.s
    A bolt/test/X86/dwarf5-one-cu-debug-names.test
    M bolt/test/X86/dwarf5-one-loclists-two-bases.test
    M bolt/test/X86/dwarf5-rangeoffset-to-rangeindex.s
    M bolt/test/X86/dwarf5-return-pc-form-addr.test
    M bolt/test/X86/dwarf5-return-pc.test
    M bolt/test/X86/dwarf5-shared-str-offset-base.s
    M bolt/test/X86/dwarf5-split-dwarf4-monolithic.test
    M bolt/test/X86/dwarf5-split-gdb-index-types-gdb-generated.test
    A bolt/test/X86/dwarf5-subprogram-multiple-ranges-cus.test
    M bolt/test/X86/dwarf5-subprogram-multiple-ranges.test
    M bolt/test/X86/dwarf5-subprogram-single-gc-ranges.test
    M bolt/test/X86/dwarf5-subprogram-single-ranges.test
    M bolt/test/X86/dwarf5-two-cu-str-offset-table.test
    M bolt/test/X86/dwarf5-two-loclists.test
    M bolt/test/X86/dwarf5-two-rnglists.test
    M bolt/test/X86/dwarf5-type-unit-no-cu-str-offset-table.test
    M bolt/test/X86/dwarf5-types-backward-cross-reference.s
    A bolt/test/X86/dwarf5-types-debug-names.test
    M bolt/test/X86/dwarf5-types-forward-cross-reference.s
    A bolt/test/X86/dwarf5-types-one-cu-debug-names.test
    A bolt/test/X86/dynamic-relocs-on-entry.s
    M bolt/test/X86/dynrelocs.s
    M bolt/test/X86/encoding-validation.s
    M bolt/test/X86/exceptions-args.test
    M bolt/test/X86/fallthrough-to-noop.test
    M bolt/test/X86/false-jump-table.s
    M bolt/test/X86/fatal-error.s
    M bolt/test/X86/fragment-lite-reverse.s
    M bolt/test/X86/fragment-lite.s
    M bolt/test/X86/fragmented-symbols.s
    M bolt/test/X86/frame-opt-lea.s
    M bolt/test/X86/function-order-lite.s
    M bolt/test/X86/gdbindex.test
    M bolt/test/X86/gotpcrelx.s
    A bolt/test/X86/hashing-based-function-matching.test
    M bolt/test/X86/high_pc_udata.s
    M bolt/test/X86/icf-jump-tables.test
    M bolt/test/X86/icp-inline.s
    A bolt/test/X86/ignored-interprocedural-reference.s
    A bolt/test/X86/indirect-goto-pie.test
    M bolt/test/X86/indirect-goto.test
    A bolt/test/X86/infer_no_exits.test
    M bolt/test/X86/inlined-function-mixed.test
    M bolt/test/X86/insert-addr-rnglists_base.s
    M bolt/test/X86/insert-debug-info-entry.test
    M bolt/test/X86/internal-call-instrument-so.s
    M bolt/test/X86/internal-call-instrument.s
    M bolt/test/X86/interprocedural-ref-entry-point.s
    M bolt/test/X86/is-strip.s
    M bolt/test/X86/issue20.s
    M bolt/test/X86/issue20.test
    M bolt/test/X86/issue26.s
    M bolt/test/X86/issue26.test
    M bolt/test/X86/jmp-optimization.test
    M bolt/test/X86/jmpjmp.test
    M bolt/test/X86/jt-symbol-disambiguation-3.s
    A bolt/test/X86/jt-symbol-disambiguation-4.s
    A bolt/test/X86/jump-table-fixed-ref-pic.test
    M bolt/test/X86/jump-table-footprint-reduction.test
    M bolt/test/X86/jump-table-func-entry.s
    M bolt/test/X86/jump-table-icp.test
    M bolt/test/X86/jump-table-pic-conflict.s
    M bolt/test/X86/jump-table-pic-order.test
    M bolt/test/X86/jump-table-reference.test
    M bolt/test/X86/keep-nops.s
    M bolt/test/X86/layout-heuristic.test
    M bolt/test/X86/line-number.test
    A bolt/test/X86/linux-alt-instruction.s
    A bolt/test/X86/linux-bug-table.s
    A bolt/test/X86/linux-exceptions.s
    M bolt/test/X86/linux-orc.s
    A bolt/test/X86/linux-parainstructions.s
    A bolt/test/X86/linux-pci-fixup.s
    A bolt/test/X86/linux-smp-locks.s
    M bolt/test/X86/linux-static-calls.s
    A bolt/test/X86/linux-static-keys.s
    M bolt/test/X86/lit.local.cfg
    M bolt/test/X86/log.test
    M bolt/test/X86/loop-inversion-pass.s
    M bolt/test/X86/loop-nest.test
    A bolt/test/X86/match-functions-with-call-graph.test
    A bolt/test/X86/match-functions-with-calls-as-anchors.test
    M bolt/test/X86/merge-fdata-bat-mode.test
    M bolt/test/X86/merge-fdata-nobat-mode.test
    M bolt/test/X86/merge-fdata-output.test
    A bolt/test/X86/name-similarity-function-matching.test
    M bolt/test/X86/no-entry-reordering.test
    M bolt/test/X86/no-output.test
    M bolt/test/X86/nolbr.s
    M bolt/test/X86/patch-entries.test
    A bolt/test/X86/plt-call.test
    M bolt/test/X86/pre-aggregated-perf.test
    A bolt/test/X86/profile-passthrough-block.test
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M bolt/test/X86/pt_gnu_relro.s
    M bolt/test/X86/reader-stale-yaml-std.test
    M bolt/test/X86/reader-stale-yaml.test
    M bolt/test/X86/reader.test
    A bolt/test/X86/register-fragments-bolt-symbols.s
    M bolt/test/X86/relaxed-tailcall.test
    M bolt/test/X86/remove-unused.test
    M bolt/test/X86/rodata-simpl-loads.test
    M bolt/test/X86/sctc-bug.test
    M bolt/test/X86/sctc-bug2.test
    M bolt/test/X86/sctc-bug3.test
    M bolt/test/X86/sctc-bug4.test
    M bolt/test/X86/shared_object_entry.s
    M bolt/test/X86/shorten-mov.test
    M bolt/test/X86/shrinkwrapping-and-rsp.s
    M bolt/test/X86/shrinkwrapping-critedge.s
    M bolt/test/X86/shrinkwrapping-do-not-pessimize.s
    M bolt/test/X86/shrinkwrapping-insertcfi.s
    M bolt/test/X86/shrinkwrapping-lea.s
    M bolt/test/X86/shrinkwrapping-mov.s
    M bolt/test/X86/shrinkwrapping-pop-order.s
    M bolt/test/X86/shrinkwrapping-popf.s
    M bolt/test/X86/shrinkwrapping-restore-position.s
    M bolt/test/X86/shrinkwrapping.test
    M bolt/test/X86/split-all-lptrampoline.s
    M bolt/test/X86/split-all.s
    M bolt/test/X86/split-func-icf.s
    M bolt/test/X86/split-func-jump-table-fragment-bidirection.s
    M bolt/test/X86/split-func-jump-table-fragment-noparent.s
    M bolt/test/X86/split-func-jump-table-fragment-reverse.s
    M bolt/test/X86/split-func-jump-table-fragment.s
    M bolt/test/X86/split-func-jump-table-unknown.s
    M bolt/test/X86/split-landing-pad.s
    M bolt/test/X86/split-random.s
    A bolt/test/X86/stale-matching-min-matched-block.test
    M bolt/test/X86/static-exe.test
    M bolt/test/X86/symtab-secondary-entries.test
    M bolt/test/X86/tail-duplication-cache.s
    M bolt/test/X86/tail-duplication-cacheline.s
    M bolt/test/X86/tail-duplication-complex.s
    M bolt/test/X86/tail-duplication-jt.s
    M bolt/test/X86/tail-duplication-pass.s
    M bolt/test/X86/tail-duplication-prop-bug.s
    M bolt/test/X86/tailcall-traps.test
    M bolt/test/X86/tailcall.test
    A bolt/test/X86/three-way-split-jt.s
    M bolt/test/X86/unclaimed-jt-entries.s
    M bolt/test/X86/unreachable-jmp.s
    M bolt/test/X86/unreachable.test
    M bolt/test/X86/vararg.test
    M bolt/test/X86/yaml-multiple-profiles.test
    A bolt/test/X86/yaml-non-simple.test
    A bolt/test/X86/yaml-secondary-entry-discriminator.s
    M bolt/test/X86/zero-sized-object.s
    M bolt/test/bad-exe.test
    M bolt/test/bolt-icf.test
    M bolt/test/bolt-info.test
    M bolt/test/heatmap.test
    M bolt/test/invalid-profile.test
    M bolt/test/keep-aranges.test
    M bolt/test/link_fdata.py
    M bolt/test/lit.cfg.py
    M bolt/test/lit.local.cfg
    M bolt/test/lit.site.cfg.py.in
    M bolt/test/lsda-section-name.cpp
    M bolt/test/no-relocs.test
    M bolt/test/non-empty-debug-line.test
    M bolt/test/perf2bolt/lit.local.cfg
    M bolt/test/permission.test
    M bolt/test/pie.test
    M bolt/test/re-optimize.test
    R bolt/test/runtime/X86/Inputs/indirect_goto.c
    M bolt/test/runtime/X86/asm-dump.c
    M bolt/test/runtime/X86/hot-end-symbol.s
    R bolt/test/runtime/X86/indirect-goto-pie.test
    A bolt/test/runtime/X86/instrument-wrong-target.s
    A bolt/test/runtime/X86/jt-confusion.s
    M bolt/test/runtime/X86/unclaimed-jt-entries.s
    A bolt/test/runtime/bolt-reserved.cpp
    R bolt/test/runtime/instrument-wrong-target.s
    M bolt/test/shared-object.test
    A bolt/test/timers.c
    M bolt/tools/bat-dump/bat-dump.cpp
    M bolt/tools/heatmap/heatmap.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M bolt/unittests/CMakeLists.txt
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M bolt/utils/docker/Dockerfile
    M clang-tools-extra/CMakeLists.txt
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Mapper.h
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/assets/index.js
    M clang-tools-extra/clang-doc/tool/CMakeLists.txt
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang-tools-extra/clang-query/CMakeLists.txt
    M clang-tools-extra/clang-query/Query.cpp
    M clang-tools-extra/clang-query/Query.h
    M clang-tools-extra/clang-query/QueryParser.cpp
    M clang-tools-extra/clang-query/QuerySession.h
    M clang-tools-extra/clang-query/tool/ClangQuery.cpp
    M clang-tools-extra/clang-tidy/CMakeLists.txt
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.h
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/clang-tidy/ClangTidyOptions.h
    M clang-tools-extra/clang-tidy/GlobList.cpp
    M clang-tools-extra/clang-tidy/GlobList.h
    M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/boost/BoostTidyModule.cpp
    M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
    A clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
    M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
    M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.h
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.h
    M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.h
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
    M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
    M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.cpp
    M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.h
    M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
    A clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
    A clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.h
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.h
    A clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
    A clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
    M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
    M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
    A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    A clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
    A clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.h
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
    M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
    M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
    M clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
    M clang-tools-extra/clang-tidy/readability/StringCompareCheck.h
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
    A clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
    A clang-tools-extra/clang-tidy/utils/BracesAroundStatement.h
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
    A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/Matchers.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
    A clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/ClangdLSPServer.cpp
    M clang-tools-extra/clangd/ClangdLSPServer.h
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeCompletionStrings.cpp
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.h
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/ConfigFragment.h
    M clang-tools-extra/clangd/ConfigYAML.cpp
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/Format.cpp
    M clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
    M clang-tools-extra/clangd/GlobalCompilationDatabase.h
    M clang-tools-extra/clangd/HeuristicResolver.cpp
    M clang-tools-extra/clangd/HeuristicResolver.h
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeCleaner.h
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/JSONTransport.cpp
    A clang-tools-extra/clangd/ModulesBuilder.cpp
    A clang-tools-extra/clangd/ModulesBuilder.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Preamble.h
    A clang-tools-extra/clangd/ProjectModules.h
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    A clang-tools-extra/clangd/ScanningProjectModules.cpp
    A clang-tools-extra/clangd/ScanningProjectModules.h
    M clang-tools-extra/clangd/Selection.h
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/SourceCode.cpp
    M clang-tools-extra/clangd/SourceCode.h
    M clang-tools-extra/clangd/TidyProvider.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/index/remote/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/Client.h
    M clang-tools-extra/clangd/index/remote/server/Server.cpp
    M clang-tools-extra/clangd/refactor/Rename.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/refactor/tweaks/ScopifyEnum.cpp
    M clang-tools-extra/clangd/support/ThreadsafeFS.cpp
    M clang-tools-extra/clangd/support/Trace.cpp
    M clang-tools-extra/clangd/support/Trace.h
    M clang-tools-extra/clangd/test/CMakeLists.txt
    M clang-tools-extra/clangd/test/delimited-input-comment-at-the-end.test
    M clang-tools-extra/clangd/test/hover.test
    M clang-tools-extra/clangd/test/infinite-instantiation.test
    M clang-tools-extra/clangd/test/inlayHints.test
    A clang-tools-extra/clangd/test/modules.test
    M clang-tools-extra/clangd/test/spaces-in-delimited-input.test
    M clang-tools-extra/clangd/test/trace.test
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/tool/Check.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/ASTTests.cpp
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/ClangdTests.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
    M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
    M clang-tools-extra/clangd/unittests/PreambleTests.cpp
    A clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/clangd/unittests/ReplayPeambleTests.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    M clang-tools-extra/clangd/unittests/SourceCodeTests.cpp
    M clang-tools-extra/clangd/unittests/TestFS.h
    M clang-tools-extra/clangd/unittests/TestIndex.cpp
    M clang-tools-extra/clangd/unittests/TestIndex.h
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/ExtractVariableTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/ScopifyEnumTests.cpp
    M clang-tools-extra/docs/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/implicit-widening-of-multiplication-result.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-stringview-data-usage.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    A clang-tools-extra/docs/clang-tidy/checks/cert/ctr56-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
    A clang-tools-extra/docs/clang-tidy/checks/cert/int09-c.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.ArrayDelete.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.Move.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.taint.TaintedAlloc.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.BlockInCriticalSection.rst
    A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.Stream.rst
    M clang-tools-extra/docs/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-const-or-ref-data-members.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/macro-usage.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/gen-static-analyzer-docs.py
    A clang-tools-extra/docs/clang-tidy/checks/linuxkernel/must-check-errs.rst
    R clang-tools-extra/docs/clang-tidy/checks/linuxkernel/must-use-errs.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvmlibc/implementation-in-namespace.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
    A clang-tools-extra/docs/clang-tidy/checks/misc/use-internal-linkage.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/min-max-use-initializer-list.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-constraints.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-nullptr.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-length.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/implicit-bool-conversion.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/math-missing-parentheses.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/static-accessed-through-instance.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/string-compare.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/docs/modularize.rst
    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/FindHeaders.cpp
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/IncludeSpeller.cpp
    M clang-tools-extra/include-cleaner/lib/Record.cpp
    M clang-tools-extra/include-cleaner/lib/Types.cpp
    M clang-tools-extra/include-cleaner/lib/WalkAST.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/CMakeLists.txt
    M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
    M clang-tools-extra/include-cleaner/unittests/IncludeSpellerTest.cpp
    M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
    M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
    M clang-tools-extra/modularize/ModularizeUtilities.cpp
    M clang-tools-extra/pseudo/include/CMakeLists.txt
    M clang-tools-extra/pseudo/lib/CMakeLists.txt
    M clang-tools-extra/pseudo/lib/cxx/CMakeLists.txt
    M clang-tools-extra/pseudo/tool/CMakeLists.txt
    M clang-tools-extra/pseudo/unittests/CMakeLists.txt
    M clang-tools-extra/test/CMakeLists.txt
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/database_template.json
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Calculator.h
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Circle.h
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Rectangle.h
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Shape.h
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
    A clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
    A clang-tools-extra/test/clang-doc/Inputs/test-assets/test.css
    A clang-tools-extra/test/clang-doc/Inputs/test-assets/test.js
    A clang-tools-extra/test/clang-doc/assets.cpp
    A clang-tools-extra/test/clang-doc/basic-project.test
    A clang-tools-extra/test/clang-doc/enum.cpp
    A clang-tools-extra/test/clang-doc/namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    A clang-tools-extra/test/clang-doc/test-path-abs.cpp
    A clang-tools-extra/test/clang-query/Inputs/empty.script
    A clang-tools-extra/test/clang-query/Inputs/file.script
    A clang-tools-extra/test/clang-query/Inputs/runtime_file.script
    M clang-tools-extra/test/clang-query/errors.c
    A clang-tools-extra/test/clang-query/file-empty.c
    A clang-tools-extra/test/clang-query/file-query.c
    M clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string.h
    M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
    A clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_boost.h
    A clang-tools-extra/test/clang-tidy/checkers/boost/Inputs/use-ranges/fake_std.h
    A clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp
    A clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/assert-side-effect.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/assignment-in-if-condition-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/casting-through-void.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/forwarding-reference-overload.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/implicit-widening-of-multiplication-result-constants.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/inc-dec-in-conditions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/lambda-function-name.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/multi-level-implicit-pointer-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/optional-value-conversion.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/pointer-arithmetic-on-polymorphic-object-all.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/pointer-arithmetic-on-polymorphic-object-decl-only.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/return-const-ref-from-parameter.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-2.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-any-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-warn-on-sizeof-pointer-to-aggregate.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-stringview-data-usage.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-avoid-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-const-or-ref-data-members.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-non-const-global-variables.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/macro-usage.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/owning-memory.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-no-crash.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions-relaxed.cpp
    A clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/hicpp/ignored-remove-result.cpp
    M clang-tools-extra/test/clang-tidy/checkers/hicpp/signed-bitwise-integer-literals.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvmlibc/implementation-in-namespace.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/func.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/func_cpp.inc
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/func_h.inc
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/var.h
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/header-include-cycle.self.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/new-delete-overloads.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.hpp
    R clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls.hxx
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-fix-mode-none.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-var.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace-ignore-implicit-constructors.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr-c23.c
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.c
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-member.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-member.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/inefficient-vector-operation.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
    A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/duplicate-include.h
    M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/duplicate-include2.h
    M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/system/sys/types.h
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/hungarian-notation3/.clang-tidy
    M clang-tools-extra/test/clang-tidy/checkers/readability/avoid-return-with-void-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return-if-consteval.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return-if-constexpr.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
    A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-lower-case-prefix.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-outofline.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
    R clang-tools-extra/test/clang-tidy/checkers/readability/magic-numbers-todo.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-macros.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/string-compare-custom-string-classes.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/string-compare.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/.clang-tidy
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/1/.clang-tidy
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/3/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/5/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/allow-no-checks.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/config-files.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/diagnostic.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/file-filter.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp
    M clang-tools-extra/test/lit.site.cfg.py.in
    M clang-tools-extra/test/modularize/Inputs/CompileError/module.modulemap
    M clang-tools-extra/test/modularize/Inputs/MissingHeader/module.modulemap
    M clang-tools-extra/test/pp-trace/Inputs/module.modulemap
    M clang-tools-extra/test/pp-trace/pp-trace-macro.cpp
    M clang-tools-extra/test/pp-trace/pp-trace-pragma-general.cpp
    M clang-tools-extra/test/pp-trace/pp-trace-pragma-ms.cpp
    M clang-tools-extra/test/pp-trace/pp-trace-pragma-opencl.cpp
    M clang-tools-extra/unittests/CMakeLists.txt
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-query/QueryParserTest.cpp
    M clang-tools-extra/unittests/clang-tidy/DeclRefExprUtilsTest.cpp
    M clang/CMakeLists.txt
    M clang/CodeOwners.rst
    M clang/README.txt
    M clang/bindings/python/clang/cindex.py
    R clang/bindings/python/clang/enumerations.py
    M clang/bindings/python/tests/CMakeLists.txt
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_comment.py
    M clang/bindings/python/tests/cindex/test_cursor.py
    A clang/bindings/python/tests/cindex/test_enums.py
    M clang/bindings/python/tests/cindex/test_exception_specification_kind.py
    M clang/bindings/python/tests/cindex/test_location.py
    A clang/bindings/python/tests/cindex/test_source_range.py
    M clang/bindings/python/tests/cindex/test_token_kind.py
    M clang/cmake/caches/Apple-stage2.cmake
    M clang/cmake/caches/CrossWinToARMLinux.cmake
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/cmake/caches/Fuchsia.cmake
    M clang/cmake/caches/HLSL.cmake
    M clang/cmake/caches/Release.cmake
    M clang/cmake/caches/VectorEngine.cmake
    M clang/cmake/modules/AddClang.cmake
    M clang/docs/APINotes.rst
    M clang/docs/Block-ABI-Apple.rst
    M clang/docs/BoundsSafety.rst
    M clang/docs/BoundsSafetyImplPlans.rst
    M clang/docs/CMakeLists.txt
    M clang/docs/ClangFormat.rst
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ClangFormattedStatus.rst
    M clang/docs/ClangLinkerWrapper.rst
    A clang/docs/ClangNVLinkWrapper.rst
    M clang/docs/ClangOffloadBundler.rst
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/DataFlowSanitizer.rst
    M clang/docs/HIPSupport.rst
    A clang/docs/HLSL/AvailabilityDiagnostics.rst
    M clang/docs/HLSL/ExpectedDifferences.rst
    M clang/docs/HLSL/FunctionCalls.rst
    M clang/docs/HLSL/HLSLDocs.rst
    M clang/docs/HLSL/HLSLIRReference.rst
    M clang/docs/HLSL/HLSLSupport.rst
    M clang/docs/HLSL/ResourceTypes.rst
    M clang/docs/InternalsManual.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/LibTooling.rst
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/Multilib.rst
    M clang/docs/OpenMPSupport.rst
    A clang/docs/PointerAuthentication.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SourceBasedCodeCoverage.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/ThreadSafetyAnalysis.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/analyzer/checkers/mismatched_deallocator_example.cpp
    A clang/docs/analyzer/images/analyzer_html.png
    A clang/docs/analyzer/images/analyzer_xcode.png
    A clang/docs/analyzer/images/scan_build_cmd.png
    M clang/docs/analyzer/user-docs.rst
    A clang/docs/analyzer/user-docs/CommandLineUsage.rst
    A clang/docs/analyzer/user-docs/FilingBugs.rst
    A clang/docs/analyzer/user-docs/Installation.rst
    M clang/docs/analyzer/user-docs/TaintAnalysisConfiguration.rst
    A clang/docs/analyzer/user-docs/UsingWithXCode.rst
    M clang/docs/conf.py
    A clang/docs/ghlinks.py
    M clang/docs/index.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/docs/tools/dump_ast_matchers.py
    M clang/docs/tools/dump_format_style.py
    M clang/examples/LLVMPrintFunctionNames/LLVMPrintFunctionNames.cpp
    M clang/examples/PrintFunctionNames/PrintFunctionNames.cpp
    M clang/include/clang-c/CXSourceLocation.h
    M clang/include/clang-c/Index.h
    M clang/include/clang/APINotes/APINotesManager.h
    M clang/include/clang/APINotes/APINotesReader.h
    M clang/include/clang/APINotes/APINotesWriter.h
    M clang/include/clang/APINotes/Types.h
    M clang/include/clang/AST/ASTConcept.h
    M clang/include/clang/AST/ASTConsumer.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/ASTUnresolvedSet.h
    M clang/include/clang/AST/AbstractBasicReader.h
    M clang/include/clang/AST/AbstractBasicWriter.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/Availability.h
    M clang/include/clang/AST/BuiltinTypes.def
    M clang/include/clang/AST/CommentCommandTraits.h
    M clang/include/clang/AST/CommentCommands.td
    M clang/include/clang/AST/CommentParser.h
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclAccessPair.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclContextInternals.h
    M clang/include/clang/AST/DeclFriend.h
    A clang/include/clang/AST/DeclID.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprOpenMP.h
    M clang/include/clang/AST/ExternalASTSource.h
    M clang/include/clang/AST/FormatString.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/NestedNameSpecifier.h
    A clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/AST/ParentMapContext.h
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/PropertiesBase.td
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Redeclarable.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/StmtOpenACC.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/AST/TemplateBase.h
    M clang/include/clang/AST/TemplateName.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/AST/UnresolvedSet.h
    M clang/include/clang/AST/VTTBuilder.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    A clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    A clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
    A clang/include/clang/Analysis/FlowSensitive/CNFFormula.h
    R clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowLattice.h
    M clang/include/clang/Analysis/FlowSensitive/Logger.h
    M clang/include/clang/Analysis/FlowSensitive/MapLattice.h
    M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
    M clang/include/clang/Analysis/FlowSensitive/Solver.h
    M clang/include/clang/Analysis/FlowSensitive/Transfer.h
    M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/Value.h
    M clang/include/clang/Analysis/FlowSensitive/WatchedLiteralsSolver.h
    M clang/include/clang/Analysis/PathDiagnostic.h
    M clang/include/clang/Analysis/SelectorExtras.h
    A clang/include/clang/Basic/AMDGPUTypes.def
    A clang/include/clang/Basic/ASTSourceDescriptor.h
    M clang/include/clang/Basic/AllDiagnostics.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/AttributeCommonInfo.h
    M clang/include/clang/Basic/Builtins.def
    M clang/include/clang/Basic/Builtins.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsNVPTX.def
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/CharInfo.h
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/Cuda.h
    M clang/include/clang/Basic/CustomizableOptional.h
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Basic/DeclNodes.td
    M clang/include/clang/Basic/Diagnostic.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    A clang/include/clang/Basic/DiagnosticInstallAPI.h
    A clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticOptions.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/FileManager.h
    A clang/include/clang/Basic/HLSLIntangibleTypes.def
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/MSP430Target.def
    M clang/include/clang/Basic/Module.h
    A clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/OpenCLExtensionTypes.def
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    A clang/include/clang/Basic/PointerAuthOptions.h
    M clang/include/clang/Basic/RISCVVTypes.def
    M clang/include/clang/Basic/Sanitizers.def
    M clang/include/clang/Basic/SourceLocation.h
    M clang/include/clang/Basic/SourceManager.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/SyncScope.h
    A clang/include/clang/Basic/Target/MSP430/gen-msp430-def.py
    M clang/include/clang/Basic/TargetCXXABI.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TargetOSMacros.def
    M clang/include/clang/Basic/Thunk.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Basic/TypeNodes.td
    M clang/include/clang/Basic/arm_fp16.td
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    A clang/include/clang/CIR/CMakeLists.txt
    A clang/include/clang/CIR/Dialect/CMakeLists.txt
    A clang/include/clang/CIR/Dialect/IR/CIRDialect.h
    A clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    A clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
    M clang/include/clang/CMakeLists.txt
    M clang/include/clang/CodeGen/CodeGenABITypes.h
    M clang/include/clang/CodeGen/CodeGenAction.h
    M clang/include/clang/CodeGen/ConstantInitBuilder.h
    M clang/include/clang/CodeGen/ModuleBuilder.h
    R clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h
    A clang/include/clang/CodeGen/ObjectFilePCHContainerWriter.h
    M clang/include/clang/Config/config.h.cmake
    M clang/include/clang/Driver/Distro.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/OffloadBundler.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Driver/Types.def
    A clang/include/clang/Driver/aarch64-mlr-for-calls-only.c
    M clang/include/clang/ExtractAPI/API.h
    A clang/include/clang/ExtractAPI/APIRecords.inc
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIActionBase.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/ExtractAPI/FrontendActions.h
    A clang/include/clang/ExtractAPI/Serialization/APISetVisitor.h
    R clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
    M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
    M clang/include/clang/Format/.clang-format
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Frontend/MultiplexConsumer.h
    M clang/include/clang/Frontend/PrecompiledPreamble.h
    M clang/include/clang/Frontend/PreprocessorOutputOptions.h
    M clang/include/clang/Frontend/SerializedDiagnosticReader.h
    M clang/include/clang/Index/DeclOccurrence.h
    M clang/include/clang/InstallAPI/Context.h
    A clang/include/clang/InstallAPI/DirectoryScanner.h
    A clang/include/clang/InstallAPI/DylibVerifier.h
    M clang/include/clang/InstallAPI/FileList.h
    A clang/include/clang/InstallAPI/Frontend.h
    A clang/include/clang/InstallAPI/FrontendRecords.h
    M clang/include/clang/InstallAPI/HeaderFile.h
    A clang/include/clang/InstallAPI/InstallAPIDiagnostic.h
    A clang/include/clang/InstallAPI/Library.h
    A clang/include/clang/InstallAPI/MachO.h
    A clang/include/clang/InstallAPI/Visitor.h
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/include/clang/Interpreter/Value.h
    M clang/include/clang/Lex/ExternalPreprocessorSource.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/HeaderSearchOptions.h
    M clang/include/clang/Lex/LiteralSupport.h
    M clang/include/clang/Lex/MacroInfo.h
    M clang/include/clang/Lex/ModuleMap.h
    M clang/include/clang/Lex/PPCallbacks.h
    A clang/include/clang/Lex/PPDirectiveParameter.h
    A clang/include/clang/Lex/PPEmbedParameters.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Lex/Token.h
    M clang/include/clang/Parse/Parser.h
    R clang/include/clang/Rewrite/Core/DeltaTree.h
    M clang/include/clang/Rewrite/Core/HTMLRewrite.h
    R clang/include/clang/Rewrite/Core/RewriteRope.h
    M clang/include/clang/Rewrite/Core/Rewriter.h
    A clang/include/clang/Sema/Attr.h
    M clang/include/clang/Sema/CodeCompleteConsumer.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/HLSLExternalSemaSource.h
    M clang/include/clang/Sema/Initialization.h
    M clang/include/clang/Sema/Lookup.h
    M clang/include/clang/Sema/MultiplexExternalSemaSource.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/ParsedTemplate.h
    A clang/include/clang/Sema/Redeclaration.h
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/Sema.h
    A clang/include/clang/Sema/SemaAMDGPU.h
    A clang/include/clang/Sema/SemaARM.h
    A clang/include/clang/Sema/SemaAVR.h
    A clang/include/clang/Sema/SemaBPF.h
    A clang/include/clang/Sema/SemaBase.h
    A clang/include/clang/Sema/SemaCUDA.h
    A clang/include/clang/Sema/SemaCodeCompletion.h
    M clang/include/clang/Sema/SemaConcept.h
    A clang/include/clang/Sema/SemaHLSL.h
    A clang/include/clang/Sema/SemaHexagon.h
    M clang/include/clang/Sema/SemaInternal.h
    A clang/include/clang/Sema/SemaLoongArch.h
    A clang/include/clang/Sema/SemaM68k.h
    A clang/include/clang/Sema/SemaMIPS.h
    A clang/include/clang/Sema/SemaMSP430.h
    A clang/include/clang/Sema/SemaNVPTX.h
    A clang/include/clang/Sema/SemaObjC.h
    A clang/include/clang/Sema/SemaOpenACC.h
    A clang/include/clang/Sema/SemaOpenCL.h
    A clang/include/clang/Sema/SemaOpenMP.h
    A clang/include/clang/Sema/SemaPPC.h
    A clang/include/clang/Sema/SemaPseudoObject.h
    A clang/include/clang/Sema/SemaRISCV.h
    A clang/include/clang/Sema/SemaSYCL.h
    A clang/include/clang/Sema/SemaSwift.h
    A clang/include/clang/Sema/SemaSystemZ.h
    A clang/include/clang/Sema/SemaWasm.h
    A clang/include/clang/Sema/SemaX86.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTDeserializationListener.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/Serialization/ASTRecordWriter.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/Serialization/ModuleFile.h
    M clang/include/clang/Serialization/ModuleFileExtension.h
    M clang/include/clang/Serialization/ModuleManager.h
    A clang/include/clang/Serialization/ObjectFilePCHContainerReader.h
    M clang/include/clang/Serialization/PCHContainerOperations.h
    M clang/include/clang/Serialization/SourceLocationEncoding.h
    M clang/include/clang/Serialization/TypeBitCodes.def
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
    A clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
    M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/clang/Testing/CommandLineArgs.h
    M clang/include/clang/Testing/TestAST.h
    M clang/include/clang/Testing/TestClangConfig.h
    M clang/include/clang/Tooling/CommonOptionsParser.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
    R clang/include/clang/Tooling/NodeIntrospection.h
    M clang/include/clang/Tooling/Refactoring/ASTSelection.h
    M clang/include/clang/Tooling/Syntax/Tokens.h
    M clang/include/clang/Tooling/Transformer/RangeSelector.h
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/APINotes/APINotesManager.cpp
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesTypes.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/ARCMigrate/ARCMT.cpp
    M clang/lib/ARCMigrate/ObjCMT.cpp
    M clang/lib/ARCMigrate/TransAPIUses.cpp
    M clang/lib/ARCMigrate/TransGCAttrs.cpp
    M clang/lib/ARCMigrate/TransUnbridgedCasts.cpp
    M clang/lib/ARCMigrate/Transforms.cpp
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTConcept.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/Availability.cpp
    A clang/lib/AST/ByteCode/Boolean.h
    A clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    A clang/lib/AST/ByteCode/ByteCodeEmitter.h
    A clang/lib/AST/ByteCode/Compiler.cpp
    A clang/lib/AST/ByteCode/Compiler.h
    A clang/lib/AST/ByteCode/Context.cpp
    A clang/lib/AST/ByteCode/Context.h
    A clang/lib/AST/ByteCode/Descriptor.cpp
    A clang/lib/AST/ByteCode/Descriptor.h
    A clang/lib/AST/ByteCode/Disasm.cpp
    A clang/lib/AST/ByteCode/DynamicAllocator.cpp
    A clang/lib/AST/ByteCode/DynamicAllocator.h
    A clang/lib/AST/ByteCode/EvalEmitter.cpp
    A clang/lib/AST/ByteCode/EvalEmitter.h
    A clang/lib/AST/ByteCode/EvaluationResult.cpp
    A clang/lib/AST/ByteCode/EvaluationResult.h
    A clang/lib/AST/ByteCode/Floating.cpp
    A clang/lib/AST/ByteCode/Floating.h
    A clang/lib/AST/ByteCode/Frame.cpp
    A clang/lib/AST/ByteCode/Frame.h
    A clang/lib/AST/ByteCode/Function.cpp
    A clang/lib/AST/ByteCode/Function.h
    A clang/lib/AST/ByteCode/FunctionPointer.h
    A clang/lib/AST/ByteCode/Integral.h
    A clang/lib/AST/ByteCode/IntegralAP.h
    A clang/lib/AST/ByteCode/Interp.cpp
    A clang/lib/AST/ByteCode/Interp.h
    A clang/lib/AST/ByteCode/InterpBlock.cpp
    A clang/lib/AST/ByteCode/InterpBlock.h
    A clang/lib/AST/ByteCode/InterpBuiltin.cpp
    A clang/lib/AST/ByteCode/InterpFrame.cpp
    A clang/lib/AST/ByteCode/InterpFrame.h
    A clang/lib/AST/ByteCode/InterpShared.cpp
    A clang/lib/AST/ByteCode/InterpShared.h
    A clang/lib/AST/ByteCode/InterpStack.cpp
    A clang/lib/AST/ByteCode/InterpStack.h
    A clang/lib/AST/ByteCode/InterpState.cpp
    A clang/lib/AST/ByteCode/InterpState.h
    A clang/lib/AST/ByteCode/MemberPointer.cpp
    A clang/lib/AST/ByteCode/MemberPointer.h
    A clang/lib/AST/ByteCode/Opcode.h
    A clang/lib/AST/ByteCode/Opcodes.td
    A clang/lib/AST/ByteCode/Pointer.cpp
    A clang/lib/AST/ByteCode/Pointer.h
    A clang/lib/AST/ByteCode/PrimType.cpp
    A clang/lib/AST/ByteCode/PrimType.h
    A clang/lib/AST/ByteCode/Primitives.h
    A clang/lib/AST/ByteCode/Program.cpp
    A clang/lib/AST/ByteCode/Program.h
    A clang/lib/AST/ByteCode/Record.cpp
    A clang/lib/AST/ByteCode/Record.h
    A clang/lib/AST/ByteCode/Source.cpp
    A clang/lib/AST/ByteCode/Source.h
    A clang/lib/AST/ByteCode/State.cpp
    A clang/lib/AST/ByteCode/State.h
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/CommentParser.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclObjC.cpp
    M clang/lib/AST/DeclOpenMP.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ExternalASTSource.cpp
    M clang/lib/AST/FormatString.cpp
    R clang/lib/AST/Interp/Boolean.h
    R clang/lib/AST/Interp/ByteCodeEmitter.cpp
    R clang/lib/AST/Interp/ByteCodeEmitter.h
    R clang/lib/AST/Interp/ByteCodeExprGen.cpp
    R clang/lib/AST/Interp/ByteCodeExprGen.h
    R clang/lib/AST/Interp/ByteCodeGenError.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.h
    R clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    R clang/lib/AST/Interp/ByteCodeStmtGen.h
    R clang/lib/AST/Interp/Context.cpp
    R clang/lib/AST/Interp/Context.h
    R clang/lib/AST/Interp/Descriptor.cpp
    R clang/lib/AST/Interp/Descriptor.h
    R clang/lib/AST/Interp/Disasm.cpp
    R clang/lib/AST/Interp/EvalEmitter.cpp
    R clang/lib/AST/Interp/EvalEmitter.h
    R clang/lib/AST/Interp/EvaluationResult.cpp
    R clang/lib/AST/Interp/EvaluationResult.h
    R clang/lib/AST/Interp/Floating.cpp
    R clang/lib/AST/Interp/Floating.h
    R clang/lib/AST/Interp/Frame.cpp
    R clang/lib/AST/Interp/Frame.h
    R clang/lib/AST/Interp/Function.cpp
    R clang/lib/AST/Interp/Function.h
    R clang/lib/AST/Interp/FunctionPointer.h
    R clang/lib/AST/Interp/Integral.h
    R clang/lib/AST/Interp/IntegralAP.h
    R clang/lib/AST/Interp/Interp.cpp
    R clang/lib/AST/Interp/Interp.h
    R clang/lib/AST/Interp/InterpBlock.cpp
    R clang/lib/AST/Interp/InterpBlock.h
    R clang/lib/AST/Interp/InterpBuiltin.cpp
    R clang/lib/AST/Interp/InterpFrame.cpp
    R clang/lib/AST/Interp/InterpFrame.h
    R clang/lib/AST/Interp/InterpShared.cpp
    R clang/lib/AST/Interp/InterpShared.h
    R clang/lib/AST/Interp/InterpStack.cpp
    R clang/lib/AST/Interp/InterpStack.h
    R clang/lib/AST/Interp/InterpState.cpp
    R clang/lib/AST/Interp/InterpState.h
    R clang/lib/AST/Interp/Opcode.h
    R clang/lib/AST/Interp/Opcodes.td
    R clang/lib/AST/Interp/Pointer.cpp
    R clang/lib/AST/Interp/Pointer.h
    R clang/lib/AST/Interp/PrimType.cpp
    R clang/lib/AST/Interp/PrimType.h
    R clang/lib/AST/Interp/Primitives.h
    R clang/lib/AST/Interp/Program.cpp
    R clang/lib/AST/Interp/Program.h
    R clang/lib/AST/Interp/Record.cpp
    R clang/lib/AST/Interp/Record.h
    R clang/lib/AST/Interp/Source.cpp
    R clang/lib/AST/Interp/Source.h
    R clang/lib/AST/Interp/State.cpp
    R clang/lib/AST/Interp/State.h
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/NestedNameSpecifier.cpp
    M clang/lib/AST/ODRDiagsEmitter.cpp
    M clang/lib/AST/ODRHash.cpp
    A clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/ParentMap.cpp
    M clang/lib/AST/ParentMapContext.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/QualTypeNames.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/ScanfFormatString.cpp
    M clang/lib/AST/SelectorLocationsKind.cpp
    M clang/lib/AST/StmtOpenACC.cpp
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/AST/TemplateName.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/AST/VTTBuilder.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/ASTMatchers/Dynamic/Marshallers.cpp
    M clang/lib/ASTMatchers/Dynamic/Marshallers.h
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/Consumed.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    A clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    A clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/CMakeLists.txt
    A clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
    R clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/DebugSupport.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/Logger.cpp
    M clang/lib/Analysis/FlowSensitive/Models/ChromiumCheckModel.cpp
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
    M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/FlowSensitive/Value.cpp
    M clang/lib/Analysis/FlowSensitive/WatchedLiteralsSolver.cpp
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/Analysis/MacroExpansionContext.cpp
    M clang/lib/Analysis/ObjCNoReturn.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Analysis/UninitializedValues.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    A clang/lib/Basic/ASTSourceDescriptor.cpp
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/CharInfo.cpp
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Sarif.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/AVR.h
    M clang/lib/Basic/Targets/BPF.cpp
    M clang/lib/Basic/Targets/BPF.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/Hexagon.cpp
    M clang/lib/Basic/Targets/Hexagon.h
    R clang/lib/Basic/Targets/Le64.cpp
    R clang/lib/Basic/Targets/Le64.h
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/M68k.cpp
    M clang/lib/Basic/Targets/M68k.h
    M clang/lib/Basic/Targets/Mips.cpp
    M clang/lib/Basic/Targets/Mips.h
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Basic/Targets/PPC.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/Sparc.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/VE.h
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Basic/TypeTraits.cpp
    A clang/lib/CIR/CMakeLists.txt
    A clang/lib/CIR/Dialect/CMakeLists.txt
    A clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    A clang/lib/CIR/Dialect/IR/CMakeLists.txt
    M clang/lib/CMakeLists.txt
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/ABIInfoImpl.h
    M clang/lib/CodeGen/Address.h
    M clang/lib/CodeGen/BackendConsumer.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBlocks.h
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGCXXABI.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGCleanup.cpp
    M clang/lib/CodeGen/CGCleanup.h
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGLoopInfo.cpp
    M clang/lib/CodeGen/CGLoopInfo.h
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
    A clang/lib/CodeGen/CGPointerAuth.cpp
    A clang/lib/CodeGen/CGPointerAuthInfo.h
    M clang/lib/CodeGen/CGRecordLayout.h
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTT.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CGVTables.h
    M clang/lib/CodeGen/CGValue.h
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypeCache.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/ConstantEmitter.h
    M clang/lib/CodeGen/ConstantInitBuilder.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/CoverageMappingGen.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/LinkInModulesPass.cpp
    M clang/lib/CodeGen/LinkInModulesPass.h
    M clang/lib/CodeGen/MCDCState.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/ModuleBuilder.cpp
    R clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
    A clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/ARC.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/CSKY.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/LoongArch.cpp
    M clang/lib/CodeGen/Targets/MSP430.cpp
    M clang/lib/CodeGen/Targets/Mips.cpp
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/lib/CodeGen/Targets/PNaCl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/Sparc.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/CodeGen/Targets/XCore.cpp
    M clang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp
    M clang/lib/Driver/CMakeLists.txt
    M clang/lib/Driver/Distro.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.h
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.h
    M clang/lib/Driver/ToolChains/Arch/PPC.cpp
    M clang/lib/Driver/ToolChains/Arch/PPC.h
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
    M clang/lib/Driver/ToolChains/Arch/RISCV.h
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/lib/Driver/ToolChains/Arch/Sparc.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Clang.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cuda.h
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.h
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Driver/ToolChains/HLSL.h
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.h
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.h
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Driver/Types.cpp
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
    M clang/lib/Format/.clang-format
    M clang/lib/Format/AffectedRangeManager.h
    M clang/lib/Format/BreakableToken.h
    M clang/lib/Format/CMakeLists.txt
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/ContinuationIndenter.h
    M clang/lib/Format/Encoding.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatInternal.h
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/FormatTokenLexer.h
    M clang/lib/Format/FormatTokenSource.h
    M clang/lib/Format/MacroExpander.cpp
    M clang/lib/Format/Macros.h
    M clang/lib/Format/QualifierAlignmentFixer.cpp
    M clang/lib/Format/QualifierAlignmentFixer.h
    M clang/lib/Format/SortJavaScriptImports.cpp
    M clang/lib/Format/SortJavaScriptImports.h
    M clang/lib/Format/TokenAnalyzer.cpp
    M clang/lib/Format/TokenAnalyzer.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineFormatter.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/DependencyGraph.cpp
    M clang/lib/Frontend/DiagnosticRenderer.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/FrontendOptions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
    M clang/lib/Frontend/ModuleDependencyCollector.cpp
    M clang/lib/Frontend/MultiplexConsumer.cpp
    M clang/lib/Frontend/PrecompiledPreamble.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/Rewrite/HTMLPrint.cpp
    M clang/lib/Frontend/Rewrite/RewriteMacros.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Frontend/Rewrite/RewriteObjC.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/__clang_cuda_math.h
    M clang/lib/Headers/__clang_hip_cmath.h
    M clang/lib/Headers/__clang_hip_math.h
    A clang/lib/Headers/__stdarg_header_macro.h
    A clang/lib/Headers/__stddef_header_macro.h
    M clang/lib/Headers/__stddef_null.h
    M clang/lib/Headers/__stddef_nullptr_t.h
    M clang/lib/Headers/__stddef_offsetof.h
    M clang/lib/Headers/__stddef_ptrdiff_t.h
    M clang/lib/Headers/__stddef_rsize_t.h
    M clang/lib/Headers/__stddef_size_t.h
    M clang/lib/Headers/__stddef_unreachable.h
    M clang/lib/Headers/__stddef_wchar_t.h
    M clang/lib/Headers/arm_acle.h
    A clang/lib/Headers/avx10_2_512minmaxintrin.h
    A clang/lib/Headers/avx10_2_512niintrin.h
    A clang/lib/Headers/avx10_2_512satcvtintrin.h
    A clang/lib/Headers/avx10_2minmaxintrin.h
    A clang/lib/Headers/avx10_2niintrin.h
    A clang/lib/Headers/avx10_2satcvtintrin.h
    R clang/lib/Headers/avx512erintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    R clang/lib/Headers/avx512pfintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/avxvnniint16intrin.h
    M clang/lib/Headers/avxvnniint8intrin.h
    M clang/lib/Headers/bmiintrin.h
    M clang/lib/Headers/builtins.h
    M clang/lib/Headers/cpuid.h
    M clang/lib/Headers/cuda_wrappers/algorithm
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/float.h
    M clang/lib/Headers/fmaintrin.h
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Headers/intrin.h
    A clang/lib/Headers/intrin0.h
    M clang/lib/Headers/inttypes.h
    M clang/lib/Headers/iso646.h
    M clang/lib/Headers/keylockerintrin.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/limits.h
    M clang/lib/Headers/llvm_libc_wrappers/assert.h
    M clang/lib/Headers/llvm_libc_wrappers/stdlib.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/mm3dnow.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Headers/openmp_wrappers/__clang_openmp_device_functions.h
    M clang/lib/Headers/prfchwintrin.h
    A clang/lib/Headers/ptrauth.h
    M clang/lib/Headers/smmintrin.h
    M clang/lib/Headers/stdalign.h
    M clang/lib/Headers/stdarg.h
    M clang/lib/Headers/stdatomic.h
    M clang/lib/Headers/stdbool.h
    M clang/lib/Headers/stddef.h
    M clang/lib/Headers/stdint.h
    M clang/lib/Headers/stdnoreturn.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/varargs.h
    M clang/lib/Headers/x86gprintrin.h
    M clang/lib/Headers/x86intrin.h
    M clang/lib/Headers/xmmintrin.h
    A clang/lib/Headers/yvals_core.h
    A clang/lib/Headers/zos_wrappers/builtins.h
    M clang/lib/Index/CommentToXML.cpp
    M clang/lib/Index/IndexBody.cpp
    M clang/lib/Index/IndexDecl.cpp
    M clang/lib/Index/IndexSymbol.cpp
    M clang/lib/Index/IndexingAction.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/InstallAPI/CMakeLists.txt
    A clang/lib/InstallAPI/DiagnosticBuilderWrappers.cpp
    A clang/lib/InstallAPI/DiagnosticBuilderWrappers.h
    A clang/lib/InstallAPI/DirectoryScanner.cpp
    A clang/lib/InstallAPI/DylibVerifier.cpp
    M clang/lib/InstallAPI/FileList.cpp
    A clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/HeaderFile.cpp
    A clang/lib/InstallAPI/Library.cpp
    A clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/CodeCompletion.cpp
    M clang/lib/Interpreter/DeviceOffload.cpp
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/lib/Interpreter/IncrementalExecutor.h
    M clang/lib/Interpreter/IncrementalParser.cpp
    M clang/lib/Interpreter/IncrementalParser.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Interpreter/InterpreterUtils.cpp
    M clang/lib/Interpreter/InterpreterUtils.h
    M clang/lib/Interpreter/Value.cpp
    A clang/lib/Interpreter/Wasm.cpp
    A clang/lib/Interpreter/Wasm.h
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/lib/Lex/MacroInfo.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPCaching.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPExpressions.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Pragma.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Lex/TokenConcatenation.cpp
    M clang/lib/Parse/ParseAST.cpp
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseHLSL.cpp
    M clang/lib/Parse/ParseInit.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Rewrite/CMakeLists.txt
    R clang/lib/Rewrite/DeltaTree.cpp
    M clang/lib/Rewrite/HTMLRewrite.cpp
    R clang/lib/Rewrite/RewriteRope.cpp
    M clang/lib/Rewrite/Rewriter.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CMakeLists.txt
    A clang/lib/Sema/CheckExprLifetime.cpp
    A clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/CodeCompleteConsumer.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/MultiplexExternalSemaSource.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/Scope.cpp
    M clang/lib/Sema/ScopeInfo.cpp
    M clang/lib/Sema/Sema.cpp
    A clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    A clang/lib/Sema/SemaARM.cpp
    A clang/lib/Sema/SemaAVR.cpp
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    A clang/lib/Sema/SemaBPF.cpp
    A clang/lib/Sema/SemaBase.cpp
    A clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/lib/Sema/SemaHexagon.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaLookup.cpp
    A clang/lib/Sema/SemaLoongArch.cpp
    A clang/lib/Sema/SemaM68k.cpp
    A clang/lib/Sema/SemaMIPS.cpp
    A clang/lib/Sema/SemaMSP430.cpp
    M clang/lib/Sema/SemaModule.cpp
    A clang/lib/Sema/SemaNVPTX.cpp
    A clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    A clang/lib/Sema/SemaOpenCL.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    A clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaPseudoObject.cpp
    A clang/lib/Sema/SemaRISCV.cpp
    R clang/lib/Sema/SemaRISCVVectorLookup.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    A clang/lib/Sema/SemaSwift.cpp
    A clang/lib/Sema/SemaSystemZ.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    A clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    A clang/lib/Sema/SemaWasm.cpp
    A clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTCommon.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderInternals.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/Serialization/CMakeLists.txt
    M clang/lib/Serialization/GeneratePCH.cpp
    M clang/lib/Serialization/GlobalModuleIndex.cpp
    M clang/lib/Serialization/ModuleFile.cpp
    M clang/lib/Serialization/ModuleFileExtension.cpp
    M clang/lib/Serialization/MultiOnDiskHashTable.h
    A clang/lib/Serialization/ObjectFilePCHContainerReader.cpp
    M clang/lib/Serialization/PCHContainerOperations.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    R clang/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugIteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/IteratorRangeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    R clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp
    A clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.h
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/PutenvStackArrayChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/ReturnValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    A clang/lib/StaticAnalyzer/Checkers/SetgidSetuidOrderChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoUncountedMembersChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    R clang/lib/StaticAnalyzer/Checkers/cert/PutenvWithAutoChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Core/CallDescription.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SVals.cpp
    M clang/lib/StaticAnalyzer/Core/Store.cpp
    A clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
    M clang/lib/Support/CMakeLists.txt
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/lib/Testing/CommandLineArgs.cpp
    M clang/lib/Testing/TestAST.cpp
    M clang/lib/Tooling/AllTUsExecution.cpp
    M clang/lib/Tooling/ArgumentsAdjusters.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/lib/Tooling/Core/Replacement.cpp
    M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
    M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    R clang/lib/Tooling/DumpTool/APIData.h
    R clang/lib/Tooling/DumpTool/ASTSrcLocProcessor.cpp
    R clang/lib/Tooling/DumpTool/ASTSrcLocProcessor.h
    R clang/lib/Tooling/DumpTool/CMakeLists.txt
    R clang/lib/Tooling/DumpTool/ClangSrcLocDump.cpp
    R clang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
    R clang/lib/Tooling/EmptyNodeIntrospection.inc.in
    M clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt
    A clang/lib/Tooling/Inclusions/Stdlib/CSpecialSymbolMap.inc
    M clang/lib/Tooling/Inclusions/Stdlib/StandardLibrary.cpp
    M clang/lib/Tooling/JSONCompilationDatabase.cpp
    R clang/lib/Tooling/NodeIntrospection.cpp
    M clang/lib/Tooling/Refactoring/AtomicChange.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/lib/Tooling/Syntax/Tokens.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/lib/Tooling/Transformer/RangeSelector.cpp
    M clang/lib/Tooling/Transformer/SourceCode.cpp
    M clang/lib/Tooling/Transformer/Stencil.cpp
    A clang/test/APINotes/Inputs/APINotes/SomeOtherKit.apinotes
    A clang/test/APINotes/Inputs/BrokenHeaders/APINotes.apinotes
    A clang/test/APINotes/Inputs/BrokenHeaders/SomeBrokenLib.h
    A clang/test/APINotes/Inputs/BrokenHeaders2/APINotes.apinotes
    A clang/test/APINotes/Inputs/BrokenHeaders2/SomeBrokenLib.h
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Headers/FrameworkWithActualPrivateModule.h
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/Modules/module.private.modulemap
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithActualPrivateModule.framework/PrivateHeaders/FrameworkWithActualPrivateModule_Private.h
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Headers/FrameworkWithWrongCase.h
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCase.framework/PrivateHeaders/FrameworkWithWrongCase_Private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Headers/FrameworkWithWrongCasePrivate.h
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/Modules/module.private.modulemap
    A clang/test/APINotes/Inputs/Frameworks/FrameworkWithWrongCasePrivate.framework/PrivateHeaders/FrameworkWithWrongCasePrivate_Private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Headers/LayeredKit.h
    A clang/test/APINotes/Inputs/Frameworks/LayeredKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.apinotes
    A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Headers/LayeredKitImpl.h
    A clang/test/APINotes/Inputs/Frameworks/LayeredKitImpl.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit.apinotes
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/APINotes/SomeKit_private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKitForNullAnnotation.h
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module.private.modulemap
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Modules/module_private.modulemap
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_Private.h
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_PrivateForNullAnnotation.h
    A clang/test/APINotes/Inputs/Frameworks/SomeKit.framework/PrivateHeaders/SomeKit_private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/APINotes/SomeOtherKit.apinotes
    A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.apinotes
    A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Headers/SomeOtherKit.h
    A clang/test/APINotes/Inputs/Frameworks/SomeOtherKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit.h
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Headers/TopLevelPrivateKit_Private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/Modules/module.private.modulemap
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit.apinotes
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private.h
    A clang/test/APINotes/Inputs/Frameworks/TopLevelPrivateKit.framework/PrivateHeaders/TopLevelPrivateKit_Private_private.apinotes
    A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.apinotes
    A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Headers/VersionedKit.h
    A clang/test/APINotes/Inputs/Frameworks/VersionedKit.framework/Modules/module.modulemap
    A clang/test/APINotes/Inputs/Headers/APINotes.apinotes
    A clang/test/APINotes/Inputs/Headers/BrokenTypes.apinotes
    A clang/test/APINotes/Inputs/Headers/BrokenTypes.h
    A clang/test/APINotes/Inputs/Headers/ExportAs.apinotes
    A clang/test/APINotes/Inputs/Headers/ExportAs.h
    A clang/test/APINotes/Inputs/Headers/ExportAsCore.h
    A clang/test/APINotes/Inputs/Headers/ExternCtx.apinotes
    A clang/test/APINotes/Inputs/Headers/ExternCtx.h
    A clang/test/APINotes/Inputs/Headers/Fields.apinotes
    A clang/test/APINotes/Inputs/Headers/Fields.h
    A clang/test/APINotes/Inputs/Headers/HeaderLib.apinotes
    A clang/test/APINotes/Inputs/Headers/HeaderLib.h
    A clang/test/APINotes/Inputs/Headers/InstancetypeModule.apinotes
    A clang/test/APINotes/Inputs/Headers/InstancetypeModule.h
    A clang/test/APINotes/Inputs/Headers/Methods.apinotes
    A clang/test/APINotes/Inputs/Headers/Methods.h
    A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase.h
    A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate.h
    A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCasePrivate_Private.apinotes
    A clang/test/APINotes/Inputs/Headers/ModuleWithWrongCase_Private.apinotes
    A clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
    A clang/test/APINotes/Inputs/Headers/Namespaces.h
    A clang/test/APINotes/Inputs/Headers/PrivateLib.apinotes
    A clang/test/APINotes/Inputs/Headers/PrivateLib.h
    A clang/test/APINotes/Inputs/Headers/PrivateLib_private.apinotes
    A clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
    A clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
    A clang/test/APINotes/Inputs/Headers/Templates.apinotes
    A clang/test/APINotes/Inputs/Headers/Templates.h
    A clang/test/APINotes/Inputs/Headers/module.modulemap
    A clang/test/APINotes/Inputs/Headers/module.private.modulemap
    A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.apinotes
    A clang/test/APINotes/Inputs/yaml-reader-errors/UIKit.h
    A clang/test/APINotes/Inputs/yaml-reader-errors/module.modulemap
    A clang/test/APINotes/availability.m
    A clang/test/APINotes/broken_types.m
    A clang/test/APINotes/case-for-private-apinotes-file.c
    A clang/test/APINotes/export-as.c
    A clang/test/APINotes/extern-context.cpp
    A clang/test/APINotes/fields.cpp
    A clang/test/APINotes/instancetype.m
    A clang/test/APINotes/methods.cpp
    A clang/test/APINotes/module-cache.m
    A clang/test/APINotes/namespaces.cpp
    A clang/test/APINotes/nullability.c
    A clang/test/APINotes/nullability.m
    A clang/test/APINotes/objc-forward-declarations.m
    A clang/test/APINotes/objc_designated_inits.m
    A clang/test/APINotes/properties.m
    A clang/test/APINotes/retain-count-convention.m
    A clang/test/APINotes/search-order.m
    A clang/test/APINotes/swift-import-as.cpp
    A clang/test/APINotes/templates.cpp
    A clang/test/APINotes/top-level-private-modules.c
    A clang/test/APINotes/types.m
    A clang/test/APINotes/versioned-multi.c
    A clang/test/APINotes/versioned.m
    A clang/test/APINotes/yaml-convert-diags.c
    A clang/test/APINotes/yaml-parse-diags.c
    A clang/test/APINotes/yaml-reader-errors.m
    A clang/test/AST/ByteCode/arrays.cpp
    A clang/test/AST/ByteCode/atomic.c
    A clang/test/AST/ByteCode/atomic.cpp
    A clang/test/AST/ByteCode/bitfields.cpp
    A clang/test/AST/ByteCode/builtin-align-cxx.cpp
    A clang/test/AST/ByteCode/builtin-constant-p.cpp
    A clang/test/AST/ByteCode/builtin-functions.cpp
    A clang/test/AST/ByteCode/builtins.cpp
    A clang/test/AST/ByteCode/c.c
    A clang/test/AST/ByteCode/c23.c
    A clang/test/AST/ByteCode/codegen.c
    A clang/test/AST/ByteCode/codegen.cpp
    A clang/test/AST/ByteCode/comma.cpp
    A clang/test/AST/ByteCode/complex.c
    A clang/test/AST/ByteCode/complex.cpp
    A clang/test/AST/ByteCode/cond.cpp
    A clang/test/AST/ByteCode/const-eval.c
    A clang/test/AST/ByteCode/const-fpfeatures.cpp
    A clang/test/AST/ByteCode/const-temporaries.cpp
    A clang/test/AST/ByteCode/constexpr-frame-describe.cpp
    A clang/test/AST/ByteCode/constexpr-nqueens.cpp
    A clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
    A clang/test/AST/ByteCode/crash-GH49103-2.cpp
    A clang/test/AST/ByteCode/cxx03.cpp
    A clang/test/AST/ByteCode/cxx11.cpp
    A clang/test/AST/ByteCode/cxx17.cpp
    A clang/test/AST/ByteCode/cxx20.cpp
    A clang/test/AST/ByteCode/cxx23.cpp
    A clang/test/AST/ByteCode/cxx26.cpp
    A clang/test/AST/ByteCode/cxx2a.cpp
    A clang/test/AST/ByteCode/cxx98.cpp
    A clang/test/AST/ByteCode/depth-limit.cpp
    A clang/test/AST/ByteCode/depth-limit2.cpp
    A clang/test/AST/ByteCode/enums-targets.cpp
    A clang/test/AST/ByteCode/enums.cpp
    A clang/test/AST/ByteCode/eval-order.cpp
    A clang/test/AST/ByteCode/floats.cpp
    A clang/test/AST/ByteCode/functions.cpp
    A clang/test/AST/ByteCode/hlsl.hlsl
    A clang/test/AST/ByteCode/if.cpp
    A clang/test/AST/ByteCode/intap.cpp
    A clang/test/AST/ByteCode/invalid.cpp
    A clang/test/AST/ByteCode/lambda.cpp
    A clang/test/AST/ByteCode/lifetimes.cpp
    A clang/test/AST/ByteCode/literals.cpp
    A clang/test/AST/ByteCode/loops.cpp
    A clang/test/AST/ByteCode/memberpointers.cpp
    A clang/test/AST/ByteCode/ms.cpp
    A clang/test/AST/ByteCode/mutable.cpp
    A clang/test/AST/ByteCode/new-delete.cpp
    A clang/test/AST/ByteCode/nullable.cpp
    A clang/test/AST/ByteCode/objc.mm
    A clang/test/AST/ByteCode/opencl.cl
    A clang/test/AST/ByteCode/pointer-addition.c
    A clang/test/AST/ByteCode/records.cpp
    A clang/test/AST/ByteCode/references.cpp
    A clang/test/AST/ByteCode/shifts.cpp
    A clang/test/AST/ByteCode/spaceship.cpp
    A clang/test/AST/ByteCode/switch.cpp
    A clang/test/AST/ByteCode/sycl.cpp
    A clang/test/AST/ByteCode/unions.cpp
    A clang/test/AST/ByteCode/vectors.cpp
    A clang/test/AST/ByteCode/weak.cpp
    M clang/test/AST/HLSL/RWBuffer-AST.hlsl
    R clang/test/AST/HLSL/ResourceStruct.hlsl
    A clang/test/AST/HLSL/export.hlsl
    A clang/test/AST/HLSL/hlsl_resource_t.hlsl
    A clang/test/AST/HLSL/packoffset.hlsl
    M clang/test/AST/HLSL/pch.hlsl
    M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
    M clang/test/AST/HLSL/pch_with_buf.hlsl
    M clang/test/AST/HLSL/this-reference-template.hlsl
    M clang/test/AST/HLSL/this-reference.hlsl
    M clang/test/AST/HLSL/vector-alias.hlsl
    M clang/test/AST/HLSL/vector-constructors.hlsl
    R clang/test/AST/Interp/arrays.cpp
    R clang/test/AST/Interp/atomic.c
    R clang/test/AST/Interp/atomic.cpp
    R clang/test/AST/Interp/bitfields.cpp
    R clang/test/AST/Interp/builtin-functions.cpp
    R clang/test/AST/Interp/builtins.cpp
    R clang/test/AST/Interp/c.c
    R clang/test/AST/Interp/comma.cpp
    R clang/test/AST/Interp/complex.c
    R clang/test/AST/Interp/complex.cpp
    R clang/test/AST/Interp/cond.cpp
    R clang/test/AST/Interp/const-fpfeatures.cpp
    R clang/test/AST/Interp/constexpr-nqueens.cpp
    R clang/test/AST/Interp/constexpr-subobj-initialization.cpp
    R clang/test/AST/Interp/crash-GH49103-2.cpp
    R clang/test/AST/Interp/cxx03.cpp
    R clang/test/AST/Interp/cxx11.cpp
    R clang/test/AST/Interp/cxx17.cpp
    R clang/test/AST/Interp/cxx20.cpp
    R clang/test/AST/Interp/cxx23.cpp
    R clang/test/AST/Interp/cxx98.cpp
    R clang/test/AST/Interp/depth-limit.cpp
    R clang/test/AST/Interp/depth-limit2.cpp
    R clang/test/AST/Interp/enums-targets.cpp
    R clang/test/AST/Interp/enums.cpp
    R clang/test/AST/Interp/floats.cpp
    R clang/test/AST/Interp/functions.cpp
    R clang/test/AST/Interp/if.cpp
    R clang/test/AST/Interp/intap.cpp
    R clang/test/AST/Interp/invalid.cpp
    R clang/test/AST/Interp/lambda.cpp
    R clang/test/AST/Interp/lifetimes.cpp
    R clang/test/AST/Interp/literals.cpp
    R clang/test/AST/Interp/loops.cpp
    R clang/test/AST/Interp/nullable.cpp
    R clang/test/AST/Interp/pointer-addition.c
    R clang/test/AST/Interp/records.cpp
    R clang/test/AST/Interp/references.cpp
    R clang/test/AST/Interp/shifts.cpp
    R clang/test/AST/Interp/switch.cpp
    M clang/test/AST/alignas_maybe_odr_cleanup.cpp
    M clang/test/AST/arithmetic-fence-builtin.c
    M clang/test/AST/ast-crash-doc-function-template.cpp
    M clang/test/AST/ast-dump-APValue-anon-union.cpp
    A clang/test/AST/ast-dump-amdgpu-types.c
    A clang/test/AST/ast-dump-anonymous-class.cpp
    M clang/test/AST/ast-dump-attr-json.cpp
    M clang/test/AST/ast-dump-attr-type.cpp
    M clang/test/AST/ast-dump-concepts.cpp
    M clang/test/AST/ast-dump-coroutine.cpp
    A clang/test/AST/ast-dump-ctad-alias.cpp
    A clang/test/AST/ast-dump-cxx2c-delete-with-message.cpp
    M clang/test/AST/ast-dump-decl.cpp
    M clang/test/AST/ast-dump-default-arg-dep.cpp
    A clang/test/AST/ast-dump-default-arg-json.cpp
    M clang/test/AST/ast-dump-default-arg-recovery.cpp
    A clang/test/AST/ast-dump-default-init-json.cpp
    A clang/test/AST/ast-dump-default-init.cpp
    M clang/test/AST/ast-dump-expr-json.cpp
    M clang/test/AST/ast-dump-expr.cpp
    M clang/test/AST/ast-dump-for-range-lifetime.cpp
    M clang/test/AST/ast-dump-fpfeatures.cpp
    A clang/test/AST/ast-dump-fpfeatures.m
    M clang/test/AST/ast-dump-funcs-json.cpp
    M clang/test/AST/ast-dump-invalid.cpp
    M clang/test/AST/ast-dump-lambda.cpp
    A clang/test/AST/ast-dump-late-parsing.cpp
    M clang/test/AST/ast-dump-macro-json.c
    M clang/test/AST/ast-dump-openmp-begin-declare-variant_template_2.cpp
    M clang/test/AST/ast-dump-openmp-for-simd.c
    M clang/test/AST/ast-dump-openmp-simd.c
    M clang/test/AST/ast-dump-openmp-taskloop-simd.c
    A clang/test/AST/ast-dump-pragma-unroll.cpp
    A clang/test/AST/ast-dump-ptrauth-json.cpp
    M clang/test/AST/ast-dump-recovery.cpp
    A clang/test/AST/ast-dump-retain-subst-template-type-parm-type-ast-nodes.cpp
    M clang/test/AST/ast-dump-stmt-json.cpp
    M clang/test/AST/ast-dump-template-decls.cpp
    M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
    A clang/test/AST/ast-dump-template-name.cpp
    M clang/test/AST/ast-dump-templates.cpp
    M clang/test/AST/ast-dump-traits.cpp
    M clang/test/AST/ast-dump-types-errors.cpp
    M clang/test/AST/ast-dump-using-template.cpp
    A clang/test/AST/ast-print-cxx2c-delete-with-message.cpp
    M clang/test/AST/ast-print-fp-pragmas.c
    M clang/test/AST/ast-print-method-decl.cpp
    M clang/test/AST/ast-print-no-sanitize.cpp
    M clang/test/AST/ast-print-objectivec.m
    A clang/test/AST/ast-print-openacc-compute-construct.cpp
    A clang/test/AST/ast-print-openacc-loop-construct.cpp
    M clang/test/AST/ast-print-pragmas.cpp
    M clang/test/AST/atomic-expr.cpp
    A clang/test/AST/attr-counted-by-late-parsed-struct-ptrs.c
    A clang/test/AST/attr-counted-by-or-null-late-parsed-struct-ptrs.c
    A clang/test/AST/attr-counted-by-or-null-struct-ptrs.c
    A clang/test/AST/attr-counted-by-struct-ptrs.c
    M clang/test/AST/attr-print-emit.cpp
    A clang/test/AST/attr-sized-by-late-parsed-struct-ptrs.c
    A clang/test/AST/attr-sized-by-or-null-late-parsed-struct-ptrs.c
    A clang/test/AST/attr-sized-by-or-null-struct-ptrs.c
    A clang/test/AST/attr-sized-by-struct-ptrs.c
    M clang/test/AST/attr-swift_attr.m
    M clang/test/AST/attr-swift_bridge.m
    M clang/test/AST/attr-swift_bridged_typedef.m
    M clang/test/AST/attr-swift_bridged_typedef.mm
    M clang/test/AST/auto-pragma.cpp
    A clang/test/AST/bitint-suffix.cpp
    M clang/test/AST/category-attribute.m
    M clang/test/AST/const-fpfeatures.c
    M clang/test/AST/const-fpfeatures.cpp
    M clang/test/AST/constraints-explicit-instantiation.cpp
    M clang/test/AST/coroutine-co_yield-source-range.cpp
    M clang/test/AST/coroutine-locals-cleanup.cpp
    M clang/test/AST/coroutine-source-location-crash.cpp
    A clang/test/AST/cxx2c-variadic-friends.cpp
    M clang/test/AST/deduction-guides.cpp
    A clang/test/AST/explicit-base-class-move-cntr.cpp
    M clang/test/AST/foreachtemplatized.mm
    M clang/test/AST/loop-recovery.cpp
    M clang/test/AST/multistep-explicit-cast.c
    M clang/test/AST/multistep-explicit-cast.cpp
    M clang/test/AST/objc-default-ctor-init.mm
    M clang/test/AST/pr43983.cpp
    M clang/test/AST/pr47636.cpp
    M clang/test/AST/pragma-attribute-cxx-subject-match-rules.cpp
    M clang/test/AST/pragma-attribute-objc-subject-match-rules.m
    M clang/test/AST/pragma-multiple-attributes-declspec.cpp
    M clang/test/AST/pragma-multiple-attributes.cpp
    M clang/test/AST/spurious-regparm.c
    M clang/test/AST/template-implicit-vars.cpp
    M clang/test/ASTMerge/codegen-exprs/test.c
    M clang/test/Analysis/ArrayDelete.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-regression-traverse-decl-crash.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-wtf-containers.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    A clang/test/Analysis/Checkers/WebKit/mock-system-header.h
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-ref-deref-on-diff-classes.cpp
    M clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-members.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
    M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-malloc.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-simple-stream.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-valist.h
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/Malloc+MismatchedDeallocator+NewDelete.cpp
    M clang/test/Analysis/MismatchedDeallocator-checker-test.mm
    M clang/test/Analysis/NewDelete-atomics.cpp
    M clang/test/Analysis/NewDelete-intersections.mm
    M clang/test/Analysis/addrspace-null.c
    M clang/test/Analysis/analyzer-checker-option-help.c
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/analyzer-display-progress.cpp
    M clang/test/Analysis/analyzer-display-progress.m
    M clang/test/Analysis/analyzer-enabled-checkers.c
    A clang/test/Analysis/analyzer-note-analysis-entry-points.cpp
    M clang/test/Analysis/asm.cpp
    A clang/test/Analysis/assuming-unsigned-ge-0.c
    A clang/test/Analysis/block-in-critical-section-inheritance.cpp
    A clang/test/Analysis/block-in-critical-section.c
    M clang/test/Analysis/block-in-critical-section.cpp
    M clang/test/Analysis/block-in-critical-section.m
    M clang/test/Analysis/bstring_UninitRead.c
    M clang/test/Analysis/builtin-functions.cpp
    M clang/test/Analysis/builtin_signbit.cpp
    M clang/test/Analysis/call-invalidation.cpp
    M clang/test/Analysis/casts.c
    R clang/test/Analysis/cert/pos34-c-fp-suppression.cpp
    R clang/test/Analysis/cert/pos34-c.cpp
    M clang/test/Analysis/cfg-openmp.cpp
    M clang/test/Analysis/ctor-array.cpp
    M clang/test/Analysis/ctor.mm
    M clang/test/Analysis/ctu-cxxdefaultinitexpr.cpp
    M clang/test/Analysis/ctu-lookup-name-with-space.cpp
    M clang/test/Analysis/ctu-main.c
    M clang/test/Analysis/ctu-on-demand-parsing.c
    M clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp
    A clang/test/Analysis/cxx23-static-operator.cpp
    M clang/test/Analysis/cxx2b-deducing-this.cpp
    M clang/test/Analysis/cxxnewexpr-callback.cpp
    M clang/test/Analysis/diagnostics/explicit-suppression.cpp
    M clang/test/Analysis/equality_tracking.c
    M clang/test/Analysis/errno-stdlibraryfunctions.c
    M clang/test/Analysis/eval-predefined-exprs.cpp
    M clang/test/Analysis/exercise-ps.c
    M clang/test/Analysis/explain-svals.cpp
    A clang/test/Analysis/fread.c
    M clang/test/Analysis/free.c
    M clang/test/Analysis/free.cpp
    A clang/test/Analysis/getline-alloc.c
    A clang/test/Analysis/getline-cpp.cpp
    A clang/test/Analysis/getline-unixapi.c
    A clang/test/Analysis/gh-issue-89185.c
    M clang/test/Analysis/handle_constructors_for_default_arguments.cpp
    M clang/test/Analysis/handle_constructors_with_new_array.cpp
    M clang/test/Analysis/html_diagnostics/relevant_lines/goto.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/macros_same_file.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/multifile.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/multiline_func_def.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/notexecutedlines.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/objcmethods.m
    M clang/test/Analysis/html_diagnostics/relevant_lines/simple_conditional.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/switch.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/switch_default.c
    M clang/test/Analysis/html_diagnostics/relevant_lines/synthesized_body.cpp
    M clang/test/Analysis/html_diagnostics/relevant_lines/unused_header.c
    M clang/test/Analysis/inlining/false-positive-suppression.cpp
    M clang/test/Analysis/inlining/temp-dtors-path-notes.cpp
    A clang/test/Analysis/invalid-ptr-checker.cpp
    M clang/test/Analysis/invalidated-iterator.cpp
    A clang/test/Analysis/issue-94193.cpp
    M clang/test/Analysis/kmalloc-linux.c
    M clang/test/Analysis/live-stmts.cpp
    M clang/test/Analysis/loop-unrolling.cpp
    M clang/test/Analysis/malloc-fnptr-plist.c
    R clang/test/Analysis/malloc-overflow.c
    R clang/test/Analysis/malloc-overflow.cpp
    R clang/test/Analysis/malloc-overflow2.c
    A clang/test/Analysis/malloc-std-namespace.cpp
    M clang/test/Analysis/malloc.c
    M clang/test/Analysis/malloc.cpp
    M clang/test/Analysis/malloc.mm
    M clang/test/Analysis/memory-model.cpp
    M clang/test/Analysis/misc-ps-region-store.mm
    M clang/test/Analysis/mmap-writeexec.c
    M clang/test/Analysis/new-aligned.cpp
    M clang/test/Analysis/osobject-retain-release.cpp
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/plist-macros.cpp
    A clang/test/Analysis/pointer-sub-notes.c
    A clang/test/Analysis/pointer-sub.c
    M clang/test/Analysis/ptr-arith.c
    M clang/test/Analysis/ptr-cmp-const-trunc.cl
    A clang/test/Analysis/putenv-stack-array.c
    M clang/test/Analysis/region_store_overflow.c
    M clang/test/Analysis/return-value-guaranteed.cpp
    M clang/test/Analysis/scan-build/deduplication.test
    M clang/test/Analysis/scan-build/exclude_directories.test
    M clang/test/Analysis/scan-build/help.test
    M clang/test/Analysis/scan-build/html_output.test
    M clang/test/Analysis/scan-build/lit.local.cfg
    M clang/test/Analysis/scan-build/plist_html_output.test
    M clang/test/Analysis/scan-build/plist_output.test
    M clang/test/Analysis/scan-build/rebuild_index/rebuild_index.test
    M clang/test/Analysis/scan-build/silence-core-checkers.test
    M clang/test/Analysis/scopes-cfg-output.cpp
    A clang/test/Analysis/setgid-setuid-order-notes.c
    A clang/test/Analysis/setgid-setuid-order.c
    A clang/test/Analysis/short-circuiting-eval.cpp
    R clang/test/Analysis/sizeofpointer.c
    M clang/test/Analysis/solver-sym-simplification-bool.cpp
    M clang/test/Analysis/solver-sym-simplification-ptr-bool.cl
    M clang/test/Analysis/stack-addr-ps.c
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
    M clang/test/Analysis/std-c-library-functions-arg-weakdeps.c
    M clang/test/Analysis/std-c-library-functions-vs-stream-checker.c
    M clang/test/Analysis/std-c-library-functions.c
    M clang/test/Analysis/stream-errno-note.c
    M clang/test/Analysis/stream-errno.c
    M clang/test/Analysis/stream-error.c
    M clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream-non-posix-function.c
    M clang/test/Analysis/stream-noopen.c
    M clang/test/Analysis/stream-note.c
    A clang/test/Analysis/stream-notes-missing-close.cpp
    A clang/test/Analysis/stream-pedantic.c
    M clang/test/Analysis/stream-stdlibraryfunctionargs.c
    M clang/test/Analysis/stream.c
    M clang/test/Analysis/stream.cpp
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/Analysis/transparent_union_bug.c
    M clang/test/Analysis/trustnonnullchecker_test.m
    M clang/test/Analysis/trustnonnullchecker_test.mm
    M clang/test/Analysis/undef-call.c
    A clang/test/Analysis/unreachable-code-exceptions.cpp
    M clang/test/Analysis/use-after-move.cpp
    M clang/test/Analysis/weak-functions.c
    A clang/test/Analysis/z3/crosscheck-statistics.c
    A clang/test/C/C11/n1282.c
    A clang/test/C/C11/n1285.c
    A clang/test/C/C11/n1310.c
    A clang/test/C/C11/n1365.c
    A clang/test/C/C11/n1396.c
    A clang/test/C/C11/n1464.c
    A clang/test/C/C11/n1482.c
    A clang/test/C/C11/n1514.c
    A clang/test/C/C23/Inputs/bits.bin
    A clang/test/C/C23/Inputs/boop.h
    A clang/test/C/C23/Inputs/i.dat
    A clang/test/C/C23/Inputs/jump.wav
    A clang/test/C/C23/Inputs/s.dat
    A clang/test/C/C23/n2322.c
    A clang/test/C/C23/n2350.c
    A clang/test/C/C23/n2359.c
    A clang/test/C/C23/n2508.c
    A clang/test/C/C23/n2549.c
    A clang/test/C/C23/n2607.c
    A clang/test/C/C23/n2653.c
    A clang/test/C/C23/n2670.c
    A clang/test/C/C23/n2683.c
    A clang/test/C/C23/n2683_2.c
    A clang/test/C/C23/n2819.c
    A clang/test/C/C23/n2826.c
    A clang/test/C/C23/n2836_n2939.c
    A clang/test/C/C23/n2838.c
    A clang/test/C/C23/n2886.c
    A clang/test/C/C23/n2900_n3011.c
    A clang/test/C/C23/n2900_n3011_2.c
    A clang/test/C/C23/n2927.c
    A clang/test/C/C23/n2927_2.c
    A clang/test/C/C23/n2930.c
    A clang/test/C/C23/n2934.c
    A clang/test/C/C23/n2940.c
    A clang/test/C/C23/n2975.c
    A clang/test/C/C23/n3007.c
    A clang/test/C/C23/n3017.c
    A clang/test/C/C23/n3018.c
    A clang/test/C/C23/n3033.c
    A clang/test/C/C23/n3033_2.c
    A clang/test/C/C23/n3035.c
    A clang/test/C/C23/n3042.c
    R clang/test/C/C2x/n2322.c
    R clang/test/C/C2x/n2350.c
    R clang/test/C/C2x/n2359.c
    R clang/test/C/C2x/n2508.c
    R clang/test/C/C2x/n2549.c
    R clang/test/C/C2x/n2607.c
    R clang/test/C/C2x/n2670.c
    R clang/test/C/C2x/n2683.c
    R clang/test/C/C2x/n2683_2.c
    R clang/test/C/C2x/n2826.c
    R clang/test/C/C2x/n2836_n2939.c
    R clang/test/C/C2x/n2838.c
    R clang/test/C/C2x/n2886.c
    R clang/test/C/C2x/n2900_n3011.c
    R clang/test/C/C2x/n2900_n3011_2.c
    R clang/test/C/C2x/n2927.c
    R clang/test/C/C2x/n2927_2.c
    R clang/test/C/C2x/n2930.c
    R clang/test/C/C2x/n2934.c
    R clang/test/C/C2x/n2940.c
    R clang/test/C/C2x/n2975.c
    R clang/test/C/C2x/n3007.c
    R clang/test/C/C2x/n3035.c
    R clang/test/C/C2x/n3042.c
    A clang/test/C/C2y/n3192.c
    A clang/test/C/C2y/n3244.c
    A clang/test/C/C2y/n3254.c
    A clang/test/C/C2y/n3259.c
    A clang/test/C/C2y/n3260.c
    A clang/test/C/C2y/n3262.c
    A clang/test/C/C2y/n3273.c
    A clang/test/C/C2y/n3274.c
    A clang/test/C/C99/Inputs/nested-include.h
    A clang/test/C/C99/block-scopes.c
    A clang/test/C/C99/digraphs.c
    A clang/test/C/C99/float_h-characteristics.c
    A clang/test/C/C99/n448.c
    A clang/test/C/C99/n570.c
    A clang/test/C/C99/n590.c
    A clang/test/C/C99/n696.c
    A clang/test/C/C99/n717.c
    A clang/test/C/C99/n782.c
    A clang/test/C/C99/n809.c
    A clang/test/C/C99/n809_2.c
    A clang/test/C/C99/n809_3.c
    A clang/test/C/C99/n835.c
    M clang/test/C/drs/dr0xx.c
    A clang/test/C/drs/dr290.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/C/drs/dr4xx.c
    M clang/test/C/drs/dr5xx.c
    M clang/test/CMakeLists.txt
    M clang/test/CXX/basic/basic.link/p10-ex2.cpp
    M clang/test/CXX/basic/basic.lookup/basic.lookup.argdep/p4-friend-in-reachable-class.cpp
    M clang/test/CXX/basic/basic.lookup/basic.lookup.elab/p2.cpp
    A clang/test/CXX/basic/basic.lookup/basic.lookup.qual/basic.lookup.qual.general/p2.cpp
    M clang/test/CXX/basic/basic.lookup/basic.lookup.qual/class.qual/p2.cpp
    M clang/test/CXX/basic/basic.start/basic.start.init/p3.cpp
    M clang/test/CXX/basic/basic.start/basic.start.main/p3.cpp
    M clang/test/CXX/basic/basic.stc/basic.stc.dynamic/basic.stc.dynamic.deallocation/p2.cpp
    M clang/test/CXX/basic/basic.types/p10.cpp
    A clang/test/CXX/class.derived/class.derived.general/p2.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p1.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p3.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p4.cpp
    M clang/test/CXX/class/class.friend/p7-cxx20.cpp
    A clang/test/CXX/class/class.mem/class.mem.general/p8.cpp
    M clang/test/CXX/class/class.mfct/class.mfct.non-static/p3.cpp
    M clang/test/CXX/class/class.mfct/p1-cxx20.cpp
    M clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p6-cxx11.cpp
    M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/dtor.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3-2b.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.stc/p1.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p4.cpp
    A clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p5-cxx14.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p7-cxx14.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.type.elab/p2-0x.cpp
    M clang/test/CXX/dcl.decl/dcl.fct.def/dcl.fct.def.default/p2.cpp
    M clang/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5-examples.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p6-cxx23.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.mptr/p2.cpp
    M clang/test/CXX/dcl.decl/dcl.meaning/p1-0x.cpp
    A clang/test/CXX/dcl/dcl.init/aggr.cpp
    A clang/test/CXX/drs/cwg0xx.cpp
    A clang/test/CXX/drs/cwg10xx.cpp
    A clang/test/CXX/drs/cwg118.cpp
    A clang/test/CXX/drs/cwg11xx.cpp
    A clang/test/CXX/drs/cwg124.cpp
    A clang/test/CXX/drs/cwg12xx.cpp
    A clang/test/CXX/drs/cwg13xx.cpp
    A clang/test/CXX/drs/cwg14xx.cpp
    A clang/test/CXX/drs/cwg158.cpp
    A clang/test/CXX/drs/cwg15xx.cpp
    A clang/test/CXX/drs/cwg16xx.cpp
    A clang/test/CXX/drs/cwg1748.cpp
    A clang/test/CXX/drs/cwg177x.cpp
    A clang/test/CXX/drs/cwg17xx.cpp
    A clang/test/CXX/drs/cwg1807.cpp
    A clang/test/CXX/drs/cwg185.cpp
    A clang/test/CXX/drs/cwg18xx.cpp
    A clang/test/CXX/drs/cwg193.cpp
    A clang/test/CXX/drs/cwg199.cpp
    A clang/test/CXX/drs/cwg19xx.cpp
    A clang/test/CXX/drs/cwg1xx.cpp
    A clang/test/CXX/drs/cwg201.cpp
    A clang/test/CXX/drs/cwg20xx.cpp
    A clang/test/CXX/drs/cwg210.cpp
    A clang/test/CXX/drs/cwg2149.cpp
    A clang/test/CXX/drs/cwg21xx.cpp
    A clang/test/CXX/drs/cwg22xx.cpp
    A clang/test/CXX/drs/cwg2335.cpp
    A clang/test/CXX/drs/cwg23xx.cpp
    A clang/test/CXX/drs/cwg24xx.cpp
    A clang/test/CXX/drs/cwg2504.cpp
    A clang/test/CXX/drs/cwg25xx.cpp
    A clang/test/CXX/drs/cwg2630.cpp
    A clang/test/CXX/drs/cwg26xx.cpp
    A clang/test/CXX/drs/cwg2771.cpp
    A clang/test/CXX/drs/cwg27xx.cpp
    A clang/test/CXX/drs/cwg28xx.cpp
    A clang/test/CXX/drs/cwg292.cpp
    A clang/test/CXX/drs/cwg29xx.cpp
    A clang/test/CXX/drs/cwg2xx.cpp
    A clang/test/CXX/drs/cwg392.cpp
    A clang/test/CXX/drs/cwg3xx.cpp
    A clang/test/CXX/drs/cwg412.cpp
    A clang/test/CXX/drs/cwg438.cpp
    A clang/test/CXX/drs/cwg439.cpp
    A clang/test/CXX/drs/cwg441.cpp
    A clang/test/CXX/drs/cwg462.cpp
    A clang/test/CXX/drs/cwg492.cpp
    A clang/test/CXX/drs/cwg4xx.cpp
    A clang/test/CXX/drs/cwg519.cpp
    A clang/test/CXX/drs/cwg571.cpp
    A clang/test/CXX/drs/cwg5xx.cpp
    A clang/test/CXX/drs/cwg605.cpp
    A clang/test/CXX/drs/cwg650.cpp
    A clang/test/CXX/drs/cwg653.cpp
    A clang/test/CXX/drs/cwg658.cpp
    A clang/test/CXX/drs/cwg661.cpp
    A clang/test/CXX/drs/cwg672.cpp
    A clang/test/CXX/drs/cwg6xx.cpp
    A clang/test/CXX/drs/cwg7xx.cpp
    A clang/test/CXX/drs/cwg8xx.cpp
    A clang/test/CXX/drs/cwg9xx.cpp
    A clang/test/CXX/drs/cwgr593.cpp
    R clang/test/CXX/drs/dr0xx.cpp
    R clang/test/CXX/drs/dr10xx.cpp
    R clang/test/CXX/drs/dr118.cpp
    R clang/test/CXX/drs/dr11xx.cpp
    R clang/test/CXX/drs/dr124.cpp
    R clang/test/CXX/drs/dr12xx.cpp
    R clang/test/CXX/drs/dr13xx.cpp
    R clang/test/CXX/drs/dr14xx.cpp
    R clang/test/CXX/drs/dr158.cpp
    R clang/test/CXX/drs/dr15xx.cpp
    R clang/test/CXX/drs/dr16xx.cpp
    R clang/test/CXX/drs/dr1748.cpp
    R clang/test/CXX/drs/dr177x.cpp
    R clang/test/CXX/drs/dr17xx.cpp
    R clang/test/CXX/drs/dr1807.cpp
    R clang/test/CXX/drs/dr185.cpp
    R clang/test/CXX/drs/dr18xx.cpp
    R clang/test/CXX/drs/dr193.cpp
    R clang/test/CXX/drs/dr199.cpp
    R clang/test/CXX/drs/dr19xx.cpp
    R clang/test/CXX/drs/dr1xx.cpp
    R clang/test/CXX/drs/dr201.cpp
    R clang/test/CXX/drs/dr20xx.cpp
    R clang/test/CXX/drs/dr210.cpp
    R clang/test/CXX/drs/dr21xx.cpp
    R clang/test/CXX/drs/dr22xx.cpp
    R clang/test/CXX/drs/dr2335.cpp
    R clang/test/CXX/drs/dr2390.cpp
    R clang/test/CXX/drs/dr23xx.cpp
    R clang/test/CXX/drs/dr24xx.cpp
    R clang/test/CXX/drs/dr2504.cpp
    R clang/test/CXX/drs/dr25xx.cpp
    R clang/test/CXX/drs/dr26xx.cpp
    R clang/test/CXX/drs/dr27xx.cpp
    R clang/test/CXX/drs/dr28xx.cpp
    R clang/test/CXX/drs/dr292.cpp
    R clang/test/CXX/drs/dr2xx.cpp
    R clang/test/CXX/drs/dr3xx.cpp
    R clang/test/CXX/drs/dr412.cpp
    R clang/test/CXX/drs/dr4xx.cpp
    R clang/test/CXX/drs/dr5xx.cpp
    R clang/test/CXX/drs/dr6xx.cpp
    R clang/test/CXX/drs/dr7xx.cpp
    R clang/test/CXX/drs/dr8xx.cpp
    R clang/test/CXX/drs/dr9xx.cpp
    A clang/test/CXX/except/except.spec/p13-friend.cpp
    M clang/test/CXX/except/except.spec/p13.cpp
    M clang/test/CXX/expr/expr.const/p5-26.cpp
    M clang/test/CXX/expr/expr.post/expr.type.conv/p1.cpp
    A clang/test/CXX/expr/expr.prim/expr.prim.id/expr.prim.id.general/p4.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/p15-star-this-capture.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
    M clang/test/CXX/expr/expr.unary/expr.new/p14.cpp
    M clang/test/CXX/expr/expr.unary/expr.sizeof/p5-0x.cpp
    A clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.noexcept/cg.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.op/p4.cpp
    M clang/test/CXX/lex/lex.literal/lex.string/p4.cpp
    M clang/test/CXX/module/dcl.dcl/dcl.module/dcl.module.interface/p1.cppm
    A clang/test/CXX/module/module.glob.frag/cxx20-10-4-ex2.cppm
    M clang/test/CXX/module/module.import/p6.cpp
    M clang/test/CXX/module/module.private.frag/p1.cpp
    M clang/test/CXX/over/over.built/ast.cpp
    M clang/test/CXX/over/over.built/p10.cpp
    M clang/test/CXX/over/over.built/p11.cpp
    M clang/test/CXX/over/over.match/over.match.funcs/over.match.class.deduct/p2.cpp
    M clang/test/CXX/over/over.match/over.match.funcs/over.match.oper/p3-2a.cpp
    A clang/test/CXX/over/over.oper/over.oper.general/p1.cpp
    M clang/test/CXX/special/class.copy/p13-0x.cpp
    A clang/test/CXX/stmt.stmt/stmt.return/p6.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp
    A clang/test/CXX/temp/temp.decls/temp.fct/temp.func.order/p2.cpp
    M clang/test/CXX/temp/temp.decls/temp.friend/p1.cpp
    M clang/test/CXX/temp/temp.decls/temp.mem/p2.cpp
    M clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
    M clang/test/CXX/temp/temp.deduct.guide/p3.cpp
    A clang/test/CXX/temp/temp.deduct/p7.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p3-0x.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.conv/p4.cpp
    A clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.partial/p3.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
    M clang/test/CXX/temp/temp.res/p3.cpp
    M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.constexpr/p2-0x.cpp
    A clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p3.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
    M clang/test/CXX/temp/temp.spec/no-body.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p12.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p17.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-0x.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p8.cpp
    M clang/test/ClangScanDeps/Inputs/removed-args/cdb.json.template
    M clang/test/ClangScanDeps/diagnostics.c
    M clang/test/ClangScanDeps/error.cpp
    M clang/test/ClangScanDeps/header-search-pruning-transitive.c
    M clang/test/ClangScanDeps/header-search-pruning.cpp
    A clang/test/ClangScanDeps/link-libraries.c
    M clang/test/ClangScanDeps/module-format.c
    M clang/test/ClangScanDeps/modules-canononical-module-map-case.c
    M clang/test/ClangScanDeps/modules-context-hash.c
    M clang/test/ClangScanDeps/modules-dep-args.c
    M clang/test/ClangScanDeps/modules-excluded-header.m
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-extern-unrelated.m
    M clang/test/ClangScanDeps/modules-file-path-isolation.c
    M clang/test/ClangScanDeps/modules-fmodule-name-no-module-built.m
    M clang/test/ClangScanDeps/modules-full-by-mod-name.c
    M clang/test/ClangScanDeps/modules-full.cpp
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-implicit-dot-private.m
    M clang/test/ClangScanDeps/modules-incomplete-umbrella.c
    M clang/test/ClangScanDeps/modules-inferred.m
    A clang/test/ClangScanDeps/modules-minimize-extension.c
    A clang/test/ClangScanDeps/modules-minimize-module.c
    M clang/test/ClangScanDeps/modules-no-undeclared-includes.c
    M clang/test/ClangScanDeps/modules-pch-common-submodule.c
    M clang/test/ClangScanDeps/modules-pch-common-via-submodule.c
    M clang/test/ClangScanDeps/modules-pch.c
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    M clang/test/ClangScanDeps/modules-redefinition.m
    M clang/test/ClangScanDeps/modules-symlink-dir-vfs.c
    M clang/test/ClangScanDeps/modules-transitive.c
    M clang/test/ClangScanDeps/optimize-canonicalize-macros.m
    M clang/test/ClangScanDeps/optimize-fmodulemap.m
    M clang/test/ClangScanDeps/optimize-system-warnings.m
    M clang/test/ClangScanDeps/optimize-vfs-leak.m
    M clang/test/ClangScanDeps/optimize-vfs.m
    M clang/test/ClangScanDeps/removed-args.c
    A clang/test/ClangScanDeps/response-file-clang-cl.c
    M clang/test/ClangScanDeps/working-dir.m
    A clang/test/ClangScanDeps/working-directory-option.c
    M clang/test/CodeCompletion/ctor-signature.cpp
    M clang/test/CodeCompletion/member-access.cpp
    M clang/test/CodeCompletion/ordinary-name.c
    M clang/test/CodeGen/2009-06-14-anonymous-union-init.c
    M clang/test/CodeGen/2010-07-08-DeclDebugLineNo.c
    M clang/test/CodeGen/2010-08-10-DbgConstant.c
    M clang/test/CodeGen/64bit-swiftcall.c
    A clang/test/CodeGen/AMDGPU/amdgpu-atomic-float.c
    M clang/test/CodeGen/CSKY/csky-abi.c
    M clang/test/CodeGen/LoongArch/abi-lp64d.c
    A clang/test/CodeGen/LoongArch/align.c
    M clang/test/CodeGen/LoongArch/intrinsic-la32-error.c
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64-error.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c
    A clang/test/CodeGen/LoongArch/tls-dialect.c
    A clang/test/CodeGen/M68k/inline-asm-gcc-regs.c
    A clang/test/CodeGen/Mips/inline-asm-constraints.c
    M clang/test/CodeGen/PR32874.c
    M clang/test/CodeGen/PR44896.ll
    M clang/test/CodeGen/PowerPC/aix-altivec-vaargs.c

  Log Message:
  -----------
  rebase. remove warn_drv_unsupported_sdata

Created using spr 1.3.5-bogner


Compare: https://github.com/llvm/llvm-project/compare/dbc9ddd9a9b1...94132fc13f1a

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